Statistics
| Branch: | Tag: | Revision:

root / man / gnt-cluster.rst @ 9fa567b3

History | View | Annotate | Download (29.5 kB)

1
gnt-cluster(8) Ganeti | Version @GANETI_VERSION@
2
================================================
3

    
4
Name
5
----
6

    
7
gnt-cluster - Ganeti administration, cluster-wide
8

    
9
Synopsis
10
--------
11

    
12
**gnt-cluster** {command} [arguments...]
13

    
14
DESCRIPTION
15
-----------
16

    
17
The **gnt-cluster** is used for cluster-wide administration in the
18
Ganeti system.
19

    
20
COMMANDS
21
--------
22

    
23
ACTIVATE-MASTER-IP
24
~~~~~~~~~~~~~~~~~~
25

    
26
**activate-master-ip**
27

    
28
Activates the master IP on the master node.
29

    
30
ADD-TAGS
31
~~~~~~~~
32

    
33
**add-tags** [--from *file*] {*tag*...}
34

    
35
Add tags to the cluster. If any of the tags contains invalid
36
characters, the entire operation will abort.
37

    
38
If the ``--from`` option is given, the list of tags will be
39
extended with the contents of that file (each line becomes a tag).
40
In this case, there is not need to pass tags on the command line
41
(if you do, both sources will be used). A file name of - will be
42
interpreted as stdin.
43

    
44
COMMAND
45
~~~~~~~
46

    
47
**command** [-n *node*] [-g *group*] {*command*}
48

    
49
Executes a command on all nodes. If the option ``-n`` is not given,
50
the command will be executed on all nodes, otherwise it will be
51
executed only on the node(s) specified. Use the option multiple
52
times for running it on multiple nodes, like::
53

    
54
    # gnt-cluster command -n node1.example.com -n node2.example.com date
55

    
56
The ``-g`` option can be used to run a command only on a specific node
57
group, e.g.::
58

    
59
    # gnt-cluster command -g default date
60

    
61
The command is executed serially on the selected nodes. If the
62
master node is present in the list, the command will be executed
63
last on the master. Regarding the other nodes, the execution order
64
is somewhat alphabetic, so that node2.example.com will be earlier
65
than node10.example.com but after node1.example.com.
66

    
67
So given the node names node1, node2, node3, node10, node11, with
68
node3 being the master, the order will be: node1, node2, node10,
69
node11, node3.
70

    
71
The command is constructed by concatenating all other command line
72
arguments. For example, to list the contents of the /etc directory
73
on all nodes, run::
74

    
75
    # gnt-cluster command ls -l /etc
76

    
77
and the command which will be executed will be ``ls -l /etc``.
78

    
79
COPYFILE
80
~~~~~~~~
81

    
82
| **copyfile** [--use-replication-network] [-n *node*] [-g *group*]
83
| {*file*}
84

    
85
Copies a file to all or to some nodes. The argument specifies the
86
source file (on the current system), the ``-n`` argument specifies
87
the target node, or nodes if the option is given multiple times. If
88
``-n`` is not given at all, the file will be copied to all nodes. The
89
``-g`` option can be used to only select nodes in a specific node group.
90
Passing the ``--use-replication-network`` option will cause the
91
copy to be done over the replication network (only matters if the
92
primary/secondary IPs are different). Example::
93

    
94
    # gnt-cluster -n node1.example.com -n node2.example.com copyfile /tmp/test
