[Linux-cluster] CMAN and qdiskd (limited?) online reconfig capabilities

Pena, Francisco Javier francisco_javier.pena at roche.com
Thu Feb 15 10:46:05 UTC 2007


Hello everyone,

While checking some strange cman startup behavior (it always assigns 1 vote to each cluster node, no matter what I set in the cluster.conf file), I have spent some time digging through the cluster code to understand how it manages online reconfigurations.

In the Red Hat docs (and also at the RH436 course) we are told that the following command sequence is required to update the cluster config:

- ccs_tool update /etc/cluster/cluster.conf
- cman_tool version -r <new version>

However, following the cman_tool code down to the kernel module part, all it does is to update the internal config_version variable to be the new version on all nodes. From the cman-kernel source (RHEL4 U4 SRPMS), file membership.c:

static int do_process_reconfig(struct msghdr *msg, char *buf, int len)
{
	...

        case RECONFIG_PARAM_CONFIG_VERSION:
                config_version = val;
                break;
	...
}

No configuration is reread, so it does not matter what you change in the configuration file, CMAN will never know about it until it is restarted. Similarly, I found out that qdiskd never updates the configuration, in fact it is listed as TODO ( 2) Poll ccsd for configuration changes. ).

It looks like the RHEL5 branch of the CMAN code does reread the configuration (calling read_ccs_nodes), so any change is updated. The qdisk code still shows the ccsd poll in the TODO list.

So, straight to the questions: are there any plans to change the RHEL4 code to make CMAN and qdisk get the configuration changes without needing to restart? Should I file a bugzilla against this?

Thanks in advance. Regards,

Javier Peña




More information about the Linux-cluster mailing list