openstack-manuals/doc/config-reference/source/tables/nova-xen.rst

16 KiB

Description of Xen configuration options
Configuration option = Default value Description
[DEFAULT]

console_driver = nova.console.xvp.XVPConsoleProxy

(String) Nova-console proxy is used to set up multi-tenant VM console access. This option allows pluggable driver program for the console session and represents driver to use for the console proxy.

Possible values

  • 'nova.console.xvp.XVPConsoleProxy' (default) or a string representing fully classified class name of console driver.
[libvirt]
xen_hvmloader_path = /usr/lib/xen/boot/hvmloader (String) Location where the Xen hvmloader is kept
[xenserver]

agent_path = usr/sbin/xe-update-networking

(String) Path to locate guest agent on the server.

Specifies the path in which the XenAPI guest agent should be located. If the agent is present, network configuration is not injected into the image.

Related options: For this option to have an effect:

  • flat_injected should be set to True
  • compute_driver should be set to xenapi.XenAPIDriver

agent_resetnetwork_timeout = 60

(Integer) Number of seconds to wait for agent's reply to resetnetwork request.

This indicates the amount of time xapi 'agent' plugin waits for the agent to respond to the 'resetnetwork' request specifically. The generic timeout for agent communication agent_timeout is ignored in this case.

agent_timeout = 30

(Integer) Number of seconds to wait for agent's reply to a request.

Nova configures/performs certain administrative actions on a server with the help of an agent that's installed on the server. The communication between Nova and the agent is achieved via sharing messages, called records, over xenstore, a shared storage across all the domains on a Xenserver host. Operations performed by the agent on behalf of nova are: 'version',' key_init', 'password','resetnetwork','inject_file', and 'agentupdate'.

To perform one of the above operations, the xapi 'agent' plugin writes the command and its associated parameters to a certain location known to the domain and awaits response. On being notified of the message, the agent performs appropriate actions on the server and writes the result back to xenstore. This result is then read by the xapi 'agent' plugin to determine the success/failure of the operation.

This config option determines how long the xapi 'agent' plugin shall wait to read the response off of xenstore for a given request/command. If the agent on the instance fails to write the result in this time period, the operation is considered to have timed out.

Related options:

  • agent_version_timeout
  • agent_resetnetwork_timeout

agent_version_timeout = 300

(Integer) Number of seconds to wait for agent't reply to version request.

This indicates the amount of time xapi 'agent' plugin waits for the agent to respond to the 'version' request specifically. The generic timeout for agent communication agent_timeout is ignored in this case.

During the build process the 'version' request is used to determine if the agent is available/operational to perform other requests such as 'resetnetwork', 'password', 'key_init' and 'inject_file'. If the 'version' call fails, the other configuration is skipped. So, this configuration option can also be interpreted as time in which agent is expected to be fully operational.

cache_images = all

(String) Cache glance images locally.

The value for this option must be choosen from the choices listed here. Configuring a value other than these will default to 'all'.

Note: There is nothing that deletes these images.

Possible values:

  • `all`: will cache all images.
  • `some`: will only cache images that have the image_property cache_in_nova=True.
  • `none`: turns off caching entirely.

check_host = True

(Boolean) Ensure compute service is running on host XenAPI connects to. This option must be set to false if the 'independent_compute' option is set to true.

Possible values:

  • Setting this option to true will make sure that compute service is running on the same host that is specified by connection_url.
  • Setting this option to false, doesn't perform the check.

Related options:

  • independent_compute
connection_concurrent = 5 (Integer) Maximum number of concurrent XenAPI connections. Used only if compute_driver=xenapi.XenAPIDriver
connection_password = None (String) Password for connection to XenServer/Xen Cloud Platform

connection_url = None

(String) URL for connection to XenServer/Xen Cloud Platform. A special value of unix://local can be used to connect to the local unix socket.

Possible values:

  • Any string that represents a URL. The connection_url is generally the management network IP address of the XenServer.
  • This option must be set if you chose the XenServer driver.
connection_username = root (String) Username for connection to XenServer/Xen Cloud Platform
default_os_type = linux (String) Default OS type used when uploading an image to glance

disable_agent = False

