Update of /cvsroot/ssic-linux/web/frags/docs
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29770/frags/docs
Added Files:
README.networking
Log Message:
Add networking documentation
--- NEW FILE: README.networking ---
README.network
TCP/IP networking can be a little tricky in an OpenSSI cluster for 2
reasons - first because the network is being used as the cluster interconnect
and second because we provide a "single cluster name/ip address (CVIP)" in
addition to standard interface addresses and names. The
CVIP and the HP-LVS subsystem around it are discussed in README.ipvs.
NFS management in the cluster, which is very related to
networking, is discussed in README.nfs. This note will concentrate on the
management of the physical interfaces and IP addresses etc. associated with
them.
Using an ethernet interface as the cluster interconnect means the system
must set up networking on this interface very early in the boot sequence
(i.e. in the ramdisk, before the root is mounted) so the node can
participate in forming the cluster and deciding who should mount the root.
Because of this, configuring/modifying this interface is different than
other interfaces in the cluster.
For each node, one interface was chosen for the cluster interconnect.
The "name" corresponding to the ip address of that interface is put in
/etc/nodename (which is a CDSL to /cluster/node#/etc/nodename) by the
installation and openssi-config-node scripts. That name will also be
the hostname for that node (via the /etc/sysconfig/network config file).
/etc/clustertab has the MAC and IP addresses for the cluster interconnect
interfaces for all nodes in the cluster. (/etc/clustertab is managed
by installation and openssi-config-node, and that
information is used by mkinitrd to create a file (etc/boottab) in the RAMDISK,
which all nodes consult during booting. /etc/hosts may also have the name
and IP address of nodes in the cluster, as might an external DNS server.
/etc/dhcpd.conf may also have the MAC and IP adresses of each node. This
file is generated by mkinitrd. To determine programmatically which interface
is being used as the cluster interconnect, there is a routine in libcluster
called "clusternode_get_ip" which will give you the ip address of the
cluster interface for any give node number.
Management of the cluster interconnect interface will eventually be
done by the change node option of openssi-config-node but for now there are a
few manual steps one can take to make certain changes. Below we outline how to:
A. change the IP address of the cluster interconnect interface;
B. change the name of the cluster interconnect interface (nodename/hostname);
C. change the MAC address of the cluster interconnect interface (replace
a card in a node)
D. change the netmask of all the network interfaces in the cluster;
E. change the gateway for the entire cluster or any given node in the cluster.
A discussion of adding and modifying other interfaces is included after
each of the above topics is discussed.
A. Change the IP address of the cluster interconnect interface!
To change the address, edit /etc/clustertab, run mkinitrd (with all the
proper options "mkinitrd --tabonly -/boot/initrd-xxxx", where xxxx is the
name of the ssi kernel) and ssi-ksync (to get the kernel/ramdisk to all the boot
partitions). If needed, edit /etc/hosts and update any DNS entries.
For completeness, editing
/cluster/node#/etc/sysconfig/network-scripts/ifcfg-eth# if it exists is a good
idea. A reboot should make everything happen. Note that it is always a good
idea to have all nodes that have local boot partitions up whenever running
ssi-ksync. If a node is not up it will not see the RAMDISK changes. It might
have to be netbooted into the cluster and then ssi-ksync can be run again.
B. Change the name of the cluster interconnect interface.
You just have to edit /cluster/node#/etc/nodename for the
node "#". If needed, edit /etc/hosts and update any DNS entries.
Reboot of that node is needed.
C. Change of MAC address - very similar to A. above.
Note that all NICs on the cluster interconnect must on the same subnet/
physical network.
D. Change of netmask of all network interfaces in the cluster.
(note: this has not been tested)It is only likely you would want
to change this if you are moving the whole cluster to
a network with a different netmask. It is a little
tricky. To do it you must edit the etc/boottab file in the ramdisk in
/boot and then run ssi-ksync to update all the other copies.
In addition, the network-script/ifcfg-eth* NETMASK entries should
be fixed. You must reboot without doing a mkinitrd, since that would
re-create the boottab file with the netmask of the running interface.
E. Change the gateway for the cluster or a given node.
You can specify a GATEWAY stanza in /etc/sysconfig/network and that
will apply to all nodes. If you need a different GATEWAY for different
nodes you will have to NOT put it in /etc/sysconfig/network, but instead put
it in the network-scripts/ifcfg-eth# in each /cluster/node#/etc/sysconfig.
Adding a new interface (non-cluster interconnect) to a node can be
done using the netconfig command. NOTE that there appears to be no man
page for netconfig. "netconfig --help" gives some hints and it is
imperative to run with --device=xxxx (eg --device=eth1).
Otherwise it will default to eth0, which is likely your cluster
interconnect interface. "redhat-config-network" is the right way to
do network admin on Red Hat systems, but currently it does
not work on OpenSSI. Fixing it is primarily an issue of making
/etc/sysconfig/networking a CDSL, and it will be fixed in a release soon.
TBD: While most of the information above applies to any network configuration,
some additional steps are needed in environments where not all the
nodes in the cluster have an interface which connects directly outside
the cluster.
-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click
|