1CMAP_KEYS(8) Corosync Cluster Engine Programmer's Manual CMAP_KEYS(8)
2
3
4
6 cmap_keys - Overview of keys stored in the Configuration Map
7
8
10 There are 3 main types of keys stored in CMAP:
11
12 * Mapping of values stored in the config file.
13
14 * Runtime statistics.
15
16 * Other user created values.
17
18 In this man page, wild-cards have the usual meaning.
19
20
22 internal_configuration.*
23 Internal configuration data. All keys in this prefix are read
24 only. It's only useful for getting a list of loaded services.
25
26
27 logging.*
28 Values read from the configuration file. It's possible to change
29 them at runtime. If subsystem specific configuration is needed,
30 the key must be in the form logging.logger_subsys.SERVICE.key,
31 where SERVICE is upper case name of the service and key is same
32 as in the configuration file. All values are of string type.
33
34
35 nodelist.*
36 Values read from the configuration file. Each node element in
37 the configuration file gets assigned it's position starting from
38 zero. So the first node from the config file has
39 nodelist.node.0. prefix. To be a valid entry, each node must
40 have ring0_addr key. To change the nodeid key, use a u32 data
41 type.
42
43 Local node position is stored in local_node_pos key (RO), so
44 it's easy to find out nodeid/ring addresses of the local node
45 directly from cmap.
46
47
48 runtime.blackbox.*
49 Trigger keys for storing fplay data. It's recommended that you
50 the corosync-blackbox command to change keys in this prefix.
51
52
53 runtime.connections.*
54 There is information about total number of active connections in
55 given moment in the active key, number of closed connections
56 during whole runtime of corosync in the closed key and informa‐
57 tion about each active IPC connection. All keys in this prefix
58 are read-only.
59
60
61 runtime.connections.ID.*
62 Each IPC connection has a unique ID. This is in the form
63 [[short_name:][PID:]internal_id. On some platforms, short_name
64 and PID are not filled and only internal_id is used.
65
66 Typical keys in this prefix are:
67
68 client_pid containing PID of IPC connection (unavailable on some
69 platforms).
70
71 dispatched number of dispatched messages.
72
73 invalid_request number of requests made by IPC which are invalid
74 (calling non-existing call, ...).
75
76 name contains short name of the IPC connection (unavailable on
77 some platforms).
78
79 overload is number of requests which were not processed because
80 of overload.
81
82 queue_size contains the number of messages in the queue waiting
83 for send.
84
85 recv_retries is the total number of interrupted receives.
86
87 requests contains the number of requests made by IPC.
88
89 responses is the number of responses sent to the IPC client.
90
91 send_retries contains the total number of interrupted sends.
92
93 service_id contains the ID of service which the IPC is connected
94 to.
95
96
97 runtime.config.*
98 Contains the values actually in use by the totem membership pro‐
99 tocol. Values here are either taken from the Corosync configu‐
100 ration file, defaults or computed from entries in the config
101 file. For information on individual keys please refer to the man
102 page corosync.conf(5).
103
104
105 runtime.services.*
106 Prefix with statistics for service engines. Each service has
107 it's own service_id key in the prefix with the name runtime.ser‐
108 vices.SERVICE., where SERVICE is the lower case name of the ser‐
109 vice. Inside the service prefix is the number of messages
110 received and sent by the corosync engine in the format run‐
111 time.services.SERVICE.EXEC_CALL.rx and runtime.services.SER‐
112 VICE.EXEC_CALL.tx, where EXEC_CALL is the internal id of the
113 service call (so for example 3 in cpg service is receive of mul‐
114 ticast message from other nodes).
115
116
117 runtime.totem.pg.mrp.srp.*
118 Prefix containing statistics about totem. All keys here are read
119 only. Typical key prefixes:
120
121 commit_entered Number of times the processor entered COMMIT
122 state.
123
124 commit_token_lost Number of times the processor lost token in
125 COMMIT state.
126
127 consensus_timeouts How many times the processor timed out form‐
128 ing a consensus about membership.
129
130 continuous_gather How many times the processor was not able to
131 reach consensus.
132
133 firewall_enabled_or_nic_failure Set to 1 when processor was not
134 able to reach consensus for long time. The usual reason is a
135 badly configured firewall or connection failure.
136
137 gather_entered Number of times the processor entered GATHER
138 state.
139
140 gather_token_lost Number of times the processor lost token in
141 GATHER state.
142
143 mcast_retx Number of retransmitted messages.
144
145 mcast_rx Number of received multicast messages.
146
147 mcast_tx Number of transmitted multicast messages.
148
149 memb_commit_token_rx Number of received commit tokens.
150
151 memb_commit_token_tx Number of transmitted commit tokens.
152
153 memb_join_rx Number of received join messages.
154
155 memb_join_tx Number of transmitted join messages.
156
157 memb_merge_detect_rx Number of received member merge messages.
158
159 memb_merge_detect_tx Number of transmitted member merge mes‐
160 sages.
161
162 orf_token_rx Number of received orf tokens.
163
164 orf_token_tx Number of transmitted orf tokens.
165
166 recovery_entered Number of times the processor entered recovery.
167
168 recovery_token_lost Number of times the token was lost in recov‐
169 ery state.
170
171 rx_msg_dropped Number of received messages which were dropped
172 because they were not expected (as example multicast message in
173 commit state).
174
175 token_hold_cancel_rx Number of received token hold cancel mes‐
176 sages.
177
178 token_hold_cancel_tx Number of transmitted token hold cancel
179 messages.
180
181 mtt_rx_token Mean transit time of token in milliseconds. In
182 other words, time between two consecutive token receives.
183
184 avg_token_workload Average time in milliseconds of holding time
185 of token on the current processor.
186
187 avg_backlog_calc Average number of not yet sent messages on the
188 current processor.
189
190
191 runtime.totem.pg.mrp.srp.members.*
192 Prefix containing members of the totem single ring protocol.
193 Each member keys has format runtime.totem.pg.mrp.srp.mem‐
194 bers.NODEID.KEY, where key is one of:
195
196 ip IP address of member. It's stored in format r(RING_ID)
197 ip(IP_ADDRESS).
198
199 join_count Number of times the processor joined membership with
200 local cluster. When processor fails and rejoins again, this
201 value is incremented.
202
203 status Status of the processor. Can be one of joined and left.
204
205 config_version Config version of the member node.
206
207
208 resources.process.PID.*
209 Prefix created by applications using SAM with CMAP integration.
210 It contains the following keys:
211
212 recovery Recovery policy of the process. Can be one of quit or
213 restart.
214
215 poll_period Value passed in sam_initialize as a time_interval.
216
217 last_updated Last time SAM received a heartbeat from the client.
218
219 state State of the client. Can be one of failed, stopped, run‐
220 ning and waiting for quorum.
221
222
223 uidgid.*
224 Information about users/groups which are allowed to make IPC
225 connections to corosync. Entries loaded from configuration file
226 are stored with uidgid.config.* prefix and are pruned on config‐
227 uration file reload. Dynamic entries has uidgid.* prefix and a
228 configuration file reload doesn't affect them.
229
230
231 quorum.cancel_wait_for_all
232 Tells votequorum to cancel waiting for all nodes at cluster
233 startup. Can be used to unblock quorum if notes are known to be
234 down. For pcs use only.
235
236
237 config.reload_in_progress
238 This value will be set to 1 (or created) when a corosync.conf
239 reload is started, and set to 0 when the reload is completed.
240 This allows interested subsystems to do atomic reconfiguration
241 rather than changing each key. Note that individual
242 add/change/delete notifications will still be sent during a
243 reload.
244
245
246 config.totemconfig_reload_in_progress
247 This key is similar to config.totemconfig_reload_in_progress but
248 changed after the totem config trigger is processed. It is use‐
249 ful (mainly) for situations when nodelist.local_node_pos must be
250 correctly reinstated before anything else.
251
252
254 Is the same as in the configuration file. eg: to add UID 500 use
255
256 # corosync-cmapctl -s uidgid.uid.500 u8 1
257
258 GID is similar, so to add a GID use
259
260 # corosync-cmapctl -s uidgid.gid.500 u8 1
261
262 For removal of permissions, simply delete the key
263
264 # corosync-cmapctl -d uidgid.gid.500
265
266
268 Eg. To add the node with address 10.34.38.108 and nodeid 3. This node
269 is called NEW and it's not running corosync yet.
270
271
272 * Find a node position in the node list which is not used yet. It's
273 recommended that you use highest_number + 1. Let's say output of
274 corosync-cmapctl looks like:
275
276 nodelist.local_node_pos (u32) = 1
277 nodelist.node.0.nodeid (u32) = 1
278 nodelist.node.0.ring0_addr (str) = 10.34.38.106
279 nodelist.node.1.nodeid (u32) = 2
280 nodelist.node.1.ring0_addr (str) = 10.34.38.107
281
282 So next node position will be 2.
283
284 * Add all entries needed for the node on all running nodes, as:
285
286 # corosync-cmapctl -s nodelist.node.2.nodeid u32 3
287 # corosync-cmapctl -s nodelist.node.2.ring0_addr str 10.34.38.108
288
289 Always add the ring0_addr key last. The Corosync engine on all nodes
290 should reply with notice [TOTEM ] adding new UDPU member {10.34.38.108}
291 message.
292
293 * Add node information to the configuration file on all nodes so that
294 it will survive a restart of corosync.
295
296 * Copy and edit configuration file to the NEW node.
297
298 * Start corosync on the NEW node.
299
300 Removal of a UDPU node is a very similar, slightly reversed action, so
301
302 * Stop corosync on the OLD node.
303
304 * Remove the relevant entries from cmap on all nodes.
305
306 * Change the configuration file on all nodes.
307
308
310 corosync_overview(8), corosync.conf(5), corosync-cmapctl(8)
311
312
313
314corosync Man Page 10/10/2012 CMAP_KEYS(8)