(Boolean) Disables the use of XenAPI agent.

This configuration option suggests whether the use of agent should be enabled or not regardless of what image properties are present. Image properties have an effect only when this is set to True. Read description of config option use_agent_default for more information.

Related options:

  • use_agent_default

image_compression_level = None

(Integer) Compression level for images.

By setting this option we can configure the gzip compression level. This option sets GZIP environment variable before spawning tar -cz to force the compression level. It defaults to none, which means the GZIP environment variable is not set and the default (usually -6) is used.

Possible values:

  • Range is 1-9, e.g., 9 for gzip -9, 9 being most compressed but most CPU intensive on dom0.
  • Any values out of this range will default to None.
image_upload_handler = nova.virt.xenapi.image.glance.GlanceStore (String) Dom0 plugin driver used to handle image uploads.

independent_compute = False

(Boolean) Used to prevent attempts to attach VBDs locally, so Nova can be run in a VM on a different host.

Related options:

  • CONF.flat_injected (Must be False)
  • CONF.xenserver.check_host (Must be False)
  • CONF.default_ephemeral_format (Must be unset or 'ext3')
  • Joining host aggregates (will error if attempted)
  • Swap disks for Windows VMs (will error if attempted)
  • Nova-based auto_configure_disk (will error if attempted)

introduce_vdi_retry_wait = 20

(Integer) Number of seconds to wait for SR to settle if the VDI does not exist when first introduced.

Some SRs, particularly iSCSI connections are slow to see the VDIs right after they got introduced. Setting this option to a time interval will make the SR to wait for that time period before raising VDI not found exception.

ipxe_boot_menu_url = None

(String) URL to the iPXE boot menu.

An iPXE ISO is a specially crafted ISO which supports iPXE booting. This feature gives a means to roll your own image.

By default this option is not set. Enable this option to boot an iPXE ISO.

Related Options:

  • ipxe_network_name
  • ipxe_mkisofs_cmd

ipxe_mkisofs_cmd = mkisofs

(String) Name and optionally path of the tool used for ISO image creation.

An iPXE ISO is a specially crafted ISO which supports iPXE booting. This feature gives a means to roll your own image.

Note: By default mkisofs is not present in the Dom0, so the package can either be manually added to Dom0 or include the mkisofs binary in the image itself.

Related Options:

  • ipxe_network_name
  • ipxe_boot_menu_url

ipxe_network_name = None

(String) Name of network to use for booting iPXE ISOs.

An iPXE ISO is a specially crafted ISO which supports iPXE booting. This feature gives a means to roll your own image.

By default this option is not set. Enable this option to boot an iPXE ISO.

Related Options:

  • ipxe_boot_menu_url
  • ipxe_mkisofs_cmd
login_timeout = 10 (Integer) Timeout in seconds for XenAPI login.

max_kernel_ramdisk_size = 16777216

(Integer) Maximum size in bytes of kernel or ramdisk images.

Specifying the maximum size of kernel or ramdisk will avoid copying large files to dom0 and fill up /boot/guest.

num_vbd_unplug_retries = 10 (Integer) Maximum number of retries to unplug VBD. If set to 0, should try once, no retries.

ovs_integration_bridge = xapi1

(String) The name of the integration Bridge that is used with xenapi when connecting with Open vSwitch.

Note: The value of this config option is dependent on the environment, therefore this configuration value must be set accordingly if you are using XenAPI.

Possible options:

  • Any string that represents a bridge name(default is xapi1).
remap_vbd_dev = False (Boolean) Used to enable the remapping of VBD dev. (Works around an issue in Ubuntu Maverick)

remap_vbd_dev_prefix = sd

(String) Specify prefix to remap VBD dev to (ex. /dev/xvdb -> /dev/sdb).

Related options:

  • If remap_vbd_dev is set to False this option has no impact.
running_timeout = 60 (Integer) Number of seconds to wait for instance to go to running state
sparse_copy = True (Boolean) Whether to use sparse_copy for copying data on a resize down. (False will use standard dd). This speeds up resizes down considerably since large runs of zeros won't have to be rsynced.
sr_base_path = /var/run/sr-mount (String) Base path to the storage repository on the XenServer host.