95

    
96
This will copy the file /tmp/test from the current node to the two
97
named nodes.
98

    
99
DEACTIVATE-MASTER-IP
100
~~~~~~~~~~~~~~~~~~~~
101

    
102
**deactivate-master-ip** [--yes]
103

    
104
Deactivates the master IP on the master node.
105

    
106
This should be run only locally or on a connection to the node ip
107
directly, as a connection to the master ip will be broken by this
108
operation. Because of this risk it will require user confirmation
109
unless the ``--yes`` option is passed.
110

    
111
DESTROY
112
~~~~~~~
113

    
114
**destroy** {--yes-do-it}
115

    
116
Remove all configuration files related to the cluster, so that a
117
**gnt-cluster init** can be done again afterwards.
118

    
119
Since this is a dangerous command, you are required to pass the
120
argument *--yes-do-it.*
121

    
122
EPO
123
~~~
124

    
125
**epo** [--on] [--groups|--all] [--power-delay] *arguments*
126

    
127
Performs an emergency power-off on nodes given as arguments. If
128
``--groups`` is given, arguments are node groups. If ``--all`` is
129
provided, the whole cluster will be shut down.
130

    
131
The ``--on`` flag recovers the cluster after an emergency power-off.
132
When powering on the cluster you can use ``--power-delay`` to define the
133
time in seconds (fractions allowed) waited between powering on
134
individual nodes.
135

    
136
Please note that the master node will not be turned down or up
137
automatically.  It will just be left in a state, where you can manully
138
perform the shutdown of that one node. If the master is in the list of
139
affected nodes and this is not a complete cluster emergency power-off
140
(e.g. using ``--all``), you're required to do a master failover to
141
another node not affected.
142

    
143
GETMASTER
144
~~~~~~~~~
145

    
146
**getmaster**
147

    
148
Displays the current master node.
149

    
150
INFO
151
~~~~
152

    
153
**info** [--roman]
154

    
155
Shows runtime cluster information: cluster name, architecture (32
156
or 64 bit), master node, node list and instance list.
157

    
158
Passing the ``--roman`` option gnt-cluster info will try to print
159
its integer fields in a latin friendly way. This allows further
160
diffusion of Ganeti among ancient cultures.
161

    
162
INIT
163
~~~~
164

    
165
| **init**
166
| [{-s|--secondary-ip} *secondary\_ip*]
167
| [--vg-name *vg-name*]
168
| [--master-netdev *interface-name*]
169
| [--master-netmask *netmask*]
170
| [--use-external-mip-script {yes \| no}]
171
| [{-m|--mac-prefix} *mac-prefix*]
172
| [--no-lvm-storage]
173
| [--no-etc-hosts]
174
| [--no-ssh-init]
175
| [--file-storage-dir *dir*]
176
| [--enabled-hypervisors *hypervisors*]
177
| [{-H|--hypervisor-parameters} *hypervisor*:*hv-param*=*value*[,*hv-param*=*value*...]]
178
| [{-B|--backend-parameters} *be-param*=*value*[,*be-param*=*value*...]]
179
| [{-N|--nic-parameters} *nic-param*=*value*[,*nic-param*=*value*...]]
180
| [{-D|--disk-parameters} *disk-template*:*disk-param*=*value*[,*disk-param*=*value*...]]
181
| [--maintain-node-health {yes \| no}]
182
| [--uid-pool *user-id pool definition*]
183
| [{-I|--default-iallocator} *default instance allocator*]
184
| [--primary-ip-version *version*]
185
| [--prealloc-wipe-disks {yes \| no}]
186
| [--node-parameters *ndparams*]
187
| [{-C|--candidate-pool-size} *candidate\_pool\_size*]
188
| [--specs-cpu-count *spec-param*=*value* [,*spec-param*=*value*...]]
189
| [--specs-disk-count *spec-param*=*value* [,*spec-param*=*value*...]]
190
| [--specs-disk-size *spec-param*=*value* [,*spec-param*=*value*...]]
191
| [--specs-mem-size *spec-param*=*value* [,*spec-param*=*value*...]]
192
| [--specs-nic-count *spec-param*=*value* [,*spec-param*=*value*...]]
193
| [--disk-state *diskstate*]
194
| [--hypervisor-state *hvstate*]
195
| {*clustername*}
196

    
197
This commands is only run once initially on the first node of the
198
cluster. It will initialize the cluster configuration, setup the
199
ssh-keys, start the daemons on the master node, etc. in order to have
200
a working one-node cluster.
201

    
202
Note that the *clustername* is not any random name. It has to be
203
resolvable to an IP address using DNS, and it is best if you give the
204
fully-qualified domain name. This hostname must resolve to an IP
205
address reserved exclusively for this purpose, i.e. not already in
206
use.
207

    
208
The cluster can run in two modes: single-home or dual-homed. In the
209
first case, all traffic (both public traffic, inter-node traffic and
210
data replication traffic) goes over the same interface. In the
211
dual-homed case, the data replication traffic goes over the second
212
network. The ``-s (--secondary-ip)`` option here marks the cluster as
213
dual-homed and its parameter represents this node's address on the
214
second network.  If you initialise the cluster with ``-s``, all nodes
215
added must have a secondary IP as well.
216

    
217
Note that for Ganeti it doesn't matter if the secondary network is
218
actually a separate physical network, or is done using tunneling,
219
etc. For performance reasons, it's recommended to use a separate
220
network, of course.
221

    
222
The ``--vg-name`` option will let you specify a volume group
223
different than "xenvg" for Ganeti to use when creating instance
224
disks. This volume group must have the same name on all nodes. Once
225
the cluster is initialized this can be altered by using the
226
**modify** command. If you don't want to use lvm storage at all use
227
the ``--no-lvm-storage`` option. Once the cluster is initialized
228
you can change this setup with the **modify** command.
229

    
230
The ``--master-netdev`` option is useful for specifying a different
231
interface on which the master will activate its IP address. It's
232
important that all nodes have this interface because you'll need it
233
for a master failover.
234

    
235
The ``--master-netmask`` option allows to specify a netmask for the
236
master IP. The netmask must be specified as an integer, and will be
237
interpreted as a CIDR netmask. The default value is 32 for an IPv4
238
address and 128 for an IPv6 address.
239

    
240
The ``--use-external-mip-script`` options allows to specify
241
whether to use an user-supplied master IP address setup script, whose
242
location is ``/etc/ganeti/scripts/master-ip-setup``. If the option value
243
is set to False, the default script, whose location is
244
``/usr/local/lib/ganeti/tools/master-ip-setup``, will be executed.
245

    
246
The ``-m (--mac-prefix)`` option will let you specify a three byte
247
prefix under which the virtual MAC addresses of your instances will be
248
generated. The prefix must be specified in the format ``XX:XX:XX`` and
249
the default is ``aa:00:00``.
250

    
251
The ``--no-lvm-storage`` option allows you to initialize the
252
cluster without lvm support. This means that only instances using
253
files as storage backend will be possible to create. Once the
254
cluster is initialized you can change this setup with the
255
**modify** command.
256

    
257
The ``--no-etc-hosts`` option allows you to initialize the cluster
258
without modifying the /etc/hosts file.
259

    
260
The ``--no-ssh-init`` option allows you to initialize the cluster
261
without creating or distributing SSH key pairs.
262

    
263
The ``--file-storage-dir`` option allows you set the directory to
264
use for storing the instance disk files when using file storage as
265
backend for instance disks.
266

    
267
The ``--prealloc-wipe-disks`` sets a cluster wide configuration
268
value for wiping disks prior to allocation. This increases security
269
on instance level as the instance can't access untouched data from
270
it's underlying storage.
271

    
272
The ``--enabled-hypervisors`` option allows you to set the list of
273
hypervisors that will be enabled for this cluster. Instance
274
hypervisors can only be chosen from the list of enabled
275
hypervisors, and the first entry of this list will be used by
276
default. Currently, the following hypervisors are available:
277

    
278
xen-pvm
279
    Xen PVM hypervisor
