(mysql.info) multi-config
Info Catalog
(mysql.info) multi-install
(mysql.info) multi-computer
(mysql.info) multi-initial
15.3.3 Multi-Computer Configuration
-----------------------------------
For our four-node, four-host MySQL Cluster, we will need to write four
configuration files, one per node/host.
* Each data node or SQL node requires a `my.cnf' file that provides
two pieces of information: a *connectstring* telling the node
where to find the MGM node, and a line telling the MySQL server on
this host (the machine hosting the data node) to run in NDB mode.
For more information on connectstrings, see
mysql-cluster-connectstring.
* The management node needs a `config.ini' file telling it how many
replicas to maintain, how much memory to allocate for data and
indexes on each data node, where to find the data nodes, where to
save data to disk on each data node, and where to find any SQL
nodes.
*Configuring the Storage and SQL Nodes*
The `my.cnf' file needed for the data nodes is fairly simple. The
configuration file should be located in the `/etc' directory and can be
edited using any text editor. (Create the file if it does not exist.)
For example:
shell> vi /etc/my.cnf
We show `vi' being used here to create the file, but any text editor
should work just as well.
For each data node and SQL node in our example setup, `my.cnf' should
look like this:
# Options for mysqld process:
[MYSQLD]
ndbcluster # run NDB engine
ndb-connectstring=192.168.0.10 # location of MGM node
# Options for ndbd process:
[MYSQL_CLUSTER]
ndb-connectstring=192.168.0.10 # location of MGM node
After entering the preceding information, save this file and exit the
text editor. Do this for the machines hosting data node `A', data node
`B', and the SQL node.
*Configuring the Management Node*
The first step in configuring the MGM node is to create the directory
in which the configuration file can be found and then to create the
file itself. For example (running as `root'):
shell> mkdir /var/lib/mysql-cluster
shell> cd /var/lib/mysql-cluster
shell> vi config.ini
For our representative setup, the `config.ini' file should read as
follows:
# Options affecting ndbd processes on all data nodes:
[NDBD DEFAULT]
NoOfReplicas=2 # Number of replicas
DataMemory=80M # How much memory to allocate for data storage
IndexMemory=18M # How much memory to allocate for index storage
# For DataMemory and IndexMemory, we have used the
# default values. Since the "world" database takes up
# only about 500KB, this should be more than enough for
# this example Cluster setup.
# TCP/IP options:
[TCP DEFAULT]
portnumber=2202 # This the default; however, you can use any
# port that is free for all the hosts in cluster
# Note: It is recommended beginning with MySQL 5.0 that
# you do not specify the portnumber at all and simply allow
# the default value to be used instead
# Management process options:
[NDB_MGMD]
hostname=192.168.0.10 # Hostname or IP address of MGM node
datadir=/var/lib/mysql-cluster # Directory for MGM node logfiles
# Options for data node "A":
[NDBD]
# (one [NDBD] section per data node)
hostname=192.168.0.30 # Hostname or IP address
datadir=/usr/local/mysql/data # Directory for this data node's datafiles
# Options for data node "B":
[NDBD]
hostname=192.168.0.40 # Hostname or IP address
datadir=/usr/local/mysql/data # Directory for this data node's datafiles
# SQL node options:
[MYSQLD]
hostname=192.168.0.20 # Hostname or IP address
# (additional mysqld connections can be
# specified for this node for various
# purposes such as running ndb_restore)
(* The `world' database can be downloaded from
`http://dev.mysql.com/doc/', where it can be found listed under
`Examples.')
After all the configuration files have been created and these minimal
options have been specified, you are ready to proceed with starting the
cluster and verifying that all processes are running. We discuss how
this is done in multi-initial.
For more detailed information about the available MySQL Cluster
configuration parameters and their uses, see
mysql-cluster-config-file, and mysql-cluster-configuration.
For configuration of MySQL Cluster as relates to making backups, see
mysql-cluster-backup-configuration.
* The default port for Cluster management nodes is 1186; the
default port for data nodes is 2202. Beginning with MySQL 5.0.3, this
restriction is lifted, and the cluster automatically allocates ports
for data nodes from those that are already free.
Info Catalog
(mysql.info) multi-install
(mysql.info) multi-computer
(mysql.info) multi-initial
automatically generated byinfo2html