sr_matching_filter = default-sr:true

(String) Filter for finding the SR to be used to install guest instances on.

Possible values:

  • To use the Local Storage in default XenServer/XCP installations set this flag to other-config:i18n-key=local-storage.
  • To select an SR with a different matching criteria, you could set it to other-config:my_favorite_sr=true.
  • To fall back on the Default SR, as displayed by XenCenter, set this flag to: default-sr:true.

target_host = None

(String) The iSCSI Target Host.

This option represents the hostname or ip of the iSCSI Target. If the target host is not present in the connection information from the volume provider then the value from this option is taken.

Possible values:

  • Any string that represents hostname/ip of Target.

target_port = 3260

(String) The iSCSI Target Port.

This option represents the port of the iSCSI Target. If the target port is not present in the connection information from the volume provider then the value from this option is taken.

torrent_base_url = None (String) Base URL for torrent files; must contain a slash character (see RFC 1808, step 6)
torrent_download_stall_cutoff = 600 (Integer) Number of seconds a download can remain at the same progress percentage w/o being considered a stall

torrent_images = none

(String) Whether or not to download images via Bit Torrent.

The value for this option must be choosen from the choices listed here. Configuring a value other than these will default to 'none'.

Possible values:

  • all: will download all images.
  • some: will only download images that have the image_property bittorrent=true.
  • none: will turnoff downloading images via Bit Torrent.
torrent_listen_port_end = 6891 (Port number) End of port range to listen on
torrent_listen_port_start = 6881 (Port number) Beginning of port range to listen on
torrent_max_last_accessed = 86400 (Integer) Cached torrent files not accessed within this number of seconds can be reaped
torrent_max_seeder_processes_per_host = 1 (Integer) Maximum number of seeder processes to run concurrently within a given dom0. (-1 = no limit)
torrent_seed_chance = 1.0 (Floating point) Probability that peer will become a seeder. (1.0 = 100%)
torrent_seed_duration = 3600 (Integer) Number of seconds after downloading an image via BitTorrent that it should be seeded for other peers.

use_agent_default = False

(Boolean) Whether or not to use the agent by default when its usage is enabled but not indicated by the image.

The use of XenAPI agent can be disabled altogether using the configuration option disable_agent. However, if it is not disabled, the use of an agent can still be controlled by the image in use through one of its properties, xenapi_use_agent. If this property is either not present or specified incorrectly on the image, the use of agent is determined by this configuration option.

Note that if this configuration is set to True when the agent is not present, the boot times will increase significantly.

Related options:

  • disable_agent

use_join_force = True

(Boolean) When adding new host to a pool, this will append a --force flag to the command, forcing hosts to join a pool, even if they have different CPUs.

Since XenServer version 5.6 it is possible to create a pool of hosts that have different CPU capabilities. To accommodate CPU differences, XenServer limited features it uses to determine CPU compatibility to only the ones that are exposed by CPU and support for CPU masking was added. Despite this effort to level differences between CPUs, it is still possible that adding new host will fail, thus option to force join was introduced.

vhd_coalesce_max_attempts = 20

(Integer) Max number of times to poll for VHD to coalesce.

This option determines the maximum number of attempts that can be made for coalescing the VHD before giving up.

Related opitons:

  • vhd_coalesce_poll_interval

vhd_coalesce_poll_interval = 5.0

(Floating point) The interval used for polling of coalescing vhds.

This is the interval after which the task of coalesce VHD is performed, until it reaches the max attempts that is set by vhd_coalesce_max_attempts.

Related options:

  • vhd_coalesce_max_attempts
vif_driver = nova.virt.xenapi.vif.XenAPIBridgeDriver (String) The XenAPI VIF driver using XenServer Network APIs.
[xvp]
console_xvp_conf = /etc/xvp.conf (String) Generated XVP conf file
console_xvp_conf_template = $pybasedir/nova/console/xvp.conf.template (String) XVP conf template
console_xvp_log = /var/log/xvp.log (String) XVP log file
console_xvp_multiplex_port = 5900 (Port number) Port for XVP to multiplex VNC connections on
console_xvp_pid = /var/run/xvp.pid (String) XVP master process pid file