openstack-manuals/doc/cli-reference/ch_cli_glance_property_keys.xml
OctopusZhang ceea580af0 CPU topology properties documented for images
hw_cpu_sockets,hw_cpu_cores,hw_cpu_threads are included to
chapter_cli-glance-property:Image service property keys

These are included in Juno

Change-Id: I2187d467c24420b024ff16d77236120c564dcc2c
Closes-Bug: #1480519
2015-08-06 03:24:58 -04:00

467 lines
29 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE chapter [
<!ENTITY % openstack SYSTEM "../common/entities/openstack.ent">
%openstack;
]>
<chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:xlink="http://www.w3.org/1999/xlink"
version="5.0"
xml:id="chapter_cli-glance-property">
<!-- This file is manually generated, unlike many of the other chapters. -->
<title>Image service property keys</title>
<para>The following keys, together with the components to which they are specific, can be used
with the <option>property</option> option for both the <command>glance
image-update</command> and <command>glance image-create</command> commands. For
example:</para>
<screen><prompt>$</prompt> <userinput>glance image-update <replaceable>IMG-UUID</replaceable> --property architecture=x86_64</userinput></screen>
<note><para>Behavior set using image properties overrides
behavior set using flavors. For more information, refer to
<link
xlink:href="http://docs.openstack.org/admin-guide-cloud/content/">
<citetitle>OpenStack Cloud Administrator Guide</citetitle></link>
</para></note>
<table rules="all">
<caption>Property keys</caption>
<col width="12%"/>
<col width="12%"/>
<col width="38%"/>
<col width="38%"/>
<thead>
<tr>
<th>Specific to</th>
<th>Key</th>
<th>Description</th>
<th>Supported values</th>
</tr>
</thead>
<tbody>
<tr valign="top">
<td>All</td>
<td>architecture</td>
<td>The CPU architecture that must be supported by
the hypervisor. For example,
<literal>x86_64</literal>, <literal>arm</literal>, or <literal>ppc64</literal>. Run
<command>uname -m</command> to get the architecture of a
machine. We strongly recommend using the architecture data vocabulary
defined by the <link xlink:href="http://libosinfo.org">libosinfo project</link>
for this purpose.</td>
<td>
<itemizedlist>
<listitem><para><literal>alpha</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/DEC_Alpha"
>DEC 64-bit RISC</link></para></listitem>
<listitem><para><literal>armv7l</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/ARM_architecture"
>ARM Cortex-A7 MPCore</link></para></listitem>
<listitem><para><literal>cris</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/ETRAX_CRIS"
>Ethernet, Token Ring, AXis&mdash;Code Reduced Instruction Set</link></para></listitem>
<listitem><para><literal>i686</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/X86"
>Intel sixth-generation x86</link>
(P6 micro architecture)</para></listitem>
<listitem><para><literal>ia64</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/Itanium"
>Itanium</link></para></listitem>
<listitem><para><literal>lm32</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/Milkymist"
>Lattice Micro32</link></para></listitem>
<listitem><para><literal>m68k</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/Motorola_68000_family"
>Motorola 68000</link></para></listitem>
<listitem><para><literal>microblaze</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/MicroBlaze"
>Xilinx 32-bit FPGA (Big Endian)</link></para></listitem>
<listitem><para><literal>microblazeel</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/MicroBlaze"
>Xilinx 32-bit FPGA (Little Endian)</link></para></listitem>
<listitem><para><literal>mips</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/MIPS_architecture"
>MIPS 32-bit RISC (Big Endian)</link></para></listitem>
<listitem><para><literal>mipsel</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/MIPS_architecture"
>MIPS 32-bit RISC (Little Endian)</link></para></listitem>
<listitem><para><literal>mips64</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/MIPS_architecture"
>MIPS 64-bit RISC (Big Endian)</link></para></listitem>
<listitem><para><literal>mips64el</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/MIPS_architecture"
>MIPS 64-bit RISC (Little Endian)</link></para></listitem>
<listitem><para><literal>openrisc</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/OpenRISC#QEMU_support"
>OpenCores RISC</link></para></listitem>
<listitem><para><literal>parisc</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/PA-RISC"
>HP Precision Architecture RISC</link></para></listitem>
<listitem><para><literal>parisc64</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/PA-RISC"
>HP Precision Architecture 64-bit RISC</link></para></listitem>
<listitem><para><literal>ppc</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/PowerPC"
>PowerPC 32-bit</link></para></listitem>
<listitem><para><literal>ppc64</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/PowerPC"
>PowerPC 64-bit</link></para></listitem>
<listitem><para><literal>ppcemb</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/PowerPC"
>PowerPC (Embedded 32-bit)</link></para></listitem>
<listitem><para><literal>s390</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/S390"
>IBM Enterprise Systems Architecture/390</link></para></listitem>
<listitem><para><literal>s390x</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/S390x"
>S/390 64-bit</link></para></listitem>
<listitem><para><literal>sh4</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/SuperH"
>SuperH SH-4 (Little Endian)</link></para></listitem>
<listitem><para><literal>sh4eb</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/SuperH"
>SuperH SH-4 (Big Endian)</link></para></listitem>
<listitem><para><literal>sparc</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/Sparc"
>Scalable Processor Architecture, 32-bit</link></para></listitem>
<listitem><para><literal>sparc64</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/Sparc"
>Scalable Processor Architecture, 64-bit</link></para></listitem>
<listitem><para><literal>unicore32</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/Unicore"
>Microprocessor Research and Development Center
RISC Unicore32</link></para></listitem>
<listitem><para><literal>x86_64</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/X86"
>64-bit extension of IA-32</link></para></listitem>
<listitem><para><literal>xtensa</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/Xtensa#Processor_Cores"
>Tensilica Xtensa configurable microprocessor core</link></para></listitem>
<listitem><para><literal>xtensaeb</literal>&mdash;<link xlink:href="http://en.wikipedia.org/wiki/Xtensa#Processor_Cores"
>Tensilica Xtensa configurable microprocessor core
(Big Endian)</link></para></listitem>
</itemizedlist>
</td>
</tr>
<tr valign="top">
<td>All</td>
<td>hypervisor_type</td>
<td>The hypervisor type. Note that
<literal>qemu</literal> is used for both QEMU and KVM
hypervisor types.</td>
<td><literal>xen</literal>, <literal>qemu</literal>,
<literal>lxc</literal>, <literal>uml</literal>,
<literal>vmware</literal>, or
<literal>hyperv</literal></td>
</tr>
<tr valign="top">
<td>All</td>
<td>instance_type_rxtx_factor</td>
<td>Optional property allows created servers to have a different bandwidth cap than
that defined in the network they are attached to. This factor is multiplied by
the rxtx_base property of the network. The rxtx_base property defaults to 1.0,
which is the same as the attached network. This parameter is only available for
Xen or NSX based systems.</td>
<td>Float (default value is 1.0)</td>
</tr>
<tr valign="top">
<td>All</td>
<td>instance_uuid</td>
<td>For snapshot images, this is the UUID of the server used to create this image.</td>
<td>Valid server UUID</td>
</tr>
<tr valign="top">
<td>All</td>
<td>img_config_drive</td>
<td>Specifies whether the image needs a config drive.</td>
<td><literal>mandatory</literal> or <literal>optional</literal> (default if property is not used).</td>
</tr>
<tr valign="top">
<td>All</td>
<td>kernel_id</td>
<td>The ID of an image stored in the Image service that should be used as the kernel
when booting an AMI-style image.</td>
<td>Valid image ID</td>
</tr>
<tr valign="top">
<td>All</td>
<td>os_distro</td>
<td>The common name of the operating system distribution in lowercase (uses the same
data vocabulary as the <link xlink:href="http://libosinfo.org">libosinfo
project</link>). Specify only a recognized value for this field. Deprecated
values are listed to assist you in searching for the recognized value.</td>
<td>
<itemizedlist>
<listitem><para><literal>arch</literal>&mdash;Arch Linux. Do not use <literal>archlinux</literal> or
<literal>org.archlinux</literal></para></listitem>
<listitem><para><literal>centos</literal>&mdash;Community Enterprise Operating System. Do not use
<literal>org.centos</literal> or
<literal>CentOS</literal></para></listitem>
<listitem><para><literal>debian</literal>&mdash;Debian. Do not use <literal>Debian</literal> or
<literal>org.debian</literal></para></listitem>
<listitem><para><literal>fedora</literal>&mdash;Fedora. Do not use <literal>Fedora</literal>,
<literal>org.fedora</literal>, or
<literal>org.fedoraproject</literal></para></listitem>
<listitem><para><literal>freebsd</literal>&mdash;FreeBSD. Do not use <literal>org.freebsd</literal>,
<literal>freeBSD</literal>, or <literal>FreeBSD</literal></para></listitem>
<listitem><para><literal>gentoo</literal>&mdash;Gentoo Linux. Do not use <literal>Gentoo</literal> or
<literal>org.gentoo</literal></para></listitem>
<listitem><para><literal>mandrake</literal>&mdash;Mandrakelinux (MandrakeSoft) distribution. Do not use
<literal>mandrakelinux</literal> or
<literal>MandrakeLinux</literal></para></listitem>
<listitem><para><literal>mandriva</literal>&mdash;Mandriva Linux. Do not use
<literal>mandrivalinux</literal></para></listitem>
<listitem><para><literal>mes</literal>&mdash;Mandriva Enterprise Server. Do not use
<literal>mandrivaent</literal> or
<literal>mandrivaES</literal></para></listitem>
<listitem><para><literal>msdos</literal>&mdash;Microsoft Disc Operating System. Do not use
<literal>ms-dos</literal></para></listitem>
<listitem><para><literal>netbsd</literal>&mdash;NetBSD. Do not use <literal>NetBSD</literal> or
<literal>org.netbsd</literal></para></listitem>
<listitem><para><literal>netware</literal>&mdash;Novell NetWare. Do not use <literal>novell</literal> or
<literal>NetWare</literal></para></listitem>
<listitem><para><literal>openbsd</literal>&mdash;OpenBSD. Do not use <literal>OpenBSD</literal> or
<literal>org.openbsd</literal></para></listitem>
<listitem><para><literal>opensolaris</literal>&mdash;OpenSolaris. Do not use <literal>OpenSolaris</literal>
or <literal>org.opensolaris</literal></para></listitem>
<listitem><para><literal>opensuse</literal>&mdash;openSUSE. Do not use <literal>suse</literal>,
<literal>SuSE</literal>, or
<literal>org.opensuse</literal></para></listitem>
<listitem><para><literal>rhel</literal>&mdash;Red Hat Enterprise Linux. Do not use
<literal>redhat</literal>, <literal>RedHat</literal>, or
<literal>com.redhat</literal></para></listitem>
<listitem><para><literal>sled</literal>&mdash;SUSE Linux Enterprise Desktop. Do not use
<literal>com.suse</literal></para></listitem>
<listitem><para><literal>ubuntu</literal>&mdash;Ubuntu. Do not use <literal>Ubuntu</literal>,
<literal>com.ubuntu</literal>, <literal>org.ubuntu</literal>, or
<literal>canonical</literal></para></listitem>
<listitem><para><literal>windows</literal>&mdash;Microsoft Windows. Do not use
<literal>com.microsoft.server</literal> or
<literal>windoze</literal></para></listitem>
</itemizedlist>
</td>
</tr>
<tr valign="top">
<td>All</td>
<td>os_version</td>
<td>The operating system version as specified by the distributor.</td>
<td>Version number (for example, "11.10")</td>
</tr>
<tr valign="top">
<td>All</td>
<td>ramdisk_id</td>
<td>The ID of image stored in the Image service that should be used as the ramdisk
when booting an AMI-style image.</td>
<td>Valid image ID</td>
</tr>
<tr valign="top">
<td>All</td>
<td>vm_mode</td>
<td>The virtual machine mode. This represents the host/guest ABI (application binary
interface) used for the virtual machine.</td>
<td>
<itemizedlist>
<listitem><para><literal>hvm</literal>&mdash;Fully virtualized. This is the mode used by QEMU and
KVM.</para></listitem>
<listitem><para><literal>xen</literal>&mdash;Xen 3.0 paravirtualized.</para></listitem>
<listitem><para><literal>uml</literal>&mdash;User Mode Linux paravirtualized.</para></listitem>
<listitem><para><literal>exe</literal>&mdash;Executables in containers. This is the mode used by
LXC.</para></listitem>
</itemizedlist>
</td>
</tr>
<tr valign="top">
<td>libvirt API driver</td>
<td>hw_cpu_sockets</td>
<td>The preferred number of sockets to expose to the guest.</td>
<td>Integer</td>
</tr>
<tr valign="top">
<td>libvirt API driver</td>
<td>hw_cpu_cores</td>
<td>The preferred number of cores to expose to the guest.</td>
<td>Integer</td>
</tr>
<tr valign="top">
<td>libvirt API driver</td>
<td>hw_cpu_threads</td>
<td>The preferred number of threads to expose to the guest.</td>
<td>Integer</td>
</tr>
<tr valign="top">
<td>libvirt API driver</td>
<td>hw_disk_bus</td>
<td>Specifies the type of disk controller to attach
disk devices to.</td>
<td>
One of <literal>scsi</literal>,
<literal>virtio</literal>, <literal>uml</literal>,
<literal>xen</literal>, <literal>ide</literal>, or
<literal>usb</literal>.
</td>
</tr>
<tr valign="top">
<td><para>libvirt API driver</para></td>
<td><para>hw_rng_model</para></td>
<td><para>Adds a random-number generator device to the image's instances. The cloud
administrator can enable and control device behavior by configuring the
instance's flavor. By default:</para>
<itemizedlist>
<listitem><para>The generator device is disabled.</para></listitem>
<listitem><para><systemitem>/dev/random</systemitem> is used as the default entropy source. To specify a
physical HW RNG device, use the following option in the
<filename>nova.conf</filename> file:
<programlisting language="ini">rng_dev_path=/dev/hwrng</programlisting></para></listitem>
</itemizedlist>
</td>
<td><para><literal>virtio</literal>, or other supported device.</para></td>
</tr>
<tr valign="top">
<td>libvirt API driver, Hyper-V driver</td>
<td>hw_machine_type</td>
<td><emphasis>libvirt:</emphasis> Enables booting an ARM system using the specified machine type. By default, if
an ARM image is used and its type is not specified, Compute uses
<literal>vexpress-a15</literal> (for ARMv7) or <literal>virt</literal> (for AArch64) machine types.
<emphasis>Hyper-V:</emphasis> Specifies whether the Hyper-V instance will be a generation 1 or generation 2 VM.
By default, if the property is not provided, the instances will be generation 1 VMs. If the image is specific
for generation 2 VMs but the property is not provided accordingly, the instance will fail to boot.
</td>
<td><emphasis>Libvirt machine type.</emphasis> Valid types can be viewed by using the
<command>virsh capabilities</command> command (machine types are
displayed in the <tag>machine</tag> tag).
<emphasis>Hyper-V machine type.</emphasis> Acceptable values are: <literal>hyperv-gen1</literal>
or <literal>hyperv-gen2</literal>.
</td>
</tr>
<tr valign="top">
<td>libvirt API driver</td>
<td>hw_scsi_model</td>
<td>Enables the use of VirtIO SCSI (virtio-scsi) to provide block device access for
compute instances; by default, instances use VirtIO Block (virtio-blk). VirtIO
SCSI is a para-virtualized SCSI controller device that provides improved
scalability and performance, and supports advanced SCSI hardware.</td>
<td><literal>virtio-scsi</literal>
</td>
</tr>
<tr valign="top">
<td>libvirt API driver</td>
<td>hw_serial_port_count</td>
<td>Specifies the count of serial ports that should be provided. If <option>hw:serial_port_count</option>
is not set in the flavor's <option>extra_specs</option>, then any count is permitted.
If <option>hw:serial_port_count</option> is set, then this provides the default serial port count.
It is permitted to override the default serial port count, but only with a lower value.</td>
<td>Integer</td>
</tr>
<tr valign="top">
<td>libvirt API driver</td>
<td>hw_video_model</td>
<td>The video image driver used.</td>
<td><literal>vga</literal>, <literal>cirrus</literal>, <literal>vmvga</literal>,
<literal>xen</literal>, or <literal>qxl</literal></td>
</tr>
<tr valign="top">
<td>libvirt API driver</td>
<td>hw_video_ram</td>
<td>Maximum RAM for the video image. Used only if a
<option>hw_video:ram_max_mb</option> value has been set in the flavor's
<option>extra_specs</option> and that value is higher than the value set in
<literal>hw_video_ram</literal>.</td>
<td>Integer in MB (for example, '64')</td>
</tr>
<tr valign="top">
<td>libvirt API driver</td>
<td>hw_watchdog_action</td>
<td>Enables a virtual hardware watchdog device that carries out the specified action
if the server hangs. The watchdog uses the i6300esb device (emulating a PCI
Intel 6300ESB). If <literal>hw_watchdog_action</literal> is not specified, the
watchdog is disabled.</td>
<td><itemizedlist>
<listitem><para><literal>disabled</literal>&mdash;(default) The device is not
attached. Allows the user to disable the watchdog
for the image, even if it has been enabled using the image's flavor.
</para></listitem>
<listitem><para><literal>reset</literal>&mdash;Forcefully reset the guest.</para></listitem>
<listitem><para><literal>poweroff</literal>&mdash;Forcefully power off the guest.</para></listitem>
<listitem><para><literal>pause</literal>&mdash;Pause the guest.</para></listitem>
<listitem><para><literal>none</literal>&mdash;Only enable the watchdog; do nothing if the server
hangs.</para></listitem>
</itemizedlist>
</td>
</tr>
<tr valign="top">
<td>libvirt API driver</td>
<td>os_command_line</td>
<td>The kernel command line to be used by the libvirt driver, instead of the
default. For Linux Containers (LXC), the value is used as arguments for
initialization. This key is valid only for Amazon kernel, ramdisk,
or machine images (aki, ari, or ami).</td>
<td/>
</tr>
<tr valign="top">
<td>libvirt API driver and VMware API driver</td>
<td>hw_vif_model</td>
<td>Specifies the model of virtual network interface device to use.</td>
<td>
<para>
The valid options depend on the configured
hypervisor.
</para>
<itemizedlist>
<listitem>
<para>KVM and QEMU: <literal>e1000</literal>,
<literal>ne2k_pci</literal>,
<literal>pcnet</literal>,
<literal>rtl8139</literal>, and
<literal>virtio</literal>.
</para>
</listitem>
<listitem>
<para>VMware: <literal>e1000</literal>,
<literal>e1000e</literal>,
<literal>VirtualE1000</literal>,
<literal>VirtualE1000e</literal>,
<literal>VirtualPCNet32</literal>,
<literal>VirtualSriovEthernetCard</literal>, and
<literal>VirtualVmxnet</literal>.
</para>
</listitem>
<listitem>
<para>Xen: <literal>e1000</literal>,
<literal>netfront</literal>,
<literal>ne2k_pci</literal>,
<literal>pcnet</literal>, and
<literal>rtl8139</literal>.
</para>
</listitem>
</itemizedlist>
</td>
</tr>
<tr valign="top">
<td>libvirt API driver</td>
<td>hw_boot_menu</td>
<td>If true, enables the BIOS bootmenu.
In cases where both the image metadata and Extra Spec are set, the
Extra Spec setting is used. This allows for flexibility in
setting/overriding the default behavior as needed.</td>
<td><literal>true</literal> | <literal>false</literal></td>
</tr>
<tr valign="top">
<td>VMware API driver</td>
<td>vmware_adaptertype</td>
<td>The virtual SCSI or IDE controller used by the hypervisor.</td>
<td><literal>lsiLogic</literal>, <literal>lsiLogicsas</literal>,
<literal>busLogic</literal>, <literal>ide</literal>, or
<literal>paraVirtual</literal></td>
</tr>
<tr valign="top">
<td>VMware API driver</td>
<td>vmware_ostype</td>
<td>A VMware GuestID which describes the operating system installed in the image.
This value is passed to the hypervisor when creating a virtual machine. If not
specified, the key defaults to <literal>otherGuest</literal>.</td>
<td>See <link xlink:href="http://www.thinkvirt.com/?q=node/181"
>thinkvirt.com</link>.</td>
</tr>
<tr valign="top">
<td>VMware API driver</td>
<td>vmware_image_version</td>
<td>Currently unused.</td>
<td><literal>1</literal></td>
</tr>
<tr valign="top">
<td>XenAPI driver</td>
<td>auto_disk_config</td>
<td>If true, the root partition on the disk is automatically resized before the
instance boots. This value is only taken into account by the Compute service
when using a Xen-based hypervisor with the XenAPI driver. The Compute service
will only attempt to resize if there is a single partition on the image, and
only if the partition is in <literal>ext3</literal> or <literal>ext4</literal>
format.</td>
<td>true | false</td>
</tr>
<tr valign="top">
<td>XenAPI driver</td>
<td>os_type</td>
<td>The operating system installed on the image. The XenAPI driver contains logic
that takes different actions depending on the value of the
<literal>os_type</literal> parameter of the image. For example, for
<literal>os_type=windows</literal> images, it creates a FAT32-based swap
partition instead of a Linux swap partition, and it limits the injected host
name to less than 16 characters.</td>
<td><literal>linux</literal> or <literal>windows</literal></td>
</tr>
</tbody>
</table>
</chapter>