280

    
281
xen-hvm
282
    Xen HVM hypervisor
283

    
284
kvm
285
    Linux KVM hypervisor
286

    
287
chroot
288
    a simple chroot manager that starts chroot based on a script at the
289
    root of the filesystem holding the chroot
290

    
291
fake
292
    fake hypervisor for development/testing
293

    
294
Either a single hypervisor name or a comma-separated list of
295
hypervisor names can be specified. If this option is not specified,
296
only the xen-pvm hypervisor is enabled by default.
297

    
298
The ``-H (--hypervisor-parameters)`` option allows you to set default
299
hypervisor specific parameters for the cluster. The format of this
300
option is the name of the hypervisor, followed by a colon and a
301
comma-separated list of key=value pairs. The keys available for each
302
hypervisors are detailed in the gnt-instance(8) man page, in the
303
**add** command plus the following parameters which are only
304
configurable globally (at cluster level):
305

    
306
migration\_port
307
    Valid for the Xen PVM and KVM hypervisors.
308

    
309
    This options specifies the TCP port to use for live-migration. For
310
    Xen, the same port should be configured on all nodes in the
311
    ``/etc/xen/xend-config.sxp`` file, under the key
312
    "xend-relocation-port".
313

    
314
migration\_bandwidth
315
    Valid for the KVM hypervisor.
