X-Git-Url: https://code.grnet.gr/git/ganeti-local/blobdiff_plain/c6520286fd01ea4d9482ff9295524aea7709bb37..1b54fc6c2fd92b614c029cc5312d02f9f1526253:/man/gnt-instance.sgml diff --git a/man/gnt-instance.sgml b/man/gnt-instance.sgml index a9dbd14..2d9d44f 100644 --- a/man/gnt-instance.sgml +++ b/man/gnt-instance.sgml @@ -2,7 +2,7 @@ - May 29, 2008"> + February 11, 2009"> 8"> @@ -21,6 +21,7 @@ 2006 2007 2008 + 2009 Google Inc. &dhdate; @@ -29,7 +30,7 @@ &dhucpackage; &dhsection; - ganeti 1.2 + ganeti 2.0 &dhpackage; @@ -63,41 +64,29 @@ ADD add - -s disksize - --swap-size disksize - -m memsize - - -b bridge - --mac MAC-address - - - --hvm-boot-order boot-order - --hvm-acpi ACPI-support - - - --hvm-pae PAE-support + -t + diskless + file + plain + drbd + - --hvm-cdrom-image-path - cdrom-image-path + + --disk=N:size=VAL,mode=ro|rw + -s SIZE + - - --vnc-bind-address - vnc-bind-address + + --net=N:options + --no-nics + - - --kernel - default - kernel_path - + -B BEPARAMS - --initrd - default - none - initrd_path - + -H HYPERVISOR:option=value --file-storage-dir dir_path @@ -107,14 +96,6 @@ - -t - diskless - file - plain - drbd - - - -n node:secondary-node --iallocator name @@ -123,143 +104,398 @@ -o os-type + --submit + instance - Creates a new instance on the specified - host. instance must be in DNS and - resolve to a IP in the same network as the nodes in the - cluster. + Creates a new instance on the specified host. The + instance argument must be in DNS, + but depending on the bridge setup, need not be in the same + network as the nodes in the cluster. - The option specifies the disk size for - the instance, in mebibytes (defaults to - 20480MiB = - 20GiB). You can also use one of the - suffixes m, g or + The option specifies the parameters + for the disks of the instance. The numbering of disks starts + at zero, and at least one disk needs to be passed. For each + disk, at least the size needs to be given, and optionally + the access mode (read-only or the default of read-write) can + also be specified. The size is interpreted (when no unit is + given) in mebibytes. You can also use one of the suffixes + m, g or t to specificy the exact the units used; these suffixes map to mebibytes, gibibytes and tebibytes. - The option specifies the swap - disk size (in mebibytes) for the instance (the one presented - as /dev/sdb). The - default is 4096MiB. As for the disk - size, you can specify other suffixes. + Alternatively, a single-disk instance can be created via the + option which takes a single argument, + the size of the disk. This is similar to the Ganeti 1.2 + version (but will only create one disk). - The option specifies the memory size for - the instance, in mebibytes (defaults to 128 MiB). Again, you - can use other suffixes (e.g. 2g). + The minimum disk specification is therefore + --disk 0:size=20G (or -s + 20G when using the option), + and a three-disk instance can be specified as + --disk 0:size=20G --disk 1:size=4G --disk + 2:size=100G. - The options specifies the operating - system to be installed. The available operating systems can - be listed with gnt-os list. + The NICs of the instances can be specified via the + option. By default, one NIC is + created for the instance, with a random MAC, and connected + to the default bridge. Each NIC can take up to three + parameters (all optional): + + + mac + + either a value or GENERATE + to generate a new unique MAC + + + + ip + + specifies the IP address assigned to the + instance from the Ganeti side (this is not necessarily + what the instance will use, but what the node expects + the instance to use) + + + + bridge + + specifies the bridge to attach this NIC + to + + + - The option specifies the bridge to which the - instance will be connected. (defaults to the cluster-wide default - bridge specified at cluster initialization time). + Alternatively, if no network is desired for the instance, you + can prevent the default of one NIC with the + option. + + + + The options specifies the operating + system to be installed. The available operating systems can + be listed with gnt-os list. - The option specifies the MAC address - of the ethernet interface for the instance. If this option - is not specified, a new MAC address is generated randomly with - the configured MAC prefix. The randomly generated MAC - address is guaranteed to be unique among the instances of - this cluster. + The option specifies the backend + parameters for the instance. If no such parameters are + specified, the values are inherited from the cluster. Possible + parameters are: + + + memory + + the memory size of the instance; as usual, + suffixes can be used to denote the unit, otherwise the + value is taken in mebibites + + + + vcpus + + the number of VCPUs to assign to the instance + (if this value makes sense for the hypervisor) + + + + auto_balance + + whether the instance is considered in the N+1 + cluster checks (enough redundancy in the cluster to + survive a node failure) + + + - The option specifies the - boot device order for Xen HVM instances. The boot order is a - string of letters listing the boot devices, with valid - device letters being: + The option specified the hypervisor to + use for the instance (must be one of the enabled hypervisors + on the cluster) and optionally custom parameters for this + instance. If not other options are used (i.e. the invocation + is just -H + NAME) the instance + will inherit the cluster options. The defaults below show + the cluster defaults at cluster creation time. + The possible hypervisor options are as follows: - a + boot_order + + Valid for the Xen HVM and KVM + hypervisors. + + A string value denoting the boot order. This + has different meaning for the Xen HVM hypervisor and + for the KVM one. + + + For Xen HVM, The boot order is a string of letters + listing the boot devices, with valid device letters + being: + + + + a + + + floppy drive + + + + + c + + + hard disk + + + + + d + + + CDROM drive + + + + + n + + + network boot (PXE) + + + + + + The default is not to set an HVM boot order which is + interpreted as 'dc'. + + + + + + cdrom_image_path + Valid for the Xen HVM and KVM hypervisors. + + The path to a CDROM image to attach to the + instance. + + + + + nic_type + + Valid for the Xen HVM and KVM hypervisors. + - floppy drive + This parameter determines the way the network cards + are presented to the instance. The possible options are: + + rtl8139 (default for Xen HVM) (HVM & KVM) + ne2k_isa (HVM & KVM) + ne2k_pci (HVM & KVM) + i82551 (KVM) + i82557b (KVM) + i82559er (KVM) + pcnet (KVM) + e1000 (KVM) + paravirtual (default for KVM) (HVM & KVM) + - c + disk_type + Valid for the Xen HVM and KVM hypervisors. + - hard disk + This parameter determines the way the disks are + presented to the instance. The possible options are: + + ioemu (default for HVM & KVM) (HVM & KVM) + ide (HVM & KVM) + scsi (KVM) + sd (KVM) + mtd (KVM) + pflash (KVM) + - d + vnc_bind_address + Valid for the Xen HVM and KVM hypervisors. + + Specifies the address that the VNC listener for + this instance should bind to. Valid values are IPv4 + addresses. Use the address 0.0.0.0 to bind to all + available interfaces (this is the default) or specify + the address of one of the interfaces on the node to + restrict listening to that interface. + + + + + vnc_tls + + Valid for the KVM hypervisor. + + A boolean option that controls whether the + VNC connection is secured with TLS. + + + + + vnc_x509_path + + Valid for the KVM hypervisor. + + If is enabled, this + options specifies the path to the x509 certificate to + use. + + + + + vnc_x509_verify + + Valid for the KVM hypervisor. + + + + + acpi + + Valid for the Xen HVM and KVM hypervisors. + - CDROM drive + A boolean option that specifies if the hypervisor + should enable ACPI support for this instance. By + default, ACPI is disabled. + - n + pae + Valid for the Xen HVM and KVM hypervisors. + - network boot (PXE) + A boolean option that specifies if the hypervisor + should enabled PAE support for this instance. The + default is false, disabling PAE support. - - - - The default is not to set an HVM boot order which is - interpreted as 'dc'. This option, like all options starting - with 'hvm', is only relevant for Xen HVM instances and - ignored by all other instance types. - + + kernel_path + + Valid for the Xen PVM and KVM hypervisors. - - The option specifies if Xen - should enable ACPI support for this HVM instance. Valid - values are true or false. The default value is false, - disabling ACPI support for this instance. - + + This option specifies the path (on the node) to the + kernel to boot the instance with. Xen PVM instances + always require this, while for KVM if this option is + empty, it will cause the machine to load the kernel + from its disks. + + + - - The option specifies if Xen - should enabled PAE support for this HVM instance. Valid - values are true or false. The default is false, disabling - PAE support for this instance. - + + kernel_args + + Valid for the Xen PVM and KVM hypervisors. - - The option specifies the - path to the file Xen uses to emulate a virtual CDROM drive - for this HVM instance. Valid values are either an - absolute path to an existing file or None, which disables - virtual CDROM support for this instance. The default is - None, disabling virtual CDROM support. + + This options specifies extra arguments to the kernel + that will be loaded. device. This is always used + for Xen PVM, while for KVM it is only used if the + option is also + specified. + + + + The default setting for this value is simply + "ro", which mounts the root + disk (initially) in read-only one. For example, + setting this to single will + cause the instance to start in single-user mode. + + + + + + initrd_path + + Valid for the Xen PVM and KVM hypervisors. + + + This option specifies the path (on the node) to the + initrd to boot the instance with. Xen PVM instances + can use this always, while for KVM if this option is + only used if the option + is also specified. You can pass here either an + absolute filename (the path to the initrd) if you + want to use an initrd, or use the format + no_initrd_path for no initrd. + + + + + + root_path + + Valid for the Xen PVM and KVM hypervisors. + + + This options specifies the name of the root + device. This is always needed for Xen PVM, while for + KVM it is only used if the + option is also + specified. + + + + + + serial_console + + Valid for the KVM hypervisor. + + This boolean option specifies whether to + emulate a serial console for the instance. + + + - The option specifies the - address that the VNC listener for this instance should bind - to. Valid values are IPv4 addresses. Use the address 0.0.0.0 - to bind to all available interfaces (this is the default) - or specify the address of one of the interfaces on the node - to restrict listening to that interface. @@ -271,27 +507,6 @@ - The option allows the instance to - use a custom kernel (if a filename is passed) or to use the - default kernel (@CUSTOM_XEN_KERNEL@), if the - string default is passed. - - - - The option is similar: it allows - the instance to use a custom initrd (if a filename is - passed) or to use the default initrd - (@CUSTOM_XEN_INITRD@), if the string - default is passed, or to disable the - use of an initrd, if the string none is - passed. Note that in the case the instance is set to use the - default initrd and it doesn't exist, it will be silently - ignored; if the instance is set to use a custom initrd and - it doesn't exist, this will be treated as an error and will - prevent the startup of the instance. - - - The options specifies the disk layout type for the instance. The available choices are: @@ -359,55 +574,195 @@ loop - Kernel loopback driver. + + Kernel loopback driver. This driver uses loopback + devices to access the filesystem within the + file. However, running I/O intensive applications in + your instance using the loop driver might result in + slowdowns. Furthermore, if you use the loopback + driver consider increasing the maximum amount of + loopback devices (on most systems it's 8) using the + max_loop param. + blktap - blktap driver. + The blktap driver (for Xen hypervisors). In + order to be able to use the blktap driver you should + check if the 'blktapctrl' user space disk agent is + running (usually automatically started via xend). This + user-level disk I/O interface has the advantage of + better performance. Especially if you use a network + file system (e.g. NFS) to store your instances this is + the recommended choice. + - The loop driver uses loopback devices to access the filesystem - within the file. However, running I/O intensive applications - in your instance using the loop driver might result in slowdowns. - Furthermore, if you use the loopback driver consider increasing - the maximum amount of loopback devices (on most systems it's 8) - using the max_loop param. - - - - In order to be able to use the blktap driver you should check - if the 'blktapctrl' user space disk agent is running (usually - automatically started via xend). This user-level disk I/O - interface has the advantage of better performance. Especially - if you use a network file system (e.g. NFS) to store your instances - this is the recommended choice. + The option is used to send the job to + the master daemon but not wait for its completion. The job + ID will be shown so that it can be examined via + gnt-job info. Example: -# gnt-instance add -t file -s 30g -m 512 -o debian-etch \ +# gnt-instance add -t file --disk 0:size=30g -B memory=512 -o debian-etch \ -n node1.example.com --file-storage-dir=mysubdir instance1.example.com -# gnt-instance add -t plain -s 30g -m 512 -o debian-etch \ +# gnt-instance add -t plain --disk 0:size=30g -B memory=512 -o debian-etch \ -n node1.example.com instance1.example.com -# gnt-instance add -t drbd -s 30g -m 512 -o debian-etch \ +# gnt-instance add -t drbd --disk 0:size=30g -B memory=512 -o debian-etch \ -n node1.example.com:node2.example.com instance2.example.com + BATCH-CREATE + + batch-create + instances_file.json + + + + This command (similar to the Ganeti 1.2 + batcher tool) submits multiple instance + creation jobs based on a definition file. The instance + configurations do not encompass all the possible options for + the add command, but only a subset. + + + + The instance file should be a valid-formed JSON file, + containing a dictionary with instance name and instance + parameters. The accepted parameters are: + + + + disk_size + + The size of the disks of the instance. + + + + disk_templace + + The disk template to use for the instance, + the same as in the add + command. + + + + backend + + A dictionary of backend parameters. + + + + hypervisor + + A dictionary with a single key (the + hypervisor name), and as value the hypervisor + options. If not passed, the default hypervisor and + hypervisor options will be inherited. + + + + mac, ip, bridge + + Specifications for the one NIC that will be + created for the instance. + + + + primary_node, secondary_node + + The primary and optionally the secondary node + to use for the instance (in case an iallocator script + is not used). + + + + iallocator + + Instead of specifying the nodes, an + iallocator script can be used to automatically compute + them. + + + + start + + whether to start the instance + + + + ip_check + + Skip the check for already-in-use instance; + see the description in the add + command for details. + + + + file_storage_dir, file_driver + + Configuration for the file + disk type, see the add command for + details. + + + + + + + A simple definition for one instance can be (with most of + the parameters taken from the cluster defaults): + +{ + "instance3": { + "template": "drbd", + "os": "debootstrap", + "disk_size": ["25G"], + "iallocator": "dumb" + }, + "instance5": { + "template": "drbd", + "os": "debootstrap", + "disk_size": ["25G"], + "iallocator": "dumb", + "hypervisor": "xen-hvm", + "hvparams": {"acpi": true}, + "backend": {"memory": 512} + } +} + + + + + The command will display the job id for each submitted instance, as follows: + +# gnt-instance batch-create instances.json +instance3: 11224 +instance5: 11225 + + + + + + REMOVE remove --ignore-failures + --submit instance @@ -429,6 +784,13 @@ + The option is used to send the job to + the master daemon but not wait for its completion. The job + ID will be shown so that it can be examined via + gnt-job info. + + + Example: # gnt-instance remove instance1.example.com @@ -444,13 +806,13 @@ --no-headers --separator=SEPARATOR -o [+]FIELD,... + instance Shows the currently configured instances with memory usage, - disk usage, the node they are running on, and the CPU time, - counted in seconds, used by each instance since its latest - restart. + disk usage, the node they are running on, and their run + status. @@ -499,12 +861,6 @@ - admin_ram - - the desired memory for the instance - - - disk_template the disk template of the instance @@ -547,19 +903,19 @@ ip the ip address ganeti recognizes as associated with - the instance interface + the first instance interface mac - the instance interface MAC address + the first instance interface MAC address bridge - bridge the instance is connected to + the bridge of the first instance NIC @@ -572,7 +928,8 @@ sdb_size - the size of the instance's second disk + the size of the instance's second disk, if + any @@ -589,12 +946,143 @@ tags + + serial_no + + the so called 'serial number' of the + instance; this is a numeric field that is incremented + each time the instance is modified, and it can be used + to track modifications + + + + network_port + + If the instance has a network port assigned + to it (e.g. for VNC connections), this will be shown, + otherwise - will be + displayed. + + + + beparams + + A text format of the entire beparams for the + instance. It's more useful to select individual fields + from this dictionary, see below. + + + + disk.count + + The number of instance disks. + + + + disk.size/N + + The size of the instance's Nth disk. This is + a more generic form of the sda_size + and sdb_size fields. + + + + disk.sizes + + A comma-separated list of the disk sizes for + this instance. + + + + disk_usage + + The total disk space used by this instance on + each of its nodes. This is not the instance-visible + disk size, but the actual disk "cost" of the + instance. + + + + nic.mac/N + + The MAC of the Nth instance NIC. + + + + nic.ip/N + + The IP address of the Nth instance NIC. + + + + nic.bridge/N + + The bridge the Nth instance NIC is attached + to. + + + + nic.macs + + A comma-separated list of all the MACs of the + instance's NICs. + + + + nic.ips + + A comma-separated list of all the IP + addresses of the instance's NICs. + + + + nic.bridges + + A comma-separated list of all the bridges of the + instance's NICs. + + + + nic.count + + The number of instance nics. + + + + hv/NAME + + The value of the hypervisor parameter called + NAME. For details of what + hypervisor parameters exist and their meaning, see the + add command. + + + + be/memory + + The configured memory for the instance. + + + + be/vcpus + + The configured number of VCPUs for the + instance. + + + + be/auto_balance + + Whether the instance is considered in N+1 + checks. + + If the value of the option starts with the character - +, the new fields will be added to the + +, the new field(s) will be added to the default list. This allows to quickly see the default list plus a few other fields, instead of retyping the entire list of fields. @@ -629,14 +1117,32 @@ info - instance + + -s + --static + + + --all + instance + - Show detailed information about the (given) instances. This - is different from list as it shows - detailed data about the instance's disks (especially useful - for drbd disk template). + Show detailed information about the given instance(s). This is + different from list as it shows detailed data + about the instance's disks (especially useful for the drbd disk + template). + + + + If the option is used, only information + available in the configuration file is returned, without + querying nodes, making the operation faster. + + + + Use the to get info about all instances, + rather than explicitely passing the ones you're interested in. @@ -645,81 +1151,70 @@ modify - -m memsize - -p vcpus - -i ip - -b bridge - --mac MAC-address - --hvm-boot-order boot-order - --hvm-acpi ACPI-support - --hvm-pae PAE-support - --hvm-cdrom-image-path - cdrom-image-path - --vnc-bind-address - vnc-bind-address - - --kernel - default - kernel_path - + -H HYPERVISOR_PARAMETERS + + -B BACKEND_PARAMETERS - --initrd - default - none - initrd_path - + + --net add:options + --net remove + --net N:options + + + + --disk add:size=SIZE + --disk remove + --disk N:mode=MODE + + + + --submit instance - Modify the memory size, number of vcpus, ip address, MAC - address and/or bridge for an instance. + Modifies the memory size, number of vcpus, ip address, MAC + address and/or bridge for an instance. It can also add and + remove disks and NICs to/from the instance. Note that you + need to give at least one of the arguments, otherwise the + command complains. - The memory size is given in MiB. Note that you need to give - at least one of the arguments, otherwise the command - complains. + The option specifies hypervisor options + in the form of name=value[,...]. For details which options can be specified, see the add command. - The , - and - options are described in the add command. + The option + adds a disk to the instance. The will remove the last disk of the + instance. The + option will change the mode of the Nth disk of the instance + between read-only (ro) and read-write + (rw). - Additionally, the HVM boot order can be reset to the default - values by using . + The option will + add a new NIC to the instance. The available options are the + same as in the add command (mac, ip, + bridge). The will remove the + last NIC of the instance, while the + option will change the parameters of the Nth instance NIC. - The option specifies if Xen - should enable ACPI support for this HVM instance. Valid - values are true or false. - - - - The option specifies if Xen - should enabled PAE support for this HVM instance. Valid - values are true or false. - - - - The specifies the - path to the file xen uses to emulate a virtual CDROM drive - for this HVM instance. Valid values are either an - absolute path to an existing file or None, which disables - virtual CDROM support for this instance. - - - - The specifies the - address that the VNC listener for this instance should bind - to. Valid values are IPv4 addresses. Use the address 0.0.0.0 - to bind to all available interfaces. + The option is used to send the job to + the master daemon but not wait for its completion. The job + ID will be shown so that it can be examined via + gnt-job info. @@ -734,16 +1229,55 @@ reinstall -o os-type + --select-os -f force - instance + --force-multiple + + + --instance + --node + --primary + --secondary + --all + + --submit + instance - Reinstalls the operating system on the given instance. The instance - must be stopped when running this command. If the - is specified, the operating system is - changed. + Reinstalls the operating system on the given instance(s). The + instance(s) must be stopped when running this command. If the + is specified, the operating + system is changed. + + + + The option switches to an + interactive OS reinstall. The user is prompted to select the OS + template from the list of available OS templates. + + + Since this is a potentially dangerous command, the user will + be required to confirm this action, unless the + flag is passed. When multiple instances + are selected (either by passing multiple arguments or by + using the , + , or + options), the user must pass both the + and + options to skip the + interactive confirmation. + + + + The option is used to send the job to + the master daemon but not wait for its completion. The job + ID will be shown so that it can be examined via + gnt-job info. + + + @@ -752,6 +1286,7 @@ rename --no-ip-check + --submit instance new_name @@ -765,6 +1300,14 @@ instance is started). The IP test can be skipped if the option is passed. + + + The option is used to send the job to + the master daemon but not wait for its completion. The job + ID will be shown so that it can be examined via + gnt-job info. + + @@ -777,9 +1320,11 @@ startup - --extra=PARAMS + --force + --force-multiple + --instance --node @@ -788,6 +1333,11 @@ --all + -H + -B + + --submit + name @@ -844,23 +1394,44 @@ - The option is used to pass - additional argument to the instance's kernel for this start - only. Currently there is no way to specify a persistent set - of arguments (beside the one hardcoded). Note that this may - not apply to all virtualization types. + Use to start even if secondary disks are + failing. - Use to start even if secondary disks are - failing. + The will skip the + interactive confirmation in the case the more than one + instance will be affected. + + + + The and options + specify extra, temporary hypervisor and backend parameters + that can be used to start an instance with modified + parameters. They can be useful for quick testing without + having to modify an instance back and forth, e.g.: + +# gnt-instance start -H root_args="single" instance1 +# gnt-instance start -B memory=2048 instance2 + + The first form will start the instance + instance1 in single-user mode, and + the instance instance2 with 2GB of + RAM (this time only, unless that is the actual instance + memory size already). + + + + The option is used to send the job to + the master daemon but not wait for its completion. The job + ID will be shown so that it can be examined via + gnt-job info. Example: # gnt-instance start instance1.example.com -# gnt-instance start --extra single test1.example.com # gnt-instance start --node node1.example.com node2.example.com # gnt-instance start --all @@ -873,6 +1444,8 @@ shutdown + --force-multiple + --instance --node @@ -881,7 +1454,8 @@ --all - + --submit + name @@ -902,6 +1476,14 @@ + The option is used to send the job to + the master daemon but not wait for its completion. The job + ID will be shown so that it can be examined via + gnt-job info. + + + + Example: # gnt-instance shutdown instance1.example.com @@ -916,8 +1498,6 @@ reboot - --extra=PARAMS - --type=REBOOT-TYPE --ignore-secondaries @@ -932,7 +1512,8 @@ --all - + --submit + name @@ -944,7 +1525,7 @@ recreates the hypervisor config for the instance and starts the instance. A full reboot does the equivalent of gnt-instance shutdown && gnt-instance - startup. The default is soft reboot. + startup. The default is hard reboot. @@ -962,9 +1543,9 @@ - Use the option to keep - gnt-instance from asking for confirmation when more than one - instance is affected. + The will skip the + interactive confirmation in the case the more than one + instance will be affected. @@ -985,9 +1566,18 @@ - Connects to the console of the given instance. If the instance - is not up, an error is returned. Use the - option to display the command instead of executing it. + Connects to the console of the given instance. If the + instance is not up, an error is returned. Use the + option to display the command + instead of executing it. + + + + For HVM instances, this will attempt to connect to the + serial console of the instance. To connect to the + virtualized "physical" console of a HVM instance, use a VNC + client with the connection info from the + info command. @@ -1008,45 +1598,73 @@ replace-disks + --submit + -p + --disks idx + instance + + + + replace-disks + --submit + -s + --disks idx + instance + + + replace-disks + --submit --iallocator name --new-secondary NODE - - -s instance - - replace-disks + + This command is a generalized form for replacing disks. It + is currently only valid for the mirrored (DRBD) disk + template. + - - -s - -p - - instance - + + The first form (when passing the option) + will replace the disks on the primary, while the second form + (when passing the option will replace + the disks on the secondary node. For these two cases (as the + node doesn't change), it is possible to only run the replace + for a subset of the disks, using the option + which takes a list of + comma-delimited disk indices (zero-based), + e.g. 0,2 to replace only the first + and third disks. + - This command is a generalized form for adding and replacing - disks. It is currently only valid for the mirrored (DRBD) - disk template. + The third form (when passing either the + or the + option) is designed to + change secondary node of the instance. Specifying + makes the new secondary be + selected automatically by the specified allocator plugin, + otherwise the new secondary node will be the one chosen + manually via the option. - The first form will do a secondary node change, while the - second form will replace the disks on either the primary - () or the secondary () - node of the instance only, without changing the node. + The option is used to send the job to + the master daemon but not wait for its completion. The job + ID will be shown so that it can be examined via + gnt-job info. - Specifying enables secondary node - replacement and and makes the new secondary be selected automatically - by the specified allocator plugin. + Note that it is not possible to select an offline or drained + node as a new secondary. + @@ -1054,6 +1672,7 @@ activate-disks + --submit instance @@ -1061,17 +1680,25 @@ successful, the command will show the location and name of the block devices: -node1.example.com:sda:/dev/drbd0 -node1.example.com:sdb:/dev/drbd1 +node1.example.com:disk/0:/dev/drbd0 +node1.example.com:disk/1:/dev/drbd1 In this example, node1.example.com is the name of the node on which the devices have been - activated. The sda and - sdb are the names of the block devices - inside the instance. /dev/drbd0 and - /dev/drbd1 are the names of the block - devices as visible on the node. + activated. The disk/0 and + disk/1 are the Ganeti-names of the + instance disks; how they are visible inside the instance is + hypervisor-specific. /dev/drbd0 and + /dev/drbd1 are the actual block devices + as visible on the node. + + + + The option is used to send the job to + the master daemon but not wait for its completion. The job + ID will be shown so that it can be examined via + gnt-job info. @@ -1085,6 +1712,7 @@ node1.example.com:sdb:/dev/drbd1 deactivate-disks + --submit instance @@ -1096,12 +1724,21 @@ node1.example.com:sdb:/dev/drbd1 breaking the replication. + + The option is used to send the job to + the master daemon but not wait for its completion. The job + ID will be shown so that it can be examined via + gnt-job info. + + GROW-DISK grow-disk + --no-wait-for-sync + --submit instance disk amount @@ -1142,8 +1779,8 @@ node1.example.com:sdb:/dev/drbd1 - The disk argument is either - sda or sdb. The + The disk argument is the index of + the instance disk to grow. The amount argument is given either as a number (and it represents the amount to increase the disk with in mebibytes) or can be given similar to the @@ -1158,14 +1795,28 @@ node1.example.com:sdb:/dev/drbd1 create problems (except for unused space). - Example (increasing sda for instance1 with 16GiB): + + If you do not want gnt-instance to wait for the new disk + region to be synced, use the + option. + + + + The option is used to send the job to + the master daemon but not wait for its completion. The job + ID will be shown so that it can be examined via + gnt-job info. + + + + Example (increase the first disk for instance1 by 16GiB): -# gnt-instance grow-disk instance1.example.com sda 16g +# gnt-instance grow-disk instance1.example.com 0 16g - Also note that disk shrinking will not be supported; use + Also note that disk shrinking is not supported; use gnt-backup export and then gnt-backup import to reduce the disk size of an instance. @@ -1184,6 +1835,7 @@ node1.example.com:sdb:/dev/drbd1 failover -f --ignore-consistency + --submit instance @@ -1205,6 +1857,13 @@ node1.example.com:sdb:/dev/drbd1 + The option is used to send the job to + the master daemon but not wait for its completion. The job + ID will be shown so that it can be examined via + gnt-job info. + + + Example: # gnt-instance failover instance1.example.com @@ -1212,6 +1871,84 @@ node1.example.com:sdb:/dev/drbd1 + + MIGRATE + + + migrate + -f + --cleanup + instance + + + + migrate + -f + --non-live + instance + + + + Migrate will move the instance to its secondary node without + shutdown. It only works for instances having the drbd8 disk + template type. + + + + The migration command needs a perfectly healthy instance, as + we rely on the dual-master capability of drbd8 and the disks + of the instance are not allowed to be degraded. + + + + The option will switch (for the + hypervisors that support it) between a "fully live" + (i.e. the interruption is as minimal as possible) migration + and one in which the instance is frozen, its state saved and + transported to the remote node, and then resumed there. This + all depends on the hypervisor support for two different + methods. In any case, it is not an error to pass this + parameter (it will just be ignored if the hypervisor doesn't + support it). + + + + If the option is passed, the + operation changes from migration to attempting recovery from + a failed previous migration. In this mode, ganeti checks if + the instance runs on the correct node (and updates its + configuration if not) and ensures the instances's disks are + configured correctly. In this mode, the + option is ignored. + + + + The option will skip the prompting for + confirmation. + + + Example (and expected output): + +# gnt-instance migrate instance1 +Migrate will happen to the instance instance1. Note that migration is +**experimental** in this version. This might impact the instance if +anything goes wrong. Continue? +y/[n]/?: y +* checking disk consistency between source and target +* ensuring the target is in secondary mode +* changing disks into dual-master mode + - INFO: Waiting for instance instance1 to sync disks. + - INFO: Instance instance1's disks are in sync. +* migrating instance to node2.example.com +* changing the instance's disks on source node to secondary + - INFO: Waiting for instance instance1 to sync disks. + - INFO: Instance instance1's disks are in sync. +* changing the instance's disks to single-master +# + + + +