| Turbolinux Cluster LoadBalancer 10: User Guide | ||
|---|---|---|
| <<< Previous | Chapter 8. Architecture | Next >>> |
If the SpeedLink module is the heart of Turbolinux Cluster LoadBalancer 10, then the clusterserverd daemon is the central nervous system. The clusterserverd daemon is the second most important part of the whole system. It configures and controls the ip_cs module, primarily through the /proc/net/cluster interface. It handles just about everything required for operation of the traffic manager except for the actual traffic forwarding.
When the daemon starts, it reads the configuration file and decides what function the system is to perform: cluster node, ATM, or both. If the system is an ATM, the daemon always starts by making the system a backup ATM. It then determines whether there is a primary ATM up already. If there is no primary ATM, the backup ATMs will select a backup ATM to be promoted to primary ATM. The primary ATM is selected by choosing the first listed ATM in the configuration file that is up.
The daemon also handles setting up the network interfaces. You saw this in the troubleshooting section of the last chapter. When the daemon starts up, it can configure the system as a cluster node using direct forwarding, tunneling, or NAT. It sets up the aliased interfaces with the proper IP addresses and options. That's why we recommended that you use Turbolinux Cluster LoadBalancer 10 on all the nodes in the cluster, so you don't have to configure any of the nodes by hand.
The daemon also performs all the network checks. These include the heartbeat broadcasts that the primary ATM generates to let the backup ATMs know that it is working. And, of course, it is the daemon on the backup ATMs that listens for these broadcasts and promotes the backup to primary if it does not hear from the primary. In addition, the server pings and ASA service checks are performed by the daemon. For the service checks, it uses the external ASA programs defined in the configuration file. If a server or service fails, the daemon temporarily removes it from the list maintained by the kernel module.
The clusterserverd daemon uses two ports for communication between systems in the cluster. UDP port 17100 is used for heartbeat broadcasts. The primary ATM sends out the broadcasts on this port, and the backup ATMs listen for the broadcasts to make sure that the primary is still functioning. (This is one reason all ATMs must be on the same subnet -- broadcasts are not routed out of the subnet where they originate.) The daemon uses TCP port 17101 as an administrative port. It is primarily used as a communication channel between clusterserverd and the CMC daemon. You should use the `Security Settings' in the configuration program to allow only local access on this port.
![]() | Make sure that you have set the `Security Settings' to allow access to localhost (127.0.0.1/255.255.255.255) and to deny everyone else (0.0.0.0/0.0.0.0). Otherwise, unauthorized persons will be able to change the configuration of your cluster. |
You can change the port numbers that the daemon uses by adding entries to the /etc/services file. The `clusterserver' service is the UDP heartbeat, and defaults to 17100. The `clusterserveradm' service is used for the administration channel, with 17101 as the default. If you want to run two separate clusters on the same subnet, you will have to change these port numbers on one of the clusters. Otherwise the clusters will confuse each other with their heartbeat broadcasts. If you change these values, be sure to do it for every ATM in the cluster, or you will have systems listening on the wrong ports.
![]() | When running multiple cluster systems on the same subnet, the port numbers must be changed by adding/updating the following lines in the "/etc/services":
Ports 17100 and 17101 are the default ports. You will need to change the port numbers to different settings in order to have multiple cluster systems running on the same subnet. |
| <<< Previous | Home | Next >>> |
| Architecture | Up | Application Stability Agents (ASAs) |