316

    
317
    This option specifies the maximum bandwidth that KVM will use for
318
    instance live migrations. The value is in MiB/s.
319

    
320
    This option is only effective with kvm versions >= 78 and qemu-kvm
321
    versions >= 0.10.0.
322

    
323
The ``-B (--backend-parameters)`` option allows you to set the default
324
backend parameters for the cluster. The parameter format is a
325
comma-separated list of key=value pairs with the following supported
326
keys:
327

    
328
vcpus
329
    Number of VCPUs to set for an instance by default, must be an
330
    integer, will be set to 1 if no specified.
331

    
332
maxmem
333
    Maximum amount of memory to allocate for an instance by default, can
334
    be either an integer or an integer followed by a unit (M for
335
    mebibytes and G for gibibytes are supported), will be set to 128M if
336
    not specified.
337

    
338
minmem
339
    Minimum amount of memory to allocate for an instance by default, can
340
    be either an integer or an integer followed by a unit (M for
341
    mebibytes and G for gibibytes are supported), will be set to 128M if
342
    not specified.
343

    
344
auto\_balance
345
    Value of the auto\_balance flag for instances to use by default,
346
    will be set to true if not specified.
347

    
348
always\_failover
349
    Default value for the ``always\_failover`` flag for instances; if
350
    not set, ``False`` is used.
351

    
352

    
353
The ``-N (--nic-parameters)`` option allows you to set the default nic
354
parameters for the cluster. The parameter format is a comma-separated
355
list of key=value pairs with the following supported keys:
356

    
357
mode
358
    The default nic mode, 'routed' or 'bridged'.
359

    
360
link
361
    In bridged mode the default NIC bridge. In routed mode it
362
    represents an hypervisor-vif-script dependent value to allow
363
    different instance groups. For example under the KVM default
364
    network script it is interpreted as a routing table number or
365
    name.
366

    
367
The ``-D (--disk-parameters)`` option allows you to set the default disk
368
template parameters at cluster level. The format used for this option is
369
similar to the one use by the  ``-H`` option: the disk template name
370
must be specified first, followed by a colon and by a comma-separated
371
list of key-value pairs. These parameters can only be specified at
372
cluster and node group level; the cluster-level parameter are inherited
373
by the node group at the moment of its creation, and can be further
374
modified at node group level using the **gnt-group**(8) command. 
375

    
376
The following is the list of disk parameters available for the **drbd**
377
template, with measurement units specified in square brackets at the end
378
of the description (when applicable):
379

    
380
resync-rate
381
    Static re-synchronization rate. [KiB/s]
382

    
383
data-stripes
384
    Number of stripes to use for data LVs.
385

    
386
meta-stripes
387
    Number of stripes to use for meta LVs.
388

    
389
disk-barriers
390
    What kind of barriers to **disable** for disks. It can either assume
391
    the value "n", meaning no barrier disabled, or a non-empty string
392
    containing a subset of the characters "bfd". "b" means disable disk
393
    barriers, "f" means disable disk flushes, "d" disables disk drains.
394

    
395
meta-barriers
396
    Boolean value indicating whether the meta barriers should be
397
    disabled (True) or not (False).
398

    
399
metavg
400
    String containing the name of the default LVM volume group for DRBD
401
    metadata. By default, it is set to ``xenvg``. It can be overridden
402
    during the instance creation process by using the ``metavg`` key of
403
    the ``--disk`` parameter.
404

    
405
disk-custom
406
    String containing additional parameters to be appended to the
407
    arguments list of ``drbdsetup disk``.
408

    
409
net-custom
410
    String containing additional parameters to be appended to the
411
    arguments list of ``drbdsetup net``.
412

    
413
dynamic-resync
414
    Boolean indicating whether to use the dynamic resync speed
415
    controller or not. If enabled, c-plan-ahead must be non-zero and all
416
    the c-* parameters will be used by DRBD. Otherwise, the value of
417
    resync-rate will be used as a static resync speed.
418

    
419
c-plan-ahead
420
    Agility factor of the dynamic resync speed controller. (the higher,
421
    the slower the algorithm will adapt the resync speed). A value of 0
422
    (that is the default) disables the controller. [ds]
423

    
424
c-fill-target
425
    Maximum amount of in-flight resync data for the dynamic resync speed
426
    controller. [sectors]
427

    
428
c-delay-target
429
    Maximum estimated peer response latency for the dynamic resync speed
430
    controller. [ds]
431

    
432
c-min-rate
433
    Minimum resync speed for the dynamic resync speed controller. [KiB/s]
434

    
435
c-max-rate
436
    Upper bound on resync speed for the dynamic resync speed controller.
437
    [KiB/s]
438

    
439
List of parameters available for the **plain** template:
440

    
441
stripes
442
    Number of stripes to use for new LVs.
443

    
444
The option ``--maintain-node-health`` allows one to enable/disable
445
automatic maintenance actions on nodes. Currently these include
446
automatic shutdown of instances and deactivation of DRBD devices on
447
offline nodes; in the future it might be extended to automatic
448
removal of unknown LVM volumes, etc. Note that this option is only
449
useful if the use of ``ganeti-confd`` was enabled at compilation.
450

    
451
The ``--uid-pool`` option initializes the user-id pool. The
452
*user-id pool definition* can contain a list of user-ids and/or a
453
list of user-id ranges. The parameter format is a comma-separated
454
list of numeric user-ids or user-id ranges. The ranges are defined
455
by a lower and higher boundary, separated by a dash. The boundaries
456
are inclusive. If the ``--uid-pool`` option is not supplied, the
457
user-id pool is initialized to an empty list. An empty list means
458
that the user-id pool feature is disabled.
459

    
460
The ``-I (--default-iallocator)`` option specifies the default
461
instance allocator. The instance allocator will be used for operations
462
like instance creation, instance and node migration, etc. when no
463
manual override is specified. If this option is not specified and
464
htools was not enabled at build time, the default instance allocator
465
will be blank, which means that relevant operations will require the
466
administrator to manually specify either an instance allocator, or a
467
set of nodes. If the option is not specified but htools was enabled,
468
the default iallocator will be **hail**(1) (assuming it can be found
469
on disk). The default iallocator can be changed later using the
470
**modify** command.
471

    
472
The ``--primary-ip-version`` option specifies the IP version used
473
for the primary address. Possible values are 4 and 6 for IPv4 and
474
IPv6, respectively. This option is used when resolving node names
475
and the cluster name.
476

    
477
The ``--node-parameters`` option allows you to set default node
478
parameters for the cluster. Please see **ganeti**(7) for more
479
information about supported key=value pairs.
480

    
481
The ``-C (--candidate-pool-size)`` option specifies the
482
``candidate_pool_size`` cluster parameter. This is the number of nodes
483
that the master will try to keep as master\_candidates. For more
484
details about this role and other node roles, see the ganeti(7).
485

    
486
The ``--specs-..`` options specify instance policy on the cluster. Each
487
option can have three values: ``min``, ``max`` and ``std``, which can
488
also be modified on group level (except for ``std``, which is defined
489
once for the entire cluster). Please note, that ``std`` values are not
490
the same as defaults set by ``--beparams``.
491
``--specs-cpu-count`` sets the number of VCPUs that can be used by an
492
instance.
493
``--specs-disk-count`` sets the number of disks
494
``--specs-disk-size`` limits the disk size for every disk used
495
``--specs-mem-size`` limits the amount of memory available
496
``--specs-nic-count`` sets limits on the amount of nics used
497

    
498
For details about how to use ``--hypervisor-state`` and ``--disk-state``
499
have a look at **ganeti**(7).
500

    
501
LIST-TAGS
502
~~~~~~~~~
503

    
504
**list-tags**
505

    
506
List the tags of the cluster.
507

    
508
MASTER-FAILOVER
509
~~~~~~~~~~~~~~~
510

    
511
**master-failover** [--no-voting]
512

    
513
Failover the master role to the current node.
514

    
515
The ``--no-voting`` option skips the remote node agreement checks.
516
This is dangerous, but necessary in some cases (for example failing
517
over the master role in a 2 node cluster with the original master
518
down). If the original master then comes up, it won't be able to
519
start its master daemon because it won't have enough votes, but so
520
won't the new master, if the master daemon ever needs a restart.
521
You can pass ``--no-voting`` to **ganeti-masterd** on the new
522
master to solve this problem, and run **gnt-cluster redist-conf**
523
to make sure the cluster is consistent again.
524

    
525
MASTER-PING
526
~~~~~~~~~~~
527

    
528
**master-ping**
529

    
530
Checks if the master daemon is alive.
531

    
532
If the master daemon is alive and can respond to a basic query (the
533
equivalent of **gnt-cluster info**), then the exit code of the
534
command will be 0. If the master daemon is not alive (either due to
535
a crash or because this is not the master node), the exit code will
536
be 1.
537

    
538
MODIFY
539
~~~~~~
540

    
541
| **modify**
542
| [--vg-name *vg-name*]
543
| [--no-lvm-storage]
544
| [--enabled-hypervisors *hypervisors*]
545
| [{-H|--hypervisor-parameters} *hypervisor*:*hv-param*=*value*[,*hv-param*=*value*...]]
546
| [{-B|--backend-parameters} *be-param*=*value*[,*be-param*=*value*...]]
547
| [{-N|--nic-parameters} *nic-param*=*value*[,*nic-param*=*value*...]]
548
| [{-D|--disk-parameters} *disk-template*:*disk-param*=*value*[,*disk-param*=*value*...]]
549
| [--uid-pool *user-id pool definition*]
550
| [--add-uids *user-id pool definition*]
551
| [--remove-uids *user-id pool definition*]
552
| [{-C|--candidate-pool-size} *candidate\_pool\_size*]
553
| [--maintain-node-health {yes \| no}]
554
| [--prealloc-wipe-disks {yes \| no}]
555
| [{-I|--default-iallocator} *default instance allocator*]
556
| [--reserved-lvs=*NAMES*]
557
| [--node-parameters *ndparams*]
558
| [--master-netdev *interface-name*]
559
| [--master-netmask *netmask*]
560
| [--use-external-mip-script {yes \| no}]
561
| [--hypervisor-state *hvstate*]
562
| [--disk-state *diskstate*]
563
| [--specs-cpu-count *spec-param*=*value* [,*spec-param*=*value*...]]
564
| [--specs-disk-count *spec-param*=*value* [,*spec-param*=*value*...]]
565
| [--specs-disk-size *spec-param*=*value* [,*spec-param*=*value*...]]
566
| [--specs-mem-size *spec-param*=*value* [,*spec-param*=*value*...]]
567
| [--specs-nic-count *spec-param*=*value* [,*spec-param*=*value*...]]
568

    
569

    
570
Modify the options for the cluster.
571

    
572
The ``--vg-name``, ``--no-lvm-storarge``, ``--enabled-hypervisors``,
573
``-H (--hypervisor-parameters)``, ``-B (--backend-parameters)``,
574
``-D (--disk-parameters)``, ``--nic-parameters``, ``-C
575
(--candidate-pool-size)``, ``--maintain-node-health``,
576
``--prealloc-wipe-disks``, ``--uid-pool``, ``--node-parameters``,
577
``--master-netdev``, ``--master-netmask`` and
578
``--use-external-mip-script`` options are described in the **init**
579
command.
580

    
581
The ``--hypervisor-state`` and ``--disk-state`` options are described in
582
detail in **ganeti**(7).
583

    
584
The ``--add-uids`` and ``--remove-uids`` options can be used to
585
modify the user-id pool by adding/removing a list of user-ids or
586
user-id ranges.
587

    
588
The option ``--reserved-lvs`` specifies a list (comma-separated) of
589
logical volume group names (regular expressions) that will be
590
ignored by the cluster verify operation. This is useful if the
591
volume group used for Ganeti is shared with the system for other
592
uses. Note that it's not recommended to create and mark as ignored
593
logical volume names which match Ganeti's own name format (starting
594
with UUID and then .diskN), as this option only skips the
595
verification, but not the actual use of the names given.
596

    
597
To remove all reserved logical volumes, pass in an empty argument
598
to the option, as in ``--reserved-lvs=`` or ``--reserved-lvs ''``.
599

    
600
The ``-I (--default-iallocator)`` is described in the **init**
601
command. To clear the default iallocator, just pass an empty string
602
('').
603

    
604
The ``--specs-..`` options are described in the **init** command.
605

    
606
QUEUE
607
~~~~~
608

    
609
**queue** {drain | undrain | info}
610

    
611
Change job queue properties.
612

    
613
The ``drain`` option sets the drain flag on the job queue. No new
614
jobs will be accepted, but jobs already in the queue will be
615
processed.
616

    
617
The ``undrain`` will unset the drain flag on the job queue. New
618
jobs will be accepted.
619

    
620
The ``info`` option shows the properties of the job queue.
621

    
622
WATCHER
623
~~~~~~~
624

    
625
**watcher** {pause *duration* | continue | info}
626

    
627
Make the watcher pause or let it continue.
628

    
629
The ``pause`` option causes the watcher to pause for *duration*
630
seconds.
631

    
632
The ``continue`` option will let the watcher continue.
633

    
634
The ``info`` option shows whether the watcher is currently paused.
635

    
636
redist-conf
637
~~~~~~~~~~~
638

    
639
**redist-conf** [--submit]
640

    
641
This command forces a full push of configuration files from the
642
master node to the other nodes in the cluster. This is normally not
643
needed, but can be run if the **verify** complains about
644
configuration mismatches.
645

    
646
The ``--submit`` option is used to send the job to the master
647
daemon but not wait for its completion. The job ID will be shown so
648
that it can be examined via **gnt-job info**.
649

    
650
REMOVE-TAGS
651
~~~~~~~~~~~
652

    
653
**remove-tags** [--from *file*] {*tag*...}
654

    
655
Remove tags from the cluster. If any of the tags are not existing
656
on the cluster, the entire operation will abort.
657

    
658
If the ``--from`` option is given, the list of tags to be removed will
659
be extended with the contents of that file (each line becomes a tag).
660
In this case, there is not need to pass tags on the command line (if
661
you do, tags from both sources will be removed). A file name of - will
662
be interpreted as stdin.
663

    
664
RENAME
665
~~~~~~
666

    
667
**rename** [-f] {*name*}
668

    
669
Renames the cluster and in the process updates the master IP
670
address to the one the new name resolves to. At least one of either
671
the name or the IP address must be different, otherwise the
672
operation will be aborted.
673

    
674
Note that since this command can be dangerous (especially when run
675
over SSH), the command will require confirmation unless run with
676
the ``-f`` option.
677

    
678
RENEW-CRYPTO
679
~~~~~~~~~~~~
680

    
681
| **renew-crypto** [-f]
682
| [--new-cluster-certificate] [--new-confd-hmac-key]
683
| [--new-rapi-certificate] [--rapi-certificate *rapi-cert*]
684
| [--new-spice-certificate | --spice-certificate *spice-cert*
685
| -- spice-ca-certificate *spice-ca-cert*]
686
| [--new-cluster-domain-secret] [--cluster-domain-secret *filename*]
687

    
688
This command will stop all Ganeti daemons in the cluster and start
689
them again once the new certificates and keys are replicated. The
690
options ``--new-cluster-certificate`` and ``--new-confd-hmac-key``
691
can be used to regenerate the cluster-internal SSL certificate
692
respective the HMAC key used by ganeti-confd(8).
693

    
694
To generate a new self-signed RAPI certificate (used by
695
ganeti-rapi(8)) specify ``--new-rapi-certificate``. If you want to
696
use your own certificate, e.g. one signed by a certificate
697
authority (CA), pass its filename to ``--rapi-certificate``.
698

    
699
To generate a new self-signed SPICE certificate, used by SPICE
700
connections to the KVM hypervisor, specify the
701
``--new-spice-certificate`` option. If you want to provide a
702
certificate, pass its filename to ``--spice-certificate`` and pass the
703
signing CA certificate to ``--spice-ca-certificate``.
704

    
705
``--new-cluster-domain-secret`` generates a new, random cluster
706
domain secret. ``--cluster-domain-secret`` reads the secret from a
707
file. The cluster domain secret is used to sign information
708
exchanged between separate clusters via a third party.
709

    
710
REPAIR-DISK-SIZES
711
~~~~~~~~~~~~~~~~~
712

    
713
**repair-disk-sizes** [instance...]
714

    
715
This command checks that the recorded size of the given instance's
716
disks matches the actual size and updates any mismatches found.
717
This is needed if the Ganeti configuration is no longer consistent
718
with reality, as it will impact some disk operations. If no
719
arguments are given, all instances will be checked.
720

    
721
Note that only active disks can be checked by this command; in case
722
a disk cannot be activated it's advised to use
723
**gnt-instance activate-disks --ignore-size ...** to force
724
activation without regard to the current size.
725

    
726
When the all disk sizes are consistent, the command will return no
727
output. Otherwise it will log details about the inconsistencies in
728
the configuration.
729

    
730
SEARCH-TAGS
731
~~~~~~~~~~~
732

    
733
**search-tags** {*pattern*}
734

    
735
Searches the tags on all objects in the cluster (the cluster
736
itself, the nodes and the instances) for a given pattern. The
737
pattern is interpreted as a regular expression and a search will be
738
done on it (i.e. the given pattern is not anchored to the beggining
739
of the string; if you want that, prefix the pattern with ^).
740

    
741
If no tags are matching the pattern, the exit code of the command
742
will be one. If there is at least one match, the exit code will be
743
zero. Each match is listed on one line, the object and the tag
744
separated by a space. The cluster will be listed as /cluster, a
745
node will be listed as /nodes/*name*, and an instance as
746
/instances/*name*. Example:
747

    
748
::
749

    
750
    # gnt-cluster search-tags time
751
    /cluster ctime:2007-09-01
752
    /nodes/node1.example.com mtime:2007-10-04
753

    
754
VERIFY
755
~~~~~~
756

    
757
| **verify** [--no-nplus1-mem] [--node-group *nodegroup*]
758
| [--error-codes] [{-I|--ignore-errors} *errorcode*]
759
| [{-I|--ignore-errors} *errorcode*...]
760

    
761
Verify correctness of cluster configuration. This is safe with
762
respect to running instances, and incurs no downtime of the
763
instances.
764

    
765
If the ``--no-nplus1-mem`` option is given, Ganeti won't check
766
whether if it loses a node it can restart all the instances on
767
their secondaries (and report an error otherwise).
768

    
769
With ``--node-group``, restrict the verification to those nodes and
770
instances that live in the named group. This will not verify global
771
settings, but will allow to perform verification of a group while other
772
operations are ongoing in other groups.
773

    
774
The ``--error-codes`` option outputs each error in the following
775
parseable format: *ftype*:*ecode*:*edomain*:*name*:*msg*.
776
These fields have the following meaning:
777

    
778
ftype
779
    Failure type. Can be *WARNING* or *ERROR*.
780

    
781
ecode
782
    Error code of the failure. See below for a list of error codes.
783

    
784
edomain
785
    Can be *cluster*, *node* or *instance*.
786

    
787
name
788
    Contains the name of the item that is affected from the failure.
789

    
790
msg
791
    Contains a descriptive error message about the error
792

    
793
``gnt-cluster verify`` will have a non-zero exit code if at least one of
794
the failures that are found are of type *ERROR*.
795

    
796
The ``--ignore-errors`` option can be used to change this behaviour,
797
because it demotes the error represented by the error code received as a
798
parameter to a warning. The option must be repeated for each error that
799
should be ignored (e.g.: ``-I ENODEVERSION -I ENODEORPHANLV``). The
800
``--error-codes`` option can be used to determine the error code of a
801
given error.
802

    
803
List of error codes:
804

    
805
@CONSTANTS_ECODES@
806

    
807
VERIFY-DISKS
808
~~~~~~~~~~~~
809

    
810
**verify-disks**
811

    
812
The command checks which instances have degraded DRBD disks and
813
activates the disks of those instances.
814

    
815
This command is run from the **ganeti-watcher** tool, which also
816
has a different, complementary algorithm for doing this check.
817
Together, these two should ensure that DRBD disks are kept
818
consistent.
819

    
820
VERSION
821
~~~~~~~
822

    
823
**version**
824

    
825
Show the cluster version.
826

    
827
.. vim: set textwidth=72 :
828
.. Local Variables:
829
.. mode: rst
830
.. fill-column: 72
831
.. End: