Revision 81a49123
b/lib/config.py | ||
---|---|---|
646 | 646 |
|
647 | 647 |
instance.serial_no = 1 |
648 | 648 |
self._config_data.instances[instance.name] = instance |
649 |
self._config_data.cluster.serial_no += 1 |
|
649 | 650 |
self._UnlockedReleaseDRBDMinors(instance.name) |
650 | 651 |
self._WriteConfig() |
651 | 652 |
|
... | ... | |
680 | 681 |
if instance_name not in self._config_data.instances: |
681 | 682 |
raise errors.ConfigurationError("Unknown instance '%s'" % instance_name) |
682 | 683 |
del self._config_data.instances[instance_name] |
684 |
self._config_data.cluster.serial_no += 1 |
|
683 | 685 |
self._WriteConfig() |
684 | 686 |
|
685 | 687 |
@locking.ssynchronized(_config_lock) |
... | ... | |
1064 | 1066 |
|
1065 | 1067 |
""" |
1066 | 1068 |
fn = "\n".join |
1069 |
instance_names = utils.NiceSort(self._UnlockedGetInstanceList()) |
|
1067 | 1070 |
node_names = utils.NiceSort(self._UnlockedGetNodeList()) |
1068 | 1071 |
node_info = [self._UnlockedGetNodeInfo(name) for name in node_names] |
1069 | 1072 |
|
1073 |
instance_data = fn(instance_names) |
|
1070 | 1074 |
off_data = fn(node.name for node in node_info if node.offline) |
1075 |
on_data = fn(node.name for node in node_info if not node.offline) |
|
1071 | 1076 |
mc_data = fn(node.name for node in node_info if node.master_candidate) |
1072 | 1077 |
node_data = fn(node_names) |
1073 | 1078 |
|
... | ... | |
1081 | 1086 |
constants.SS_MASTER_NODE: cluster.master_node, |
1082 | 1087 |
constants.SS_NODE_LIST: node_data, |
1083 | 1088 |
constants.SS_OFFLINE_NODES: off_data, |
1089 |
constants.SS_ONLINE_NODES: on_data, |
|
1090 |
constants.SS_INSTANCE_LIST: instance_data, |
|
1084 | 1091 |
constants.SS_RELEASE_VERSION: constants.RELEASE_VERSION, |
1085 | 1092 |
} |
1086 | 1093 |
|
b/lib/constants.py | ||
---|---|---|
422 | 422 |
SS_MASTER_NODE = "master_node" |
423 | 423 |
SS_NODE_LIST = "node_list" |
424 | 424 |
SS_OFFLINE_NODES = "offline_nodes" |
425 |
SS_ONLINE_NODES = "online_nodes" |
|
426 |
SS_INSTANCE_LIST = "instance_list" |
|
425 | 427 |
SS_RELEASE_VERSION = "release_version" |
426 | 428 |
|
427 | 429 |
# cluster wide default parameters |
b/lib/ssconf.py | ||
---|---|---|
133 | 133 |
constants.SS_MASTER_NODE, |
134 | 134 |
constants.SS_NODE_LIST, |
135 | 135 |
constants.SS_OFFLINE_NODES, |
136 |
constants.SS_ONLINE_NODES, |
|
137 |
constants.SS_INSTANCE_LIST, |
|
136 | 138 |
constants.SS_RELEASE_VERSION, |
137 | 139 |
) |
138 | 140 |
_MAX_SIZE = 131072 |
... | ... | |
189 | 191 |
for name, value in values.iteritems(): |
190 | 192 |
if value and not value.endswith("\n"): |
191 | 193 |
value += "\n" |
192 |
utils.WriteFile(self.KeyToFilename(name), data=value) |
|
194 |
utils.WriteFile(self.KeyToFilename(name), data=value, mode=0444)
|
|
193 | 195 |
finally: |
194 | 196 |
ssconf_lock.Unlock() |
195 | 197 |
|
b/scripts/gnt-cluster | ||
---|---|---|
187 | 187 |
@return: the desired exit code |
188 | 188 |
|
189 | 189 |
""" |
190 |
op = opcodes.OpRedistributeConf() |
|
190 |
op = opcodes.OpRedistributeConfig()
|
|
191 | 191 |
SubmitOrSend(op, opts) |
192 | 192 |
return 0 |
193 | 193 |
|
Also available in: Unified diff