Statistics
| Branch: | Tag: | Revision:

root / man / gnt-instance.rst @ 30dd3377

History | View | Annotate | Download (67.5 kB)

1 1b7f2c85 Iustin Pop
gnt-instance(8) Ganeti | Version @GANETI_VERSION@
2 1b7f2c85 Iustin Pop
=================================================
3 1b7f2c85 Iustin Pop
4 1b7f2c85 Iustin Pop
Name
5 1b7f2c85 Iustin Pop
----
6 1b7f2c85 Iustin Pop
7 1b7f2c85 Iustin Pop
gnt-instance - Ganeti instance administration
8 1b7f2c85 Iustin Pop
9 1b7f2c85 Iustin Pop
Synopsis
10 1b7f2c85 Iustin Pop
--------
11 1b7f2c85 Iustin Pop
12 1b7f2c85 Iustin Pop
**gnt-instance** {command} [arguments...]
13 1b7f2c85 Iustin Pop
14 1b7f2c85 Iustin Pop
DESCRIPTION
15 1b7f2c85 Iustin Pop
-----------
16 1b7f2c85 Iustin Pop
17 1b7f2c85 Iustin Pop
The **gnt-instance** command is used for instance administration in
18 1b7f2c85 Iustin Pop
the Ganeti system.
19 1b7f2c85 Iustin Pop
20 1b7f2c85 Iustin Pop
COMMANDS
21 1b7f2c85 Iustin Pop
--------
22 1b7f2c85 Iustin Pop
23 1b7f2c85 Iustin Pop
Creation/removal/querying
24 1b7f2c85 Iustin Pop
~~~~~~~~~~~~~~~~~~~~~~~~~
25 1b7f2c85 Iustin Pop
26 1b7f2c85 Iustin Pop
ADD
27 1b7f2c85 Iustin Pop
^^^
28 1b7f2c85 Iustin Pop
29 1b7f2c85 Iustin Pop
| **add**
30 e8f936b0 Iustin Pop
| {-t|\--disk-template {diskless | file \| plain \| drbd \| rbd}}
31 12f126b2 Christos Stavrakakis
| {\--disk=*N*: {size=*VAL* \| adopt=*LV*}[,options...]
32 12f126b2 Christos Stavrakakis
|  \| {size=*VAL*,provider=*PROVIDER*}[,param=*value*... ][,options...]
33 e8f936b0 Iustin Pop
|  \| {-s|\--os-size} *SIZE*}
34 e8f936b0 Iustin Pop
| [\--no-ip-check] [\--no-name-check] [\--no-start] [\--no-install]
35 e8f936b0 Iustin Pop
| [\--net=*N* [:options...] \| \--no-nics]
36 e8f936b0 Iustin Pop
| [{-B|\--backend-parameters} *BEPARAMS*]
37 e8f936b0 Iustin Pop
| [{-H|\--hypervisor-parameters} *HYPERVISOR* [: option=*value*... ]]
38 e8f936b0 Iustin Pop
| [{-O|\--os-parameters} *param*=*value*... ]
39 e8f936b0 Iustin Pop
| [\--file-storage-dir *dir\_path*] [\--file-driver {loop \| blktap}]
40 e8f936b0 Iustin Pop
| {{-n|\--node} *node[:secondary-node]* \| {-I|\--iallocator} *name*}
41 e8f936b0 Iustin Pop
| {{-o|\--os-type} *os-type*}
42 e8f936b0 Iustin Pop
| [\--submit]
43 e8f936b0 Iustin Pop
| [\--ignore-ipolicy]
44 1b7f2c85 Iustin Pop
| {*instance*}
45 1b7f2c85 Iustin Pop
46 1b7f2c85 Iustin Pop
Creates a new instance on the specified host. The *instance* argument
47 1b7f2c85 Iustin Pop
must be in DNS, but depending on the bridge/routing setup, need not be
48 1b7f2c85 Iustin Pop
in the same network as the nodes in the cluster.
49 1b7f2c85 Iustin Pop
50 1b7f2c85 Iustin Pop
The ``disk`` option specifies the parameters for the disks of the
51 1b7f2c85 Iustin Pop
instance. The numbering of disks starts at zero, and at least one disk
52 1b7f2c85 Iustin Pop
needs to be passed. For each disk, either the size or the adoption
53 12f126b2 Christos Stavrakakis
source needs to be given. The size is interpreted (when no unit is
54 e19f7095 Constantinos Venetsanopoulos
given) in mebibytes. You can also use one of the suffixes *m*, *g* or
55 e19f7095 Constantinos Venetsanopoulos
*t* to specify the exact the units used; these suffixes map to
56 12f126b2 Christos Stavrakakis
mebibytes, gibibytes and tebibytes. Each disk can also take these
57 12f126b2 Christos Stavrakakis
parameters (all optional):
58 12f126b2 Christos Stavrakakis
59 12f126b2 Christos Stavrakakis
mode
60 12f126b2 Christos Stavrakakis
  The access mode. Either ``ro`` (read-only) or the default ``rw``
61 12f126b2 Christos Stavrakakis
  (read-write).
62 12f126b2 Christos Stavrakakis
63 12f126b2 Christos Stavrakakis
name
64 12f126b2 Christos Stavrakakis
   this option specifies a name for the disk, which can be used as a disk
65 12f126b2 Christos Stavrakakis
   identifier. An instance can not have two disks with the same name.
66 12f126b2 Christos Stavrakakis
67 12f126b2 Christos Stavrakakis
vg
68 12f126b2 Christos Stavrakakis
   The LVM volume group. This works only for LVM and DRBD devices.
69 12f126b2 Christos Stavrakakis
70 12f126b2 Christos Stavrakakis
metavg
71 12f126b2 Christos Stavrakakis
   This options specifies a different VG for the metadata device. This
72 12f126b2 Christos Stavrakakis
   works only for DRBD devices
73 e19f7095 Constantinos Venetsanopoulos
74 e19f7095 Constantinos Venetsanopoulos
When creating ExtStorage disks, also arbitrary parameters can be passed,
75 e19f7095 Constantinos Venetsanopoulos
to the ExtStorage provider. Those parameters are passed as additional
76 e19f7095 Constantinos Venetsanopoulos
comma separated options. Therefore, an ExtStorage disk provided by
77 e19f7095 Constantinos Venetsanopoulos
provider ``pvdr1`` with parameters ``param1``, ``param2`` would be
78 e19f7095 Constantinos Venetsanopoulos
passed as ``--disk 0:size=10G,provider=pvdr1,param1=val1,param2=val2``.
79 1b7f2c85 Iustin Pop
80 1b7f2c85 Iustin Pop
When using the ``adopt`` key in the disk definition, Ganeti will
81 1b7f2c85 Iustin Pop
reuse those volumes (instead of creating new ones) as the
82 1b7f2c85 Iustin Pop
instance's disks. Ganeti will rename these volumes to the standard
83 1b7f2c85 Iustin Pop
format, and (without installing the OS) will use them as-is for the
84 1b7f2c85 Iustin Pop
instance. This allows migrating instances from non-managed mode
85 1cdc9dbb Bernardo Dal Seno
(e.g. plain KVM with LVM) to being managed via Ganeti. Please note that
86 1b7f2c85 Iustin Pop
this works only for the \`plain' disk template (see below for
87 1b7f2c85 Iustin Pop
template details).
88 1b7f2c85 Iustin Pop
89 1b7f2c85 Iustin Pop
Alternatively, a single-disk instance can be created via the ``-s``
90 1b7f2c85 Iustin Pop
option which takes a single argument, the size of the disk. This is
91 1b7f2c85 Iustin Pop
similar to the Ganeti 1.2 version (but will only create one disk).
92 1b7f2c85 Iustin Pop
93 1b7f2c85 Iustin Pop
The minimum disk specification is therefore ``--disk 0:size=20G`` (or
94 1b7f2c85 Iustin Pop
``-s 20G`` when using the ``-s`` option), and a three-disk instance
95 1b7f2c85 Iustin Pop
can be specified as ``--disk 0:size=20G --disk 1:size=4G --disk
96 1b7f2c85 Iustin Pop
2:size=100G``.
97 1b7f2c85 Iustin Pop
98 e19f7095 Constantinos Venetsanopoulos
The minimum information needed to specify an ExtStorage disk are the
99 e19f7095 Constantinos Venetsanopoulos
``size`` and the ``provider``. For example:
100 e19f7095 Constantinos Venetsanopoulos
``--disk 0:size=20G,provider=pvdr1``.
101 e19f7095 Constantinos Venetsanopoulos
102 1b7f2c85 Iustin Pop
The ``--no-ip-check`` skips the checks that are done to see if the
103 1b7f2c85 Iustin Pop
instance's IP is not already alive (i.e. reachable from the master
104 1b7f2c85 Iustin Pop
node).
105 1b7f2c85 Iustin Pop
106 1b7f2c85 Iustin Pop
The ``--no-name-check`` skips the check for the instance name via
107 1b7f2c85 Iustin Pop
the resolver (e.g. in DNS or /etc/hosts, depending on your setup).
108 1b7f2c85 Iustin Pop
Since the name check is used to compute the IP address, if you pass
109 1b7f2c85 Iustin Pop
this option you must also pass the ``--no-ip-check`` option.
110 1b7f2c85 Iustin Pop
111 50c1e351 Bernardo Dal Seno
If you don't want the instance to automatically start after
112 1b7f2c85 Iustin Pop
creation, this is possible via the ``--no-start`` option. This will
113 1b7f2c85 Iustin Pop
leave the instance down until a subsequent **gnt-instance start**
114 1b7f2c85 Iustin Pop
command.
115 1b7f2c85 Iustin Pop
116 1b7f2c85 Iustin Pop
The NICs of the instances can be specified via the ``--net``
117 1b7f2c85 Iustin Pop
option. By default, one NIC is created for the instance, with a
118 c8b96be4 Guido Trotter
random MAC, and set up according the the cluster level NIC
119 1b7f2c85 Iustin Pop
parameters. Each NIC can take these parameters (all optional):
120 1b7f2c85 Iustin Pop
121 1b7f2c85 Iustin Pop
mac
122 1b7f2c85 Iustin Pop
    either a value or 'generate' to generate a new unique MAC
123 1b7f2c85 Iustin Pop
124 1b7f2c85 Iustin Pop
ip
125 1b7f2c85 Iustin Pop
    specifies the IP address assigned to the instance from the Ganeti
126 1b7f2c85 Iustin Pop
    side (this is not necessarily what the instance will use, but what
127 1b7f2c85 Iustin Pop
    the node expects the instance to use)
128 1b7f2c85 Iustin Pop
129 1b7f2c85 Iustin Pop
mode
130 c8b96be4 Guido Trotter
    specifies the connection mode for this NIC: routed, bridged or
131 57fb6fcb Guido Trotter
    openvswitch.
132 1b7f2c85 Iustin Pop
133 1b7f2c85 Iustin Pop
link
134 57fb6fcb Guido Trotter
    in bridged or openvswitch mode specifies the interface to attach
135 57fb6fcb Guido Trotter
    this NIC to, in routed mode it's intended to differentiate between
136 57fb6fcb Guido Trotter
    different routing tables/instance groups (but the meaning is
137 354c4f62 Michael Hanselmann
    dependent on the network script, see **gnt-cluster**\(8) for more
138 57fb6fcb Guido Trotter
    details). Note that openvswitch support is also hypervisor
139 57fb6fcb Guido Trotter
    dependent.
140 1b7f2c85 Iustin Pop
141 176dfd54 Helga Velroyen
network
142 176dfd54 Helga Velroyen
    derives the mode and the link from the settings of the network
143 176dfd54 Helga Velroyen
    which is identified by its name. If the network option is chosen,
144 d9e2b496 Guido Trotter
    link and mode must not be specified. Note that the mode and link
145 d9e2b496 Guido Trotter
    depend on the network-to-nodegroup connection, thus allowing
146 d9e2b496 Guido Trotter
    different nodegroups to be connected to the same network in
147 d9e2b496 Guido Trotter
    different ways.
148 176dfd54 Helga Velroyen
149 12f126b2 Christos Stavrakakis
name
150 12f126b2 Christos Stavrakakis
   this option specifies a name for the NIC, which can be used as a NIC
151 12f126b2 Christos Stavrakakis
   identifier. An instance can not have two NICs with the same name.
152 12f126b2 Christos Stavrakakis
153 1b7f2c85 Iustin Pop
154 c8b96be4 Guido Trotter
Of these "mode" and "link" are NIC parameters, and inherit their
155 9d0671ba Iustin Pop
default at cluster level.  Alternatively, if no network is desired for
156 9d0671ba Iustin Pop
the instance, you can prevent the default of one NIC with the
157 9d0671ba Iustin Pop
``--no-nics`` option.
158 1b7f2c85 Iustin Pop
159 0a68e0ff Iustin Pop
The ``-o (--os-type)`` option specifies the operating system to be
160 0a68e0ff Iustin Pop
installed.  The available operating systems can be listed with
161 0a68e0ff Iustin Pop
**gnt-os list**.  Passing ``--no-install`` will however skip the OS
162 0a68e0ff Iustin Pop
installation, allowing a manual import if so desired. Note that the
163 1b7f2c85 Iustin Pop
no-installation mode will automatically disable the start-up of the
164 1b7f2c85 Iustin Pop
instance (without an OS, it most likely won't be able to start-up
165 1b7f2c85 Iustin Pop
successfully).
166 1b7f2c85 Iustin Pop
167 0a68e0ff Iustin Pop
The ``-B (--backend-parameters)`` option specifies the backend
168 0a68e0ff Iustin Pop
parameters for the instance. If no such parameters are specified, the
169 0a68e0ff Iustin Pop
values are inherited from the cluster. Possible parameters are:
170 1b7f2c85 Iustin Pop
171 90bb3fe1 Guido Trotter
maxmem
172 90bb3fe1 Guido Trotter
    the maximum memory size of the instance; as usual, suffixes can be
173 1cdc9dbb Bernardo Dal Seno
    used to denote the unit, otherwise the value is taken in mebibytes
174 90bb3fe1 Guido Trotter
175 90bb3fe1 Guido Trotter
minmem
176 90bb3fe1 Guido Trotter
    the minimum memory size of the instance; as usual, suffixes can be
177 1cdc9dbb Bernardo Dal Seno
    used to denote the unit, otherwise the value is taken in mebibytes
178 1b7f2c85 Iustin Pop
179 1b7f2c85 Iustin Pop
vcpus
180 1b7f2c85 Iustin Pop
    the number of VCPUs to assign to the instance (if this value makes
181 1b7f2c85 Iustin Pop
    sense for the hypervisor)
182 1b7f2c85 Iustin Pop
183 1b7f2c85 Iustin Pop
auto\_balance
184 1b7f2c85 Iustin Pop
    whether the instance is considered in the N+1 cluster checks
185 1b7f2c85 Iustin Pop
    (enough redundancy in the cluster to survive a node failure)
186 1b7f2c85 Iustin Pop
187 11dc66f3 Bernardo Dal Seno
always\_failover
188 11dc66f3 Bernardo Dal Seno
    ``True`` or ``False``, whether the instance must be failed over
189 11dc66f3 Bernardo Dal Seno
    (shut down and rebooted) always or it may be migrated (briefly
190 11dc66f3 Bernardo Dal Seno
    suspended)
191 11dc66f3 Bernardo Dal Seno
192 90bb3fe1 Guido Trotter
Note that before 2.6 Ganeti had a ``memory`` parameter, which was the
193 90bb3fe1 Guido Trotter
only value of memory an instance could have. With the
194 90bb3fe1 Guido Trotter
``maxmem``/``minmem`` change Ganeti guarantees that at least the minimum
195 90bb3fe1 Guido Trotter
memory is always available for an instance, but allows more memory to be
196 90bb3fe1 Guido Trotter
used (up to the maximum memory) should it be free.
197 1b7f2c85 Iustin Pop
198 0a68e0ff Iustin Pop
The ``-H (--hypervisor-parameters)`` option specified the hypervisor
199 0a68e0ff Iustin Pop
to use for the instance (must be one of the enabled hypervisors on the
200 0a68e0ff Iustin Pop
cluster) and optionally custom parameters for this instance. If not
201 0a68e0ff Iustin Pop
other options are used (i.e. the invocation is just -H *NAME*) the
202 0a68e0ff Iustin Pop
instance will inherit the cluster options. The defaults below show the
203 0a68e0ff Iustin Pop
cluster defaults at cluster creation time.
204 1b7f2c85 Iustin Pop
205 1b7f2c85 Iustin Pop
The possible hypervisor options are as follows:
206 1b7f2c85 Iustin Pop
207 1b7f2c85 Iustin Pop
boot\_order
208 1b7f2c85 Iustin Pop
    Valid for the Xen HVM and KVM hypervisors.
209 1b7f2c85 Iustin Pop
210 1b7f2c85 Iustin Pop
    A string value denoting the boot order. This has different meaning
211 1b7f2c85 Iustin Pop
    for the Xen HVM hypervisor and for the KVM one.
212 1b7f2c85 Iustin Pop
213 1b7f2c85 Iustin Pop
    For Xen HVM, The boot order is a string of letters listing the boot
214 1b7f2c85 Iustin Pop
    devices, with valid device letters being:
215 1b7f2c85 Iustin Pop
216 1b7f2c85 Iustin Pop
    a
217 1b7f2c85 Iustin Pop
        floppy drive
218 1b7f2c85 Iustin Pop
219 1b7f2c85 Iustin Pop
    c
220 1b7f2c85 Iustin Pop
        hard disk
221 1b7f2c85 Iustin Pop
222 1b7f2c85 Iustin Pop
    d
223 1b7f2c85 Iustin Pop
        CDROM drive
224 1b7f2c85 Iustin Pop
225 1b7f2c85 Iustin Pop
    n
226 1b7f2c85 Iustin Pop
        network boot (PXE)
227 1b7f2c85 Iustin Pop
228 1cdc9dbb Bernardo Dal Seno
    The default is not to set an HVM boot order, which is interpreted
229 9d0671ba Iustin Pop
    as 'dc'.
230 1b7f2c85 Iustin Pop
231 9d0671ba Iustin Pop
    For KVM the boot order is either "floppy", "cdrom", "disk" or
232 2b846304 Iustin Pop
    "network".  Please note that older versions of KVM couldn't netboot
233 2b846304 Iustin Pop
    from virtio interfaces. This has been fixed in more recent versions
234 2b846304 Iustin Pop
    and is confirmed to work at least with qemu-kvm 0.11.1. Also note
235 2b846304 Iustin Pop
    that if you have set the ``kernel_path`` option, that will be used
236 2b846304 Iustin Pop
    for booting, and this setting will be silently ignored.
237 1b7f2c85 Iustin Pop
238 525011bc Maciej Bliziński
blockdev\_prefix
239 525011bc Maciej Bliziński
    Valid for the Xen HVM and PVM hypervisors.
240 525011bc Maciej Bliziński
241 f7b769b1 Iustin Pop
    Relevant to non-pvops guest kernels, in which the disk device names
242 f7b769b1 Iustin Pop
    are given by the host.  Allows one to specify 'xvd', which helps run
243 9d0671ba Iustin Pop
    Red Hat based installers, driven by anaconda.
244 525011bc Maciej Bliziński
245 81dd9bd1 Marco Casavecchia
floppy\_image\_path
246 81dd9bd1 Marco Casavecchia
    Valid for the KVM hypervisor.
247 81dd9bd1 Marco Casavecchia
248 9d0671ba Iustin Pop
    The path to a floppy disk image to attach to the instance.  This
249 9d0671ba Iustin Pop
    is useful to install Windows operating systems on Virt/IO disks
250 9d0671ba Iustin Pop
    because you can specify here the floppy for the drivers at
251 9d0671ba Iustin Pop
    installation time.
252 525011bc Maciej Bliziński
253 1b7f2c85 Iustin Pop
cdrom\_image\_path
254 1b7f2c85 Iustin Pop
    Valid for the Xen HVM and KVM hypervisors.
255 1b7f2c85 Iustin Pop
256 1b7f2c85 Iustin Pop
    The path to a CDROM image to attach to the instance.
257 1b7f2c85 Iustin Pop
258 81dd9bd1 Marco Casavecchia
cdrom2\_image\_path
259 81dd9bd1 Marco Casavecchia
    Valid for the KVM hypervisor.
260 81dd9bd1 Marco Casavecchia
261 81dd9bd1 Marco Casavecchia
    The path to a second CDROM image to attach to the instance.
262 81dd9bd1 Marco Casavecchia
    **NOTE**: This image can't be used to boot the system. To do that
263 81dd9bd1 Marco Casavecchia
    you have to use the 'cdrom\_image\_path' option.
264 81dd9bd1 Marco Casavecchia
265 1b7f2c85 Iustin Pop
nic\_type
266 1b7f2c85 Iustin Pop
    Valid for the Xen HVM and KVM hypervisors.
267 1b7f2c85 Iustin Pop
268 1b7f2c85 Iustin Pop
    This parameter determines the way the network cards are presented
269 1b7f2c85 Iustin Pop
    to the instance. The possible options are:
270 1b7f2c85 Iustin Pop
271 0a68e0ff Iustin Pop
    - rtl8139 (default for Xen HVM) (HVM & KVM)
272 0a68e0ff Iustin Pop
    - ne2k\_isa (HVM & KVM)
273 0a68e0ff Iustin Pop
    - ne2k\_pci (HVM & KVM)
274 0a68e0ff Iustin Pop
    - i82551 (KVM)
275 0a68e0ff Iustin Pop
    - i82557b (KVM)
276 0a68e0ff Iustin Pop
    - i82559er (KVM)
277 0a68e0ff Iustin Pop
    - pcnet (KVM)
278 0a68e0ff Iustin Pop
    - e1000 (KVM)
279 0a68e0ff Iustin Pop
    - paravirtual (default for KVM) (HVM & KVM)
280 1b7f2c85 Iustin Pop
281 1b7f2c85 Iustin Pop
disk\_type
282 1b7f2c85 Iustin Pop
    Valid for the Xen HVM and KVM hypervisors.
283 1b7f2c85 Iustin Pop
284 1b7f2c85 Iustin Pop
    This parameter determines the way the disks are presented to the
285 1b7f2c85 Iustin Pop
    instance. The possible options are:
286 1b7f2c85 Iustin Pop
287 9d0671ba Iustin Pop
    - ioemu [default] (HVM & KVM)
288 9d0671ba Iustin Pop
    - ide (HVM & KVM)
289 9d0671ba Iustin Pop
    - scsi (KVM)
290 9d0671ba Iustin Pop
    - sd (KVM)
291 9d0671ba Iustin Pop
    - mtd (KVM)
292 9d0671ba Iustin Pop
    - pflash (KVM)
293 1b7f2c85 Iustin Pop
294 1b7f2c85 Iustin Pop
295 81dd9bd1 Marco Casavecchia
cdrom\_disk\_type
296 81dd9bd1 Marco Casavecchia
    Valid for the KVM hypervisor.
297 1b7f2c85 Iustin Pop
298 9d0671ba Iustin Pop
    This parameter determines the way the cdroms disks are presented
299 9d0671ba Iustin Pop
    to the instance. The default behavior is to get the same value of
300 50c1e351 Bernardo Dal Seno
    the earlier parameter (disk_type). The possible options are:
301 1b7f2c85 Iustin Pop
302 9d0671ba Iustin Pop
    - paravirtual
303 9d0671ba Iustin Pop
    - ide
304 9d0671ba Iustin Pop
    - scsi
305 9d0671ba Iustin Pop
    - sd
306 9d0671ba Iustin Pop
    - mtd
307 9d0671ba Iustin Pop
    - pflash
308 1b7f2c85 Iustin Pop
309 1b7f2c85 Iustin Pop
310 1b7f2c85 Iustin Pop
vnc\_bind\_address
311 1b7f2c85 Iustin Pop
    Valid for the Xen HVM and KVM hypervisors.
312 1b7f2c85 Iustin Pop
313 1b7f2c85 Iustin Pop
    Specifies the address that the VNC listener for this instance
314 1b7f2c85 Iustin Pop
    should bind to. Valid values are IPv4 addresses. Use the address
315 1b7f2c85 Iustin Pop
    0.0.0.0 to bind to all available interfaces (this is the default)
316 1b7f2c85 Iustin Pop
    or specify the address of one of the interfaces on the node to
317 1b7f2c85 Iustin Pop
    restrict listening to that interface.
318 1b7f2c85 Iustin Pop
319 1b7f2c85 Iustin Pop
vnc\_tls
320 1b7f2c85 Iustin Pop
    Valid for the KVM hypervisor.
321 1b7f2c85 Iustin Pop
322 1b7f2c85 Iustin Pop
    A boolean option that controls whether the VNC connection is
323 1b7f2c85 Iustin Pop
    secured with TLS.
324 1b7f2c85 Iustin Pop
325 1b7f2c85 Iustin Pop
vnc\_x509\_path
326 1b7f2c85 Iustin Pop
    Valid for the KVM hypervisor.
327 1b7f2c85 Iustin Pop
328 1b7f2c85 Iustin Pop
    If ``vnc_tls`` is enabled, this options specifies the path to the
329 1b7f2c85 Iustin Pop
    x509 certificate to use.
330 1b7f2c85 Iustin Pop
331 1b7f2c85 Iustin Pop
vnc\_x509\_verify
332 1b7f2c85 Iustin Pop
    Valid for the KVM hypervisor.
333 1b7f2c85 Iustin Pop
334 c7570029 Andrea Spadaccini
spice\_bind
335 c7570029 Andrea Spadaccini
    Valid for the KVM hypervisor.
336 c7570029 Andrea Spadaccini
337 c7570029 Andrea Spadaccini
    Specifies the address or interface on which the SPICE server will
338 c7570029 Andrea Spadaccini
    listen. Valid values are:
339 c7570029 Andrea Spadaccini
340 c7570029 Andrea Spadaccini
    - IPv4 addresses, including 0.0.0.0 and 127.0.0.1
341 c7570029 Andrea Spadaccini
    - IPv6 addresses, including :: and ::1
342 c7570029 Andrea Spadaccini
    - names of network interfaces
343 c7570029 Andrea Spadaccini
344 c7570029 Andrea Spadaccini
    If a network interface is specified, the SPICE server will be bound
345 c7570029 Andrea Spadaccini
    to one of the addresses of that interface.
346 c7570029 Andrea Spadaccini
347 c7570029 Andrea Spadaccini
spice\_ip\_version
348 c7570029 Andrea Spadaccini
    Valid for the KVM hypervisor.
349 c7570029 Andrea Spadaccini
350 c7570029 Andrea Spadaccini
    Specifies which version of the IP protocol should be used by the
351 c7570029 Andrea Spadaccini
    SPICE server.
352 c7570029 Andrea Spadaccini
353 c7570029 Andrea Spadaccini
    It is mainly intended to be used for specifying what kind of IP
354 c7570029 Andrea Spadaccini
    addresses should be used if a network interface with both IPv4 and
355 c7570029 Andrea Spadaccini
    IPv6 addresses is specified via the ``spice_bind`` parameter. In
356 c7570029 Andrea Spadaccini
    this case, if the ``spice_ip_version`` parameter is not used, the
357 c7570029 Andrea Spadaccini
    default IP version of the cluster will be used.
358 c7570029 Andrea Spadaccini
359 b451c4c7 Andrea Spadaccini
spice\_password\_file
360 b451c4c7 Andrea Spadaccini
    Valid for the KVM hypervisor.
361 b451c4c7 Andrea Spadaccini
362 b451c4c7 Andrea Spadaccini
    Specifies a file containing the password that must be used when
363 b451c4c7 Andrea Spadaccini
    connecting via the SPICE protocol. If the option is not specified,
364 b451c4c7 Andrea Spadaccini
    passwordless connections are allowed.
365 b451c4c7 Andrea Spadaccini
366 ea064d24 Andrea Spadaccini
spice\_image\_compression
367 ea064d24 Andrea Spadaccini
    Valid for the KVM hypervisor.
368 ea064d24 Andrea Spadaccini
369 ea064d24 Andrea Spadaccini
    Configures the SPICE lossless image compression. Valid values are:
370 ea064d24 Andrea Spadaccini
371 ea064d24 Andrea Spadaccini
    - auto_glz
372 ea064d24 Andrea Spadaccini
    - auto_lz
373 ea064d24 Andrea Spadaccini
    - quic
374 ea064d24 Andrea Spadaccini
    - glz
375 ea064d24 Andrea Spadaccini
    - lz
376 ea064d24 Andrea Spadaccini
    - off
377 ea064d24 Andrea Spadaccini
378 ea064d24 Andrea Spadaccini
spice\_jpeg\_wan\_compression
379 ea064d24 Andrea Spadaccini
    Valid for the KVM hypervisor.
380 ea064d24 Andrea Spadaccini
381 ea064d24 Andrea Spadaccini
    Configures how SPICE should use the jpeg algorithm for lossy image
382 ea064d24 Andrea Spadaccini
    compression on slow links. Valid values are:
383 ea064d24 Andrea Spadaccini
384 ea064d24 Andrea Spadaccini
    - auto
385 ea064d24 Andrea Spadaccini
    - never
386 ea064d24 Andrea Spadaccini
    - always
387 ea064d24 Andrea Spadaccini
388 ea064d24 Andrea Spadaccini
spice\_zlib\_glz\_wan\_compression
389 ea064d24 Andrea Spadaccini
    Valid for the KVM hypervisor.
390 ea064d24 Andrea Spadaccini
391 ea064d24 Andrea Spadaccini
    Configures how SPICE should use the zlib-glz algorithm for lossy image
392 ea064d24 Andrea Spadaccini
    compression on slow links. Valid values are:
393 ea064d24 Andrea Spadaccini
394 ea064d24 Andrea Spadaccini
    - auto
395 ea064d24 Andrea Spadaccini
    - never
396 ea064d24 Andrea Spadaccini
    - always
397 ea064d24 Andrea Spadaccini
398 ea064d24 Andrea Spadaccini
spice\_streaming\_video
399 ea064d24 Andrea Spadaccini
    Valid for the KVM hypervisor.
400 ea064d24 Andrea Spadaccini
401 ea064d24 Andrea Spadaccini
    Configures how SPICE should detect video streams. Valid values are:
402 ea064d24 Andrea Spadaccini
403 ea064d24 Andrea Spadaccini
    - off
404 ea064d24 Andrea Spadaccini
    - all
405 ea064d24 Andrea Spadaccini
    - filter
406 ea064d24 Andrea Spadaccini
407 ea064d24 Andrea Spadaccini
spice\_playback\_compression
408 ea064d24 Andrea Spadaccini
    Valid for the KVM hypervisor.
409 ea064d24 Andrea Spadaccini
410 ea064d24 Andrea Spadaccini
    Configures whether SPICE should compress audio streams or not.
411 ea064d24 Andrea Spadaccini
412 b8a10435 Andrea Spadaccini
spice\_use\_tls
413 b8a10435 Andrea Spadaccini
    Valid for the KVM hypervisor.
414 b8a10435 Andrea Spadaccini
415 b8a10435 Andrea Spadaccini
    Specifies that the SPICE server must use TLS to encrypt all the
416 b8a10435 Andrea Spadaccini
    traffic with the client.
417 b8a10435 Andrea Spadaccini
418 3e40b587 Andrea Spadaccini
spice\_tls\_ciphers
419 3e40b587 Andrea Spadaccini
    Valid for the KVM hypervisor.
420 3e40b587 Andrea Spadaccini
421 3e40b587 Andrea Spadaccini
    Specifies a list of comma-separated ciphers that SPICE should use
422 354c4f62 Michael Hanselmann
    for TLS connections. For the format, see man **cipher**\(1).
423 3e40b587 Andrea Spadaccini
424 3e40b587 Andrea Spadaccini
spice\_use\_vdagent
425 3e40b587 Andrea Spadaccini
    Valid for the KVM hypervisor.
426 3e40b587 Andrea Spadaccini
427 3e40b587 Andrea Spadaccini
    Enables or disables passing mouse events via SPICE vdagent.
428 3e40b587 Andrea Spadaccini
429 7cb42171 Nikita Staroverov
cpu\_type
430 7cb42171 Nikita Staroverov
    Valid for the KVM hypervisor.
431 7cb42171 Nikita Staroverov
432 7cb42171 Nikita Staroverov
    This parameter determines the emulated cpu for the instance. If this
433 7cb42171 Nikita Staroverov
    parameter is empty (which is the default configuration), it will not
434 7cb42171 Nikita Staroverov
    be passed to KVM.
435 7cb42171 Nikita Staroverov
436 7cb42171 Nikita Staroverov
    Be aware of setting this parameter to ``"host"`` if you have nodes
437 7cb42171 Nikita Staroverov
    with different CPUs from each other. Live migration may stop working
438 7cb42171 Nikita Staroverov
    in this situation.
439 7cb42171 Nikita Staroverov
440 7cb42171 Nikita Staroverov
    For more information please refer to the KVM manual.
441 7cb42171 Nikita Staroverov
442 1b7f2c85 Iustin Pop
acpi
443 1b7f2c85 Iustin Pop
    Valid for the Xen HVM and KVM hypervisors.
444 1b7f2c85 Iustin Pop
445 1b7f2c85 Iustin Pop
    A boolean option that specifies if the hypervisor should enable
446 1b7f2c85 Iustin Pop
    ACPI support for this instance. By default, ACPI is disabled.
447 1b7f2c85 Iustin Pop
448 1b7f2c85 Iustin Pop
pae
449 1b7f2c85 Iustin Pop
    Valid for the Xen HVM and KVM hypervisors.
450 1b7f2c85 Iustin Pop
451 1b7f2c85 Iustin Pop
    A boolean option that specifies if the hypervisor should enabled
452 1b7f2c85 Iustin Pop
    PAE support for this instance. The default is false, disabling PAE
453 1b7f2c85 Iustin Pop
    support.
454 1b7f2c85 Iustin Pop
455 1b7f2c85 Iustin Pop
use\_localtime
456 1b7f2c85 Iustin Pop
    Valid for the Xen HVM and KVM hypervisors.
457 1b7f2c85 Iustin Pop
458 1b7f2c85 Iustin Pop
    A boolean option that specifies if the instance should be started
459 1b7f2c85 Iustin Pop
    with its clock set to the localtime of the machine (when true) or
460 1b7f2c85 Iustin Pop
    to the UTC (When false). The default is false, which is useful for
461 1b7f2c85 Iustin Pop
    Linux/Unix machines; for Windows OSes, it is recommended to enable
462 1b7f2c85 Iustin Pop
    this parameter.
463 1b7f2c85 Iustin Pop
464 1b7f2c85 Iustin Pop
kernel\_path
465 1b7f2c85 Iustin Pop
    Valid for the Xen PVM and KVM hypervisors.
466 1b7f2c85 Iustin Pop
467 1b7f2c85 Iustin Pop
    This option specifies the path (on the node) to the kernel to boot
468 2b846304 Iustin Pop
    the instance with. Xen PVM instances always require this, while for
469 2b846304 Iustin Pop
    KVM if this option is empty, it will cause the machine to load the
470 2b846304 Iustin Pop
    kernel from its disks (and the boot will be done accordingly to
471 2b846304 Iustin Pop
    ``boot_order``).
472 1b7f2c85 Iustin Pop
473 1b7f2c85 Iustin Pop
kernel\_args
474 1b7f2c85 Iustin Pop
    Valid for the Xen PVM and KVM hypervisors.
475 1b7f2c85 Iustin Pop
476 1b7f2c85 Iustin Pop
    This options specifies extra arguments to the kernel that will be
477 1b7f2c85 Iustin Pop
    loaded. device. This is always used for Xen PVM, while for KVM it
478 1b7f2c85 Iustin Pop
    is only used if the ``kernel_path`` option is also specified.
479 1b7f2c85 Iustin Pop
480 9d0671ba Iustin Pop
    The default setting for this value is simply ``"ro"``, which
481 9d0671ba Iustin Pop
    mounts the root disk (initially) in read-only one. For example,
482 9d0671ba Iustin Pop
    setting this to single will cause the instance to start in
483 9d0671ba Iustin Pop
    single-user mode.
484 1b7f2c85 Iustin Pop
485 1b7f2c85 Iustin Pop
initrd\_path
486 1b7f2c85 Iustin Pop
    Valid for the Xen PVM and KVM hypervisors.
487 1b7f2c85 Iustin Pop
488 1b7f2c85 Iustin Pop
    This option specifies the path (on the node) to the initrd to boot
489 9d0671ba Iustin Pop
    the instance with. Xen PVM instances can use this always, while
490 9d0671ba Iustin Pop
    for KVM if this option is only used if the ``kernel_path`` option
491 9d0671ba Iustin Pop
    is also specified. You can pass here either an absolute filename
492 9d0671ba Iustin Pop
    (the path to the initrd) if you want to use an initrd, or use the
493 9d0671ba Iustin Pop
    format no\_initrd\_path for no initrd.
494 1b7f2c85 Iustin Pop
495 1b7f2c85 Iustin Pop
root\_path
496 1b7f2c85 Iustin Pop
    Valid for the Xen PVM and KVM hypervisors.
497 1b7f2c85 Iustin Pop
498 1b7f2c85 Iustin Pop
    This options specifies the name of the root device. This is always
499 1b7f2c85 Iustin Pop
    needed for Xen PVM, while for KVM it is only used if the
500 1b7f2c85 Iustin Pop
    ``kernel_path`` option is also specified.
501 1b7f2c85 Iustin Pop
502 7adf7814 René Nussbaumer
    Please note, that if this setting is an empty string and the
503 7adf7814 René Nussbaumer
    hypervisor is Xen it will not be written to the Xen configuration
504 7adf7814 René Nussbaumer
    file
505 7adf7814 René Nussbaumer
506 1b7f2c85 Iustin Pop
serial\_console
507 1b7f2c85 Iustin Pop
    Valid for the KVM hypervisor.
508 1b7f2c85 Iustin Pop
509 1b7f2c85 Iustin Pop
    This boolean option specifies whether to emulate a serial console
510 18c3417b Guido Trotter
    for the instance. Note that some versions of KVM have a bug that
511 18c3417b Guido Trotter
    will make an instance hang when configured to use the serial console
512 18c3417b Guido Trotter
    unless a connection is made to it within about 2 seconds of the
513 18c3417b Guido Trotter
    instance's startup. For such case it's recommended to disable this
514 18c3417b Guido Trotter
    option, which is enabled by default.
515 1b7f2c85 Iustin Pop
516 14fd6c81 Guido Trotter
serial\_speed
517 14fd6c81 Guido Trotter
    Valid for the KVM hypervisor.
518 14fd6c81 Guido Trotter
519 14fd6c81 Guido Trotter
    This integer option specifies the speed of the serial console.
520 14fd6c81 Guido Trotter
    Common values are 9600, 19200, 38400, 57600 and 115200: choose the
521 14fd6c81 Guido Trotter
    one which works on your system. (The default is 38400 for historical
522 14fd6c81 Guido Trotter
    reasons, but newer versions of kvm/qemu work with 115200)
523 14fd6c81 Guido Trotter
524 1b7f2c85 Iustin Pop
disk\_cache
525 1b7f2c85 Iustin Pop
    Valid for the KVM hypervisor.
526 1b7f2c85 Iustin Pop
527 9d0671ba Iustin Pop
    The disk cache mode. It can be either default to not pass any
528 9d0671ba Iustin Pop
    cache option to KVM, or one of the KVM cache modes: none (for
529 9d0671ba Iustin Pop
    direct I/O), writethrough (to use the host cache but report
530 9d0671ba Iustin Pop
    completion to the guest only when the host has committed the
531 9d0671ba Iustin Pop
    changes to disk) or writeback (to use the host cache and report
532 9d0671ba Iustin Pop
    completion as soon as the data is in the host cache). Note that
533 9d0671ba Iustin Pop
    there are special considerations for the cache mode depending on
534 9d0671ba Iustin Pop
    version of KVM used and disk type (always raw file under Ganeti),
535 9d0671ba Iustin Pop
    please refer to the KVM documentation for more details.
536 1b7f2c85 Iustin Pop
537 1b7f2c85 Iustin Pop
security\_model
538 1b7f2c85 Iustin Pop
    Valid for the KVM hypervisor.
539 1b7f2c85 Iustin Pop
540 9d0671ba Iustin Pop
    The security model for kvm. Currently one of *none*, *user* or
541 9d0671ba Iustin Pop
    *pool*. Under *none*, the default, nothing is done and instances
542 1b7f2c85 Iustin Pop
    are run as the Ganeti daemon user (normally root).
543 1b7f2c85 Iustin Pop
544 9d0671ba Iustin Pop
    Under *user* kvm will drop privileges and become the user
545 9d0671ba Iustin Pop
    specified by the security\_domain parameter.
546 1b7f2c85 Iustin Pop
547 9d0671ba Iustin Pop
    Under *pool* a global cluster pool of users will be used, making
548 1b7f2c85 Iustin Pop
    sure no two instances share the same user on the same node. (this
549 1b7f2c85 Iustin Pop
    mode is not implemented yet)
550 1b7f2c85 Iustin Pop
551 1b7f2c85 Iustin Pop
security\_domain
552 1b7f2c85 Iustin Pop
    Valid for the KVM hypervisor.
553 1b7f2c85 Iustin Pop
554 9d0671ba Iustin Pop
    Under security model *user* the username to run the instance
555 9d0671ba Iustin Pop
    under.  It must be a valid username existing on the host.
556 1b7f2c85 Iustin Pop
557 9d0671ba Iustin Pop
    Cannot be set under security model *none* or *pool*.
558 1b7f2c85 Iustin Pop
559 1b7f2c85 Iustin Pop
kvm\_flag
560 1b7f2c85 Iustin Pop
    Valid for the KVM hypervisor.
561 1b7f2c85 Iustin Pop
562 9d0671ba Iustin Pop
    If *enabled* the -enable-kvm flag is passed to kvm. If *disabled*
563 9d0671ba Iustin Pop
    -disable-kvm is passed. If unset no flag is passed, and the
564 9d0671ba Iustin Pop
    default running mode for your kvm binary will be used.
565 1b7f2c85 Iustin Pop
566 1b7f2c85 Iustin Pop
mem\_path
567 1b7f2c85 Iustin Pop
    Valid for the KVM hypervisor.
568 1b7f2c85 Iustin Pop
569 1b7f2c85 Iustin Pop
    This option passes the -mem-path argument to kvm with the path (on
570 1b7f2c85 Iustin Pop
    the node) to the mount point of the hugetlbfs file system, along
571 1b7f2c85 Iustin Pop
    with the -mem-prealloc argument too.
572 1b7f2c85 Iustin Pop
573 1b7f2c85 Iustin Pop
use\_chroot
574 1b7f2c85 Iustin Pop
    Valid for the KVM hypervisor.
575 1b7f2c85 Iustin Pop
576 50c1e351 Bernardo Dal Seno
    This boolean option determines whether to run the KVM instance in a
577 1b7f2c85 Iustin Pop
    chroot directory.
578 1b7f2c85 Iustin Pop
579 1b7f2c85 Iustin Pop
    If it is set to ``true``, an empty directory is created before
580 1b7f2c85 Iustin Pop
    starting the instance and its path is passed via the -chroot flag
581 1b7f2c85 Iustin Pop
    to kvm. The directory is removed when the instance is stopped.
582 1b7f2c85 Iustin Pop
583 1b7f2c85 Iustin Pop
    It is set to ``false`` by default.
584 1b7f2c85 Iustin Pop
585 1b7f2c85 Iustin Pop
migration\_downtime
586 1b7f2c85 Iustin Pop
    Valid for the KVM hypervisor.
587 1b7f2c85 Iustin Pop
588 1b7f2c85 Iustin Pop
    The maximum amount of time (in ms) a KVM instance is allowed to be
589 1b7f2c85 Iustin Pop
    frozen during a live migration, in order to copy dirty memory
590 1b7f2c85 Iustin Pop
    pages. Default value is 30ms, but you may need to increase this
591 1b7f2c85 Iustin Pop
    value for busy instances.
592 1b7f2c85 Iustin Pop
593 1b7f2c85 Iustin Pop
    This option is only effective with kvm versions >= 87 and qemu-kvm
594 1b7f2c85 Iustin Pop
    versions >= 0.11.0.
595 1b7f2c85 Iustin Pop
596 1b7f2c85 Iustin Pop
cpu\_mask
597 ff39194f Iustin Pop
    Valid for the Xen, KVM and LXC hypervisors.
598 1b7f2c85 Iustin Pop
599 9d0671ba Iustin Pop
    The processes belonging to the given instance are only scheduled
600 9d0671ba Iustin Pop
    on the specified CPUs.
601 1b7f2c85 Iustin Pop
602 ff39194f Iustin Pop
    The format of the mask can be given in three forms. First, the word
603 ff39194f Iustin Pop
    "all", which signifies the common case where all VCPUs can live on
604 ff39194f Iustin Pop
    any CPU, based on the hypervisor's decisions.
605 ff39194f Iustin Pop
606 ff39194f Iustin Pop
    Second, a comma-separated list of CPU IDs or CPU ID ranges. The
607 ff39194f Iustin Pop
    ranges are defined by a lower and higher boundary, separated by a
608 ff39194f Iustin Pop
    dash, and the boundaries are inclusive. In this form, all VCPUs of
609 ff39194f Iustin Pop
    the instance will be mapped on the selected list of CPUs. Example:
610 ff39194f Iustin Pop
    ``0-2,5``, mapping all VCPUs (no matter how many) onto physical CPUs
611 ff39194f Iustin Pop
    0, 1, 2 and 5.
612 ff39194f Iustin Pop
613 ff39194f Iustin Pop
    The last form is used for explicit control of VCPU-CPU pinnings. In
614 ff39194f Iustin Pop
    this form, the list of VCPU mappings is given as a colon (:)
615 ff39194f Iustin Pop
    separated list, whose elements are the possible values for the
616 ff39194f Iustin Pop
    second or first form above. In this form, the number of elements in
617 ff39194f Iustin Pop
    the colon-separated list _must_ equal the number of VCPUs of the
618 ff39194f Iustin Pop
    instance.
619 ff39194f Iustin Pop
620 29fbe62e Iustin Pop
    Example:
621 29fbe62e Iustin Pop
622 3a817255 Michael Hanselmann
    .. code-block:: bash
623 ff39194f Iustin Pop
624 ff39194f Iustin Pop
      # Map the entire instance to CPUs 0-2
625 ff39194f Iustin Pop
      gnt-instance modify -H cpu_mask=0-2 my-inst
626 ff39194f Iustin Pop
627 ff39194f Iustin Pop
      # Map vCPU 0 to physical CPU 1 and vCPU 1 to CPU 3 (assuming 2 vCPUs)
628 ff39194f Iustin Pop
      gnt-instance modify -H cpu_mask=1:3 my-inst
629 ff39194f Iustin Pop
630 ff39194f Iustin Pop
      # Pin vCPU 0 to CPUs 1 or 2, and vCPU 1 to any CPU
631 ff39194f Iustin Pop
      gnt-instance modify -H cpu_mask=1-2:all my-inst
632 ff39194f Iustin Pop
633 ff39194f Iustin Pop
      # Pin vCPU 0 to any CPU, vCPU 1 to CPUs 1, 3, 4 or 5, and CPU 2 to
634 ff39194f Iustin Pop
      # CPU 0 (backslashes for escaping the comma)
635 ff39194f Iustin Pop
      gnt-instance modify -H cpu_mask=all:1\\,3-5:0 my-inst
636 ff39194f Iustin Pop
637 ff39194f Iustin Pop
      # Pin entire VM to CPU 0
638 ff39194f Iustin Pop
      gnt-instance modify -H cpu_mask=0 my-inst
639 ff39194f Iustin Pop
640 ff39194f Iustin Pop
      # Turn off CPU pinning (default setting)
641 ff39194f Iustin Pop
      gnt-instance modify -H cpu_mask=all my-inst
642 1b7f2c85 Iustin Pop
643 8bd977e9 Sébastien Bocahu
cpu\_cap
644 8bd977e9 Sébastien Bocahu
    Valid for the Xen hypervisor.
645 8bd977e9 Sébastien Bocahu
646 8bd977e9 Sébastien Bocahu
    Set the maximum amount of cpu usage by the VM. The value is a percentage
647 8bd977e9 Sébastien Bocahu
    between 0 and (100 * number of VCPUs). Default cap is 0: unlimited.
648 8bd977e9 Sébastien Bocahu
649 8bd977e9 Sébastien Bocahu
cpu\_weight
650 8bd977e9 Sébastien Bocahu
    Valid for the Xen hypervisor.
651 8bd977e9 Sébastien Bocahu
652 8bd977e9 Sébastien Bocahu
    Set the cpu time ratio to be allocated to the VM. Valid values are
653 8bd977e9 Sébastien Bocahu
    between 1 and 65535. Default weight is 256.
654 8bd977e9 Sébastien Bocahu
655 1b7f2c85 Iustin Pop
usb\_mouse
656 1b7f2c85 Iustin Pop
    Valid for the KVM hypervisor.
657 1b7f2c85 Iustin Pop
658 1b7f2c85 Iustin Pop
    This option specifies the usb mouse type to be used. It can be
659 1b7f2c85 Iustin Pop
    "mouse" or "tablet". When using VNC it's recommended to set it to
660 1b7f2c85 Iustin Pop
    "tablet".
661 1b7f2c85 Iustin Pop
662 4f580fef Sébastien Bocahu
keymap
663 4f580fef Sébastien Bocahu
    Valid for the KVM hypervisor.
664 4f580fef Sébastien Bocahu
665 4f580fef Sébastien Bocahu
    This option specifies the keyboard mapping to be used. It is only
666 4f580fef Sébastien Bocahu
    needed when using the VNC console. For example: "fr" or "en-gb".
667 4f580fef Sébastien Bocahu
668 990ade2d Stephen Shirley
reboot\_behavior
669 990ade2d Stephen Shirley
    Valid for Xen PVM, Xen HVM and KVM hypervisors.
670 990ade2d Stephen Shirley
671 990ade2d Stephen Shirley
    Normally if an instance reboots, the hypervisor will restart it. If
672 990ade2d Stephen Shirley
    this option is set to ``exit``, the hypervisor will treat a reboot
673 990ade2d Stephen Shirley
    as a shutdown instead.
674 990ade2d Stephen Shirley
675 990ade2d Stephen Shirley
    It is set to ``reboot`` by default.
676 990ade2d Stephen Shirley
677 4888a609 Guido Trotter
cpu\_cores
678 4888a609 Guido Trotter
    Valid for the KVM hypervisor.
679 4888a609 Guido Trotter
680 4888a609 Guido Trotter
    Number of emulated CPU cores.
681 4888a609 Guido Trotter
682 4888a609 Guido Trotter
cpu\_threads
683 4888a609 Guido Trotter
    Valid for the KVM hypervisor.
684 4888a609 Guido Trotter
685 4888a609 Guido Trotter
    Number of emulated CPU threads.
686 4888a609 Guido Trotter
687 4888a609 Guido Trotter
cpu\_sockets
688 4888a609 Guido Trotter
    Valid for the KVM hypervisor.
689 4888a609 Guido Trotter
690 4888a609 Guido Trotter
    Number of emulated CPU sockets.
691 4888a609 Guido Trotter
692 2fddb144 Guido Trotter
soundhw
693 2fddb144 Guido Trotter
    Valid for the KVM hypervisor.
694 2fddb144 Guido Trotter
695 2fddb144 Guido Trotter
    Comma separated list of emulated sounds cards, or "all" to enable
696 2fddb144 Guido Trotter
    all the available ones.
697 2fddb144 Guido Trotter
698 156681c1 Guido Trotter
usb\_devices
699 156681c1 Guido Trotter
    Valid for the KVM hypervisor.
700 156681c1 Guido Trotter
701 156681c1 Guido Trotter
    Comma separated list of usb devices. These can be emulated devices
702 156681c1 Guido Trotter
    or passthrough ones, and each one gets passed to kvm with its own
703 156681c1 Guido Trotter
    ``-usbdevice`` option. See the **qemu**\(1) manpage for the syntax
704 156681c1 Guido Trotter
    of the possible components.
705 156681c1 Guido Trotter
706 7589346f Guido Trotter
vga
707 7589346f Guido Trotter
    Valid for the KVM hypervisor.
708 7589346f Guido Trotter
709 7589346f Guido Trotter
    Emulated vga mode, passed the the kvm -vga option.
710 7589346f Guido Trotter
711 e6f24d89 Guido Trotter
kvm\_extra
712 e6f24d89 Guido Trotter
    Valid for the KVM hypervisor.
713 e6f24d89 Guido Trotter
714 e6f24d89 Guido Trotter
    Any other option to the KVM hypervisor, useful tweaking anything
715 e6f24d89 Guido Trotter
    that Ganeti doesn't support.
716 e6f24d89 Guido Trotter
717 4ab75599 Dimitris Aragiorgis
machine\_version
718 4ab75599 Dimitris Aragiorgis
    Valid for the KVM hypervisor.
719 4ab75599 Dimitris Aragiorgis
720 4ab75599 Dimitris Aragiorgis
    Use in case an instance must be booted with an exact type of
721 4ab75599 Dimitris Aragiorgis
    machine version (due to e.g. outdated drivers). In case it's not set
722 4ab75599 Dimitris Aragiorgis
    the default version supported by your version of kvm is used.
723 1b7f2c85 Iustin Pop
724 4b9638dc Guido Trotter
kvm\_path
725 4b9638dc Guido Trotter
    Valid for the KVM hypervisor.
726 4b9638dc Guido Trotter
727 4b9638dc Guido Trotter
    Path to the userspace KVM (or qemu) program.
728 4b9638dc Guido Trotter
729 0a68e0ff Iustin Pop
The ``-O (--os-parameters)`` option allows customisation of the OS
730 a53cd1f4 Iustin Pop
parameters. The actual parameter names and values depends on the OS
731 a53cd1f4 Iustin Pop
being used, but the syntax is the same key=value. For example, setting
732 a53cd1f4 Iustin Pop
a hypothetical ``dhcp`` parameter to yes can be achieved by::
733 a53cd1f4 Iustin Pop
734 a53cd1f4 Iustin Pop
    gnt-instance add -O dhcp=yes ...
735 a53cd1f4 Iustin Pop
736 1a770ce5 Bernardo Dal Seno
The ``-I (--iallocator)`` option specifies the instance allocator plugin
737 1a770ce5 Bernardo Dal Seno
to use (``.`` means the default allocator). If you pass in this option
738 1a770ce5 Bernardo Dal Seno
the allocator will select nodes for this instance automatically, so you
739 1a770ce5 Bernardo Dal Seno
don't need to pass them with the ``-n`` option. For more information
740 1a770ce5 Bernardo Dal Seno
please refer to the instance allocator documentation.
741 1b7f2c85 Iustin Pop
742 0a68e0ff Iustin Pop
The ``-t (--disk-template)`` options specifies the disk layout type
743 0a68e0ff Iustin Pop
for the instance.  The available choices are:
744 1b7f2c85 Iustin Pop
745 1b7f2c85 Iustin Pop
diskless
746 1b7f2c85 Iustin Pop
    This creates an instance with no disks. Its useful for testing only
747 1b7f2c85 Iustin Pop
    (or other special cases).
748 1b7f2c85 Iustin Pop
749 1b7f2c85 Iustin Pop
file
750 1b7f2c85 Iustin Pop
    Disk devices will be regular files.
751 1b7f2c85 Iustin Pop
752 e19f7095 Constantinos Venetsanopoulos
sharedfile
753 e19f7095 Constantinos Venetsanopoulos
    Disk devices will be regulare files on a shared directory.
754 e19f7095 Constantinos Venetsanopoulos
755 1b7f2c85 Iustin Pop
plain
756 1b7f2c85 Iustin Pop
    Disk devices will be logical volumes.
757 1b7f2c85 Iustin Pop
758 1b7f2c85 Iustin Pop
drbd
759 1b7f2c85 Iustin Pop
    Disk devices will be drbd (version 8.x) on top of lvm volumes.
760 1b7f2c85 Iustin Pop
761 7ed400f0 Stratos Psomadakis
rbd
762 7ed400f0 Stratos Psomadakis
    Disk devices will be rbd volumes residing inside a RADOS cluster.
763 7ed400f0 Stratos Psomadakis
764 e19f7095 Constantinos Venetsanopoulos
blockdev
765 e19f7095 Constantinos Venetsanopoulos
    Disk devices will be adopted pre-existent block devices.
766 e19f7095 Constantinos Venetsanopoulos
767 e19f7095 Constantinos Venetsanopoulos
ext
768 e19f7095 Constantinos Venetsanopoulos
    Disk devices will be provided by external shared storage,
769 e19f7095 Constantinos Venetsanopoulos
    through the ExtStorage Interface using ExtStorage providers.
770 1b7f2c85 Iustin Pop
771 0a68e0ff Iustin Pop
The optional second value of the ``-n (--node)`` is used for the drbd
772 1b7f2c85 Iustin Pop
template type and specifies the remote node.
773 1b7f2c85 Iustin Pop
774 1b7f2c85 Iustin Pop
If you do not want gnt-instance to wait for the disk mirror to be
775 1b7f2c85 Iustin Pop
synced, use the ``--no-wait-for-sync`` option.
776 1b7f2c85 Iustin Pop
777 1b7f2c85 Iustin Pop
The ``--file-storage-dir`` specifies the relative path under the
778 56956bcb Iustin Pop
cluster-wide file storage directory to store file-based disks. It is
779 56956bcb Iustin Pop
useful for having different subdirectories for different
780 1b7f2c85 Iustin Pop
instances. The full path of the directory where the disk files are
781 56956bcb Iustin Pop
stored will consist of cluster-wide file storage directory + optional
782 56956bcb Iustin Pop
subdirectory + instance name. Example:
783 22ac4136 Michael Hanselmann
``@RPL_FILE_STORAGE_DIR@/mysubdir/instance1.example.com``. This
784 56956bcb Iustin Pop
option is only relevant for instances using the file storage backend.
785 1b7f2c85 Iustin Pop
786 1b7f2c85 Iustin Pop
The ``--file-driver`` specifies the driver to use for file-based
787 9d0671ba Iustin Pop
disks. Note that currently these drivers work with the xen hypervisor
788 9d0671ba Iustin Pop
only. This option is only relevant for instances using the file
789 9d0671ba Iustin Pop
storage backend. The available choices are:
790 1b7f2c85 Iustin Pop
791 1b7f2c85 Iustin Pop
loop
792 9d0671ba Iustin Pop
    Kernel loopback driver. This driver uses loopback devices to
793 9d0671ba Iustin Pop
    access the filesystem within the file. However, running I/O
794 9d0671ba Iustin Pop
    intensive applications in your instance using the loop driver
795 9d0671ba Iustin Pop
    might result in slowdowns. Furthermore, if you use the loopback
796 9d0671ba Iustin Pop
    driver consider increasing the maximum amount of loopback devices
797 9d0671ba Iustin Pop
    (on most systems it's 8) using the max\_loop param.
798 1b7f2c85 Iustin Pop
799 1b7f2c85 Iustin Pop
blktap
800 9d0671ba Iustin Pop
    The blktap driver (for Xen hypervisors). In order to be able to
801 9d0671ba Iustin Pop
    use the blktap driver you should check if the 'blktapctrl' user
802 9d0671ba Iustin Pop
    space disk agent is running (usually automatically started via
803 9d0671ba Iustin Pop
    xend).  This user-level disk I/O interface has the advantage of
804 9d0671ba Iustin Pop
    better performance. Especially if you use a network file system
805 9d0671ba Iustin Pop
    (e.g. NFS) to store your instances this is the recommended choice.
806 1b7f2c85 Iustin Pop
807 10889e0c René Nussbaumer
If ``--ignore-ipolicy`` is given any instance policy violations occuring
808 10889e0c René Nussbaumer
during this operation are ignored.
809 10889e0c René Nussbaumer
810 354c4f62 Michael Hanselmann
See **ganeti**\(7) for a description of ``--submit`` and other common
811 13ddcb50 Michael Hanselmann
options.
812 13ddcb50 Michael Hanselmann
813 1b7f2c85 Iustin Pop
Example::
814 1b7f2c85 Iustin Pop
815 90bb3fe1 Guido Trotter
    # gnt-instance add -t file --disk 0:size=30g -B maxmem=512 -o debian-etch \
816 1b7f2c85 Iustin Pop
      -n node1.example.com --file-storage-dir=mysubdir instance1.example.com
817 90bb3fe1 Guido Trotter
    # gnt-instance add -t plain --disk 0:size=30g -B maxmem=1024,minmem=512 \
818 90bb3fe1 Guido Trotter
      -o debian-etch -n node1.example.com instance1.example.com
819 7af3534e Dmitry Chernyak
    # gnt-instance add -t plain --disk 0:size=30g --disk 1:size=100g,vg=san \
820 90bb3fe1 Guido Trotter
      -B maxmem=512 -o debian-etch -n node1.example.com instance1.example.com
821 90bb3fe1 Guido Trotter
    # gnt-instance add -t drbd --disk 0:size=30g -B maxmem=512 -o debian-etch \
822 1b7f2c85 Iustin Pop
      -n node1.example.com:node2.example.com instance2.example.com
823 e19f7095 Constantinos Venetsanopoulos
    # gnt-instance add -t rbd --disk 0:size=30g -B maxmem=512 -o debian-etch \
824 e19f7095 Constantinos Venetsanopoulos
      -n node1.example.com instance1.example.com
825 e19f7095 Constantinos Venetsanopoulos
    # gnt-instance add -t ext --disk 0:size=30g,provider=pvdr1 -B maxmem=512 \
826 e19f7095 Constantinos Venetsanopoulos
      -o debian-etch -n node1.example.com instance1.example.com
827 e19f7095 Constantinos Venetsanopoulos
    # gnt-instance add -t ext --disk 0:size=30g,provider=pvdr1,param1=val1 \
828 e19f7095 Constantinos Venetsanopoulos
      --disk 1:size=40g,provider=pvdr2,param2=val2,param3=val3 -B maxmem=512 \
829 e19f7095 Constantinos Venetsanopoulos
      -o debian-etch -n node1.example.com instance1.example.com
830 1b7f2c85 Iustin Pop
831 1b7f2c85 Iustin Pop
832 1b7f2c85 Iustin Pop
BATCH-CREATE
833 1b7f2c85 Iustin Pop
^^^^^^^^^^^^
834 1b7f2c85 Iustin Pop
835 1b7f2c85 Iustin Pop
**batch-create** {instances\_file.json}
836 1b7f2c85 Iustin Pop
837 1b7f2c85 Iustin Pop
This command (similar to the Ganeti 1.2 **batcher** tool) submits
838 1b7f2c85 Iustin Pop
multiple instance creation jobs based on a definition file. The
839 9d0671ba Iustin Pop
instance configurations do not encompass all the possible options for
840 9d0671ba Iustin Pop
the **add** command, but only a subset.
841 1b7f2c85 Iustin Pop
842 1b7f2c85 Iustin Pop
The instance file should be a valid-formed JSON file, containing a
843 1b7f2c85 Iustin Pop
dictionary with instance name and instance parameters. The accepted
844 1b7f2c85 Iustin Pop
parameters are:
845 1b7f2c85 Iustin Pop
846 1b7f2c85 Iustin Pop
disk\_size
847 1b7f2c85 Iustin Pop
    The size of the disks of the instance.
848 1b7f2c85 Iustin Pop
849 1b7f2c85 Iustin Pop
disk\_template
850 1b7f2c85 Iustin Pop
    The disk template to use for the instance, the same as in the
851 1b7f2c85 Iustin Pop
    **add** command.
852 1b7f2c85 Iustin Pop
853 1b7f2c85 Iustin Pop
backend
854 1b7f2c85 Iustin Pop
    A dictionary of backend parameters.
855 1b7f2c85 Iustin Pop
856 1b7f2c85 Iustin Pop
hypervisor
857 1b7f2c85 Iustin Pop
    A dictionary with a single key (the hypervisor name), and as value
858 1b7f2c85 Iustin Pop
    the hypervisor options. If not passed, the default hypervisor and
859 1b7f2c85 Iustin Pop
    hypervisor options will be inherited.
860 1b7f2c85 Iustin Pop
861 1b7f2c85 Iustin Pop
mac, ip, mode, link
862 1b7f2c85 Iustin Pop
    Specifications for the one NIC that will be created for the
863 50c1e351 Bernardo Dal Seno
    instance. 'bridge' is also accepted as a backwards compatible
864 1b7f2c85 Iustin Pop
    key.
865 1b7f2c85 Iustin Pop
866 1b7f2c85 Iustin Pop
nics
867 c8b96be4 Guido Trotter
    List of NICs that will be created for the instance. Each entry
868 1b7f2c85 Iustin Pop
    should be a dict, with mac, ip, mode and link as possible keys.
869 1b7f2c85 Iustin Pop
    Please don't provide the "mac, ip, mode, link" parent keys if you
870 c8b96be4 Guido Trotter
    use this method for specifying NICs.
871 1b7f2c85 Iustin Pop
872 1b7f2c85 Iustin Pop
primary\_node, secondary\_node
873 1b7f2c85 Iustin Pop
    The primary and optionally the secondary node to use for the
874 1b7f2c85 Iustin Pop
    instance (in case an iallocator script is not used).
875 1b7f2c85 Iustin Pop
876 1b7f2c85 Iustin Pop
iallocator
877 1b7f2c85 Iustin Pop
    Instead of specifying the nodes, an iallocator script can be used
878 1b7f2c85 Iustin Pop
    to automatically compute them.
879 1b7f2c85 Iustin Pop
880 1b7f2c85 Iustin Pop
start
881 1b7f2c85 Iustin Pop
    whether to start the instance
882 1b7f2c85 Iustin Pop
883 1b7f2c85 Iustin Pop
ip\_check
884 1b7f2c85 Iustin Pop
    Skip the check for already-in-use instance; see the description in
885 1b7f2c85 Iustin Pop
    the **add** command for details.
886 1b7f2c85 Iustin Pop
887 1b7f2c85 Iustin Pop
name\_check
888 1b7f2c85 Iustin Pop
    Skip the name check for instances; see the description in the
889 1b7f2c85 Iustin Pop
    **add** command for details.
890 1b7f2c85 Iustin Pop
891 1b7f2c85 Iustin Pop
file\_storage\_dir, file\_driver
892 1b7f2c85 Iustin Pop
    Configuration for the file disk type, see the **add** command for
893 1b7f2c85 Iustin Pop
    details.
894 1b7f2c85 Iustin Pop
895 1b7f2c85 Iustin Pop
896 1b7f2c85 Iustin Pop
A simple definition for one instance can be (with most of the
897 1b7f2c85 Iustin Pop
parameters taken from the cluster defaults)::
898 1b7f2c85 Iustin Pop
899 1b7f2c85 Iustin Pop
    {
900 1b7f2c85 Iustin Pop
      "instance3": {
901 1b7f2c85 Iustin Pop
        "template": "drbd",
902 1b7f2c85 Iustin Pop
        "os": "debootstrap",
903 1b7f2c85 Iustin Pop
        "disk_size": ["25G"],
904 1b7f2c85 Iustin Pop
        "iallocator": "dumb"
905 1b7f2c85 Iustin Pop
      },
906 1b7f2c85 Iustin Pop
      "instance5": {
907 1b7f2c85 Iustin Pop
        "template": "drbd",
908 1b7f2c85 Iustin Pop
        "os": "debootstrap",
909 1b7f2c85 Iustin Pop
        "disk_size": ["25G"],
910 1b7f2c85 Iustin Pop
        "iallocator": "dumb",
911 1b7f2c85 Iustin Pop
        "hypervisor": "xen-hvm",
912 1b7f2c85 Iustin Pop
        "hvparams": {"acpi": true},
913 90bb3fe1 Guido Trotter
        "backend": {"maxmem": 512, "minmem": 256}
914 1b7f2c85 Iustin Pop
      }
915 1b7f2c85 Iustin Pop
    }
916 1b7f2c85 Iustin Pop
917 1b7f2c85 Iustin Pop
The command will display the job id for each submitted instance, as
918 1b7f2c85 Iustin Pop
follows::
919 1b7f2c85 Iustin Pop
920 1b7f2c85 Iustin Pop
    # gnt-instance batch-create instances.json
921 1b7f2c85 Iustin Pop
    instance3: 11224
922 1b7f2c85 Iustin Pop
    instance5: 11225
923 1b7f2c85 Iustin Pop
924 1b7f2c85 Iustin Pop
REMOVE
925 1b7f2c85 Iustin Pop
^^^^^^
926 1b7f2c85 Iustin Pop
927 e8f936b0 Iustin Pop
**remove** [\--ignore-failures] [\--shutdown-timeout=*N*] [\--submit]
928 e8f936b0 Iustin Pop
[\--force] {*instance*}
929 1b7f2c85 Iustin Pop
930 1b7f2c85 Iustin Pop
Remove an instance. This will remove all data from the instance and
931 1b7f2c85 Iustin Pop
there is *no way back*. If you are not sure if you use an instance
932 9d0671ba Iustin Pop
again, use **shutdown** first and leave it in the shutdown state for a
933 9d0671ba Iustin Pop
while.
934 1b7f2c85 Iustin Pop
935 1b7f2c85 Iustin Pop
The ``--ignore-failures`` option will cause the removal to proceed
936 1b7f2c85 Iustin Pop
even in the presence of errors during the removal of the instance
937 9d0671ba Iustin Pop
(e.g. during the shutdown or the disk removal). If this option is not
938 9d0671ba Iustin Pop
given, the command will stop at the first error.
939 1b7f2c85 Iustin Pop
940 1b7f2c85 Iustin Pop
The ``--shutdown-timeout`` is used to specify how much time to wait
941 1b7f2c85 Iustin Pop
before forcing the shutdown (e.g. ``xm destroy`` in Xen, killing the
942 1b7f2c85 Iustin Pop
kvm process for KVM, etc.). By default two minutes are given to each
943 1b7f2c85 Iustin Pop
instance to stop.
944 1b7f2c85 Iustin Pop
945 3ef02bec Andrea Spadaccini
The ``--force`` option is used to skip the interactive confirmation.
946 3ef02bec Andrea Spadaccini
947 354c4f62 Michael Hanselmann
See **ganeti**\(7) for a description of ``--submit`` and other common
948 13ddcb50 Michael Hanselmann
options.
949 13ddcb50 Michael Hanselmann
950 1b7f2c85 Iustin Pop
Example::
951 1b7f2c85 Iustin Pop
952 1b7f2c85 Iustin Pop
    # gnt-instance remove instance1.example.com
953 1b7f2c85 Iustin Pop
954 1b7f2c85 Iustin Pop
955 1b7f2c85 Iustin Pop
LIST
956 1b7f2c85 Iustin Pop
^^^^
957 1b7f2c85 Iustin Pop
958 1b7f2c85 Iustin Pop
| **list**
959 e8f936b0 Iustin Pop
| [\--no-headers] [\--separator=*SEPARATOR*] [\--units=*UNITS*] [-v]
960 e8f936b0 Iustin Pop
| [{-o|\--output} *[+]FIELD,...*] [\--filter] [instance...]
961 1b7f2c85 Iustin Pop
962 1b7f2c85 Iustin Pop
Shows the currently configured instances with memory usage, disk
963 1b7f2c85 Iustin Pop
usage, the node they are running on, and their run status.
964 1b7f2c85 Iustin Pop
965 1b7f2c85 Iustin Pop
The ``--no-headers`` option will skip the initial header line. The
966 1b7f2c85 Iustin Pop
``--separator`` option takes an argument which denotes what will be
967 1b7f2c85 Iustin Pop
used between the output fields. Both these options are to help
968 1b7f2c85 Iustin Pop
scripting.
969 1b7f2c85 Iustin Pop
970 1b7f2c85 Iustin Pop
The units used to display the numeric values in the output varies,
971 1b7f2c85 Iustin Pop
depending on the options given. By default, the values will be
972 9d0671ba Iustin Pop
formatted in the most appropriate unit. If the ``--separator`` option
973 9d0671ba Iustin Pop
is given, then the values are shown in mebibytes to allow parsing by
974 9d0671ba Iustin Pop
scripts. In both cases, the ``--units`` option can be used to enforce
975 9d0671ba Iustin Pop
a given output unit.
976 1b7f2c85 Iustin Pop
977 f0b1bafe Iustin Pop
The ``-v`` option activates verbose mode, which changes the display of
978 354c4f62 Michael Hanselmann
special field states (see **ganeti**\(7)).
979 f0b1bafe Iustin Pop
980 0a68e0ff Iustin Pop
The ``-o (--output)`` option takes a comma-separated list of output
981 0a68e0ff Iustin Pop
fields. The available fields and their meaning are:
982 1b7f2c85 Iustin Pop
983 fcdb582d Michael Hanselmann
@QUERY_FIELDS_INSTANCE@
984 1b7f2c85 Iustin Pop
985 1b7f2c85 Iustin Pop
If the value of the option starts with the character ``+``, the new
986 f7b769b1 Iustin Pop
field(s) will be added to the default list. This allows one to quickly
987 f7b769b1 Iustin Pop
see the default list plus a few other fields, instead of retyping the
988 9d0671ba Iustin Pop
entire list of fields.
989 1b7f2c85 Iustin Pop
990 1b7f2c85 Iustin Pop
There is a subtle grouping about the available output fields: all
991 1b7f2c85 Iustin Pop
fields except for ``oper_state``, ``oper_ram``, ``oper_vcpus`` and
992 9d0671ba Iustin Pop
``status`` are configuration value and not run-time values. So if you
993 9d0671ba Iustin Pop
don't select any of the these fields, the query will be satisfied
994 9d0671ba Iustin Pop
instantly from the cluster configuration, without having to ask the
995 9d0671ba Iustin Pop
remote nodes for the data. This can be helpful for big clusters when
996 9d0671ba Iustin Pop
you only want some data and it makes sense to specify a reduced set of
997 9d0671ba Iustin Pop
output fields.
998 1b7f2c85 Iustin Pop
999 87e87959 Michael Hanselmann
If exactly one argument is given and it appears to be a query filter
1000 354c4f62 Michael Hanselmann
(see **ganeti**\(7)), the query result is filtered accordingly. For
1001 87e87959 Michael Hanselmann
ambiguous cases (e.g. a single field name as a filter) the ``--filter``
1002 87e87959 Michael Hanselmann
(``-F``) option forces the argument to be treated as a filter (e.g.
1003 87e87959 Michael Hanselmann
``gnt-instance list -F admin_state``).
1004 87e87959 Michael Hanselmann
1005 87e87959 Michael Hanselmann
The default output field list is: ``name``, ``os``, ``pnode``,
1006 87e87959 Michael Hanselmann
``admin_state``, ``oper_state``, ``oper_ram``.
1007 1b7f2c85 Iustin Pop
1008 b82c5ff5 Michael Hanselmann
1009 b82c5ff5 Michael Hanselmann
LIST-FIELDS
1010 29fc0e4e Iustin Pop
^^^^^^^^^^^
1011 b82c5ff5 Michael Hanselmann
1012 b82c5ff5 Michael Hanselmann
**list-fields** [field...]
1013 b82c5ff5 Michael Hanselmann
1014 b82c5ff5 Michael Hanselmann
Lists available fields for instances.
1015 b82c5ff5 Michael Hanselmann
1016 b82c5ff5 Michael Hanselmann
1017 1b7f2c85 Iustin Pop
INFO
1018 1b7f2c85 Iustin Pop
^^^^
1019 1b7f2c85 Iustin Pop
1020 e8f936b0 Iustin Pop
**info** [-s \| \--static] [\--roman] {\--all \| *instance*}
1021 1b7f2c85 Iustin Pop
1022 1b7f2c85 Iustin Pop
Show detailed information about the given instance(s). This is
1023 9d0671ba Iustin Pop
different from **list** as it shows detailed data about the instance's
1024 9d0671ba Iustin Pop
disks (especially useful for the drbd disk template).
1025 1b7f2c85 Iustin Pop
1026 1b7f2c85 Iustin Pop
If the option ``-s`` is used, only information available in the
1027 1b7f2c85 Iustin Pop
configuration file is returned, without querying nodes, making the
1028 1b7f2c85 Iustin Pop
operation faster.
1029 1b7f2c85 Iustin Pop
1030 1b7f2c85 Iustin Pop
Use the ``--all`` to get info about all instances, rather than
1031 1b7f2c85 Iustin Pop
explicitly passing the ones you're interested in.
1032 1b7f2c85 Iustin Pop
1033 9d0671ba Iustin Pop
The ``--roman`` option can be used to cause envy among people who like
1034 9d0671ba Iustin Pop
ancient cultures, but are stuck with non-latin-friendly cluster
1035 9d0671ba Iustin Pop
virtualization technologies.
1036 1b7f2c85 Iustin Pop
1037 1b7f2c85 Iustin Pop
MODIFY
1038 1b7f2c85 Iustin Pop
^^^^^^
1039 1b7f2c85 Iustin Pop
1040 1b7f2c85 Iustin Pop
| **modify**
1041 e8f936b0 Iustin Pop
| [{-H|\--hypervisor-parameters} *HYPERVISOR\_PARAMETERS*]
1042 e8f936b0 Iustin Pop
| [{-B|\--backend-parameters} *BACKEND\_PARAMETERS*]
1043 e8f936b0 Iustin Pop
| [{-m|\--runtime-memory} *SIZE*]
1044 12f126b2 Christos Stavrakakis
| [\--net add[:options...] \|
1045 12f126b2 Christos Stavrakakis
|  \--net [*N*:]add[,options...] \|
1046 12f126b2 Christos Stavrakakis
|  \--net [*ID*:]remove \|
1047 12f126b2 Christos Stavrakakis
|  \--net *ID*:modify[,options...]]
1048 12f126b2 Christos Stavrakakis
| [\--disk add:size=*SIZE*[,options...] \|
1049 12f126b2 Christos Stavrakakis
|  \--disk *N*:add,size=*SIZE*[,options...] \|
1050 12f126b2 Christos Stavrakakis
|  \--disk *N*:add,size=*SIZE*,provider=*PROVIDER*[,options...][,param=*value*... ] \|
1051 12f126b2 Christos Stavrakakis
|  \--disk *ID*:modify[,options...]
1052 12f126b2 Christos Stavrakakis
|  \--disk [*ID*:]remove]
1053 e8f936b0 Iustin Pop
| [{-t|\--disk-template} plain | {-t|\--disk-template} drbd -n *new_secondary*] [\--no-wait-for-sync]
1054 3438e1f8 Klaus Aehlig
| [\--new-primary=*node*]
1055 e8f936b0 Iustin Pop
| [\--os-type=*OS* [\--force-variant]]
1056 e8f936b0 Iustin Pop
| [{-O|\--os-parameters} *param*=*value*... ]
1057 e8f936b0 Iustin Pop
| [\--offline \| \--online]
1058 e8f936b0 Iustin Pop
| [\--submit]
1059 e8f936b0 Iustin Pop
| [\--ignore-ipolicy]
1060 1b7f2c85 Iustin Pop
| {*instance*}
1061 1b7f2c85 Iustin Pop
1062 1b7f2c85 Iustin Pop
Modifies the memory size, number of vcpus, ip address, MAC address
1063 c8b96be4 Guido Trotter
and/or NIC parameters for an instance. It can also add and remove
1064 1b7f2c85 Iustin Pop
disks and NICs to/from the instance. Note that you need to give at
1065 1b7f2c85 Iustin Pop
least one of the arguments, otherwise the command complains.
1066 1b7f2c85 Iustin Pop
1067 0a68e0ff Iustin Pop
The ``-H (--hypervisor-parameters)``, ``-B (--backend-parameters)``
1068 0a68e0ff Iustin Pop
and ``-O (--os-parameters)`` options specifies hypervisor, backend and
1069 0a68e0ff Iustin Pop
OS parameter options in the form of name=value[,...]. For details
1070 a53cd1f4 Iustin Pop
which options can be specified, see the **add** command.
1071 1b7f2c85 Iustin Pop
1072 0a68e0ff Iustin Pop
The ``-t (--disk-template)`` option will change the disk template of
1073 0a68e0ff Iustin Pop
the instance.  Currently only conversions between the plain and drbd
1074 0a68e0ff Iustin Pop
disk templates are supported, and the instance must be stopped before
1075 0a68e0ff Iustin Pop
attempting the conversion. When changing from the plain to the drbd
1076 0a68e0ff Iustin Pop
disk template, a new secondary node must be specified via the ``-n``
1077 0a68e0ff Iustin Pop
option. The option ``--no-wait-for-sync`` can be used when converting
1078 0a68e0ff Iustin Pop
to the ``drbd`` template in order to make the instance available for
1079 0a68e0ff Iustin Pop
startup before DRBD has finished resyncing.
1080 1b7f2c85 Iustin Pop
1081 2c0af7da Guido Trotter
The ``-m (--runtime-memory)`` option will change an instance's runtime
1082 2c0af7da Guido Trotter
memory to the given size (in MB if a different suffix is not specified),
1083 2c0af7da Guido Trotter
by ballooning it up or down to the new value.
1084 2c0af7da Guido Trotter
1085 12f126b2 Christos Stavrakakis
The ``--disk add:size=*SIZE*,[options..]`` option adds a disk to the
1086 12f126b2 Christos Stavrakakis
instance, and ``--disk *N*:add:size=*SIZE*,[options..]`` will add a disk
1087 12f126b2 Christos Stavrakakis
to the the instance at a specific index. The available options are the
1088 12f126b2 Christos Stavrakakis
same as in the **add** command(``mode``, ``name``, ``vg``, ``metavg``).
1089 12f126b2 Christos Stavrakakis
When adding an ExtStorage disk the ``provider=*PROVIDER*`` option is
1090 12f126b2 Christos Stavrakakis
also mandatory and specifies the ExtStorage provider. Also, for
1091 12f126b2 Christos Stavrakakis
ExtStorage disks arbitrary parameters can be passed as additional comma
1092 12f126b2 Christos Stavrakakis
separated options, same as in the **add** command. -The ``--disk remove``
1093 12f126b2 Christos Stavrakakis
option will remove the last disk of the instance. Use
1094 12f126b2 Christos Stavrakakis
``--disk `` *ID*``:remove`` to remove a disk by its identifier.  *ID*
1095 12f126b2 Christos Stavrakakis
can be the index of the disk, the disks's name or the disks's UUID.  The
1096 12f126b2 Christos Stavrakakis
``--disk *ID*:modify[,options...]`` wil change the options of the disk.
1097 12f126b2 Christos Stavrakakis
Available options are:
1098 12f126b2 Christos Stavrakakis
1099 12f126b2 Christos Stavrakakis
mode
1100 12f126b2 Christos Stavrakakis
  The access mode. Either ``ro`` (read-only) or the default ``rw`` (read-write).
1101 12f126b2 Christos Stavrakakis
1102 12f126b2 Christos Stavrakakis
name
1103 12f126b2 Christos Stavrakakis
   this option specifies a name for the disk, which can be used as a disk
1104 12f126b2 Christos Stavrakakis
   identifier. An instance can not have two disks with the same name.
1105 12f126b2 Christos Stavrakakis
1106 12f126b2 Christos Stavrakakis
The ``--net *N*:add[,options..]`` will add a new network interface to
1107 12f126b2 Christos Stavrakakis
the instance. The available options are the same as in the **add**
1108 12f126b2 Christos Stavrakakis
command (``mac``, ``ip``, ``link``, ``mode``, ``network``). The
1109 12f126b2 Christos Stavrakakis
``--net *ID*,remove`` will remove the intances' NIC with *ID* identifier,
1110 12f126b2 Christos Stavrakakis
which can be the index of the NIC, the NIC's name or the NIC's UUID.
1111 12f126b2 Christos Stavrakakis
The ``--net *ID*:modify[,options..]`` option will change the parameters of
1112 12f126b2 Christos Stavrakakis
the instance network interface with the *ID* identifier.
1113 1b7f2c85 Iustin Pop
1114 0a68e0ff Iustin Pop
The option ``-o (--os-type)`` will change the OS name for the instance
1115 9d0671ba Iustin Pop
(without reinstallation). In case an OS variant is specified that is
1116 9d0671ba Iustin Pop
not found, then by default the modification is refused, unless
1117 1b7f2c85 Iustin Pop
``--force-variant`` is passed. An invalid OS will also be refused,
1118 1b7f2c85 Iustin Pop
unless the ``--force`` option is given.
1119 1b7f2c85 Iustin Pop
1120 3438e1f8 Klaus Aehlig
The option ``--new-primary`` will set the new primary node of an instance
1121 3438e1f8 Klaus Aehlig
assuming the disks have already been moved manually. Unless the ``--force``
1122 3438e1f8 Klaus Aehlig
option is given, it is verified that the instance is no longer running
1123 3438e1f8 Klaus Aehlig
on its current primary node.
1124 3438e1f8 Klaus Aehlig
1125 bafb5067 Agata Murawska
The ``--online`` and ``--offline`` options are used to transition an
1126 bafb5067 Agata Murawska
instance into and out of the ``offline`` state. An instance can be
1127 bafb5067 Agata Murawska
turned offline only if it was previously down. The ``--online`` option
1128 bafb5067 Agata Murawska
fails if the instance was not in the ``offline`` state, otherwise it
1129 bafb5067 Agata Murawska
changes instance's state to ``down``. These modifications take effect
1130 bafb5067 Agata Murawska
immediately.
1131 bafb5067 Agata Murawska
1132 1559e1e7 René Nussbaumer
If ``--ignore-ipolicy`` is given any instance policy violations occuring
1133 1559e1e7 René Nussbaumer
during this operation are ignored.
1134 1559e1e7 René Nussbaumer
1135 354c4f62 Michael Hanselmann
See **ganeti**\(7) for a description of ``--submit`` and other common
1136 13ddcb50 Michael Hanselmann
options.
1137 13ddcb50 Michael Hanselmann
1138 bafb5067 Agata Murawska
Most of the changes take effect at the next restart. If the instance is
1139 1b7f2c85 Iustin Pop
running, there is no effect on the instance.
1140 1b7f2c85 Iustin Pop
1141 1b7f2c85 Iustin Pop
REINSTALL
1142 1b7f2c85 Iustin Pop
^^^^^^^^^
1143 1b7f2c85 Iustin Pop
1144 e8f936b0 Iustin Pop
| **reinstall** [{-o|\--os-type} *os-type*] [\--select-os] [-f *force*]
1145 e8f936b0 Iustin Pop
| [\--force-multiple]
1146 e8f936b0 Iustin Pop
| [\--instance \| \--node \| \--primary \| \--secondary \| \--all]
1147 e8f936b0 Iustin Pop
| [{-O|\--os-parameters} *OS\_PARAMETERS*] [\--submit] {*instance*...}
1148 1b7f2c85 Iustin Pop
1149 1b7f2c85 Iustin Pop
Reinstalls the operating system on the given instance(s). The
1150 0a68e0ff Iustin Pop
instance(s) must be stopped when running this command. If the ``-o
1151 0a68e0ff Iustin Pop
(--os-type)`` is specified, the operating system is changed.
1152 1b7f2c85 Iustin Pop
1153 1b7f2c85 Iustin Pop
The ``--select-os`` option switches to an interactive OS reinstall.
1154 1b7f2c85 Iustin Pop
The user is prompted to select the OS template from the list of
1155 0a68e0ff Iustin Pop
available OS templates. OS parameters can be overridden using ``-O
1156 0a68e0ff Iustin Pop
(--os-parameters)`` (more documentation for this option under the
1157 0a68e0ff Iustin Pop
**add** command).
1158 1b7f2c85 Iustin Pop
1159 1b7f2c85 Iustin Pop
Since this is a potentially dangerous command, the user will be
1160 1b7f2c85 Iustin Pop
required to confirm this action, unless the ``-f`` flag is passed.
1161 1b7f2c85 Iustin Pop
When multiple instances are selected (either by passing multiple
1162 9d0671ba Iustin Pop
arguments or by using the ``--node``, ``--primary``, ``--secondary``
1163 9d0671ba Iustin Pop
or ``--all`` options), the user must pass the ``--force-multiple``
1164 9d0671ba Iustin Pop
options to skip the interactive confirmation.
1165 1b7f2c85 Iustin Pop
1166 354c4f62 Michael Hanselmann
See **ganeti**\(7) for a description of ``--submit`` and other common
1167 13ddcb50 Michael Hanselmann
options.
1168 1b7f2c85 Iustin Pop
1169 1b7f2c85 Iustin Pop
RENAME
1170 1b7f2c85 Iustin Pop
^^^^^^
1171 1b7f2c85 Iustin Pop
1172 e8f936b0 Iustin Pop
| **rename** [\--no-ip-check] [\--no-name-check] [\--submit]
1173 1b7f2c85 Iustin Pop
| {*instance*} {*new\_name*}
1174 1b7f2c85 Iustin Pop
1175 9d0671ba Iustin Pop
Renames the given instance. The instance must be stopped when running
1176 9d0671ba Iustin Pop
this command. The requirements for the new name are the same as for
1177 9d0671ba Iustin Pop
adding an instance: the new name must be resolvable and the IP it
1178 9d0671ba Iustin Pop
resolves to must not be reachable (in order to prevent duplicate IPs
1179 9d0671ba Iustin Pop
the next time the instance is started). The IP test can be skipped if
1180 9d0671ba Iustin Pop
the ``--no-ip-check`` option is passed.
1181 1b7f2c85 Iustin Pop
1182 d0054203 Guido Trotter
Note that you can rename an instance to its same name, to force
1183 d0054203 Guido Trotter
re-executing the os-specific rename script for that instance, if
1184 d0054203 Guido Trotter
needed.
1185 d0054203 Guido Trotter
1186 a84d1115 René Nussbaumer
The ``--no-name-check`` skips the check for the new instance name via
1187 a84d1115 René Nussbaumer
the resolver (e.g. in DNS or /etc/hosts, depending on your setup) and
1188 a84d1115 René Nussbaumer
that the resolved name matches the provided name. Since the name check
1189 a84d1115 René Nussbaumer
is used to compute the IP address, if you pass this option you must also
1190 a84d1115 René Nussbaumer
pass the ``--no-ip-check`` option.
1191 1b7f2c85 Iustin Pop
1192 354c4f62 Michael Hanselmann
See **ganeti**\(7) for a description of ``--submit`` and other common
1193 13ddcb50 Michael Hanselmann
options.
1194 1b7f2c85 Iustin Pop
1195 1b7f2c85 Iustin Pop
Starting/stopping/connecting to console
1196 1b7f2c85 Iustin Pop
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1197 1b7f2c85 Iustin Pop
1198 1b7f2c85 Iustin Pop
STARTUP
1199 1b7f2c85 Iustin Pop
^^^^^^^
1200 1b7f2c85 Iustin Pop
1201 1b7f2c85 Iustin Pop
| **startup**
1202 e8f936b0 Iustin Pop
| [\--force] [\--ignore-offline]
1203 e8f936b0 Iustin Pop
| [\--force-multiple] [\--no-remember]
1204 e8f936b0 Iustin Pop
| [\--instance \| \--node \| \--primary \| \--secondary \| \--all \|
1205 e8f936b0 Iustin Pop
| \--tags \| \--node-tags \| \--pri-node-tags \| \--sec-node-tags]
1206 e8f936b0 Iustin Pop
| [{-H|\--hypervisor-parameters} ``key=value...``]
1207 e8f936b0 Iustin Pop
| [{-B|\--backend-parameters} ``key=value...``]
1208 e8f936b0 Iustin Pop
| [\--submit] [\--paused]
1209 1b7f2c85 Iustin Pop
| {*name*...}
1210 1b7f2c85 Iustin Pop
1211 9d0671ba Iustin Pop
Starts one or more instances, depending on the following options.  The
1212 9d0671ba Iustin Pop
four available modes are:
1213 1b7f2c85 Iustin Pop
1214 e8f936b0 Iustin Pop
\--instance
1215 1b7f2c85 Iustin Pop
    will start the instances given as arguments (at least one argument
1216 1b7f2c85 Iustin Pop
    required); this is the default selection
1217 1b7f2c85 Iustin Pop
1218 e8f936b0 Iustin Pop
\--node
1219 1b7f2c85 Iustin Pop
    will start the instances who have the given node as either primary
1220 1b7f2c85 Iustin Pop
    or secondary
1221 1b7f2c85 Iustin Pop
1222 e8f936b0 Iustin Pop
\--primary
1223 1b7f2c85 Iustin Pop
    will start all instances whose primary node is in the list of nodes
1224 1b7f2c85 Iustin Pop
    passed as arguments (at least one node required)
1225 1b7f2c85 Iustin Pop
1226 e8f936b0 Iustin Pop
\--secondary
1227 1b7f2c85 Iustin Pop
    will start all instances whose secondary node is in the list of
1228 1b7f2c85 Iustin Pop
    nodes passed as arguments (at least one node required)
1229 1b7f2c85 Iustin Pop
1230 e8f936b0 Iustin Pop
\--all
1231 1b7f2c85 Iustin Pop
    will start all instances in the cluster (no arguments accepted)
1232 1b7f2c85 Iustin Pop
1233 e8f936b0 Iustin Pop
\--tags
1234 1b7f2c85 Iustin Pop
    will start all instances in the cluster with the tags given as
1235 1b7f2c85 Iustin Pop
    arguments
1236 1b7f2c85 Iustin Pop
1237 e8f936b0 Iustin Pop
\--node-tags
1238 1b7f2c85 Iustin Pop
    will start all instances in the cluster on nodes with the tags
1239 1b7f2c85 Iustin Pop
    given as arguments
1240 1b7f2c85 Iustin Pop
1241 e8f936b0 Iustin Pop
\--pri-node-tags
1242 1b7f2c85 Iustin Pop
    will start all instances in the cluster on primary nodes with the
1243 1b7f2c85 Iustin Pop
    tags given as arguments
1244 1b7f2c85 Iustin Pop
1245 e8f936b0 Iustin Pop
\--sec-node-tags
1246 1b7f2c85 Iustin Pop
    will start all instances in the cluster on secondary nodes with the
1247 1b7f2c85 Iustin Pop
    tags given as arguments
1248 1b7f2c85 Iustin Pop
1249 1b7f2c85 Iustin Pop
Note that although you can pass more than one selection option, the
1250 9d0671ba Iustin Pop
last one wins, so in order to guarantee the desired result, don't pass
1251 9d0671ba Iustin Pop
more than one such option.
1252 1b7f2c85 Iustin Pop
1253 1b7f2c85 Iustin Pop
Use ``--force`` to start even if secondary disks are failing.
1254 9d0671ba Iustin Pop
``--ignore-offline`` can be used to ignore offline primary nodes and
1255 9d0671ba Iustin Pop
mark the instance as started even if the primary is not available.
1256 1b7f2c85 Iustin Pop
1257 9d0671ba Iustin Pop
The ``--force-multiple`` will skip the interactive confirmation in the
1258 9d0671ba Iustin Pop
case the more than one instance will be affected.
1259 1b7f2c85 Iustin Pop
1260 885a0fc4 Iustin Pop
The ``--no-remember`` option will perform the startup but not change
1261 885a0fc4 Iustin Pop
the state of the instance in the configuration file (if it was stopped
1262 88f622e0 Michael Hanselmann
before, Ganeti will still think it needs to be stopped). This can be
1263 885a0fc4 Iustin Pop
used for testing, or for a one shot-start where you don't want the
1264 885a0fc4 Iustin Pop
watcher to restart the instance if it crashes.
1265 885a0fc4 Iustin Pop
1266 0a68e0ff Iustin Pop
The ``-H (--hypervisor-parameters)`` and ``-B (--backend-parameters)``
1267 0a68e0ff Iustin Pop
options specify temporary hypervisor and backend parameters that can
1268 0a68e0ff Iustin Pop
be used to start an instance with modified parameters. They can be
1269 0a68e0ff Iustin Pop
useful for quick testing without having to modify an instance back and
1270 0a68e0ff Iustin Pop
forth, e.g.::
1271 1b7f2c85 Iustin Pop
1272 fa23cc50 Stephen Shirley
    # gnt-instance start -H kernel_args="single" instance1
1273 90bb3fe1 Guido Trotter
    # gnt-instance start -B maxmem=2048 instance2
1274 1b7f2c85 Iustin Pop
1275 1b7f2c85 Iustin Pop
1276 9d0671ba Iustin Pop
The first form will start the instance instance1 in single-user mode,
1277 9d0671ba Iustin Pop
and the instance instance2 with 2GB of RAM (this time only, unless
1278 9d0671ba Iustin Pop
that is the actual instance memory size already). Note that the values
1279 9d0671ba Iustin Pop
override the instance parameters (and not extend them): an instance
1280 fa23cc50 Stephen Shirley
with "kernel\_args=ro" when started with -H kernel\_args=single will
1281 13ddcb50 Michael Hanselmann
result in "single", not "ro single".
1282 1b7f2c85 Iustin Pop
1283 323f9095 Stephen Shirley
The ``--paused`` option is only valid for Xen and kvm hypervisors.  This
1284 323f9095 Stephen Shirley
pauses the instance at the start of bootup, awaiting ``gnt-instance
1285 323f9095 Stephen Shirley
console`` to unpause it, allowing the entire boot process to be
1286 323f9095 Stephen Shirley
monitored for debugging.
1287 323f9095 Stephen Shirley
1288 354c4f62 Michael Hanselmann
See **ganeti**\(7) for a description of ``--submit`` and other common
1289 13ddcb50 Michael Hanselmann
options.
1290 13ddcb50 Michael Hanselmann
1291 1b7f2c85 Iustin Pop
Example::
1292 1b7f2c85 Iustin Pop
1293 1b7f2c85 Iustin Pop
    # gnt-instance start instance1.example.com
1294 1b7f2c85 Iustin Pop
    # gnt-instance start --node node1.example.com node2.example.com
1295 1b7f2c85 Iustin Pop
    # gnt-instance start --all
1296 1b7f2c85 Iustin Pop
1297 1b7f2c85 Iustin Pop
1298 1b7f2c85 Iustin Pop
SHUTDOWN
1299 1b7f2c85 Iustin Pop
^^^^^^^^
1300 1b7f2c85 Iustin Pop
1301 1b7f2c85 Iustin Pop
| **shutdown**
1302 e8f936b0 Iustin Pop
| [\--timeout=*N*]
1303 0d57ce24 Guido Trotter
| [\--force] [\--force-multiple] [\--ignore-offline] [\--no-remember]
1304 e8f936b0 Iustin Pop
| [\--instance \| \--node \| \--primary \| \--secondary \| \--all \|
1305 e8f936b0 Iustin Pop
| \--tags \| \--node-tags \| \--pri-node-tags \| \--sec-node-tags]
1306 e8f936b0 Iustin Pop
| [\--submit]
1307 1b7f2c85 Iustin Pop
| {*name*...}
1308 1b7f2c85 Iustin Pop
1309 9d0671ba Iustin Pop
Stops one or more instances. If the instance cannot be cleanly stopped
1310 9d0671ba Iustin Pop
during a hardcoded interval (currently 2 minutes), it will forcibly
1311 9d0671ba Iustin Pop
stop the instance (equivalent to switching off the power on a physical
1312 9d0671ba Iustin Pop
machine).
1313 1b7f2c85 Iustin Pop
1314 1b7f2c85 Iustin Pop
The ``--timeout`` is used to specify how much time to wait before
1315 1b7f2c85 Iustin Pop
forcing the shutdown (e.g. ``xm destroy`` in Xen, killing the kvm
1316 1b7f2c85 Iustin Pop
process for KVM, etc.). By default two minutes are given to each
1317 1b7f2c85 Iustin Pop
instance to stop.
1318 1b7f2c85 Iustin Pop
1319 1b7f2c85 Iustin Pop
The ``--instance``, ``--node``, ``--primary``, ``--secondary``,
1320 1b7f2c85 Iustin Pop
``--all``, ``--tags``, ``--node-tags``, ``--pri-node-tags`` and
1321 9d0671ba Iustin Pop
``--sec-node-tags`` options are similar as for the **startup** command
1322 9d0671ba Iustin Pop
and they influence the actual instances being shutdown.
1323 1b7f2c85 Iustin Pop
1324 9d0671ba Iustin Pop
``--ignore-offline`` can be used to ignore offline primary nodes and
1325 9d0671ba Iustin Pop
force the instance to be marked as stopped. This option should be used
1326 9d0671ba Iustin Pop
with care as it can lead to an inconsistent cluster state.
1327 1b7f2c85 Iustin Pop
1328 0d57ce24 Guido Trotter
Use ``--force`` to be able to shutdown an instance even when it's marked
1329 0d57ce24 Guido Trotter
as offline. This is useful is an offline instance ends up in the
1330 0d57ce24 Guido Trotter
``ERROR_up`` state, for example.
1331 0d57ce24 Guido Trotter
1332 885a0fc4 Iustin Pop
The ``--no-remember`` option will perform the shutdown but not change
1333 885a0fc4 Iustin Pop
the state of the instance in the configuration file (if it was running
1334 885a0fc4 Iustin Pop
before, Ganeti will still thinks it needs to be running). This can be
1335 885a0fc4 Iustin Pop
useful for a cluster-wide shutdown, where some instances are marked as
1336 885a0fc4 Iustin Pop
up and some as down, and you don't want to change the running state:
1337 885a0fc4 Iustin Pop
you just need to disable the watcher, shutdown all instances with
1338 885a0fc4 Iustin Pop
``--no-remember``, and when the watcher is activated again it will
1339 885a0fc4 Iustin Pop
restore the correct runtime state for all instances.
1340 885a0fc4 Iustin Pop
1341 354c4f62 Michael Hanselmann
See **ganeti**\(7) for a description of ``--submit`` and other common
1342 13ddcb50 Michael Hanselmann
options.
1343 13ddcb50 Michael Hanselmann
1344 1b7f2c85 Iustin Pop
Example::
1345 1b7f2c85 Iustin Pop
1346 1b7f2c85 Iustin Pop
    # gnt-instance shutdown instance1.example.com
1347 1b7f2c85 Iustin Pop
    # gnt-instance shutdown --all
1348 1b7f2c85 Iustin Pop
1349 1b7f2c85 Iustin Pop
1350 1b7f2c85 Iustin Pop
REBOOT
1351 1b7f2c85 Iustin Pop
^^^^^^
1352 1b7f2c85 Iustin Pop
1353 1b7f2c85 Iustin Pop
| **reboot**
1354 e8f936b0 Iustin Pop
| [{-t|\--type} *REBOOT-TYPE*]
1355 e8f936b0 Iustin Pop
| [\--ignore-secondaries]
1356 e8f936b0 Iustin Pop
| [\--shutdown-timeout=*N*]
1357 e8f936b0 Iustin Pop
| [\--force-multiple]
1358 e8f936b0 Iustin Pop
| [\--instance \| \--node \| \--primary \| \--secondary \| \--all \|
1359 e8f936b0 Iustin Pop
| \--tags \| \--node-tags \| \--pri-node-tags \| \--sec-node-tags]
1360 e8f936b0 Iustin Pop
| [\--submit]
1361 1b7f2c85 Iustin Pop
| [*name*...]
1362 1b7f2c85 Iustin Pop
1363 9d0671ba Iustin Pop
Reboots one or more instances. The type of reboot depends on the value
1364 0a68e0ff Iustin Pop
of ``-t (--type)``. A soft reboot does a hypervisor reboot, a hard reboot
1365 9d0671ba Iustin Pop
does a instance stop, recreates the hypervisor config for the instance
1366 9d0671ba Iustin Pop
and starts the instance. A full reboot does the equivalent of
1367 9d0671ba Iustin Pop
**gnt-instance shutdown && gnt-instance startup**.  The default is
1368 9d0671ba Iustin Pop
hard reboot.
1369 1b7f2c85 Iustin Pop
1370 9d0671ba Iustin Pop
For the hard reboot the option ``--ignore-secondaries`` ignores errors
1371 9d0671ba Iustin Pop
for the secondary node while re-assembling the instance disks.
1372 1b7f2c85 Iustin Pop
1373 1b7f2c85 Iustin Pop
The ``--instance``, ``--node``, ``--primary``, ``--secondary``,
1374 1b7f2c85 Iustin Pop
``--all``, ``--tags``, ``--node-tags``, ``--pri-node-tags`` and
1375 9d0671ba Iustin Pop
``--sec-node-tags`` options are similar as for the **startup** command
1376 9d0671ba Iustin Pop
and they influence the actual instances being rebooted.
1377 1b7f2c85 Iustin Pop
1378 1b7f2c85 Iustin Pop
The ``--shutdown-timeout`` is used to specify how much time to wait
1379 1b7f2c85 Iustin Pop
before forcing the shutdown (xm destroy in xen, killing the kvm
1380 9d0671ba Iustin Pop
process, for kvm). By default two minutes are given to each instance
1381 9d0671ba Iustin Pop
to stop.
1382 1b7f2c85 Iustin Pop
1383 9d0671ba Iustin Pop
The ``--force-multiple`` will skip the interactive confirmation in the
1384 9d0671ba Iustin Pop
case the more than one instance will be affected.
1385 1b7f2c85 Iustin Pop
1386 354c4f62 Michael Hanselmann
See **ganeti**\(7) for a description of ``--submit`` and other common
1387 13ddcb50 Michael Hanselmann
options.
1388 13ddcb50 Michael Hanselmann
1389 1b7f2c85 Iustin Pop
Example::
1390 1b7f2c85 Iustin Pop
1391 1b7f2c85 Iustin Pop
    # gnt-instance reboot instance1.example.com
1392 1b7f2c85 Iustin Pop
    # gnt-instance reboot --type=full instance1.example.com
1393 1b7f2c85 Iustin Pop
1394 1b7f2c85 Iustin Pop
1395 1b7f2c85 Iustin Pop
CONSOLE
1396 1b7f2c85 Iustin Pop
^^^^^^^
1397 1b7f2c85 Iustin Pop
1398 e8f936b0 Iustin Pop
**console** [\--show-cmd] {*instance*}
1399 1b7f2c85 Iustin Pop
1400 9d0671ba Iustin Pop
Connects to the console of the given instance. If the instance is not
1401 9d0671ba Iustin Pop
up, an error is returned. Use the ``--show-cmd`` option to display the
1402 9d0671ba Iustin Pop
command instead of executing it.
1403 1b7f2c85 Iustin Pop
1404 9d0671ba Iustin Pop
For HVM instances, this will attempt to connect to the serial console
1405 9d0671ba Iustin Pop
of the instance. To connect to the virtualized "physical" console of a
1406 9d0671ba Iustin Pop
HVM instance, use a VNC client with the connection info from the
1407 9d0671ba Iustin Pop
**info** command.
1408 1b7f2c85 Iustin Pop
1409 323f9095 Stephen Shirley
For Xen/kvm instances, if the instance is paused, this attempts to
1410 323f9095 Stephen Shirley
unpause the instance after waiting a few seconds for the connection to
1411 323f9095 Stephen Shirley
the console to be made.
1412 323f9095 Stephen Shirley
1413 1b7f2c85 Iustin Pop
Example::
1414 1b7f2c85 Iustin Pop
1415 1b7f2c85 Iustin Pop
    # gnt-instance console instance1.example.com
1416 1b7f2c85 Iustin Pop
1417 1b7f2c85 Iustin Pop
1418 1b7f2c85 Iustin Pop
Disk management
1419 1b7f2c85 Iustin Pop
~~~~~~~~~~~~~~~
1420 1b7f2c85 Iustin Pop
1421 1b7f2c85 Iustin Pop
REPLACE-DISKS
1422 1b7f2c85 Iustin Pop
^^^^^^^^^^^^^
1423 1b7f2c85 Iustin Pop
1424 e8f936b0 Iustin Pop
**replace-disks** [\--submit] [\--early-release] [\--ignore-ipolicy] {-p}
1425 e8f936b0 Iustin Pop
[\--disks *idx*] {*instance*}
1426 1b7f2c85 Iustin Pop
1427 e8f936b0 Iustin Pop
**replace-disks** [\--submit] [\--early-release] [\--ignore-ipolicy] {-s}
1428 e8f936b0 Iustin Pop
[\--disks *idx*] {*instance*}
1429 1b7f2c85 Iustin Pop
1430 e8f936b0 Iustin Pop
**replace-disks** [\--submit] [\--early-release] [\--ignore-ipolicy]
1431 50c1e351 Bernardo Dal Seno
{{-I\|\--iallocator} *name* \| {{-n|\--new-secondary} *node* } {*instance*}
1432 1b7f2c85 Iustin Pop
1433 e8f936b0 Iustin Pop
**replace-disks** [\--submit] [\--early-release] [\--ignore-ipolicy]
1434 50c1e351 Bernardo Dal Seno
{-a\|\--auto} {*instance*}
1435 1b7f2c85 Iustin Pop
1436 1b7f2c85 Iustin Pop
This command is a generalized form for replacing disks. It is
1437 1b7f2c85 Iustin Pop
currently only valid for the mirrored (DRBD) disk template.
1438 1b7f2c85 Iustin Pop
1439 9d0671ba Iustin Pop
The first form (when passing the ``-p`` option) will replace the disks
1440 9d0671ba Iustin Pop
on the primary, while the second form (when passing the ``-s`` option
1441 9d0671ba Iustin Pop
will replace the disks on the secondary node. For these two cases (as
1442 9d0671ba Iustin Pop
the node doesn't change), it is possible to only run the replace for a
1443 9d0671ba Iustin Pop
subset of the disks, using the option ``--disks`` which takes a list
1444 9d0671ba Iustin Pop
of comma-delimited disk indices (zero-based), e.g. 0,2 to replace only
1445 9d0671ba Iustin Pop
the first and third disks.
1446 1b7f2c85 Iustin Pop
1447 1b7f2c85 Iustin Pop
The third form (when passing either the ``--iallocator`` or the
1448 1a770ce5 Bernardo Dal Seno
``--new-secondary`` option) is designed to change secondary node of the
1449 1a770ce5 Bernardo Dal Seno
instance. Specifying ``--iallocator`` makes the new secondary be
1450 1a770ce5 Bernardo Dal Seno
selected automatically by the specified allocator plugin (use ``.`` to
1451 1a770ce5 Bernardo Dal Seno
indicate the default allocator), otherwise the new secondary node will
1452 1a770ce5 Bernardo Dal Seno
be the one chosen manually via the ``--new-secondary`` option.
1453 1b7f2c85 Iustin Pop
1454 13ddcb50 Michael Hanselmann
Note that it is not possible to select an offline or drained node as a
1455 13ddcb50 Michael Hanselmann
new secondary.
1456 13ddcb50 Michael Hanselmann
1457 9d0671ba Iustin Pop
The fourth form (when using ``--auto``) will automatically determine
1458 9d0671ba Iustin Pop
which disks of an instance are faulty and replace them within the same
1459 9d0671ba Iustin Pop
node. The ``--auto`` option works only when an instance has only
1460 9d0671ba Iustin Pop
faulty disks on either the primary or secondary node; it doesn't work
1461 9d0671ba Iustin Pop
when both sides have faulty disks.
1462 1b7f2c85 Iustin Pop
1463 1b7f2c85 Iustin Pop
The ``--early-release`` changes the code so that the old storage on
1464 1b7f2c85 Iustin Pop
secondary node(s) is removed early (before the resync is completed)
1465 1b7f2c85 Iustin Pop
and the internal Ganeti locks for the current (and new, if any)
1466 1b7f2c85 Iustin Pop
secondary node are also released, thus allowing more parallelism in
1467 9d0671ba Iustin Pop
the cluster operation. This should be used only when recovering from a
1468 9d0671ba Iustin Pop
disk failure on the current secondary (thus the old storage is already
1469 9d0671ba Iustin Pop
broken) or when the storage on the primary node is known to be fine
1470 9d0671ba Iustin Pop
(thus we won't need the old storage for potential recovery).
1471 1b7f2c85 Iustin Pop
1472 893e8f49 René Nussbaumer
The ``--ignore-ipolicy`` let the command ignore instance policy
1473 893e8f49 René Nussbaumer
violations if replace-disks changes groups and the instance would
1474 893e8f49 René Nussbaumer
violate the new groups instance policy.
1475 893e8f49 René Nussbaumer
1476 354c4f62 Michael Hanselmann
See **ganeti**\(7) for a description of ``--submit`` and other common
1477 13ddcb50 Michael Hanselmann
options.
1478 1b7f2c85 Iustin Pop
1479 1b7f2c85 Iustin Pop
ACTIVATE-DISKS
1480 1b7f2c85 Iustin Pop
^^^^^^^^^^^^^^
1481 1b7f2c85 Iustin Pop
1482 f30d8165 Iustin Pop
**activate-disks** [\--submit] [\--ignore-size] [\--wait-for-sync] {*instance*}
1483 1b7f2c85 Iustin Pop
1484 9d0671ba Iustin Pop
Activates the block devices of the given instance. If successful, the
1485 9d0671ba Iustin Pop
command will show the location and name of the block devices::
1486 1b7f2c85 Iustin Pop
1487 1b7f2c85 Iustin Pop
    node1.example.com:disk/0:/dev/drbd0
1488 1b7f2c85 Iustin Pop
    node1.example.com:disk/1:/dev/drbd1
1489 1b7f2c85 Iustin Pop
1490 1b7f2c85 Iustin Pop
1491 9d0671ba Iustin Pop
In this example, *node1.example.com* is the name of the node on which
1492 9d0671ba Iustin Pop
the devices have been activated. The *disk/0* and *disk/1* are the
1493 9d0671ba Iustin Pop
Ganeti-names of the instance disks; how they are visible inside the
1494 9d0671ba Iustin Pop
instance is hypervisor-specific. */dev/drbd0* and */dev/drbd1* are the
1495 13ddcb50 Michael Hanselmann
actual block devices as visible on the node.
1496 1b7f2c85 Iustin Pop
1497 1b7f2c85 Iustin Pop
The ``--ignore-size`` option can be used to activate disks ignoring
1498 1b7f2c85 Iustin Pop
the currently configured size in Ganeti. This can be used in cases
1499 1b7f2c85 Iustin Pop
where the configuration has gotten out of sync with the real-world
1500 9d0671ba Iustin Pop
(e.g. after a partially-failed grow-disk operation or due to rounding
1501 9d0671ba Iustin Pop
in LVM devices). This should not be used in normal cases, but only
1502 9d0671ba Iustin Pop
when activate-disks fails without it.
1503 1b7f2c85 Iustin Pop
1504 f30d8165 Iustin Pop
The ``--wait-for-sync`` option will ensure that the command returns only
1505 f30d8165 Iustin Pop
after the instance's disks are synchronised (mostly for DRBD); this can
1506 f30d8165 Iustin Pop
be useful to ensure consistency, as otherwise there are no commands that
1507 f30d8165 Iustin Pop
can wait until synchronisation is done. However when passing this
1508 f30d8165 Iustin Pop
option, the command will have additional output, making it harder to
1509 f30d8165 Iustin Pop
parse the disk information.
1510 f30d8165 Iustin Pop
1511 9d0671ba Iustin Pop
Note that it is safe to run this command while the instance is already
1512 9d0671ba Iustin Pop
running.
1513 1b7f2c85 Iustin Pop
1514 354c4f62 Michael Hanselmann
See **ganeti**\(7) for a description of ``--submit`` and other common
1515 13ddcb50 Michael Hanselmann
options.
1516 13ddcb50 Michael Hanselmann
1517 1b7f2c85 Iustin Pop
DEACTIVATE-DISKS
1518 1b7f2c85 Iustin Pop
^^^^^^^^^^^^^^^^
1519 1b7f2c85 Iustin Pop
1520 e8f936b0 Iustin Pop
**deactivate-disks** [-f] [\--submit] {*instance*}
1521 1b7f2c85 Iustin Pop
1522 9d0671ba Iustin Pop
De-activates the block devices of the given instance. Note that if you
1523 9d0671ba Iustin Pop
run this command for an instance with a drbd disk template, while it
1524 9d0671ba Iustin Pop
is running, it will not be able to shutdown the block devices on the
1525 9d0671ba Iustin Pop
primary node, but it will shutdown the block devices on the secondary
1526 9d0671ba Iustin Pop
nodes, thus breaking the replication.
1527 1b7f2c85 Iustin Pop
1528 c9c41373 Iustin Pop
The ``-f``/``--force`` option will skip checks that the instance is
1529 c9c41373 Iustin Pop
down; in case the hypervisor is confused and we can't talk to it,
1530 c9c41373 Iustin Pop
normally Ganeti will refuse to deactivate the disks, but with this
1531 c9c41373 Iustin Pop
option passed it will skip this check and directly try to deactivate
1532 c9c41373 Iustin Pop
the disks. This can still fail due to the instance actually running or
1533 c9c41373 Iustin Pop
other issues.
1534 c9c41373 Iustin Pop
1535 354c4f62 Michael Hanselmann
See **ganeti**\(7) for a description of ``--submit`` and other common
1536 13ddcb50 Michael Hanselmann
options.
1537 1b7f2c85 Iustin Pop
1538 1b7f2c85 Iustin Pop
GROW-DISK
1539 1b7f2c85 Iustin Pop
^^^^^^^^^
1540 1b7f2c85 Iustin Pop
1541 f5e6a62c Iustin Pop
| **grow-disk** [\--no-wait-for-sync] [\--submit] [\--absolute]
1542 f5e6a62c Iustin Pop
| {*instance*} {*disk*} {*amount*}
1543 1b7f2c85 Iustin Pop
1544 9d0671ba Iustin Pop
Grows an instance's disk. This is only possible for instances having a
1545 e19f7095 Constantinos Venetsanopoulos
plain, drbd, file, sharedfile, rbd or ext disk template. For the ext
1546 e19f7095 Constantinos Venetsanopoulos
template to work, the ExtStorage provider should also support growing.
1547 e19f7095 Constantinos Venetsanopoulos
This means having a ``grow`` script that actually grows the volume of
1548 e19f7095 Constantinos Venetsanopoulos
the external shared storage.
1549 1b7f2c85 Iustin Pop
1550 9d0671ba Iustin Pop
Note that this command only change the block device size; it will not
1551 9d0671ba Iustin Pop
grow the actual filesystems, partitions, etc. that live on that
1552 1b7f2c85 Iustin Pop
disk. Usually, you will need to:
1553 1b7f2c85 Iustin Pop
1554 1b7f2c85 Iustin Pop
#. use **gnt-instance grow-disk**
1555 1b7f2c85 Iustin Pop
1556 1b7f2c85 Iustin Pop
#. reboot the instance (later, at a convenient time)
1557 1b7f2c85 Iustin Pop
1558 354c4f62 Michael Hanselmann
#. use a filesystem resizer, such as **ext2online**\(8) or
1559 354c4f62 Michael Hanselmann
   **xfs\_growfs**\(8) to resize the filesystem, or use **fdisk**\(8) to
1560 354c4f62 Michael Hanselmann
   change the partition table on the disk
1561 1b7f2c85 Iustin Pop
1562 1b7f2c85 Iustin Pop
The *disk* argument is the index of the instance disk to grow. The
1563 f5e6a62c Iustin Pop
*amount* argument is given as a number which can have a suffix (like the
1564 f5e6a62c Iustin Pop
disk size in instance create); if the suffix is missing, the value will
1565 f5e6a62c Iustin Pop
be interpreted as mebibytes.
1566 f5e6a62c Iustin Pop
1567 f5e6a62c Iustin Pop
By default, the *amount* value represents the desired increase in the
1568 f5e6a62c Iustin Pop
disk size (e.g. an amount of 1G will take a disk of size 3G to 4G). If
1569 f5e6a62c Iustin Pop
the optional ``--absolute`` parameter is passed, then the *amount*
1570 f5e6a62c Iustin Pop
argument doesn't represent the delta, but instead the desired final disk
1571 f5e6a62c Iustin Pop
size (e.g. an amount of 8G will take a disk of size 4G to 8G).
1572 1b7f2c85 Iustin Pop
1573 7ed400f0 Stratos Psomadakis
For instances with a drbd template, note that the disk grow operation
1574 7ed400f0 Stratos Psomadakis
might complete on one node but fail on the other; this will leave the
1575 7ed400f0 Stratos Psomadakis
instance with different-sized LVs on the two nodes, but this will not
1576 7ed400f0 Stratos Psomadakis
create problems (except for unused space).
1577 1b7f2c85 Iustin Pop
1578 9d0671ba Iustin Pop
If you do not want gnt-instance to wait for the new disk region to be
1579 9d0671ba Iustin Pop
synced, use the ``--no-wait-for-sync`` option.
1580 1b7f2c85 Iustin Pop
1581 354c4f62 Michael Hanselmann
See **ganeti**\(7) for a description of ``--submit`` and other common
1582 13ddcb50 Michael Hanselmann
options.
1583 1b7f2c85 Iustin Pop
1584 1b7f2c85 Iustin Pop
Example (increase the first disk for instance1 by 16GiB)::
1585 1b7f2c85 Iustin Pop
1586 1b7f2c85 Iustin Pop
    # gnt-instance grow-disk instance1.example.com 0 16g
1587 1b7f2c85 Iustin Pop
1588 f5e6a62c Iustin Pop
Example for increasing the disk size to a certain size::
1589 f5e6a62c Iustin Pop
1590 f5e6a62c Iustin Pop
   # gnt-instance grow-disk --absolute instance1.example.com 0 32g
1591 1b7f2c85 Iustin Pop
1592 9d0671ba Iustin Pop
Also note that disk shrinking is not supported; use **gnt-backup
1593 9d0671ba Iustin Pop
export** and then **gnt-backup import** to reduce the disk size of an
1594 9d0671ba Iustin Pop
instance.
1595 1b7f2c85 Iustin Pop
1596 1b7f2c85 Iustin Pop
RECREATE-DISKS
1597 1b7f2c85 Iustin Pop
^^^^^^^^^^^^^^
1598 1b7f2c85 Iustin Pop
1599 38db4e7c Adam Ingrassia
| **recreate-disks** [\--submit]
1600 38db4e7c Adam Ingrassia
| [{-n node1:[node2] \| {-I\|\--iallocator *name*}}]
1601 e8f936b0 Iustin Pop
| [\--disk=*N*[:[size=*VAL*][,mode=*ro\|rw*]]] {*instance*}
1602 1b7f2c85 Iustin Pop
1603 735e1318 Michael Hanselmann
Recreates all or a subset of disks of the given instance.
1604 1b7f2c85 Iustin Pop
1605 9d0671ba Iustin Pop
Note that this functionality should only be used for missing disks; if
1606 9d0671ba Iustin Pop
any of the given disks already exists, the operation will fail.  While
1607 9d0671ba Iustin Pop
this is suboptimal, recreate-disks should hopefully not be needed in
1608 9d0671ba Iustin Pop
normal operation and as such the impact of this is low.
1609 1b7f2c85 Iustin Pop
1610 735e1318 Michael Hanselmann
If only a subset should be recreated, any number of ``disk`` options can
1611 735e1318 Michael Hanselmann
be specified. It expects a disk index and an optional list of disk
1612 735e1318 Michael Hanselmann
parameters to change. Only ``size`` and ``mode`` can be changed while
1613 735e1318 Michael Hanselmann
recreating disks. To recreate all disks while changing parameters on
1614 735e1318 Michael Hanselmann
a subset only, a ``--disk`` option must be given for every disk of the
1615 735e1318 Michael Hanselmann
instance.
1616 735e1318 Michael Hanselmann
1617 c8a96ae7 Iustin Pop
Optionally the instance's disks can be recreated on different
1618 c8a96ae7 Iustin Pop
nodes. This can be useful if, for example, the original nodes of the
1619 c8a96ae7 Iustin Pop
instance have gone down (and are marked offline), so we can't recreate
1620 c8a96ae7 Iustin Pop
on the same nodes. To do this, pass the new node(s) via ``-n`` option,
1621 c8a96ae7 Iustin Pop
with a syntax similar to the **add** command. The number of nodes
1622 c8a96ae7 Iustin Pop
passed must equal the number of nodes that the instance currently
1623 735e1318 Michael Hanselmann
has. Note that changing nodes is only allowed when all disks are
1624 735e1318 Michael Hanselmann
replaced, e.g. when no ``--disk`` option is passed.
1625 c8a96ae7 Iustin Pop
1626 1a770ce5 Bernardo Dal Seno
Another method of choosing which nodes to place the instance on is by
1627 38db4e7c Adam Ingrassia
using the specified iallocator, passing the ``--iallocator`` option.
1628 38db4e7c Adam Ingrassia
The primary and secondary nodes will be chosen by the specified
1629 1a770ce5 Bernardo Dal Seno
iallocator plugin, or by the default allocator if ``.`` is specified.
1630 38db4e7c Adam Ingrassia
1631 354c4f62 Michael Hanselmann
See **ganeti**\(7) for a description of ``--submit`` and other common
1632 13ddcb50 Michael Hanselmann
options.
1633 1b7f2c85 Iustin Pop
1634 29fc0e4e Iustin Pop
Recovery/moving
1635 29fc0e4e Iustin Pop
~~~~~~~~~~~~~~~
1636 1b7f2c85 Iustin Pop
1637 1b7f2c85 Iustin Pop
FAILOVER
1638 1b7f2c85 Iustin Pop
^^^^^^^^
1639 1b7f2c85 Iustin Pop
1640 e8f936b0 Iustin Pop
| **failover** [-f] [\--ignore-consistency] [\--ignore-ipolicy]
1641 e8f936b0 Iustin Pop
| [\--shutdown-timeout=*N*]
1642 e8f936b0 Iustin Pop
| [{-n|\--target-node} *node* \| {-I|\--iallocator} *name*]
1643 e8f936b0 Iustin Pop
| [\--submit]
1644 7ed400f0 Stratos Psomadakis
| {*instance*}
1645 1b7f2c85 Iustin Pop
1646 a6a3efe4 Iustin Pop
Failover will stop the instance (if running), change its primary node,
1647 a6a3efe4 Iustin Pop
and if it was originally running it will start it again (on the new
1648 e19f7095 Constantinos Venetsanopoulos
primary). This works for instances with drbd template (in which case you
1649 e19f7095 Constantinos Venetsanopoulos
can only fail to the secondary node) and for externally mirrored
1650 e19f7095 Constantinos Venetsanopoulos
templates (sharedfile, blockdev, rbd and ext) (in which case you can
1651 e19f7095 Constantinos Venetsanopoulos
fail to any other node).
1652 e19f7095 Constantinos Venetsanopoulos
1653 e19f7095 Constantinos Venetsanopoulos
If the instance's disk template is of type sharedfile, blockdev, rbd or
1654 e19f7095 Constantinos Venetsanopoulos
ext, then you can explicitly specify the target node (which can be any
1655 e19f7095 Constantinos Venetsanopoulos
node) using the ``-n`` or ``--target-node`` option, or specify an
1656 e19f7095 Constantinos Venetsanopoulos
iallocator plugin using the ``-I`` or ``--iallocator`` option. If you
1657 e19f7095 Constantinos Venetsanopoulos
omit both, the default iallocator will be used to specify the target
1658 e19f7095 Constantinos Venetsanopoulos
node.
1659 e19f7095 Constantinos Venetsanopoulos
1660 e19f7095 Constantinos Venetsanopoulos
If the instance's disk template is of type drbd, the target node is
1661 e19f7095 Constantinos Venetsanopoulos
automatically selected as the drbd's secondary node. Changing the
1662 e19f7095 Constantinos Venetsanopoulos
secondary node is possible with a replace-disks operation.
1663 7ed400f0 Stratos Psomadakis
1664 9d0671ba Iustin Pop
Normally the failover will check the consistency of the disks before
1665 9d0671ba Iustin Pop
failing over the instance. If you are trying to migrate instances off
1666 9d0671ba Iustin Pop
a dead node, this will fail. Use the ``--ignore-consistency`` option
1667 9d0671ba Iustin Pop
for this purpose. Note that this option can be dangerous as errors in
1668 9d0671ba Iustin Pop
shutting down the instance will be ignored, resulting in possibly
1669 9d0671ba Iustin Pop
having the instance running on two machines in parallel (on
1670 9d0671ba Iustin Pop
disconnected DRBD drives).
1671 1b7f2c85 Iustin Pop
1672 1b7f2c85 Iustin Pop
The ``--shutdown-timeout`` is used to specify how much time to wait
1673 1b7f2c85 Iustin Pop
before forcing the shutdown (xm destroy in xen, killing the kvm
1674 9d0671ba Iustin Pop
process, for kvm). By default two minutes are given to each instance
1675 9d0671ba Iustin Pop
to stop.
1676 1b7f2c85 Iustin Pop
1677 b6aaf437 René Nussbaumer
If ``--ignore-ipolicy`` is given any instance policy violations occuring
1678 b6aaf437 René Nussbaumer
during this operation are ignored.
1679 b6aaf437 René Nussbaumer
1680 354c4f62 Michael Hanselmann
See **ganeti**\(7) for a description of ``--submit`` and other common
1681 13ddcb50 Michael Hanselmann
options.
1682 13ddcb50 Michael Hanselmann
1683 1b7f2c85 Iustin Pop
Example::
1684 1b7f2c85 Iustin Pop
1685 1b7f2c85 Iustin Pop
    # gnt-instance failover instance1.example.com
1686 1b7f2c85 Iustin Pop
1687 e19f7095 Constantinos Venetsanopoulos
For externally mirrored templates also ``-n`` is available::
1688 e19f7095 Constantinos Venetsanopoulos
1689 e19f7095 Constantinos Venetsanopoulos
    # gnt-instance failover -n node3.example.com instance1.example.com
1690 e19f7095 Constantinos Venetsanopoulos
1691 1b7f2c85 Iustin Pop
1692 1b7f2c85 Iustin Pop
MIGRATE
1693 1b7f2c85 Iustin Pop
^^^^^^^
1694 1b7f2c85 Iustin Pop
1695 f70bb622 Michael Hanselmann
| **migrate** [-f] [\--allow-failover] [\--non-live]
1696 f70bb622 Michael Hanselmann
| [\--migration-mode=live\|non-live] [\--ignore-ipolicy]
1697 f70bb622 Michael Hanselmann
| [\--no-runtime-changes] [\--submit]
1698 f70bb622 Michael Hanselmann
| [{-n|\--target-node} *node* \| {-I|\--iallocator} *name*] {*instance*}
1699 1b7f2c85 Iustin Pop
1700 f70bb622 Michael Hanselmann
| **migrate** [-f] \--cleanup [\--submit] {*instance*}
1701 7ed400f0 Stratos Psomadakis
1702 7ed400f0 Stratos Psomadakis
Migrate will move the instance to its secondary node without shutdown.
1703 e19f7095 Constantinos Venetsanopoulos
As with failover, it works for instances having the drbd disk template
1704 e19f7095 Constantinos Venetsanopoulos
or an externally mirrored disk template type such as sharedfile,
1705 e19f7095 Constantinos Venetsanopoulos
blockdev, rbd or ext.
1706 e19f7095 Constantinos Venetsanopoulos
1707 e19f7095 Constantinos Venetsanopoulos
If the instance's disk template is of type sharedfile, blockdev, rbd or
1708 e19f7095 Constantinos Venetsanopoulos
ext, then you can explicitly specify the target node (which can be any
1709 e19f7095 Constantinos Venetsanopoulos
node) using the ``-n`` or ``--target-node`` option, or specify an
1710 e19f7095 Constantinos Venetsanopoulos
iallocator plugin using the ``-I`` or ``--iallocator`` option. If you
1711 e19f7095 Constantinos Venetsanopoulos
omit both, the default iallocator will be used to specify the target
1712 e19f7095 Constantinos Venetsanopoulos
node.  Alternatively, the default iallocator can be requested by
1713 e19f7095 Constantinos Venetsanopoulos
specifying ``.`` as the name of the plugin.
1714 e19f7095 Constantinos Venetsanopoulos
1715 e19f7095 Constantinos Venetsanopoulos
If the instance's disk template is of type drbd, the target node is
1716 e19f7095 Constantinos Venetsanopoulos
automatically selected as the drbd's secondary node. Changing the
1717 e19f7095 Constantinos Venetsanopoulos
secondary node is possible with a replace-disks operation.
1718 e19f7095 Constantinos Venetsanopoulos
1719 e19f7095 Constantinos Venetsanopoulos
The migration command needs a perfectly healthy instance for drbd
1720 e19f7095 Constantinos Venetsanopoulos
instances, as we rely on the dual-master capability of drbd8 and the
1721 e19f7095 Constantinos Venetsanopoulos
disks of the instance are not allowed to be degraded.
1722 1b7f2c85 Iustin Pop
1723 1b7f2c85 Iustin Pop
The ``--non-live`` and ``--migration-mode=non-live`` options will
1724 1b7f2c85 Iustin Pop
switch (for the hypervisors that support it) between a "fully live"
1725 9d0671ba Iustin Pop
(i.e. the interruption is as minimal as possible) migration and one in
1726 9d0671ba Iustin Pop
which the instance is frozen, its state saved and transported to the
1727 9d0671ba Iustin Pop
remote node, and then resumed there. This all depends on the
1728 9d0671ba Iustin Pop
hypervisor support for two different methods. In any case, it is not
1729 9d0671ba Iustin Pop
an error to pass this parameter (it will just be ignored if the
1730 9d0671ba Iustin Pop
hypervisor doesn't support it). The option ``--migration-mode=live``
1731 9d0671ba Iustin Pop
option will request a fully-live migration. The default, when neither
1732 9d0671ba Iustin Pop
option is passed, depends on the hypervisor parameters (and can be
1733 9d0671ba Iustin Pop
viewed with the **gnt-cluster info** command).
1734 1b7f2c85 Iustin Pop
1735 1b7f2c85 Iustin Pop
If the ``--cleanup`` option is passed, the operation changes from
1736 e19f7095 Constantinos Venetsanopoulos
migration to attempting recovery from a failed previous migration. In
1737 9d0671ba Iustin Pop
this mode, Ganeti checks if the instance runs on the correct node (and
1738 50c1e351 Bernardo Dal Seno
updates its configuration if not) and ensures the instances' disks
1739 9d0671ba Iustin Pop
are configured correctly. In this mode, the ``--non-live`` option is
1740 9d0671ba Iustin Pop
ignored.
1741 1b7f2c85 Iustin Pop
1742 1b7f2c85 Iustin Pop
The option ``-f`` will skip the prompting for confirmation.
1743 1b7f2c85 Iustin Pop
1744 e9c487be René Nussbaumer
If ``--allow-failover`` is specified it tries to fallback to failover if
1745 11dc66f3 Bernardo Dal Seno
it already can determine that a migration won't work (e.g. if the
1746 1cdc9dbb Bernardo Dal Seno
instance is shut down). Please note that the fallback will not happen
1747 e9c487be René Nussbaumer
during execution. If a migration fails during execution it still fails.
1748 e9c487be René Nussbaumer
1749 3ed23330 René Nussbaumer
If ``--ignore-ipolicy`` is given any instance policy violations occuring
1750 3ed23330 René Nussbaumer
during this operation are ignored.
1751 3ed23330 René Nussbaumer
1752 8c0b16f6 Guido Trotter
The ``--no-runtime-changes`` option forbids migrate to alter an
1753 8c0b16f6 Guido Trotter
instance's runtime before migrating it (eg. ballooning an instance
1754 8c0b16f6 Guido Trotter
down because the target node doesn't have enough available memory).
1755 8c0b16f6 Guido Trotter
1756 22ac4136 Michael Hanselmann
If an instance has the backend parameter ``always_failover`` set to
1757 b5f0b5cc Bernardo Dal Seno
true, then the migration is automatically converted into a failover.
1758 b5f0b5cc Bernardo Dal Seno
1759 354c4f62 Michael Hanselmann
See **ganeti**\(7) for a description of ``--submit`` and other common
1760 f70bb622 Michael Hanselmann
options.
1761 f70bb622 Michael Hanselmann
1762 1b7f2c85 Iustin Pop
Example (and expected output)::
1763 1b7f2c85 Iustin Pop
1764 1b7f2c85 Iustin Pop
    # gnt-instance migrate instance1
1765 1cdc9dbb Bernardo Dal Seno
    Instance instance1 will be migrated. Note that migration
1766 1cdc9dbb Bernardo Dal Seno
    might impact the instance if anything goes wrong (e.g. due to bugs in
1767 1cdc9dbb Bernardo Dal Seno
    the hypervisor). Continue?
1768 1b7f2c85 Iustin Pop
    y/[n]/?: y
1769 1cdc9dbb Bernardo Dal Seno
    Migrating instance instance1.example.com
1770 1b7f2c85 Iustin Pop
    * checking disk consistency between source and target
1771 1cdc9dbb Bernardo Dal Seno
    * switching node node2.example.com to secondary mode
1772 1cdc9dbb Bernardo Dal Seno
    * changing into standalone mode
1773 1b7f2c85 Iustin Pop
    * changing disks into dual-master mode
1774 1cdc9dbb Bernardo Dal Seno
    * wait until resync is done
1775 1cdc9dbb Bernardo Dal Seno
    * preparing node2.example.com to accept the instance
1776 1b7f2c85 Iustin Pop
    * migrating instance to node2.example.com
1777 1cdc9dbb Bernardo Dal Seno
    * switching node node1.example.com to secondary mode
1778 1cdc9dbb Bernardo Dal Seno
    * wait until resync is done
1779 1cdc9dbb Bernardo Dal Seno
    * changing into standalone mode
1780 1cdc9dbb Bernardo Dal Seno
    * changing disks into single-master mode
1781 1cdc9dbb Bernardo Dal Seno
    * wait until resync is done
1782 1cdc9dbb Bernardo Dal Seno
    * done
1783 1b7f2c85 Iustin Pop
    #
1784 1b7f2c85 Iustin Pop
1785 1b7f2c85 Iustin Pop
1786 1b7f2c85 Iustin Pop
MOVE
1787 1b7f2c85 Iustin Pop
^^^^
1788 1b7f2c85 Iustin Pop
1789 13ddcb50 Michael Hanselmann
| **move** [-f] [\--ignore-consistency]
1790 13ddcb50 Michael Hanselmann
| [-n *node*] [\--shutdown-timeout=*N*] [\--submit] [\--ignore-ipolicy]
1791 13ddcb50 Michael Hanselmann
| {*instance*}
1792 1b7f2c85 Iustin Pop
1793 e19f7095 Constantinos Venetsanopoulos
Move will move the instance to an arbitrary node in the cluster. This
1794 9d0671ba Iustin Pop
works only for instances having a plain or file disk template.
1795 1b7f2c85 Iustin Pop
1796 9d0671ba Iustin Pop
Note that since this operation is done via data copy, it will take a
1797 9d0671ba Iustin Pop
long time for big disks (similar to replace-disks for a drbd
1798 1b7f2c85 Iustin Pop
instance).
1799 1b7f2c85 Iustin Pop
1800 1b7f2c85 Iustin Pop
The ``--shutdown-timeout`` is used to specify how much time to wait
1801 1b7f2c85 Iustin Pop
before forcing the shutdown (e.g. ``xm destroy`` in XEN, killing the
1802 1b7f2c85 Iustin Pop
kvm process for KVM, etc.). By default two minutes are given to each
1803 1b7f2c85 Iustin Pop
instance to stop.
1804 1b7f2c85 Iustin Pop
1805 bb851c63 Iustin Pop
The ``--ignore-consistency`` option will make Ganeti ignore any errors
1806 bb851c63 Iustin Pop
in trying to shutdown the instance on its node; useful if the
1807 75c7a686 Bernardo Dal Seno
hypervisor is broken and you want to recover the data.
1808 bb851c63 Iustin Pop
1809 92cf62e3 René Nussbaumer
If ``--ignore-ipolicy`` is given any instance policy violations occuring
1810 92cf62e3 René Nussbaumer
during this operation are ignored.
1811 92cf62e3 René Nussbaumer
1812 354c4f62 Michael Hanselmann
See **ganeti**\(7) for a description of ``--submit`` and other common
1813 13ddcb50 Michael Hanselmann
options.
1814 13ddcb50 Michael Hanselmann
1815 1b7f2c85 Iustin Pop
Example::
1816 1b7f2c85 Iustin Pop
1817 1b7f2c85 Iustin Pop
    # gnt-instance move -n node3.example.com instance1.example.com
1818 1b7f2c85 Iustin Pop
1819 1b7f2c85 Iustin Pop
1820 bd2a5569 Michael Hanselmann
CHANGE-GROUP
1821 29fc0e4e Iustin Pop
^^^^^^^^^^^^
1822 bd2a5569 Michael Hanselmann
1823 f70bb622 Michael Hanselmann
| **change-group** [\--submit]
1824 f70bb622 Michael Hanselmann
| [\--iallocator *NAME*] [\--to *GROUP*...] {*instance*}
1825 bd2a5569 Michael Hanselmann
1826 bd2a5569 Michael Hanselmann
This command moves an instance to another node group. The move is
1827 bd2a5569 Michael Hanselmann
calculated by an iallocator, either given on the command line or as a
1828 bd2a5569 Michael Hanselmann
cluster default.
1829 bd2a5569 Michael Hanselmann
1830 bd2a5569 Michael Hanselmann
If no specific destination groups are specified using ``--to``, all
1831 bd2a5569 Michael Hanselmann
groups except the one containing the instance are considered.
1832 bd2a5569 Michael Hanselmann
1833 354c4f62 Michael Hanselmann
See **ganeti**\(7) for a description of ``--submit`` and other common
1834 f70bb622 Michael Hanselmann
options.
1835 f70bb622 Michael Hanselmann
1836 bd2a5569 Michael Hanselmann
Example::
1837 bd2a5569 Michael Hanselmann
1838 bd2a5569 Michael Hanselmann
    # gnt-instance change-group -I hail --to rack2 inst1.example.com
1839 bd2a5569 Michael Hanselmann
1840 bd2a5569 Michael Hanselmann
1841 fa5121f0 Iustin Pop
Tags
1842 1b7f2c85 Iustin Pop
~~~~
1843 1b7f2c85 Iustin Pop
1844 1b7f2c85 Iustin Pop
ADD-TAGS
1845 1b7f2c85 Iustin Pop
^^^^^^^^
1846 1b7f2c85 Iustin Pop
1847 e8f936b0 Iustin Pop
**add-tags** [\--from *file*] {*instancename*} {*tag*...}
1848 1b7f2c85 Iustin Pop
1849 1b7f2c85 Iustin Pop
Add tags to the given instance. If any of the tags contains invalid
1850 1b7f2c85 Iustin Pop
characters, the entire operation will abort.
1851 1b7f2c85 Iustin Pop
1852 9d0671ba Iustin Pop
If the ``--from`` option is given, the list of tags will be extended
1853 9d0671ba Iustin Pop
with the contents of that file (each line becomes a tag).  In this
1854 9d0671ba Iustin Pop
case, there is not need to pass tags on the command line (if you do,
1855 9d0671ba Iustin Pop
both sources will be used). A file name of ``-`` will be interpreted
1856 9d0671ba Iustin Pop
as stdin.
1857 1b7f2c85 Iustin Pop
1858 1b7f2c85 Iustin Pop
LIST-TAGS
1859 1b7f2c85 Iustin Pop
^^^^^^^^^
1860 1b7f2c85 Iustin Pop
1861 1b7f2c85 Iustin Pop
**list-tags** {*instancename*}
1862 1b7f2c85 Iustin Pop
1863 1b7f2c85 Iustin Pop
List the tags of the given instance.
1864 1b7f2c85 Iustin Pop
1865 1b7f2c85 Iustin Pop
REMOVE-TAGS
1866 1b7f2c85 Iustin Pop
^^^^^^^^^^^
1867 1b7f2c85 Iustin Pop
1868 e8f936b0 Iustin Pop
**remove-tags** [\--from *file*] {*instancename*} {*tag*...}
1869 1b7f2c85 Iustin Pop
1870 1b7f2c85 Iustin Pop
Remove tags from the given instance. If any of the tags are not
1871 1b7f2c85 Iustin Pop
existing on the node, the entire operation will abort.
1872 1b7f2c85 Iustin Pop
1873 1b7f2c85 Iustin Pop
If the ``--from`` option is given, the list of tags to be removed will
1874 1b7f2c85 Iustin Pop
be extended with the contents of that file (each line becomes a tag).
1875 1b7f2c85 Iustin Pop
In this case, there is not need to pass tags on the command line (if
1876 b5a418aa Michael Hanselmann
you do, tags from both sources will be removed). A file name of ``-``
1877 b5a418aa Michael Hanselmann
will be interpreted as stdin.
1878 a84d1115 René Nussbaumer
1879 a84d1115 René Nussbaumer
.. vim: set textwidth=72 :
1880 9ff4f2c0 Michael Hanselmann
.. Local Variables:
1881 9ff4f2c0 Michael Hanselmann
.. mode: rst
1882 9ff4f2c0 Michael Hanselmann
.. fill-column: 72
1883 9ff4f2c0 Michael Hanselmann
.. End: