第 9 章 nova


本章包含有关 nova 服务中的配置选项的信息。

9.1. nova.conf

本节包含 /etc/nova/nova.conf 文件的选项。

9.1.1. DEFAULT

下表概述了 /etc/nova/nova.conf 文件中的 [DEFAULT] 组下可用的选项。

.

配置选项 = 默认值类型Description

allow_resize_to_same_host = False

布尔值

允许目标机器与源进行调整大小。在单主机环境中测试时很有用。默认情况下,不允许将大小调整为同一主机。将此选项设置为 true 会将同一主机添加到目标选项中。如果您允许 ServerGroupAffinityFilter 并需要调整大小,则设置为 true。

allow_same_net_traffic = True

布尔值

确定是否允许来自同一网络的网络流量。

当设置为 true 时,同一子网中的主机不会被过滤,并允许它们间传递所有流量。在扁平网络中,这允许所有项目中未过滤的通讯中的所有实例。使用 VLAN 网络时,这允许在同一项目中的实例之间访问。

这个选项仅在使用 nova-network 服务时适用。在使用其他网络服务时,应使用 Neutron、安全组或其他方法。

可能的值:

  • true :应允许在同一网络上的所有实例间传递网络流量,而不考虑其租户和安全策略
  • false:除非在安全组中取消阻塞,否则不允许在实例间传递网络流量

相关选项:

  • use_neutron :必须将其设置为 False 来启用 nova-network 网络
  • firewall_driver :必须将其设置为 nova.virt.libvirt.firewall.IptablesFirewallDriver,以确保启用了 libvirt 防火墙驱动程序。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

auto_assign_floating_ip = False

布尔值

为虚拟机自动分配浮动 IP

当设置为 True 时,浮动 IP 会被自动分配,并在创建时与虚拟机关联。

相关选项:

  • use_neutron:这个选项仅适用于 nova-network。

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

backdoor_port = None

字符串值

启用 eventlet 后台。可接受的值为 0、<port> 和 <start>:<end>,其中 0 会导致侦听随机 tcp 端口号;<port> 会导致侦听指定的端口号(如果没有启用后端),<start>:<end> 则会导致在指定的端口号范围内侦听最小未使用的端口号。所选端口显示在服务的日志文件中。

backdoor_socket = None

字符串值

启用 eventlet Backdoor,使用所提供的路径作为可接收连接的 unix 套接字。这个选项与仅提供一的 backdoor_port 相互排斥。如果两者都提供,则此选项的存在会覆盖该选项的使用。在路径 {pid} 中,将替换为当前进程的 PID。

bandwidth_poll_interval = 600

整数值

拉取网络带宽使用信息的时间间隔。

不支持在所有 hypervisor 上。如果虚拟机监控程序不支持带宽使用情况,它将不会在使用事件中获取信息。

可能的值:

  • 0: 将以默认的定期间隔运行。
  • 任何值 < 0 :禁用该选项。
  • 任何正整数(以秒为单位)。

bindir = /usr/local/bin

字符串值

安装 Nova 二进制文件的目录。

只有在使用了 Nova 的网络功能(请参见下面的服务)时,此选项才相关。Nova 的网络功能在以后被 Neutron 完全替代。不太可能从默认值中更改这个选项。

可能的值:

  • 到目录的完整路径。

block_device_allocate_retries = 60

整数值

在服务器创建过程中附加卷前,检查卷要"可用"的次数。

当创建具有块设备映射的服务器时,source_type空白镜像 或快照 之一,而 destination_typenova-compute 服务将创建一个卷,然后将其附加到服务器。在卷被附加前,它必须处于 "available"。这个选项控制在附加前检查创建卷的次数 "available"。

如果操作超时,如果块设备映射 delete_on_termination 值为 True,则该卷将被删除。

建议您在块存储服务中配置镜像缓存来加快此操作。详情请查看 https://docs.openstack.org/cinder/latest/admin/blockstorage-image-volume-cache.html

可能的值:

  • 60 (默认)
  • 如果值为 0,则会进行一个尝试。
  • 对于任何值 > 0,总尝试为(value + 1)

相关选项:

  • block_device_allocate_retries_interval - 控制检查间隔

block_device_allocate_retries_interval = 3

整数值

失败时块设备分配重试之间的间隔(以秒为单位)。

这个选项允许用户指定连续重试间隔。block_device_allocate_retries 选项指定重试的最大数量。

可能的值:

  • 0:禁用该选项。
  • 任何正整数(以秒为单位)都会启用该选项。

相关选项:

  • block_device_allocate_retries - 控制重试次数

cert = self.pem

字符串值

SSL 证书文件的路径。

相关选项:

  • key
  • ssl_only
  • [console] ssl_ciphers
  • [console] ssl_minimum_version

cnt_vpn_clients = 0

整数值

这个选项代表了在 VPN 客户端的地址范围的顶部保留的 IP 地址数量。如果 network_manager 的配置选项未设置为默认值 nova.network.manager.VlanManager,则也会忽略它。

可能的值:

  • 任何整数,0 或更高。

相关选项:

  • use_neutron
  • network_manager

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

compute_driver = None

字符串值

定义用于控制虚拟化的驱动程序。

可能的值:

  • libvirt.LibvirtDriver
  • xenapi.XenAPIDriver
  • fake.FakeDriver
  • ironic.IronicDriver
  • vmwareapi.VMwareVCDriver
  • hyperv.HyperVDriver
  • powervm.PowerVMDriver
  • zvm.ZVMDriver

compute_monitors = []

列出值

以逗号分隔的 monitor 列表,可用于获取计算指标。您可以使用 nova.compute.monitors047 命名空间的 setuptools 入口点的别名/名称。如果没有提供命名空间,则会假定 "cpu." 命名空间以向后兼容。

注意

每个命名空间只能有一个 monitor (例如:cpu)一次只能加载。

可能的值:

  • 一个空列表将禁用该功能(默认)。
  • 启用 CPU 的示例值

    使用 virt 驱动程序变体的带宽监控
    compute_monitors = cpu.virt_driver

config_drive_format = iso9660

字符串值

配置驱动器格式。

包含引导时附加到实例的元数据的配置驱动器格式。

相关选项:

  • 当出现以下备选之一时,这个选项有意义:

    1. force_config_drive 选项设为 true
    2. 创建实例的 REST API 调用包含 config drive 选项的 enable 标志
    3. 用于创建实例的镜像需要一个配置驱动器,这由该镜像的 img_config_drive 属性定义。
  • 运行 Hyper-V hypervisor 的计算节点可以配置为将配置驱动器附加为 CD 驱动器。要将配置驱动器作为 CD 驱动器附加,请将 [hyperv] config_drive_cdrom 选项设置为 true。

弃用自:19. 0.0

原因: 此选项最初作为 libvirt、Chat46201 中程序错误的一个临时解决方案,它在 libvirt v1.2.17 中解决。因此,这个选项不再需要或有用。

conn_pool_min_size = 2

整数值

连接过期策略的池大小限制

conn_pool_ttl = 1200

整数值

池中闲置连接的时间为 sec

console_host = <based on operating system>

字符串值

用于连接到此主机上实例的控制台代理主机。它是控制台主机的公开可见名称。

可能的值:

  • 当前的主机名(默认)或任何代表主机名的字符串。

control_exchange = openstack

字符串值

范围下主题的默认交换。可以被 transport_url 选项指定的交换名称覆盖。

cpu_allocation_ratio = None

浮点值

虚拟 CPU 和物理 CPU 分配比率。

此选项用于通过配置 sVirt 清单的分配比率来影响放置 API 选择的主机。另外,如果没有找到每个聚合设置,则 AggregateCoreFilter (已弃用)将回退到此配置值。

  1. note::

    This option does not affect `PCPU` inventory, which cannot be
    overcommitted.
  2. note::

    If this option is set to something *other than* `None` or `0.0`, the
    allocation ratio will be overwritten by the value of this option, otherwise,
    the allocation ratio will not change. Once set to a non-default value, it is
    not possible to "unset" the config to get back to the default behavior. If
    you want to reset back to the initial value, explicitly specify it to the
    value of `initial_cpu_allocation_ratio`.

可能的值:

  • 任何有效的正整数或浮点值

相关选项:

  • initial_cpu_allocation_ratio

create_unique_mac_address_attempts = 5

整数值

这个选项决定了 nova-network 在放弃和提升 VirtualInterfaceMacAddressException 错误前尝试创建唯一 MAC 地址的次数。

可能的值:

  • 任何正整数。默认值为 5。

相关选项:

  • use_neutron

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

daemon = False

布尔值

作为后台进程运行。

debug = False

布尔值

如果设置为 true,则日志级别将设置为 DEBUG,而不是默认的 INFO 级别。

default_access_ip_network_name = None

字符串值

用于为实例设置访问 IP 的网络名称。如果有多个 IP 地址可供选择,则会选择一个任意 IP。

可能的值:

  • none (默认)
  • 代表网络名称的任何字符串。

default_availability_zone = nova

字符串值

计算服务的默认可用区。

此选项决定了 nova-compute 服务的默认可用区,如果服务不属于可用区元数据来聚合。

可能的值:

  • 代表现有可用区名称的任何字符串。

default_ephemeral_format = None

字符串值

创建时将使用 格式化 ephemeral_volume 的默认格式。

可能的值:

  • ext2
  • ext3
  • ext4
  • xfs
  • NTFS (仅适用于 Windows 客户机)

default_floating_pool = nova

字符串值

浮动 IP 的默认池。

此选项指定用于分配浮动 IP 的默认浮动 IP 池。

在分配浮动 ip 时,用户可以选择性地传递他们要分配的池名称,否则它将从默认池中拉取。

如果没有设置这个选项,则 nova 将用作默认浮动池。

可能的值:

  • 代表浮动 IP 池名称的任何字符串

弃用自:16.0.0

reason: 此选项用于两个目的:要为 nova-network 设置浮动 IP 池名称,并为 neutron.nova-network 设置相同的操作。nova-network 已被弃用,与任何相关的配置选项一样。neutron 的用户也应使用 [neutron] 组中的 default_floating_pool 选项。

default_log_levels = ['amqp=WARN', 'amqplib=WARN', 'boto=WARN', 'qpid=WARN', 'sqlalchemy=WARN', 'suds=INFO', 'oslo.messaging=INFO', 'oslo_messaging=INFO', 'iso8601=WARN', 'iso8601=WARN', 'suds=INFO', 'oslo.messaging=INFO', 'iso8601=WARN', 'requests.packages.urllib3.connectionpool=WARN', 'urllib3.connectionpool=WARN', 'websocket=WARN', 'requests.packages.urllib3.util.retry=WARN', 'urllib3.util.retry=WARN', 'keystonemiddleware=WARN', 'routes.middleware=WARN', 'stevedore=WARN', 'stevedore=WARN', 'urllib3.util.retry=WARN', 'keystonemiddleware=WARN', 'stevedore=WARN', 'taskflow=WARN', 'keystoneauth=WARN', 'oslo.cache=INFO', 'oslo_policy=INFO', 'dogpile.core.dogpile=INFO']

列出值

以 logger=LEVEL 的形式列出软件包日志级别列表。如果设置了 log_config_append,则忽略这个选项。

default_schedule_zone = None

字符串值

实例的默认可用区。

此选项决定了实例的默认可用区,当用户在创建实例时不使用它。实例将在其生命周期内绑定到此可用区。

可能的值:

  • 代表现有可用区名称的任何字符串。
  • none,这意味着如果实例从一个计算节点移到另一个计算节点,则实例可以在其生命周期内从一个可用区移到另一个可用区。

defer_iptables_apply = False

布尔值

将 IPTables 规则应用延迟到 init 阶段之后。

当 compute 服务重启主机上运行的每个实例时,其 iptables 规则会在主机 init 阶段按顺序构建并应用。如果有些实例无法访问某些实例,这对运行许多实例的主机的影响会被观察到,因为现有的 iptables 规则已被缩减且还没有重新应用。

这是一个临时解决方案,它可以先防止应用程序使用 iptables 规则,直到主机上所有实例都进行了初始化,然后一次性应用所有实例的规则。这可以避免出现一个断电期。

弃用自:19. 0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

dhcp_lease_time = 86400

整数值

DHCP 租期的生命周期,以秒为单位。默认值为 86400 (一天)。

可能的值:

  • 任何正整数值。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

dhcpbridge = $bindir/nova-dhcpbridge

字符串值

二进制 nova-dhcpbridge 的位置。默认情况下,它是名为 nova-dhcpbridge 的二进制文件,它随所有其他 nova 二进制文件一起安装。

可能的值:

  • 代表 dhcpbridge 二进制文件的完整路径的任何字符串

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

dhcpbridge_flagfile = ['/etc/nova/nova-dhcpbridge.conf']

多值

这个选项是 dhcpbridge 的一个或多个配置文件的完整路径列表。在大多数情况下,/etc/nova/nova-dhcpbridge.conf 的默认路径应该已经足够,但如果您有配置 dhcpbridge 的特殊需要,您可以更改或添加到此列表中。

可能的值

  • 字符串列表,其中每个字符串都是 dhcpbridge 配置文件的完整路径。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

disk_allocation_ratio = None

浮点值

虚拟磁盘与物理磁盘分配比率。

此选项用于通过为 DISK_GB 清单配置分配比率来影响放置 API 选择的主机。另外,如果没有找到每个聚合设置,则 AggregateDiskFilter (已弃用)将回退到此配置值。

配置后,如果比率大于 1.0,将会导致超额订阅可用物理磁盘。这在使用一个没有使用整个虚拟磁盘的镜像创建实例时更高效地打包实例(如稀疏或压缩镜像)。它可以设置为 0.0 和 1.0 之间的值,以便保留磁盘百分比以供实例使用。

  1. note::

    If the value is set to `>1`, we recommend keeping track of the free disk
    space, as the value approaching `0` may result in the incorrect
    functioning of instances using it at the moment.
  2. note::

    If this option is set to something *other than* `None` or `0.0`, the
    allocation ratio will be overwritten by the value of this option, otherwise,
    the allocation ratio will not change. Once set to a non-default value, it is
    not possible to "unset" the config to get back to the default behavior. If
    you want to reset back to the initial value, explicitly specify it to the
    value of `initial_disk_allocation_ratio`.

可能的值:

  • 任何有效的正整数或浮点值

相关选项:

  • initial_disk_allocation_ratio

dmz_cidr = []

列出值

这个选项是应接受的网络 DMZ 中的零个或更多 IP 地址范围的列表。

可能的值:

  • 字符串列表,每个字符串都应该是一个有效的 CIDR。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

dns_server = []

多值

尽管此选项的单数形式,但实际上是 dnsmasq 将用于 DNS 名称服务器的零或更多服务器地址的列表。如果这不为空,dnsmasq 不会读取 /etc/resolv.conf,而是只使用这个选项中指定的服务器。如果选项 use_network_dns_servers 为 True,则网络中的 dns1 和 dns2 服务器将被附加到此列表中,并将用作 DNS 服务器。

可能的值:

  • 字符串列表,其中每个字符串都是 IP 地址或 FQDN。

相关选项:

  • use_network_dns_servers

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

dns_update_periodic_interval = -1

整数值

这个选项决定为网络刷新 DNS 条目之间等待的时间(以秒为单位)。

可能的值:

  • 正整数
  • -1 禁用更新

相关选项:

  • use_neutron

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

`dnsmasq_config_file = `

字符串值

自定义 dnsmasq 配置文件的路径(若有)。

可能的值:

  • 配置文件的完整路径,如果没有自定义 dnsmasq 配置文件,则为空字符串。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

ebtables_exec_attempts = 3

整数值

这个选项决定在放弃前重试 ebtables 命令的次数。重试的最小次数为 1。

可能的值:

  • 任何正整数

相关选项:

  • ebtables_retry_interval

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

ebtables_retry_interval = 1.0

浮点值

这个选项决定了系统在 ebtables 重试之间休眠的时间(以秒为单位)。请注意,每个连续的重试都会等待这个值代表的时间,例如:如果将其设置为默认的 1.0 秒,ebtables_exec_attempts 是 4,在出现第一个故障后,系统将休眠 1 * 1.0 秒,在出现第二个故障时,休眠 2 * 1.0 秒,在第三个故障后,休眠 3 * 1.0 秒。

可能的值:

  • 任何非负浮点或整数。把它设置为零将导致尝试不等待。

相关选项:

  • ebtables_exec_attempts

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

enable_network_quota = False

布尔值

此选项用于启用或禁用租户网络的配额检查。

相关选项:

  • quota_networks

弃用自:14.0.0

原因: 只有在使用 nova-network 和 nova-network 本身时,租户网络的 CRUD 操作才可用。

enable_new_services = True

布尔值

在此主机上自动启用新的 nova-compute 服务。

当新的 nova-compute 服务启动时,它将作为启用的服务在数据库中注册。有时,注册处于 disabled 状态的新计算服务会很有用,然后在稍后的时间启用它们。这个选项只为 nova-compute 服务设置此行为,它不会自动禁用 nova-conductor、nova-scheduler 或 nova-osapi_compute 等其他服务。

可能的值:

  • true :在注册自身后就立即启用每个新计算服务。
  • false :计算服务必须通过 os-services REST API 调用启用,或使用带有 nova service-enable <hostname> <binary> 的 CLI 启用,否则它们并未就绪。

enabled_apis = ['osapi_compute', 'metadata']

列出值

默认情况下要启用的 API 列表。

enabled_ssl_apis = []

列出值

启用 SSL 的 API 列表。

Nova 为 API 服务器提供 SSL 支持。enabled_ssl_apis 选项允许配置 SSL 支持。

executor_thread_pool_size = 64

整数值

当 executor 为 threading 或 eventle 时,executor 线程池的大小。

fake_network = False

布尔值

这个选项主要用于测试,以避免调用底层网络实用程序。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

fatal_deprecations = False

布尔值

启用或禁用弃用的严重状态。

firewall_driver = nova.virt.firewall.NoopFirewallDriver

字符串值

nova-network 服务一起使用的防火墙驱动程序。

这个选项仅在使用 nova-network 服务时适用。在使用其他网络服务(如 Neutron)时,这应当设置为 nova.virt.firewall.NoopFirewallDriver

可能的值:

  • nova.virt.firewall.IptablesFirewallDriver
  • nova.virt.firewall.NoopFirewallDriver
  • nova.virt.libvirt.firewall.IptablesFirewallDriver
  • […​]

相关选项:

  • use_neutron :必须将其设置为 False 来启用 nova-network 网络

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

fixed_ip_disassociate_timeout = 600

整数值

这是在解除取消分配的固定 IP 地址前等待的秒数。这仅用于 nova-network 服务,在使用 neutron 进行网络时无效。

可能的值:

  • 任何整数、零或更高。

相关选项:

  • use_neutron

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

fixed_range_v6 = fd00::/48

字符串值

这个选项决定创建网络时固定的 IPv6 地址块。

请注意,只有在部署中使用 nova-network 而不是 Neutron 时使用这个选项。

可能的值:

  • 任何有效的 IPv6 CIDR

相关选项:

  • use_neutron

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

flat_injected = False

布尔值

这个选项决定了在引导前是否将网络设置信息注入虚拟机。虽然最初设计为仅由 nova-network 使用,但它也被 vmware 和 xenapi virt 驱动程序用来控制网络信息是否注入到虚拟机中。当使用 config_drive 配置网络来控制是否将网络信息注入虚拟机时,libvirt virt 驱动程序也会使用它。

flat_interface = None

字符串值

此选项是要在其上构建网桥的虚拟机的虚拟接口名称。虽然它最初设计为仅由 nova-network 使用,但 libvirt 也将它用于网桥接口名称。

可能的值:

  • 任何有效的虚拟接口名称,如 eth0

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

flat_network_bridge = None

字符串值

在 VM 创建请求中没有指定网桥时,此选项决定了用于简单网络接口的网桥。

请注意,只有在部署中使用 nova-network 而不是 Neutron 时使用这个选项。

可能的值:

  • 代表有效网桥的任何字符串,如 br100

相关选项:

  • use_neutron

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

flat_network_dns = 8.8.4.4

字符串值

这是简单网络的 DNS 服务器地址。如果没有指定这个选项,则使用默认值 8.8.4.4

请注意,只有在部署中使用 nova-network 而不是 Neutron 时使用这个选项。

可能的值:

  • 任何有效的 IP 地址。

相关选项:

  • use_neutron

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

floating_ip_dns_manager = nova.network.noop_dns_driver.NoopDNSDriver

字符串值

浮动 IP 的 DNS Manager 的完整类名称。

此选项指定驱动程序类,提供管理与浮动 IP 关联的 DNS 条目的功能。

当用户为指定域添加 DNS 条目到浮动 IP 时,nova 将使用指定的浮动 DNS 驱动程序添加 DNS 条目。当浮动 IP 被取消分配时,它将自动删除其 DNS 条目。

可能的值:

  • 要使用类的完整 Python 路径

相关选项:

  • use_neutron:这个选项仅适用于 nova-network。

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

force_config_drive = False

布尔值

强制注入在配置驱动器上进行

当此选项被设置为 true 配置驱动器功能时,将默认强制启用配置驱动器,否则用户仍然可以通过 REST API 或镜像元数据属性启用配置驱动器。启动的实例不受此选项的影响。

可能的值:

  • true :强制使用配置驱动器,无论用户在 REST API 调用中用户输入。
  • false :不强制使用配置驱动器。配置驱动器仍可通过 REST API 或镜像元数据属性启用。

相关选项:

  • 使用 mkisofs_cmd 标志来设置安装 genisoimage 程序的路径。如果 genisoimage 与 nova-compute 服务位于同一个路径中,则不需要设置此标志。
  • 要将配置驱动器与 Hyper-V 搭配使用,您必须将 mkisofs_cmd 值设置为 mkisofs.exe 安装的完整路径。另外,您必须将 hyperv 配置部分中的 qemu_img_cmd 值设置为 qemu-img 命令安装的完整路径。

force_dhcp_release = True

布尔值

当此选项为 True 时,会发出一个调用来释放实例的 DHCP (当实例被终止时)。

相关选项:

  • use_neutron

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

force_raw_images = True

布尔值

强制将后备镜像转换为 raw 格式。

可能的值:

  • true :后备镜像文件将转换为原始镜像格式
  • false :不会转换后备镜像文件

相关选项:

  • compute_driver :只有 libvirt 驱动程序使用这个选项。
  • [libvirt]/images_type :如果 images_type 是 rbd,则不允许将此选项设置为 False。详情请查看 https://bugs.launchpad.net/nova/+bug/1816686 错误。

force_snat_range = []

多值

这是来自 routing_source_ip 的零个或更多 IP 范围列表。如果列表为空,则不会创建 SNAT 规则。

可能的值:

  • 字符串列表,每个字符串都应该是一个有效的 CIDR。

相关选项:

  • routing_source_ip

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

forward_bridge_interface = ['all']

多值

网桥可以将流量转发到的一个或多个接口。如果此列表中的任何项有特殊关键字 all 时,则所有流量将被转发。

可能的值:

  • 零个或者多个接口名称的列表,或者单词 all

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

gateway = None

字符串值

这是默认的 IPv4 网关。它仅在测试套件中使用。

请注意,只有在部署中使用 nova-network 而不是 Neutron 时使用这个选项。

可能的值:

  • 任何有效的 IP 地址。

相关选项:

  • use_neutron
  • gateway_v6

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

gateway_v6 = None

字符串值

这是默认的 IPv6 网关。它仅在测试套件中使用。

请注意,只有在部署中使用 nova-network 而不是 Neutron 时使用这个选项。

可能的值:

  • 任何有效的 IP 地址。

相关选项:

  • use_neutron
  • gateway

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

graceful_shutdown_timeout = 60

整数值

指定安全关闭服务器将退出的超时。零值表示无用等待。

heal_instance_info_cache_interval = 60

整数值

实例网络信息缓存更新之间的间隔。

每个计算节点运行查询 Neutron 以了解所有实例网络信息的秒数,然后使用这些信息更新 Nova db。如果此选项设为 0,则 Nova 永远不会更新它的缓存。如果没有更新缓存,则元数据服务和 nova-api 端点将代理有关实例的不正确网络数据。因此,不建议将此选项设置为 0。

可能的值:

  • 任何正整数(以秒为单位)。
  • 任何值 IANA0 将禁用同步。不建议这样做。

host = <based on operating system>

字符串值

此主机的主机名、FQDN 或 IP 地址。

用作:

  • nova-compute worker 的 oslo.messaging 队列名称
  • 我们对发送到 neutron 的 binding_host 使用这个值。这意味着,如果您使用 neutron 代理,它应该具有相同的值。
  • Cinder 主机附加信息

必须在 AMQP 密钥内有效。

可能的值:

  • 带有主机名、FQDN 或 IP 地址的字符串。默认为此主机的主机名。

image_cache_manager_interval = 2400

整数值

镜像缓存管理器运行之间等待的秒数。

可能的值:VirtualMachine 0:以默认速率运行。evince -1:禁用任意一个其他值

image_cache_subdirectory_name = _base

字符串值

缓存镜像的位置。

这不是完整路径 - 只是相对于 $instances_path 的文件夹名称。对于每个计算主机缓存的镜像,设置为 基本$my_ip

initial_cpu_allocation_ratio = 16.0

浮点值

初始虚拟 CPU 到物理 CPU 分配比率。

这仅在最初为给定的 nova-compute 服务创建 computes_nodes 表记录时使用。

详情请查看 https://docs.openstack.org/nova/latest/admin/configuration/schedulers.html

相关选项:

  • cpu_allocation_ratio

initial_disk_allocation_ratio = 1.0

浮点值

初始虚拟磁盘与物理磁盘分配比率。

这仅在最初为给定的 nova-compute 服务创建 computes_nodes 表记录时使用。

详情请查看 https://docs.openstack.org/nova/latest/admin/configuration/schedulers.html

相关选项:

  • disk_allocation_ratio

initial_ram_allocation_ratio = 1.5

浮点值

初始虚拟 RAM 到物理 RAM 分配比率。

这仅在最初为给定的 nova-compute 服务创建 computes_nodes 表记录时使用。

详情请查看 https://docs.openstack.org/nova/latest/admin/configuration/schedulers.html

相关选项:

  • ram_allocation_ratio

injected_network_template = $pybasedir/nova/virt/interfaces.template

字符串值

/etc/network/interfaces 模板的路径。

/etc/network/interfaces模板文件的路径 - 样式文件,该文件将被 nova 填充,然后由 cloudinit 使用。这提供了一种在没有 DHCP 服务器的环境中配置网络连接的方法。

该模板将使用 Jinja2 模板引擎呈现,并接收名为 interfaces 的顶级密钥。此密钥将包含字典列表,每个接口对应一个。

如需更多信息,请参阅 cloudinit 文档:

https://cloudinit.readthedocs.io/en/latest/topics/datasources.html

可能的值:

  • Debian /etc/network/interfaces 文件的 Jinja2 格式模板的路径。即使使用非 Debian-derived 客户机,也会应用。

相关选项:

  • flat_inject :这必须设置为 True,以确保 nova 将网络配置信息嵌入到通过配置驱动器提供的元数据中。

instance_build_timeout = 0

整数值

实例构建所需的时间(以秒为单位)。

如果这个计时器过期,则实例状态将更改为 ERROR。启用此选项可确保实例在较长时间内不会处于 BUILD 状态。

可能的值:

  • 0:禁用选项(默认)
  • 任何正整数(以秒为单位):启用该选项。

instance_delete_interval = 300

整数值

重试失败的实例文件删除的时间间隔。

此选项取决于 maximum_instance_delete_attempts。这个选项指定重试删除的频率,而 max_instance_delete_attempts 指定可以进行的最大重试尝试次数。

可能的值:

  • 0: 将以默认的定期间隔运行。
  • 任何值 < 0 :禁用该选项。
  • 任何正整数(以秒为单位)。

相关选项:

  • maximum_instance_delete_attempts from instance_cleaning_opts group.

`instance_dns_domain = `

字符串值

如果指定,Nova 会检查每个实例的 availability_zone 是否与数据库所示的 availability_zone 相匹配。

相关选项:

  • use_neutron:这个选项仅适用于 nova-network。

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

instance_dns_manager = nova.network.noop_dns_driver.NoopDNSDriver

字符串值

实例 IP 的 DNS Manager 的完整类名称。

此选项指定驱动程序类,提供管理实例的 DNS 条目的功能。

在创建实例时,nova 将使用指定的实例 DNS 驱动程序和域为实例名称和 id 添加 DNS 条目。在实例删除时,nova 将删除 DNS 条目。

可能的值:

  • 要使用类的完整 Python 路径

相关选项:

  • use_neutron:这个选项仅适用于 nova-network。

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

`instance_format = [instance: %(uuid)s] `

字符串值

通过日志消息传递的实例格式。

instance_name_template = instance-%08x

字符串值

用于生成实例名称的模板字符串。

此模板控制实例的数据库名称。这不是 您在创建实例时输入的显示名称(通过 Horizon 或 CLI)。对于新部署,建议将默认值(使用数据库自动缩放)更改为使用实例属性的另一个值,如 instance-%(uuid)。如果您的部署中已有实例,您的部署将中断。

可能的值:

  • 使用实例数据库 ID (如默认)的字符串
  • 包含名为 database 列列表的字符串,如 %(id) d%(uuid)%(hostname) s

instance_usage_audit = False

布尔值

这个选项启用定期 compute.instance.exists 通知。每个计算节点都必须配置为生成系统使用数据。这些通知由 OpenStack Telemetry 服务使用。

instance_usage_audit_period = month

字符串值

生成实例使用量的时间周期。可以通过附加 @ 字符后跟定义偏移的数字来定义给定周期的可选偏移量。

可能的值:

  • 周期,例如: 小时
  • 偏移的时间,例如: month@15 将于每月审计,从第 15 天的月开始。

`instance_uuid_format = [instance: %(uuid)s] `

字符串值

通过日志消息传递的实例 UUID 的格式。

instances_path = $state_path/instances

字符串值

指定实例存储在虚拟机监控程序磁盘中的位置。它可以指向本地连接的存储或 NFS 中的目录。

可能的值:

  • $state_path/instances,其中 state_path 是一个配置选项,用于指定维护 nova 状态的顶级目录。(默认)或任何代表目录路径的字符串。

相关选项:

  • [workarounds]/ensure_libvirt_rbd_instance_dir_cleanup

internal_service_availability_zone = internal

字符串值

内部服务的可用区。

此选项决定了各种内部 nova 服务的可用区,如 nova-schedulernova-conductor 等。

可能的值:

  • 代表现有可用区名称的任何字符串。

`iptables_bottom_regex = `

字符串值

如果定义此表达式,将选择任何匹配的 iptables 规则,并在将元数据更改应用到规则时将它们放在底部。

可能的值:

  • 代表有效正则表达式或空字符串的任何字符串

相关选项:

  • iptables_top_regex

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

iptables_drop_action = DROP

字符串值

默认情况下,不通过防火墙的数据包将被冻结。然而,很多情况下,操作器可能会发现将此从 DROP 更改为 REJECT 更有用,因此发出这些数据包的用户可能会更好地了解或 LOGDROP,以便在发生前记录受阻断的流量。

可能的值:

  • 代表 iptables 链的字符串。默认值为 DROP。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

`iptables_top_regex = `

字符串值

如果定义此表达式,将选择任何匹配的 iptables 规则,并在将元数据更改应用到规则时将它们放在顶部。

可能的值:

  • 代表有效正则表达式或空字符串的任何字符串

相关选项:

  • iptables_bottom_regex

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

ipv6_backend = rfc2462

字符串值

将 IPv6 地址生成抽象到可插拔后端。

nova-network 可以置于维护模式,以便使用 IPv4 和 IPv6 地址。在双栈模式中,实例通过无状态地址自动配置机制获取 IPv6 全局单播地址。

相关选项:

  • use_neutron:这个选项仅适用于 nova-network。
  • use_ipv6:此选项仅在为 nova-network 启用 ipv6 时有效。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

key = None

字符串值

SSL 密钥文件(如果与证书分开)。

相关选项:

  • cert

l3_lib = nova.network.l3.LinuxNetL3

字符串值

这个选项允许您指定要使用的 L3 管理库。

可能的值:

  • 代表 L3 网络库的导入路径的任何点分隔字符串。

相关选项:

  • use_neutron

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

ldap_dns_base_dn = ou=hosts,dc=example,dc=org

字符串值

LDAP 搜索查询的基本可分辨名称

此选项有助于决定在 LDAP 中查找主机的位置。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

ldap_dns_password = password

字符串值

自:16.0.0 开始,为 LDAP 服务器绑定用户密码已弃用

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

ldap_dns_servers = ['dns.example.org']

多值

LDAP DNS 驱动程序的 DNS 服务器

可能的值:

  • 代表 DNS 服务器的有效 URL

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

ldap_dns_soa_expiry = 86400

整数值

LDAP DNS 驱动程序开始的过期间隔(以秒为单位)

时间间隔,辅助/从 DNS 服务器在不再被视为权威之前保存信息。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

ldap_dns_soa_hostmaster = hostmaster@example.org

字符串值

用于授权机构的 LDAP DNS 驱动程序声明的主机 master

可能的值:

  • 任何代表 LDAP DNS hostmaster 的有效字符串。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

ldap_dns_soa_minimum = 7200

整数值

LDAP DNS 驱动程序开始的最低间隔(以秒为单位)

对于区域文件中的所有资源记录,最小生存时间为 live。这个值提供给其他应将数据保留在缓存中的时间。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

ldap_dns_soa_refresh = 1800

整数值

LDAP DNS 驱动程序开始刷新间隔(以秒为单位)

时间间隔,次要/从 DNS 服务器在请求主 DNS 服务器的当前 SOA 记录前等待。如果记录不同,次要 DNS 服务器将请求从主传输的区域。

注意

较低值将导致更多流量。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

ldap_dns_soa_retry = 3600

整数值

LDAP DNS 驱动程序开始重试间隔(以秒为单位)

如果尝试在之前的刷新间隔内传输区域失败,二级/从 DNS 服务器应等待的间隔。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

ldap_dns_url = ldap://ldap.example.com:389

URI 值

将存储 DNS 条目的 LDAP 服务器的 URL

可能的值:

  • 代表服务器的有效 LDAP URL

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

ldap_dns_user = uid=admin,ou=people,dc=example,dc=org

字符串值

自:16.0.0 开始,LDAP 服务器的绑定用户已弃用

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

linuxnet_interface_driver = nova.network.linux_net.LinuxBridgeInterfaceDriver

字符串值

这是用作 linuxnet 网桥操作的以太网设备驱动程序的类。对于大多数情况,默认值应该是您需要的,但如果您想要使用自定义类,请将这个选项设置为该类的完整点分开导入路径。

可能的值:

  • 代表 Nova 可以导入的点分隔类路径的任何字符串。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

linuxnet_ovs_integration_bridge = br-int

字符串值

与 Open vSwitch 连接时,与 linuxnet 一起使用的 Open vSwitch 网桥的名称"。

可能的值:

  • 代表有效网桥名称的任何字符串。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

live_migration_retry_count = 30

整数值

live_migration 中最多 1 秒重试次数。它指定在 iptables 投诉时的重试次数。当用户持续向同一主机发送实时迁移请求时会出现这种情况,从而导致并发请求到 iptables。

可能的值:

  • 任何正整数,代表重试计数。

log-config-append = None

字符串值

日志配置文件的名称。此文件附加到任何现有日志配置文件中。有关日志记录配置文件的详情,请查看 Python 日志记录模块文档。请注意,当使用日志记录配置文件时,所有日志配置都会在配置文件中设置,其他日志记录配置选项将被忽略(如 log-date-format)。

log-date-format = %Y-%m-%d %H:%M:%S

字符串值

在日志记录中定义 %%(asctime)的格式字符串。默认:%(默认)s。如果设置了 log_config_append,则忽略这个选项。

log-dir = None

字符串值

(可选)用于相对 log_file 路径的基础目录。如果设置了 log_config_append,则忽略这个选项。

log-file = None

字符串值

(可选)要将日志输出发送到的日志文件的名称。如果没有设置默认值,日志记录将进入由 use_stderr 定义的 stderr。如果设置了 log_config_append,则忽略这个选项。

log_options = True

布尔值

启用或禁用启动服务时所有注册选项的日志值(at DEBUG 级别)。

log_rotate_interval = 1

整数值

轮转日志文件前的时间长度。这个选项将被忽略,除非 log_rotation_type 被设置为 "interval"。

log_rotate_interval_type = days

字符串值

轮转间隔类型。调度下一次轮转时使用最后一次文件更改的时间(或启动服务的时间)。

log_rotation_type = none

字符串值

日志轮转类型。

logging_context_format_string = %(asctime) s.%(msecs) 03d %(process) d %(levelname) s %(name) s [%(request_id) s %(user_identity) s] %(instance) s%(message)

字符串值

用于具有上下文的日志消息的格式字符串。oslo_log.formatters.ContextFormatter 使用

logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d

字符串值

在消息的日志级别为 DEBUG 时附加的额外数据以记录消息。oslo_log.formatters.ContextFormatter 使用

logging_default_format_string = %(asctime) s.%(msecs) 03d %(process) d %(levelname) s %(name) s [-] %(instance) s%(message) s%(message) s

字符串值

未定义时用于日志消息的格式字符串。oslo_log.formatters.ContextFormatter 使用

logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s

字符串值

使用此格式为每个异常输出添加前缀。oslo_log.formatters.ContextFormatter 使用

logging_user_identity_format = %(user) s %(tenant) s %(domain) s %(user_domain) s %(project_domain) s %(project_domain) s %(project_domain)

字符串值

定义 logging_context_format_string 中使用的 %(user_identity)的格式字符串。oslo_log.formatters.ContextFormatter 使用

long_rpc_timeout = 1800

整数值

这个选项允许为可能需要很长时间的 RPC 调用设置备用超时值。如果设置,对其他服务的 RPC 调用会将这个值用于超时(以秒为单位),而不是全局 rpc_response_timeout 值。

使用这个值的 RPC 调用的操作:

  • 实时迁移
  • 调度
  • 启用/禁用计算服务
  • 卷附加

相关选项:

  • rpc_response_timeout

max_concurrent_builds = 10

整数值

限制 nova-compute 同时运行实例构建的最大数量。如果要求这样做,计算服务可能会尝试构建无限数量的实例。强制执行这个限制,以避免在计算节点上同时构建无限实例。这个值可以为每个计算节点设置。

可能的值:

  • 0 :被视为无限。
  • 任何正整数,代表最大并发构建。

max_concurrent_live_migrations = 1

整数值

并发运行的最大实时迁移数量。这个限制是强制的,以避免对主机/网络进行出站实时迁移,并导致失败。除非非常确定,在环境中安全且稳定,否则不建议更改此设置。

可能的值:

  • 0 :被视为无限。
  • 任何正整数,代表并发运行的最大实时迁移数。

max_local_block_devices = 3

整数值

导致在虚拟机监控程序节点上创建本地镜像的最大设备数。

负数表示无限。将 max_local_block_devices 设置为 0 表示尝试创建本地磁盘的任何请求都将失败。这个选项旨在限制本地磁盘的数量(因此 root 本地磁盘在创建服务器时使用 imageRef 的结果),以及任何其他临时和交换磁盘。0 并不意味着镜像将自动转换为卷并从卷引导实例,这意味着尝试创建本地磁盘的所有请求将失败。

可能的值:

  • 0:不允许创建本地磁盘。
  • 负数:允许无限数量的本地磁盘。
  • 正数 :只允许这些数量的本地磁盘。

max_logfile_count = 30

整数值

轮转的日志文件的最大数量。

max_logfile_size_mb = 200

整数值

日志文件最大大小(以 MB 为单位)。如果 "log_rotation_type" 没有设置为 "size",则忽略这个选项。

maximum_instance_delete_attempts = 5

整数值

试图获取实例文件的次数。

这个选项指定可以进行的最大重试尝试次数。

可能的值:

  • 任何正整数都定义进行多少次尝试。

相关选项:

  • [DEFAULT] instance_delete_interval 可用于禁用这个选项。

metadata_host = $my_ip

字符串值

此选项决定网络元数据 API 服务器的 IP 地址。

这是元数据主机的客户端,允许 nova-network 在执行默认多主机网络时查找元数据服务器。

可能的值:

  • 任何有效的 IP 地址。默认值为 Nova API 服务器的地址。

相关选项:

  • metadata_port

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

metadata_listen = 0.0.0.0

字符串值

元数据 API 将侦听的 IP 地址。

元数据 API 服务侦听此 IP 地址以获取传入请求。

metadata_listen_port = 8775

端口值

元数据 API 将侦听的端口。

元数据 API 服务侦听此端口号以获取传入请求。

metadata_port = 8775

端口值

此选项决定用于元数据 API 服务器的端口。

相关选项:

  • metadata_host

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

metadata_workers = <based on operating system>

整数值

元数据服务的 worker 数量。如果没有指定可用 CPU 的数量。

元数据服务可以配置为作为多进程(worker)运行。这解决了在 API 请求并发增加时降低吞吐量的问题。元数据服务将在指定数量的进程中运行。

可能的值:

  • 任何正整数
  • none (默认值)

migrate_max_retries = -1

整数值

失败前重试实时迁移的次数。

可能的值:

  • 如果 == -1,请尝试直到主机不足(默认)
  • 如果 == 0,则只尝试一次,则不重试
  • 大于 0 的整数

mkisofs_cmd = genisoimage

字符串值

用于 ISO 镜像创建的工具的名称或路径。

使用 mkisofs_cmd 标志来设置安装 genisoimage 程序的路径。如果 genisoimage 位于系统路径中,则不需要更改默认值。

要将配置驱动器与 Hyper-V 搭配使用,您必须将 mkisofs_cmd 值设置为 mkisofs.exe 安装的完整路径。另外,您必须将 hyperv 配置部分中的 qemu_img_cmd 值设置为 qemu-img 命令安装的完整路径。

可能的值:

  • ISO 镜像创建程序的名称,如果它与 nova-compute 服务位于同一个目录中
  • ISO 镜像创建程序的路径

相关选项:

  • 启用配置驱动器时,这个选项有意义。
  • 要将配置驱动器与 Hyper-V 搭配使用,您必须将 hyperv 配置部分中的 qemu_img_cmd 值设置为 qemu-img 命令安装的完整路径。

multi_host = False

布尔值

网络中 multi_host 的默认值。

nova-network 服务可以在多主机或单节点模式下运行。在多主机模式中,每个计算节点运行 nova-network 的副本,并且该计算节点上的实例使用计算节点作为互联网的网关。在单主机模式中,中央服务器运行 nova-network 服务。所有计算节点将流量从实例转发到云控制器,然后将流量转发到互联网。

如果此选项设为 true,则一些 rpc 网络调用将直接发送到 host。

请注意,只有在部署中使用 nova-network 而不是 Neutron 时,才会使用这个选项。

相关选项:

  • use_neutron

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

my_block_storage_ip = $my_ip

字符串值

用于连接到块存储网络的 IP 地址。

可能的值:

  • 具有有效 IP 地址的字符串。默认为此主机的 IP 地址。

相关选项:

  • my_ip - 如果没有设置 my_block_storage_ip,则使用 my_ip 值。

my_ip = <based on operating system>

字符串值

主机用于连接管理网络的 IP 地址。

可能的值:

  • 具有有效 IP 地址的字符串。默认为此主机的 IPv4 地址。

相关选项:

  • metadata_host
  • my_block_storage_ip
  • routing_source_ip
  • vpn_ip

network_allocate_retries = 0

整数值

重试网络分配的次数。如果虚拟接口插件失败,则需要尝试网络分配重试。

可能的值:

  • 任何正整数,代表重试计数。

network_driver = nova.network.linux_net

字符串值

用于网络创建的驱动程序。

网络驱动程序仅在主机节点上第一个虚拟机登录时初始化(创建网桥等)。所有网络管理器使用网络驱动程序配置网络。驱动程序不与任何特定网络管理器关联。

默认 Linux 驱动程序使用 linux 工具实施 vlan、bridge 和 iptables 规则。

请注意,只有在部署中使用 nova-network 而不是 Neutron 时,才会使用这个选项。

相关选项:

  • use_neutron

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

network_manager = nova.network.manager.VlanManager

字符串值

网络的 Manager 的完全类名称弃用自:18.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

network_size = 256

整数值

此选项决定了每个专用子网中的地址数量。

请注意,只有在部署中使用 nova-network 而不是 Neutron 时使用这个选项。

可能的值:

  • 任何小于或等于可用网络大小的正整数。请注意,如果您要创建多个网络,它们必须全部适合可用的 IP 地址空间。默认值为 256。

相关选项:

  • use_neutron
  • num_networks

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

networks_path = $state_path/networks

字符串值

网络配置文件要保留的位置。默认为安装 nova 的 Python 模块的位置上的 networks 目录。

可能的值

  • 包含到所需配置目录的完整路径的字符串

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

non_inheritable_image_properties = ['cache_in_nova', 'bittorrent', 'img_signature_hash_method', 'img_signature', 'img_signature_key_type', 'img_signature_certificate_uuid']

列出值

在进行快照时不应从实例继承的镜像属性。

此选项为选择不应被新创建的快照继承哪些 image-properties 的机会。

可能的值:

  • 以逗号分隔的列表,其项目是一个镜像属性。通常只能包含基础镜像只需要的镜像属性,因为从基础镜像创建的快照不需要它们。
  • 默认列表: cache_in_nova, bittorrent, img_signature_hash_method, img_signature, img_signature_key_type, img_signature_certificate_uuid

num_networks = 1

整数值

如果创建网络时未明确指定,则此选项代表了要创建的网络数量。只有在指定了 CIDR 时,唯一使用这个时间,而是使用显式 network_size。在这种情况下,子网通过将 CIDR 的 IP 地址空间除以 num_networks 来创建。生成的子网大小不能超过配置选项 network_size; 在这种情况下,它们会减小到 network_size,并记录警告。

请注意,只有在部署中使用 nova-network 而不是 Neutron 时使用这个选项。

可能的值:

  • 任何正整数在技术上有效,但根据可用的 IP 地址空间和虚拟接口有实际限制。

相关选项:

  • use_neutron
  • network_size

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

osapi_compute_listen = 0.0.0.0

字符串值

OpenStack API 将侦听的 IP 地址。

OpenStack API 服务侦听此 IP 地址以获取传入请求。

osapi_compute_listen_port = 8774

端口值

OpenStack API 将侦听的端口。

OpenStack API 服务侦听此端口号以获取传入请求。

`osapi_compute_unique_server_name_scope = `

字符串值

设置检查的范围以获取唯一的实例名称。

默认值不会检查唯一名称。如果设置了名称检查的范围,则启动新实例或具有重复名称的现有实例的更新将导致 'InstanceExists' 错误。唯一性不区分大小写。设置此选项可以提高最终用户的可用性,因为它们不必将同名的实例与 ID 区分。

osapi_compute_workers = None

整数值

OpenStack API 服务的 worker 数量。默认值为可用的 CPU 数量。

OpenStack API 服务可以配置为作为多进程(worker)运行。这解决了在 API 请求并发增加时降低吞吐量的问题。OpenStack API 服务将在指定数量的进程中运行。

可能的值:

  • 任何正整数
  • none (默认值)

ovs_vsctl_timeout = 120

整数值

此选项代表了 ovs_vsctl 调用在超时前等待数据库响应的时间周期(以秒为单位)。设置 0 表示实用程序应等待响应。

可能的值:

  • 如果需要有限超时,则任何正整数;如果调用应该等待响应,则为零。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

password_length = 12

整数值

生成的实例管理员密码的长度。

periodic_enable = True

布尔值

启用定期任务。

如果设置为 true,此选项允许服务在管理器上定期运行任务。

如果运行多个调度程序或编排器,您可能只想在一个主机上运行定期任务 - 在这种情况下,对所有主机禁用这个选项,但有一个。

periodic_fuzzy_delay = 60

整数值

启动定期任务调度程序时随机延迟的秒数,以减少时间戳。

当计算 worker 在集群间重启时,它们最终会同时运行定期任务,从而导致外部服务出现问题。为缓解此行为,periodic_fuzzy_delay 选项允许您在启动定期任务调度程序时引入随机初始延迟。

可能的值:

  • 任何正整数(以秒为单位)
  • 0 :禁用随机延迟

pointer_model = usbtablet

字符串值

用于指定指针类型的通用属性。

输入设备允许与图形帧缓冲器交互。例如,要为绝对光标移动提供图形平板电脑。

如果设置,hw_pointer_model 镜像属性优先于这个配置选项。

相关选项:

  • 必须启用 VNC 或 SPICE 配置 usbtablet,并禁用 SPICE 代理。与 libvirt 一起使用时,实例模式应配置为 HVM。

preallocate_images = none

字符串值

要使用的镜像预分配模式。

镜像预分配允许在实例最初置备时预先分配实例镜像。这样可确保如果没有足够的空间不可用,则会立即提供反馈。另外,它应该显著提高对新块写入的性能,甚至可能会提高 I/O 性能来因为碎片减少而预先写入块。

public_interface = eth0

字符串值

这是公共 IP 地址的网络接口名称。默认值为 eth0

可能的值:

  • 代表网络接口名称的任何字符串

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

publish_errors = False

布尔值

启用或禁用错误事件的发布。

pybasedir = /usr/lib/python3.6/site-packages

字符串值

安装 Nova python 模块的目录。

此目录用于存储用于网络和远程控制台访问的模板文件。它还是其他配置选项的默认路径,需要持久保留 Nova 内部数据。不太可能从默认值中更改这个选项。

可能的值:

  • 到目录的完整路径。

相关选项:

  • state_path

quota_networks = 3

整数值

此选项控制可在每个项目(或每个租户)创建的专用网络数量。

相关选项:

  • enable_network_quota

弃用自:14.0.0

原因: 只有在使用 nova-network 和 nova-network 本身时,租户网络的 CRUD 操作才可用。

ram_allocation_ratio = None

浮点值

虚拟 RAM 与物理 RAM 分配比率。

此选项用于通过配置 MEMORY_MB 清单的分配比率来影响放置 API 选择的主机。此外,如果没有找到每个聚合设置,则 AggregateRamFilter (已弃用)将回退到此配置值。

  1. note::

    If this option is set to something *other than* `None` or `0.0`, the
    allocation ratio will be overwritten by the value of this option, otherwise,
    the allocation ratio will not change. Once set to a non-default value, it is
    not possible to "unset" the config to get back to the default behavior. If
    you want to reset back to the initial value, explicitly specify it to the
    value of `initial_ram_allocation_ratio`.

可能的值:

  • 任何有效的正整数或浮点值

相关选项:

  • initial_ram_allocation_ratio

rate_limit_burst = 0

整数值

每个 rate_limit_interval 的最大记录消息数。

rate_limit_except_level = CRITICAL

字符串值

速率限制使用的日志级别名称:CRITICAL, ERROR, INFO, WARNING, DEBUG 或空字符串。级别大于或等于 rate_limit_except_level 的日志不会被过滤。空字符串表示过滤所有级别。

rate_limit_interval = 0

整数值

日志速率限制的时间间隔(秒数)。

reboot_timeout = 0

整数值

自动重启实例的时间间隔。

在进行软重启时,客户机内核可能会完全挂起,从而导致软重启任务不会完成。如果将此选项设置为时间段(以秒为单位),如果实例一直处于重启状态超过 N 秒,则会自动硬重启实例。

可能的值:

  • 0:禁用选项(默认)。
  • 任何正整数(以秒为单位):启用该选项。

reclaim_instance_interval = 0

整数值

重新声明已删除实例的时间间隔。

大于 0 的值将启用实例的 SOFT_DELETE。这个选项决定要删除的服务器是否将进入 SOFT_DELETED 状态。如果这个值大于 0,则删除的服务器不会立即删除,而是会被放入队列中,直到它太旧(删除的时间大于 reclaim_instance_interval)。可以使用恢复操作从删除队列恢复服务器。如果删除的服务器大于 reclaim_instance_interval 的值,它将由计算服务中的定期任务删除。

请注意,此选项是从 API 和计算节点读取的,且必须全局设置,否则服务器可以放入 API 中的软删除状态,并且永远不会在计算节点上实际重新声明(删除)。

可能的值:

  • 任何大于 0 的正整数(以秒为单位)都将启用这个选项。
  • 任何值 IANA0 将禁用该选项。

record = None

字符串值

用于存储在此主机上运行的代理服务(如 VNC、spice、串行)接收和发送的 websocket 帧的文件名。如果没有设置,则不会进行记录。

remove_unused_base_images = True

布尔值

应删除未使用的基础镜像?

remove_unused_original_minimum_age_seconds = 86400

整数值

未使用的未恢复的基础镜像不会被删除。

report_interval = 10

整数值

指示给定 hypervisor 上服务状态的频率的秒数。Nova 需要知道这一点以确定部署的整体健康状况。

相关选项:

  • service_down_time report_interval 应该小于 service_down_time。如果 service_down_time 小于 report_interval,则服务会定期被视为 down,因为它们报告很少很少。

rescue_timeout = 0

整数值

在未恢复实例处于 RESCUE 前等待的时间间隔。

可能的值:

  • 0:禁用选项(默认)
  • 任何正整数(以秒为单位):启用该选项。

reserved_host_cpus = 0

整数值

为主机进程保留的主机 CPU 数量。

主机资源使用量从计算节点上运行的 nova-compute 持续报告给调度程序。这个值用于决定报告到放置的 reserved 值。

如果定义了 [compute] cpu_shared_set[compute] cpu_dedicated_set 配置选项,则无法设置此选项。定义这些选项时,未包含在这些值中的任何主机 CPU 都被视为为主机保留。

可能的值:

  • 任何正整数,代表主机要保留的物理 CPU 数量。

相关选项:

  • [compute] cpu_shared_set
  • [compute] cpu_dedicated_set

reserved_host_disk_mb = 0

整数值

以 MB 为单位的磁盘资源量,以便它们始终可用于主机。磁盘用量报告的信息来自计算节点上运行的 nova-compute 的调度程序。要防止磁盘资源被视为可用,可以使用此选项为该主机保留磁盘空间。

可能的值:

  • 任何正整数,以 MB 为单位为主机保留磁盘量。

reserved_host_memory_mb = 512

整数值

为主机保留的内存量(以 MB 为单位),以便始终可用于主机进程。主机资源使用量从计算节点上运行的 nova-compute 持续报告给调度程序。要防止主机内存被视为可用,此选项用于为主机保留内存。

可能的值:

  • 任何正整数,以 MB 为单位为主机保留的内存量。

reserved_huge_pages = None

字典值

每个 NUMA 主机单元要保留的大/大内存页面数量。

可能的值:

  • 有效的 key=value 列表,它反映了 NUMA 节点 ID、页大小

    (默认单位为 KiB)以及要保留的页数。例如:

    reserved_huge_pages = node:0,size:2048,count:64 reserved_huge_pages = node:1,size:1GB,count:1

    In this example we are reserving on NUMA node 0 64 pages of 2MiB
    and on NUMA node 1 1 page of 1GiB.

resize_confirm_window = 0

整数值

在 N 秒后自动确认调整大小。

大小调整功能将在调整大小前保存现有服务器。调整大小完成后,请求用户来确认调整大小。用户有机会确认或恢复所有更改。确认调整大小会删除原始服务器,并将服务器状态从调整大小改为 active。将此选项设置为时间段(以秒为单位),如果服务器大小超过该时间,则会自动确认大小。

可能的值:

  • 0:禁用选项(默认)
  • 任何正整数(以秒为单位):启用该选项。

resize_fs_using_block_device = False

布尔值

通过块设备启用文件系统大小。

如果启用,请尝试通过块设备访问镜像来调整文件系统大小。这由主机完成,如果镜像包含最新版本的 cloud-init,可能不需要这样做。可能的机制需要 nbd 驱动程序(用于 qcow 和 raw)或 loop (用于 raw)。

resume_guests_state_on_host_boot = False

布尔值

此选项指定是否在主机重启前启动运行的客户端。它确保 Nova 计算节点上的所有实例在每次计算节点引导时都会恢复其状态。

rootwrap_config = /etc/nova/rootwrap.conf

字符串值

rootwrap 配置文件的路径。

root 打包程序的目标是允许特定于服务的非特权用户以 root 用户身份以安全的方式运行多个操作。此处使用的配置文件必须与 sudoers 条目中定义的配置文件匹配。

routing_source_ip = $my_ip

字符串值

网络主机的公共 IP 地址。

这在创建 SNAT 规则时使用。

可能的值:

  • 任何有效的 IP 地址

相关选项:

  • force_snat_range

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

rpc_conn_pool_size = 30

整数值

RPC 连接池的大小。

rpc_response_timeout = 60

整数值

等待调用的响应的秒数。

run_external_periodic_tasks = True

布尔值

某些定期任务可以在单独的进程中运行。我们是否应该在此处运行它们?

running_deleted_instance_action = reap

字符串值

计算服务定期检查数据库中删除但保持在计算节点上运行的实例。以上选项允许在识别此类实例时执行操作。

相关选项:

  • running_deleted_instance_poll_interval
  • running_deleted_instance_timeout

running_deleted_instance_poll_interval = 1800

整数值

运行之间等待的时间(以秒为单位)进行清理操作。如果设置为 0,则以上检查将被禁用。如果 "running_deleted_instance _action" 设置为 "log" 或 "reap",则必须设置大于 0 的值。

可能的值:

  • 任何正整数(以秒为单位)都会启用该选项。
  • 0:禁用该选项。
  • 1800: 默认值。

相关选项:

  • running_deleted_instance_action

running_deleted_instance_timeout = 0

整数值

等待在数据库中标记为已删除的实例的时间间隔(以秒为单位)有资格进行清理。

可能的值:

  • 任何正整数(以秒为单位)(默认为 0)。

相关选项:

  • "running_deleted_instance_action"

scheduler_instance_sync_interval = 120

整数值

发送调度程序的当前实例 UUID 列表之间的间隔,以验证其实例的视图是否与 nova 同步。

如果 CONF 选项 scheduler_tracks_instance_changes 是 False,则不会进行同步调用。因此,更改此选项将无效。

如果没有同步情况非常常见,则可以增加这个间隔,以减少发送的 RPC 消息数量。同样,如果同步问题成为问题,可以降低间隔以更频繁地检查。

可能的值:

  • 0: 将以默认的定期间隔运行。
  • 任何值 < 0 :禁用该选项。
  • 任何正整数(以秒为单位)。

相关选项:

  • 如果 scheduler_tracks_instance_changes 设为 False,则此选项不会影响。

send_arp_for_ha = False

布尔值

为 True 时,当设备启动并且绑定浮动 IP 地址时,将发送 arp 消息,以确保计算主机上的 arp 缓存是最新的。

相关选项:

  • send_arp_for_ha_count

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

send_arp_for_ha_count = 3

整数值

当将 arp 消息配置为发送时,它们将发送计数设置为此选项的值。当然,如果这设为零,则不会发送 arp 消息。

可能的值:

  • 任何大于或等于 0 的整数

相关选项:

  • send_arp_for_ha

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

service_down_time = 60

整数值

从上一次检查服务开始的最大时间(以秒为单位)

每个计算节点会根据指定的报告间隔定期更新其数据库状态。如果计算节点没有更新超过 service_down_time 的状态,则计算节点将被视为 down。

相关选项:

  • report_interval (service_down_time 不应小于 report_interval)
  • scheduler.periodic_task_interval

servicegroup_driver = db

字符串值

此选项指定用于 servicegroup 服务的驱动程序。

nova 中的 ServiceGroup API 启用检查计算节点的状态。当运行 nova-compute 守护进程的计算 worker 启动时,它将调用 join API 来加入计算组。nova 调度程序等服务可以查询 ServiceGroup API,以检查节点是否处于活动状态。在内部,ServiceGroup 客户端驱动程序会自动更新计算 worker 状态。此服务有多个后端实现: Database ServiceGroup 驱动程序和 Memcache ServiceGroup 驱动程序。

相关选项:

  • service_down_time (自上一次检查服务开始的最大时间)

share_dhcp_address = False

布尔值

此值应该在创建网络时设置。

如果在 multi_host 模式中为 True,则所有计算主机共享相同的 dhcp 地址。用于 DHCP 的相同 IP 地址将添加到每个 nova-network 节点上,这仅对同一主机上的虚拟机可见。

此配置的使用已弃用,并可能会在 Mitaka 后在任何发行版本中删除。建议不要依赖此选项,应将显式值传递给 create_networks (),作为名为 share_address 的关键字参数。

弃用自:2014.2

账单原因:ChefNone

shelved_offload_time = 0

整数值

shelved 实例有资格从主机移除前的时间。

默认情况下,此选项设置为 0,在 shelve 操作后立即从 hypervisor 中删除 shelved 实例。否则,会为 shelved_offload_time (以秒为单位)的值保留实例,以便在 unshelve 操作期间保留,然后定期任务将在 shelved_offload_time 通过后从 hypervisor 中删除实例。

可能的值:

  • 0:在 shelved 后,实例将立即卸载。
  • 任何值 < 0:实例永远不会卸载。
  • 任何正整数(以秒为单位):实例将在卸载前指定的秒数。

shelved_poll_interval = 3600

整数值

轮询 shelved 实例的时间间隔。

定期任务会针对每个 shelved_poll_interval 数量运行,并检查是否有 shelved 实例。如果找到了 shelved 实例,基于 shelved_offload_time 配置值,它会卸载 shelved 实例。检查 shelved_offload_time 配置选项描述。

可能的值:

  • 任何值为 0 :禁用该选项。
  • 任何正整数(以秒为单位)。

相关选项:

  • shelved_offload_time

shutdown_timeout = 60

整数值

等待实例执行干净关闭的总时间(以秒为单位)。

它决定了虚拟机执行干净的关闭周期(以秒为单位)。在执行 stop、rescue 和 shelve 时,重建操作时,配置此选项可让虚拟机在实例关闭前执行受控的关闭。默认超时为 60 秒。值为 0 (零)表示客户机将立即关闭,且不为客户机操作系统清理机会。

可以使用 os_shutdown_timeout (镜像元数据设置)来为每个镜像覆盖超时值,允许不同类型的操作系统指定完全关闭它们所需的时间。

可能的值:

  • 正整数或 0 (默认值为 60)。

source_is_ipv6 = False

布尔值

如果源主机通过 IPv6 寻址,则设置为 True。

ssl_only = False

布尔值

不允许未加密的连接。

相关选项:

  • cert
  • key

state_path = $pybasedir

字符串值

维护 Nova 状态的顶级目录。

此目录用于存储 Nova 的内部状态。它被从中派生的各种配置选项使用。在某些情况下(如迁移)使用在多个计算主机间共享的存储位置(例如通过 NFS)。除非选项 instance _path 被覆盖,否则此目录可能会增长非常大。

可能的值:

  • 到目录的完整路径。默认为 pybasedir 中提供的值。

sync_power_state_interval = 600

整数值

在数据库和虚拟机监控程序之间同步电源状态的间隔。

Nova 检查其数据库中的实际虚拟机电源状态的时间间隔。如果用户关闭虚拟机,Nova 会更新 API 以报告虚拟机已关闭。如果意外打开虚拟机,Nova 将关闭虚拟机,使系统处于预期状态。

可能的值:

  • 0: 将以默认的定期间隔运行。
  • 任何值 < 0 :禁用该选项。
  • 任何正整数(以秒为单位)。

相关选项:

  • 如果 临时解决方案 组中的 handle_virt_lifecycle_events 为 false,这个选项为负数,那么管理程序和 Nova 数据库之间没有同步的实例必须手动同步。

sync_power_state_pool_size = 1000

整数值

用于同步电源状态的绿色线程数。

出于性能的原因,此选项可用于减少对虚拟机监控程序或具有实际实例电源状态的并发请求数,例如 Ironic。

可能的值:

  • 任何正整数,代表绿色线程数。

syslog-log-facility = LOG_USER

字符串值

syslog 工具接收日志行。如果设置了 log_config_append,则忽略这个选项。

teardown_unused_network_gateway = False

布尔值

确定如果网络处于 nova-network VLAN 模式且是多托管,则决定是否删除 VLAN 和网桥。

相关选项:

  • use_neutron
  • vpn_ip
  • fake_network

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

tempdir = None

字符串值

明确指定临时工作目录。

timeout_nbd = 10

整数值

等待 NBD 设备启动的时间(以秒为单位)。

transport_url = rabbit://

字符串值

用于连接到消息传递后端的网络地址和可选用户凭据,采用 URL 格式。预期格式为:

driver://[user:pass@]host:port[,[userN:passN@]hostN:portN]/virtual_host?query

示例:rabbit://rabbitmq:password@127.0.0.1:5672//

有关 URL 中字段的详情,请查看 oslo_messaging.TransportURL 文档 https://docs.openstack.org/oslo.messaging/latest/reference/transport.html

update_dns_entries = False

布尔值

当此选项为 True 时,每当必须更新 DNS 条目时,会向所有网络主机发送一个模糊消息,以便在多主机模式下更新其 DNS 条目。

相关选项:

  • use_neutron

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

update_resources_interval = 0

整数值

更新计算资源的时间间隔。

这个选项指定 update_available_resources 定期任务运行的频率。小于 0 的值表示完全禁用任务。保留为默认值 0 将导致其以默认的定期间隔运行。将它设置为任何正值将导致它大约以这个秒数运行。

可能的值:

  • 0: 将以默认的定期间隔运行。
  • 任何值 < 0 :禁用该选项。
  • 任何正整数(以秒为单位)。

use-journal = False

布尔值

为日志记录启用 journald。如果在 systemd 环境中运行,您可能需要启用日志支持。这样做将使用日志原生协议,除了日志消息外还包含结构化元数据。如果设置了 log_config_append,则忽略此选项。

use-json = False

布尔值

使用 JSON 格式进行日志记录。如果设置了 log_config_append,则忽略这个选项。

use-syslog = False

布尔值

使用 syslog 进行日志记录。现有 syslog 格式是 DEPRECATED,之后将更改为遵守 RFC5424。如果设置了 log_config_append,则忽略这个选项。

use_cow_images = True

布尔值

启用使用写时复制(cow)镜像。

QEMU/KVM 允许使用 qcow2 作为后备文件。通过禁用此功能,不使用后备文件。

use_eventlog = False

布尔值

将日志输出记录到 Windows 事件日志。

use_ipv6 = False

布尔值

在创建实例时分配 IPv6 和 IPv4 地址。

相关选项:

  • use_neutron:这仅适用于 nova-network。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

use_network_dns_servers = False

布尔值

当此选项设置为 True 时,在启动时用户指定的网络的 dns1 和 dns2 服务器将用于 DNS,以及 dns_server 选项中指定的任何。

相关选项:

  • dns_server

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

use_neutron = True

布尔值

启用 neutron 作为网络的后端。

确定是否使用 Neutron 或 Nova Network 作为后端。设置为 true 以使用 neutron。

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

use_rootwrap_daemon = False

布尔值

启动并启用需要以 root 特权运行命令的守护进程。这个选项通常在运行 nova 计算进程的节点上启用。

use_single_default_gateway = False

布尔值

当设置为 True 时,只有虚拟机的第一个 nic 从 DHCP 服务器获取其默认网关。

弃用自:16.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

use_stderr = False

布尔值

将输出记录到标准错误。如果设置了 log_config_append,则忽略这个选项。

vcpu_pin_set = None

字符串值

可用于 IaaS 资源的主机 CPU 掩码。

这个选项的行为取决于 [compute] cpu_dedicated_set 选项的定义,并影响 [compute] cpu_shared_set 选项的行为。

  • 如果定义了 [compute] cpu_dedicated_set,定义此选项将导致错误。
  • 如果没有定义 [compute] cpu_dedicated_set,此选项将用于决定 sVirt 资源的清单,并限制固定和未固定实例可以调度到的主机 CPU,覆盖 [compute] cpu_shared_set 选项。

可能的值:

  • 可以从中分配虚拟 CPU 的物理 CPU 编号列表。每个元素应该是单个 CPU 号、CPU 号范围,或者加上要从中排除的 CPU 号

    前面的范围。例如:
    vcpu_pin_set = "4-12,^8,15"

相关选项:

  • [compute] cpu_dedicated_set
  • [compute] cpu_shared_set

弃用自:20.0.0

原因: 此选项已被 ''[compute] cpu_dedicated_set'' 和 ''[compute] cpu_shared_set' 选项替代,它允许在同一主机上固定和未固定实例(用于 libvirt 驱动程序)的共存实例。

vif_plugging_is_fatal = True

布尔值

确定实例是否应该在 VIF 插入超时时引导或失败。

Nova 在实例调度后向 Neutron 发送端口更新,为 Neutron 提供必要的信息来完成端口设置。完成后,Neutron 通知 Nova 已完成设置,此时 Nova 会恢复实例的引导,因为现在应该存在网络连接。如果在给定间隔后未收到回复,则会出现超时。

此选项决定了 Nova 在 VIF 插入超时事件发生时做什么。启用后,实例将出错。禁用后,实例将继续在假设端口就绪时引导。

可能的值:

  • true:实例在 VIF 插入超时后会失败
  • false: 实例应在 VIF 插入超时后继续引导

vif_plugging_timeout = 300

整数值

Neutron VIF 插入事件消息的超时。

在继续或失败前等待 Neutron vif 插入事件到达的秒数(请参阅 vif_plugging_is_fatal)。

如果您要大规模处理超时失败,请考虑通过 [agent]/root_helper_daemon neutron 配置选项在 neutron 代理中运行 rootwrap。

相关选项:

  • vif_plugging_is_fatal - 如果 vif_plugging_timeout 设置为零,vif_plugging_is_fatal 为 False,则不应完全到达事件。

virt_mkfs = []

多值

临时设备的 mkfs 命令的名称。

格式为 <os_type>=<mkfs command>

vlan_interface = None

字符串值

这个选项是将要在其上构建 VLAN 网桥的虚拟机的虚拟接口名称。虽然它最初设计为仅由 nova-network 使用,但它也被 libvirt 和 xenapi 用于网桥接口名称。

请注意,如果 network_manager 的配置选项未设置为默认值 nova.network.manager.VlanManager,则此设置将被忽略。

可能的值:

  • 任何有效的虚拟接口名称,如 eth0

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。虽然此选项在使用 neutron 时生效,但它会错误地覆盖 neutron 提供的值,因此不应使用。

vlan_start = 100

整数值

这是用于专用网络的 VLAN 号。请注意,在创建网络时,如果已经分配了指定的数字,nova-network 将增加这个数字,直到找到可用的 VLAN。

请注意,只有在部署中使用 nova-network 而不是 Neutron 时使用这个选项。如果 network_manager 的配置选项未设置为默认值 nova.network.manager.VlanManager,则也会忽略它。

可能的值:

  • 1 到 4094 之间的任何整数。该范围以外的值将引发 ValueError 异常。

相关选项:

  • network_manager
  • use_neutron

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

volume_usage_poll_interval = 0

整数值

收集卷使用的时间间隔。

这个选项更新每个 volume_usage_poll_interval 秒数的卷使用缓存。

可能的值:

  • 任何大于 0 的正整数(以秒为单位)都将启用这个选项。
  • 任何值 IANA0 将禁用该选项。

vpn_ip = $my_ip

字符串值

因为 /os-cloudpipe API 已在 16.0.0 Pike 发行版本中删除,所以不再使用这个选项。这是 cloudpipe VPN 服务器的公共 IP 地址。默认为主机的 IP 地址。

请注意,只有在部署中使用 nova-network 而不是 Neutron 时使用这个选项。如果 network_manager 的配置选项未设置为默认值 nova.network.manager.VlanManager,则也会忽略它。

可能的值:

  • 任何有效的 IP 地址。默认值为 $my_ip (虚拟机的 IP 地址)。

相关选项:

  • network_manager
  • use_neutron
  • vpn_start

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

vpn_start = 1000

端口值

这是用作专用网络的第一个 VPN 端口的端口号。

请注意,只有在部署中使用 nova-network 而不是 Neutron 时使用这个选项。如果 network_manager 的配置选项未设置为 nova.network.manager.VlanManager 的默认值,或者在创建网络时指定 vpn_start 参数的值,则也会忽略它。

可能的值:

  • 代表有效端口号的任何整数。默认值为 1000。

相关选项:

  • use_neutron
  • vpn_ip
  • network_manager

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

watch-log-file = False

布尔值

使用日志处理程序来监视文件系统。当日志文件移动或移除此处理程序时,会打开带有指定路径即时的新日志文件。只有在指定了 log_file 选项并使用 Linux 平台时才有意义。如果设置了 log_config_append,则忽略这个选项。

web = /usr/share/spice-html5

字符串值

Web 服务器将提供内容的目录路径。

9.1.2. api

下表概述了 /etc/nova/nova.conf 文件中的 [api] 组下可用的选项。

表 9.1. api
配置选项 = 默认值类型Description

auth_strategy = keystone

字符串值

确定用于身份验证的策略。

compute_link_prefix = None

字符串值

此字符串前面放在到 OpenStack Compute API 链接中返回的普通 URL。如果为空(默认),则返回 URL 保持不变。

可能的值:

  • 任何字符串,包括空字符串(默认)。

config_drive_skip_versions = 1.0 2007-01-19 2007-03-01 2007-08-29 2007-10-10 2007-12-15 2008-02-01 2008-09-01

字符串值

为配置驱动器收集现有元数据时,对于没有出现在此选项中的所有版本,将返回 EC2 风格的元数据。从 IaaS 发行版本开始,可用版本有:

  • 1.0
  • 2007-01-19
  • 2007-03-01
  • 2007-08-29
  • 2007-10-10
  • 2007-12-15
  • 2008-02-01
  • 2008-09-01
  • 2009-04-04

选项采用单个字符串的格式,每个版本用空格分开。

可能的值:

  • 代表零个或更多版本的任何字符串,用空格分开。

dhcp_domain = novalocal

字符串值

用于为实例配置 FQDN 的域名。

这个选项有两个目的:

#.对于 neutronnova-network 用户,它用于为实例主机名配置完全限定域名。如果未设置,则仅配置没有域的主机名。(已弃用)对于 nova-network 用户,此选项配置用于 DHCP 服务器的 DNS 域。如需更多信息,请参阅 dnsmasq 工具的 --domain 选项。与 nova-network 本身一样,此目的已弃用。

可能的值:

  • 任何有效域名的字符串。

相关选项:

  • use_neutron

enable_instance_password = True

布尔值

通过相关的服务器 API 调用(如创建、重建、撤离或救援)返回实例密码。如果虚拟机监控程序不支持密码注入,则返回的密码将不正确,因此如果您的管理程序不支持密码注入,则将其设置为 False。

glance_link_prefix = None

字符串值

此字符串前面放在与 Glance 资源的链接中返回的普通 URL。如果为空(默认),则返回 URL 保持不变。

可能的值:

  • 任何字符串,包括空字符串(默认)。

instance_list_cells_batch_fixed_size = 100

整数值

如果 instance_list_cells_batch_strategy' 设置为 fixed,则控制从每个单元数据库请求的实例的批处理大小。此集成值将定义在每次请求批处理实例时为每个单元发布的限制,无论系统中的单元数量如何或任何其他因素。根据 instance_list_cells_batch_strategy 文档中的常规逻辑,每个批处理的最小值为 100 个记录。

相关选项:

  • instance_list_cells_batch_strategy
  • max_limit

instance_list_cells_batch_strategy = distributed

字符串值

这将控制 API 在大型实例列表操作期间以较小的批处理中查询单元数据库的方法。如果执行批处理,大型实例列表操作将初始从每个单元数据库请求部分的整体 API 限制,并将根据需要重新请求与每个单元相同的批处理大小(重新处理)。更大的批处理意味着 API 和数据库之间的按率较低,但可能会处理数据库中的结果,且不会返回给用户。任何策略都会生成至少 100 个记录的批处理,以避免用户在请求中造成很多 tiny 数据库查询。

相关选项:

  • instance_list_cells_batch_fixed_size
  • max_limit

instance_list_per_project_cells = False

布尔值

启用后,这会导致 API 仅查询租户已映射实例的单元数据库。这在每个列表前,在 API 数据库中需要额外的(fast)查询,但(以前)限制了必须查询的单元数据库数量以提供结果。如果您有少量单元,或者租户可能在所有单元中都有实例,则这应该是 False。如果您有许多单元,特别是当您将租户限制到这些单元的一小部分时,这应该是 True。

list_records_by_skipping_down_cells = True

布尔值

当设置为 False 时,如果出现如不响应的单元,则会导致 API 返回 500 错误。如果您希望 API 跳过单元格,并将来自 up cells 的结果返回为 True。

请注意,从 API 微版本 2.69 中,部署中没有临时条件,某些记录不可用,且结果可能会部分用于包含这些记录的某些请求。在这些情况下,这个选项将被忽略。如需更多信息,请参阅 Compute API 指南中的"处理关闭 Cells"部分 (https://docs.openstack.org/api-guide/compute/down_cells.html)。

local_metadata_per_cell = False

布尔值

表示 nova-metadata API 服务已按原样部署,以便在多cell 部署中拥有更好的性能和数据隔离。根据 neutron 的设置方式,用户应考虑使用此配置。如果您有 span 单元的网络,您可能需要全局运行 nova-metadata API 服务。如果您的网络分段在单元格内,您可以按单元运行 nova-metadata API 服务。当每个单元运行 nova-metadata API 服务时,您还应将每个 Neutron metadata-agent 配置为指向对应的 nova-metadata API 服务。

max_limit = 1000

整数值

因为查询可能会返回数以千计的项目,您可以通过设置此选项来限制单一响应中的最大项目数。

metadata_cache_expiration = 15

整数值

这个选项是缓存元数据的时间(以秒为单位)。当设置为 0 时,元数据缓存会被完全禁用;出于性能原因,通常不建议这样做。增加此设置可以提高负载过重时元数据 API 的响应时间。数值可能会增加内存用量,并导致主机元数据更改的时间更长。

neutron_default_tenant_id = default

字符串值

用于从 Neutron API 获取默认网络的租户 ID (也称为 项目 ID)。

相关选项:

  • use_neutron_default_nets

use_forwarded_for = False

布尔值

为 True 时,X-Forwarded-For 标头被视为规范远程地址。当 False (默认)时,会使用 remote_address 标头。

只有在有 HTML sanitizing proxy 时,才应启用此功能。

use_neutron_default_nets = False

布尔值

为 True 时,TenantNetworkController 将查询 Neutron API 以获取要使用的默认网络。

相关选项:

  • neutron_default_tenant_id

vendordata_dynamic_connect_timeout = 5

整数值

外部 REST 服务连接的最大等待时间。

可能的值:

  • 任何值大于 3 的整数 (TCP 数据包重新传输超时)。请注意,在这个等待期间,实例启动可能会被阻止,因此该值应该保持小。

相关选项:

  • vendordata_providers
  • vendordata_dynamic_targets
  • vendordata_dynamic_ssl_certfile
  • vendordata_dynamic_read_timeout
  • vendordata_dynamic_failure_fatal

vendordata_dynamic_failure_fatal = False

布尔值

是否应该无法获取动态厂商数据,从而导致实例启动?

相关选项:

  • vendordata_providers
  • vendordata_dynamic_targets
  • vendordata_dynamic_ssl_certfile
  • vendordata_dynamic_connect_timeout
  • vendordata_dynamic_read_timeout

vendordata_dynamic_read_timeout = 5

整数值

外部 REST 服务在连接后返回数据的最长时间。

可能的值:

  • 任何整数。请注意,实例启动在此等待期间被阻止,因此该值应该保持小。

相关选项:

  • vendordata_providers
  • vendordata_dynamic_targets
  • vendordata_dynamic_ssl_certfile
  • vendordata_dynamic_connect_timeout
  • vendordata_dynamic_failure_fatal

`vendordata_dynamic_ssl_certfile = `

字符串值

可选的证书文件或 CA 捆绑包的路径,以验证动态 vendordata REST 服务 ssl 证书。

可能的值:

  • 空字符串或有效证书文件的路径

相关选项:

  • vendordata_providers
  • vendordata_dynamic_targets
  • vendordata_dynamic_connect_timeout
  • vendordata_dynamic_read_timeout
  • vendordata_dynamic_failure_fatal

vendordata_dynamic_targets = []

列出值

动态 vendordata 供应商的目标列表。这些目标格式为 < name>@<url>

动态 vendordata 提供程序通过联系外部 REST 服务并查询它们以获取有关实例的信息来收集元数据。这将在 nova 开发人员引用的 vendordata.rst 文件中记录。

vendordata_jsonfile_path = None

字符串值

云供应商可以将自定义数据存储在厂商数据文件中,然后可通过元数据服务供实例使用,以及 config-drive 的渲染。这个默认类为 JsonFileVendorData,从 JSON 文件中加载此信息,其路径由此选项配置。如果没有由这个选项设置的路径,类会返回一个空的字典。

请注意,当使用它来向配置驱动器提供静态供应商数据时,必须使用此选项配置 nova-compute 服务,并且该文件必须可从 nova-compute 主机访问。

可能的值:

  • 代表数据文件的路径或空字符串(默认)的任何字符串。

vendordata_providers = ['StaticJSON']

列出值

vendordata 供应商列表。

vendordata 供应商是通过特定于其部署的 configdrive 和元数据来提供元数据。

有关实施 vendordata 动态端点的要求的更多信息,请参阅 nova 开发人员参考中的 vendordata.rst 文件。

相关选项:

  • vendordata_dynamic_targets
  • vendordata_dynamic_ssl_certfile
  • vendordata_dynamic_connect_timeout
  • vendordata_dynamic_read_timeout
  • vendordata_dynamic_failure_fatal

9.1.3. api_database

下表概述了 /etc/nova/nova.conf 文件中的 [api_database] 组下可用的选项。

表 9.2. api_database
配置选项 = 默认值类型Description

connection = None

字符串值

用于连接到数据库的 SQLAlchemy 连接字符串。不要为 nova-compute 服务设置它。

connection_debug = 0

整数值

SQL 调试信息的详细程度: 0=None, 100=Everything.

`connection_parameters = `

字符串值

连接时附加到连接 URL 的可选 URL 参数;将指定为 param1=value1&param2=value2&…​

connection_recycle_time = 3600

整数值

连接池中存在的时间超过这个秒数,在下次池中签出时,将被替换为一个新的连接。

connection_trace = False

布尔值

将 Python 堆栈跟踪作为注释字符串添加到 SQL 中。

max_overflow = None

整数值

如果设置,请将这个值用于带有 SQLAlchemy 的 max_overflow。

max_pool_size = None

整数值

在池中保持打开的最大 SQL 连接数。设置 0 表示没有限制。

max_retries = 10

整数值

在启动过程中的最大数据库连接重试数。设置为 -1 以指定无限重试计数。

mysql_sql_mode = TRADITIONAL

字符串值

用于 MySQL 会话的 SQL 模式。这个选项(包括默认选项)会覆盖任何 server-set SQL 模式。要使用服务器配置设置的任何 SQL 模式,请将其设置为 no 值。示例:mysql_sql_mode=

pool_timeout = None

整数值

如果设置,则使用带有 SQLAlchemy 的 pool_timeout 的值。

retry_interval = 10

整数值

打开 SQL 连接的重试间隔。

slave_connection = None

字符串值

用于连接到 slave 数据库的 SQLAlchemy 连接字符串。

sqlite_synchronous = True

布尔值

如果为 True,则 SQLite 将使用同步模式。

9.1.4. barbican

下表概述了 /etc/nova/nova.conf 文件中的 [barbican] 组下可用的选项。

表 9.3. barbican
配置选项 = 默认值类型Description

auth_endpoint = http://localhost/identity/v3

字符串值

使用此端点连接到 Keystone

barbican_api_version = None

字符串值

Barbican API 的版本,例如:"v1"

barbican_endpoint = None

字符串值

使用此端点连接到 Barbican,例如: "http://localhost:9311/"

barbican_endpoint_type = public

字符串值

指定端点的类型。允许的值有: public、private 和 admin

number_of_retries = 60

整数值

重试密钥创建完成轮询的次数

retry_delay = 1

整数值

重试轮询创建密钥完成前等待的秒数

verify_ssl = True

布尔值

指定不安全的 TLS (https)请求。如果为 False,则不会验证服务器的证书(如果为 True),则我们可以设置 verify_ssl_path 配置意味着同时。

verify_ssl_path = None

字符串值

要检查的捆绑包或 CA 证书的路径,或者为 None 用于查找并使用 verify_ssh 为 True 的证书。如果 verify_ssl 为 False,则忽略它。

9.1.5. 缓存

下表概述了 /etc/nova/nova.conf 文件中的 [cache] 组下可用的选项。

表 9.4. 缓存
配置选项 = 默认值类型Description

backend = dogpile.cache.null

字符串值

缓存后端模块。对于基于 eventlet 或具有数百个线程服务器的环境,建议使用池(oslo_cache.memcache_pool)的 Memcache。对于小于 100 个线程服务器的环境,建议使用 Memcached (dogpile.cache.memcached)或 Redis (dogpile.cache.redis)。带有单一服务器实例的测试环境可以使用 dogpile.cache.memory 后端。

backend_argument = []

多值

提供给 backend 模块的参数。指定要传递给 dogpile.cache 后端的每个参数指定这个选项。示例格式:"<argname>:<value>"。

config_prefix = cache.oslo

字符串值

为缓存区域构建配置字典的前缀。除非存在具有相同配置名称的另一个 dogpile.cache 区域,否则这不需要更改。

debug_cache_backend = False

布尔值

缓存后端的额外调试(缓存密钥、get/set/delete/etc 调用)。这只有在需要使用键/值查看特定的 cache-backend get/set/delete 调用时才有用。通常,这应该设为 false。

enabled = False

布尔值

缓存的全局切换。

expiration_time = 600

整数值

对于 dogpile.cache 区域中的任何缓存项目,默认 TTL (以秒为单位)。这适用于任何未为其定义显式缓存过期时间的缓存方法。

memcache_dead_retry = 300

整数值

重新尝试前 memcached 服务器被视为死的秒数。(仅限dog.cache.memcache 和 oslo_cache.memcache_pool 后端)。

memcache_pool_connection_get_timeout = 10

整数值

操作要等待 memcache 客户端连接的秒数。

memcache_pool_maxsize = 10

整数值

每个 memcached 服务器的最大开放连接数。(仅限oslo_cache.memcache_pool 后端)。

memcache_pool_unused_timeout = 60

整数值

在关闭前,到 memcached 的连接在池中保持未使用的秒数。(仅限oslo_cache.memcache_pool 后端)。

memcache_servers = ['localhost:11211']

列出值

memcache 服务器格式为 "host:port". (dogpile.cache.memcache 和 oslo_cache.memcache_pool backend)。

memcache_socket_timeout = 1.0

浮点值

每次调用服务器时的超时时间(dogpile.cache.memcache 和 oslo_cache.memcache_pool 后端)。

proxies = []

列出值

要导入的代理类,这会影响 dogpile.cache 后端函数的方式。请参阅有关 change-backend-behavior 的 dogpile.cache 文档。

tls_allowed_ciphers = None

字符串值

为使用 TLS 上下文创建的套接字设置可用的密码。它应该是 OpenSSL 密码列表格式的字符串。如果没有指定,则所有启用了 OpenSSL 的密码都将可用。

tls_cafile = None

字符串值

以 PEM 格式串联 CA 证书文件的路径,用来建立缓存服务器的真实性。如果 tls_enabled 为 False,则忽略这个选项。

tls_certfile = None

字符串值

到 PEM 格式的单个文件的路径,其中包含客户端证书以及建立证书真实性所需的任何 CA 证书。只有在需要客户端身份验证时才需要此文件。如果 tls_enabled 为 False,则忽略这个选项。

tls_enabled = False

布尔值

与缓存服务器委托时的 TLS 使用的全局切换。

tls_keyfile = None

字符串值

包含客户端私钥的单个文件的路径。否则,私钥将从 tls_certfile 中指定的文件中获取。如果 tls_enabled 为 False,则忽略这个选项。

9.1.6. cinder

下表概述了 /etc/nova/nova.conf 文件中的 [cinder] 组下可用的选项。

表 9.5. cinder
配置选项 = 默认值类型Description

auth-url = None

字符串值

身份验证 URL

auth_section = None

字符串值

从中加载插件特定选项的配置部分

auth_type = None

字符串值

要载入的身份验证类型

cafile = None

字符串值

在验证 HTTP 连接时要使用的 PEM 编码证书颁发机构。

catalog_info = volumev3::publicURL

字符串值

在服务目录中查找 cinder 时要匹配的 info。

& lt;service_name > 是可选的,默认省略,因为大多数部署中不应该这样做。

可能的值:

  • 格式是分开的值: <service_type>:<service_name>:<endpoint_type>

注意: 自 Nova Nova 17.0.0 Queens 版本,将不再支持 Cinder v2 API。

相关选项:

  • endpoint_template - 设置此选项将覆盖 catalog_info

certFile = None

字符串值

PEM 编码客户端证书文件

collect-timing = False

布尔值

收集每个API 调用计时信息。

cross_az_attach = True

布尔值

允许在不同可用区中的实例和卷之间附加。

如果为 False,则附加到实例的卷必须与 Nova 中的实例可用区在 Cinder 中与实例可用区相同的可用区。这也意味着,在从源不是"卷"的卷引导实例时应小心,因为 Nova 会尝试使用与分配给实例相同的可用区创建卷。如果 AZ 不在 Cinder 中(或 cinder.conf 中的 allow_availability_zone_fallback=False),则卷创建请求将失败,并且实例将失败。默认情况下,卷附加没有可用区限制。

default-domain-id = None

字符串值

用于 v3 和 v2 参数的可选域 ID。它将用于 v3 中的用户和项目域,并在 v2 身份验证中忽略。

default-domain-name = None

字符串值

用于 v3 API 和 v2 参数的可选域名。它将用于 v3 中的用户和项目域,并在 v2 身份验证中忽略。

domain-id = None

字符串值

范围到的域 ID

domain-name = None

字符串值

范围到的域名

endpoint_template = None

字符串值

如果设置了这个选项,它将使用此模板为 cinder 端点覆盖服务目录查找

可能的值:

注意: 自 Nova Nova 17.0.0 Queens 版本,将不再支持 Cinder v2 API。

相关选项:

  • catalog_info - 如果没有设置 endpoint_template,则使用 catalog_info。

http_retries = 3

整数值

cinderclient 应该在任何失败的 http 调用中重试的次数。0 表示连接仅尝试一次。将它设置为任意正整数意味着重试失败连接时,多次(例如将其设置为 3)意味着连接的总尝试将是 4。

可能的值:

  • 任何整数值。0 表示只尝试连接一次

insecure = False

布尔值

验证 HTTPS 连接。

keyfile = None

字符串值

PEM 编码客户端证书密钥文件

os_region_name = None

字符串值

此节点的区域名称。这在在服务目录中获取 URL 时使用。

可能的值:

  • 代表区域名称的任何字符串

password = None

字符串值

用户密码

project-domain-id = None

字符串值

包含项目的域 ID

project-domain-name = None

字符串值

包含项目的域名

project-id = None

字符串值

项目 ID 的范围

project-name = None

字符串值

范围到的项目名称

split-loggers = False

布尔值

将请求记录到多个日志记录器。

system-scope = None

字符串值

系统操作范围

tenant-id = None

字符串值

租户 ID

tenant-name = None

字符串值

租户名称

timeout = None

整数值

http 请求的超时值

trust-id = None

字符串值

信任 ID

user-domain-id = None

字符串值

用户的域 ID

user-domain-name = None

字符串值

用户的域名

user-id = None

字符串值

用户 ID

username = None

字符串值

用户名

9.1.7. Compute

下表概述了 /etc/nova/nova.conf 文件中的 [compute] 组下可用的选项。

表 9.6. Compute
配置选项 = 默认值类型Description

consecutive_build_service_disable_threshold = 10

整数值

启用向调度程序报告构建失败。

任何非零值都将启用向调度程序发送构建失败统计,供 BuildFailureWeigher 使用。

可能的值:

  • 任何正整数都启用报告构建失败。
  • 禁用报告构建失败。

相关选项:

  • [filter_scheduler]/build_failure_weight_multiplier

cpu_dedicated_set = None

字符串值

可用于 PCPU 资源的主机 CPU 掩码。

这个选项的行为会影响已弃用的 vcpu_pin_set 选项的行为。

  • 如果定义了这个选项,定义 vcpu_pin_set 将导致错误。
  • 如果没有定义此选项,则使用 vcpu_pin_set 来确定 sVirt 资源的清单,并限制固定和未固定实例可以调度到的主机 CPU。

vcpu_pin_set 被删除时,将在以后的版本中简化此行为。

可能的值:

  • 实例可从中分配的、以逗号分隔的物理 CPU 号列表。每个元素应该是单个 CPU 号、CPU 号范围,或者加上要从中排除的 CPU 号

    前面的范围。例如:
    cpu_dedicated_set = "4-12,^8,15"

相关选项:

  • [compute] cpu_shared_set :这是定义应从中分配 sVirt 资源的位置的计数器选项。
  • vcpu_pin_set :此选项部分替换的传统选项。

cpu_shared_set = None

字符串值

可用于 sVirt 资源和卸载仿真程序线程的主机 CPU 掩码。

这个选项的行为取决于已弃用的 vcpu_pin_set 选项的定义。

  • 如果没有定义 vcpu_pin_set,则使用 [compute] cpu_shared_set 来提供 sVirt 清单,并确定未固定实例可以调度到的主机 CPU。它还用于确定实例仿真程序线程应卸载到的主机 CPUS,用于配置了共享仿真器线程策略(hw : emulator_threads_policy=share)。
  • 如果定义了 vcpu_pin_set,则 [compute] cpu_shared_set 将只用于决定主机 CPU,仿真程序线程应该被卸载到使用 share 仿真程序线程策略(hw:emulator_threads_policy=share)的实例。vcpu_pin_set 将用于提供 IaaS 清单,并确定固定和未固定实例可以调度到的主机 CPU。

vcpu_pin_set 被删除时,将在以后的版本中简化此行为。

可能的值:

  • 实例可从中分配的、以逗号分隔的物理 CPU 号列表。每个元素应该是单个 CPU 号、CPU 号范围,或者加上要从中排除的 CPU 号

    前面的范围。例如:
    cpu_shared_set = "4-12,^8,15"

相关选项:

  • [compute] cpu_dedicated_set :这是定义应从中分配 PCPU 资源的位置的计数器选项。
  • vcpu_pin_set :一个传统选项,其定义可能会更改此选项的行为。

image_type_exclude_list = []

列出值

此计算节点不支持的镜像格式列表。

在某些情况下,可能需要让计算节点拒绝支持昂贵的或复杂的镜像格式。这种因素由调度程序决定在使用给定镜像引导时要选择哪些计算节点。

可能的值:

  • 任何 glance 镜像 disk_format 名称(例如 rawqcow2 等)

相关选项:

  • [scheduler]query_placement_for_image_type_support - 根据支持的镜像类型启用过滤计算,这是必需的。

live_migration_wait_for_vif_plug = True

布尔值

确定源计算主机是否应该等待来自(neutron)网络服务的 network-vif-plugged 事件,然后再启动客户机到目标计算主机的实际传输。

请注意,这个选项在实时迁移的目标主机上读取。如果您在所有计算主机上设置这个选项,如果您通常使用相同的网络后端,则不必担心这一点。

在开始客户机的传输前,一些设置发生在目标计算主机上,包括插入虚拟接口。根据目标主机上的网络后端,可能会触发 network-vif-plugged 事件,然后在源计算主机接收,源计算可以等待该事件确保在目标主机上设置网络,然后再启动客户机传输。

  1. note::

    The compute service cannot reliably determine which types of virtual
    interfaces (`port.binding:vif_type`) will send `network-vif-plugged`
    events without an accompanying port `binding:host_id` change.
    Open vSwitch and linuxbridge should be OK, but OpenDaylight is at least
    one known backend that will not currently work in this case, see bug
    https://launchpad.net/bugs/1755890 for more details.

可能的值:

  • true :在启动客户机传输前等待 网络插入 的事件
  • false :不要在启动客户机传输前等待 network-vif-plugged 事件(这是传统行为)

相关选项:

  • [DEFAULT]/vif_plugging_is _fatal: 如果 live_migration_wait_for _vif_plug 为 True,则 vif_plugging_timeout 大于 0,并且达到超时时,实时迁移过程将失败,但客户机传输不会开始到目标主机
  • [DEFAULT]/vif_plugging_timeout: 如果 live_migration_wait_for_vif_plug 为 True,这会控制超时前等待的时间,如果 vif_plugging_is_fatal 为 True,或者继续实时迁移

max_concurrent_disk_ops = 0

整数值

将并行进行的并发磁盘密集型操作数(glance 镜像下载、镜像格式转换等)。如果设置过高,则响应时间将会受到影响。默认值为 0 表示没有限制。

max_disk_devices_to_attach = -1

整数值

允许附加到单个服务器的最大磁盘设备数。请注意,服务器支持的磁盘数量取决于所使用的总线。例如,ide 磁盘总线限制为 4 个附加的设备。配置的最大值是在服务器创建、重建、撤离、取消关闭、实时迁移和附加卷期间强制执行。

通常,磁盘总线是从设备类型或磁盘设备自动决定的,以及虚拟化类型。但是,磁盘总线也可以通过块设备映射或镜像属性来指定。有关在块设备映射中指定磁盘总线的更多信息,请参阅 :doc:/user/block-device-mapping 中的 disk_bus 字段,有关 hw_disk_bus 镜像属性的更多信息,请参阅 https://docs.openstack.org/glance/latest/admin/useful-image-properties.html

在托管服务器的计算服务中更改 [compute]/max_disk_devices_to_attach 的 Operator 应该注意,如果最大小于已附加到服务器的设备数,则可能会导致重新构建失败。例如,如果服务器 A 附加了 26 个设备,并且运算符将 [compute]/max_disk_devices_to_attach 更改为 20,则对服务器 A 的请求将失败,并进入 ERROR 状态,因为已附加了 26 个设备并超过 20 的新配置的最大值。

Operator 设置 [compute]/max_disk_devices_to_attach 也应该注意,在冷迁移期间,配置的最大值只会原位强制执行,且目的地不会在移动前检查。这意味着,如果运维人员在计算主机 A 上设置了最多 26 个,在计算主机 B 上设置了最多 20 个,则从计算主机 A 中的一个附加了 26 个设备的主机冷迁移到计算主机 B 将成功。然后,当服务器在计算主机 B 上后,重建服务器的后续请求将失败,并进入 ERROR 状态,因为已附加了 26 个设备,并在计算主机 B 上超过配置的最大 20 个。

在 shelved 卸载服务器上不会强制配置的最大值,因为它们没有计算主机。

  1. 警告:如果此选项被设置为 0,nova-compute 服务将无法启动,因为 0 磁盘设备是一个无效的配置,可防止实例能够引导。

可能的值:

  • -1 表示无限
  • 任何整数 >= 1 代表允许的最大值。值 0 将导致 nova-compute 服务无法启动,因为 0 磁盘设备是无效的配置,可防止实例无法引导。

resource_provider_association_refresh = 300

整数值

更新计算节点资源提供程序清单、聚合和特征的 nova-compute 缓存的时间间隔。

此选项指定尝试更新不同节点本地缓存中提供程序清单、聚合和特征之间的秒数。

值为零可完全禁用缓存刷新。

通过向计算进程发送 SIGHUP,以便随时清除缓存,从而导致下一次数据被访问时重新填充缓存。

可能的值:

  • 任何正整数(以秒为单位),或零来禁用刷新。

shutdown_retry_interval = 10

整数值

在向实例重新发送 ACPI 关闭信号前等待的时间(以秒为单位)。

通过 shutdown_timeout 设置等待的总时间。

可能的值:

  • 任何大于 0 的整数(以秒为单位

相关选项:

  • shutdown_timeout

9.1.8. 编排器

下表概述了 /etc/nova/nova.conf 文件中的 [conductor] 组下可用的选项。

表 9.7. 编排器
配置选项 = 默认值类型Description

Worker = None

整数值

OpenStack Conductor 服务的 worker 数量。默认值为可用的 CPU 数量。

9.1.9. 控制台

下表概述了 /etc/nova/nova.conf 文件中的 [console] 组下可用的选项。

表 9.8. 控制台
配置选项 = 默认值类型Description

allowed_origins = []

列出值

在控制台 websocket 代理中添加允许的源列表,以允许来自其他原始主机名的连接。Websocket 代理与主机标头与原始标头匹配,以防止跨站点请求。此列表指定原始标头中是否允许 host 以外的任何值。

可能的值:

  • 一个列表,其中每个元素都是允许的原始卷主机名,否则有一个空列表

ssl_ciphers = None

字符串值

OpenSSL 密码首选项字符串,用于指定允许客户端 TLS 连接的密码。例如:

ssl_ciphers = "kEECDH+aECDSA+AES:kEECDH+AES+aRSA:kEDH+aRSA+AES"

有关 密码 首选项字符串格式和允许的值的详情,请查看 OpenSSL 密码命令的手册页:

https://www.openssl.org/docs/man1.1.0/man1/ciphers.html

相关选项:

  • [DEFAULT] 证书
  • [DEFAULT] 键

ssl_minimum_version = default

字符串值

允许的 SSL/TLS 协议版本。

相关选项:

  • [DEFAULT] 证书
  • [DEFAULT] 键

9.1.10. consoleauth

下表概述了 /etc/nova/nova.conf 文件中的 [consoleauth] 组下可用的选项。

表 9.9. consoleauth
配置选项 = 默认值类型Description

token_ttl = 600

整数值

控制台身份验证令牌的生命周期(以秒为单位)。

控制台身份验证令牌用于授权用户的控制台访问权限。身份验证令牌生存时间超过实时数后,令牌将被视为过期。然后,过期的令牌会被删除。

9.1.11. CORS

下表概述了 /etc/nova/nova.conf 文件中的 [cors] 组下可用的选项。

表 9.10. CORS
配置选项 = 默认值类型Description

allow_credentials = True

布尔值

指明实际请求可以包含用户凭证

allow_headers = ['X-Auth-Token', 'X-Openstack-Request-Id', 'X-Identity-Status', 'X-Roles', 'X-Service-Catalog', 'X-User-Id', 'X-Tenant-Id']

列出值

指定在实际请求过程中可以使用哪些标头字段名称。

allow_methods = ['GET', 'PUT', 'POST', 'DELETE', 'PATCH']

列出值

指定在实际请求过程中可以使用哪些方法。

allowed_origin = None

列出值

指明此资源是否可以与请求"origin"标头中收到的域共享。格式:"<protocol>://<host>[:<port>]",没有尾部斜杠。示例: https://horizon.example.com

expose_headers = ['X-Auth-Token', 'X-Openstack-Request-Id', 'X-Subject-Token', 'X-Service-Token']

列出值

指明哪些标头可以安全地向 API 公开。默认为 HTTP Simple Headers。

max_age = 3600

整数值

CORS preflight 请求的最大缓存年龄。

9.1.12. 数据库

下表概述了 /etc/nova/nova.conf 文件中的 [database] 组下可用的选项。

表 9.11. 数据库
配置选项 = 默认值类型Description

backend = sqlalchemy

字符串值

用于数据库的后端。

connection = None

字符串值

用于连接到数据库的 SQLAlchemy 连接字符串。

connection_debug = 0

整数值

SQL 调试信息的详细程度: 0=None, 100=Everything.

`connection_parameters = `

字符串值

连接时附加到连接 URL 的可选 URL 参数;将指定为 param1=value1&param2=value2&…​

connection_recycle_time = 3600

整数值

连接池中存在的时间超过这个秒数,在下次池中签出时,将被替换为一个新的连接。

connection_trace = False

布尔值

将 Python 堆栈跟踪作为注释字符串添加到 SQL 中。

db_inc_retry_interval = True

布尔值

如果为 True,将数据库操作的重试间隔增加到 db_max_retry_interval。

db_max_retries = 20

整数值

在引发错误前,连接错误或死锁错误时的最大重试。设置为 -1 以指定无限重试计数。

db_max_retry_interval = 10

整数值

如果设置了 db_inc_retry_interval,则数据库操作的重试间隔的秒数。

db_retry_interval = 1

整数值

数据库事务重试间隔的秒数。

max_overflow = 50

整数值

如果设置,请将这个值用于带有 SQLAlchemy 的 max_overflow。

max_pool_size = 5

整数值

在池中保持打开的最大 SQL 连接数。设置 0 表示没有限制。

max_retries = 10

整数值

在启动过程中的最大数据库连接重试数。设置为 -1 以指定无限重试计数。

mysql_enable_ndb = False

布尔值

如果为 True,则透明地启用对处理 MySQL 集群(NDB)的支持。

mysql_sql_mode = TRADITIONAL

字符串值

用于 MySQL 会话的 SQL 模式。这个选项(包括默认选项)会覆盖任何 server-set SQL 模式。要使用服务器配置设置的任何 SQL 模式,请将其设置为 no 值。示例:mysql_sql_mode=

pool_timeout = None

整数值

如果设置,则使用带有 SQLAlchemy 的 pool_timeout 的值。

retry_interval = 10

整数值

打开 SQL 连接的重试间隔。

slave_connection = None

字符串值

用于连接到 slave 数据库的 SQLAlchemy 连接字符串。

sqlite_synchronous = True

布尔值

如果为 True,则 SQLite 将使用同步模式。

use_db_reconnect = False

布尔值

启用在连接丢失时重新连接的数据库的实验性使用。

use_tpool = False

布尔值

为所有 DB API 调用启用线程池的实验性使用

9.1.13. devices

下表概述了 /etc/nova/nova.conf 文件中的 [devices] 组下可用的选项。

表 9.12. devices
配置选项 = 默认值类型Description

enabled_vgpu_types = []

列出值

计算节点上启用 vGPU 类型。

有些 pGPU (如 NVIDIA GRID K1)支持不同的 vGPU 类型。用户可以使用这个选项指定可分配给客户端实例的启用 vGPU 类型列表。但请注意,Nova 仅在 Queens 版本中支持单一类型。如果指定了多个 vGPU 类型(作为用逗号分开的列表),则只使用第一个 vGPU 类型。例如,如下所示:

[devices]
enabled_vgpu_types = GRID K100,Intel GVT-g,MxGPU.2,nvidia-11

9.1.14. ephemeral_storage_encryption

下表概述了 /etc/nova/nova.conf 文件中的 [ephemeral_storage_encryption] 组下可用的选项。

表 9.13. ephemeral_storage_encryption
配置选项 = 默认值类型Description

cipher = aes-xts-plain64

字符串值

要使用的 cipher-mode 字符串。

用于加密临时存储的密码和模式。可用的密码模式组合集合取决于内核支持。根据 dm-crypt 文档,密码的格式应为:"<cipher>-<chainmode>-<ivmode>"。

可能的值:

  • /proc/crypto 中列出的任何加密选项。

enabled = False

布尔值

启用/禁用 LVM 临时存储加密。

key_size = 512

整数值

加密密钥长度(以位为单位)。

用于加密临时存储的加密密钥的位长度。在 XTS 模式中,只有一半的位用于加密密钥。

9.1.15. filter_scheduler

下表概述了 /etc/nova/nova.conf 文件中的 [filter_scheduler] 组下可用的选项。

表 9.14. filter_scheduler
配置选项 = 默认值类型Description

aggregate_image_properties_isolation_namespace = None

字符串值

主机聚合中使用的镜像属性命名空间。

可以配置镜像和主机,以便某些镜像只能调度到特定聚合中的主机。这通过以此选项的值开头来标识主机聚合上设置的元数据值来完成。如果主机是使用此类元数据键的聚合的一部分,请求规格中的镜像必须在其属性中包含该元数据的值,以便调度程序将主机视为可接受的。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。另请注意,只有在启用了 aggregate_image_properties_isolation 过滤器时,此设置才会影响调度。

可能的值:

  • 字符串,字符串与镜像属性命名空间对应

相关选项:

  • aggregate_image_properties_isolation_separator

aggregate_image_properties_isolation_separator = .

字符串值

镜像属性命名空间和名称的分隔符字符。

使用 aggregate_image_properties_isolation 过滤器时,相关的元数据密钥前缀为 aggregate_image_properties_isolation_namespace 配置选项中定义的命名空间,加上分隔符。此选项定义要使用的分隔符。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。另请注意,只有在启用了 aggregate_image_properties_isolation 过滤器时,此设置才会影响调度。

可能的值:

  • 字符串,字符串与镜像属性命名空间分隔符字符对应

相关选项:

  • aggregate_image_properties_isolation_namespace

available_filters = ['nova.scheduler.filters.all_filters']

多值

调度程序可以使用的过滤器。

nova 调度程序可以应用的过滤器类的未排序列表。仅使用 enabled_filters 选项指定的过滤器,但该选项中显示的任何过滤器都必须包含在此列表中。

默认情况下,这被设置为 nova 中包含的所有过滤器。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。

可能的值:

  • 一个零个或多个字符串的列表,每个字符串都对应于可用于选择主机的过滤器的名称

相关选项:

  • enabled_filters

build_failure_weight_multiplier = 1000000.0

浮点值

用于超过最近构建失败的主机的倍数。

此选项决定了在具有最新构建失败的计算节点上放置多少个权重。构建失败可能表示失败、错误配置或静默计算节点,并在调度期间避免它很有用。权重与计算节点最近出现的构建失败的数量不利。由于可用资源,这个值应设置为其他启用的 weighers 给出的偏移权重。要禁用通过最近失败次数来 weighing 计算主机,请将其设置为零。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。

可能的值:

  • 整数或浮点值,值对应于此自己的倍数比率。

相关选项:

  • [compute]/consecutive_build_service_disable_threshold - 必须为计算的非零,以报告完全考虑的数据。

cpu_weight_multiplier = 1.0

浮点值

CPU 权重倍比率。

用于权重空闲 vCPU 的倍数。负数表示堆栈而不是分散。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。另请注意,如果启用了 cpu weigher,此设置才会影响调度。

可能的值:

  • 整数或浮点值,值对应于此自己的倍数比率。

相关选项:

  • filter_scheduler.weight_classes :如果 weight_classes 设置为一个非默认值,则必须将这个 weigher 添加到启用的权重类列表中。

disk_weight_multiplier = 1.0

浮点值

磁盘权重倍数。

用于超过可用磁盘空间的倍数。负数字表示堆栈与分布。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。另请注意,如果启用了 磁盘,此设置才会影响调度。

可能的值:

  • 整数或浮点值,值对应于此自己的倍数比率。

enabled_filters = ['AvailabilityZoneFilter', 'ComputeFilter', 'ComputeCapabilitiesFilter', 'ImagePropertiesFilter', 'ServerGroupAntiAffinityFilter', 'ServerGroupAffinityFilter']

列出值

调度程序要使用的过滤器。

用于过滤主机的过滤器类名称的顺序列表。这些过滤器将按它们列出的顺序应用,以便首先放置限制性最严格的过滤器,以使过滤过程更高效。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。

可能的值:

  • 一个零个或多个字符串的列表,其中每个字符串都对应于要用于选择主机的过滤器的名称

相关选项:

  • 此选项中的所有过滤器 都必须 出现在 available_filters 选项中,否则将引发 SchedulerHostFilterNotFound 异常。

host_subset_size = 1

整数值

调度程序选择的最佳主机的子集。

新实例将调度到从 N best 主机的子集随机选择的主机上,其中 N 是此选项设置的值。

把它设置为大于 1 的值,可以减少多个调度程序进程处理类似请求的几率将选择同一主机,从而造成潜在的竞争条件。通过从最适合请求的 N 主机随机选择主机,可能会减少冲突的机会。但是,您设置这个值越大,所选主机对给定请求可能最最佳的。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。

可能的值:

  • 整数,整数对应于主机子集的大小。任何整数都有效,尽管任何小于 1 的值都将被视为 1

image_properties_default_architecture = None

字符串值

使用镜像属性过滤器时要使用的默认架构。

在使用 ImagePropertiesFilter 时,您可以定义一个默认的架构来优化用户的体验,并避免例如因为用户没有在 Glance 中指定 hw_architecture 属性,从而导致在 aarch64 计算节点上出现 x86_64 镜像的情况。

可能的值:

  • CPU 架构,如 x86_64、aarch64、s390x。

io_ops_weight_multiplier = -1.0

浮点值

IO 操作权重比率。

此选项决定了具有不同工作负载的主机如何干扰。负值(如默认值)将导致调度程序首选使用轻量级工作负载的主机,而正值将首选具有 heavier 工作负载的主机。查看它的另一个方法是,此选项的正值往往会将实例调度到已经忙碌的主机上,负值则往往会在更多主机间分发工作负载。绝对值(无论是正还是负)控制 io_ops weigher 相对于其他 Weighers 的强度量。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。另请注意,如果启用了 io_ops weigher,此设置才会影响调度。

可能的值:

  • 整数或浮点值,值对应于此自己的倍数比率。

isolated_hosts = []

列出值

只能运行某些镜像的主机列表。

如果需要将某些镜像限制为仅在某些指定主机上运行,请在此处列出这些主机名。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。另请注意,只有在启用了 IsolatedHostsFilter 过滤器时,此设置才会影响调度。

可能的值:

  • 字符串列表,其中每个字符串都对应于主机名称

相关选项:

  • scheduler/isolated_images
  • scheduler/restrict_isolated_hosts_to_isolated_images

isolated_images = []

列出值

只能在某些主机上运行的镜像的 UUID 列表。

如果需要将某些镜像限制为仅在某些指定主机上运行,请在此处列出这些镜像 UUID。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。另请注意,只有在启用了 IsolatedHostsFilter 过滤器时,此设置才会影响调度。

可能的值:

  • UUID 字符串列表,其中每个字符串都对应于镜像的 UUID

相关选项:

  • scheduler/isolated_hosts
  • scheduler/restrict_isolated_hosts_to_isolated_images

max_instances_per_host = 50

整数值

主机上可以存在的最大实例数。

如果您需要限制任何给定主机上的实例数量,请将此选项设置为您要允许的实例的最大数量。NumInstancesFilter 和 AggregateNumInstancesFilter 将拒绝任何至少具有此选项值的主机。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。另请注意,只有在启用了 NumInstancesFilterAggregateNumInstancesFilter 过滤器时,此设置才会影响调度。

可能的值:

  • 整数,整数对应于主机上可以调度的最大实例。

max_io_ops_per_host = 8

整数值

可以在主机上执行 IO 的实例数量。

执行 IO 的实例包括以下状态: build, resize, snapshot, migrate, rescue, unshve。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。另请注意,只有在启用了 io_ops_filter 过滤器时,此设置才会影响调度。

可能的值:

  • 整数,整数对应于可在任何给定主机上主动执行 IO 的实例的最大数量。

pci_weight_multiplier = 1.0

浮点值

PCI 设备关联性权重.

PCI 设备关联性权重根据主机上的 PCI 设备数量以及实例请求的 PCI 设备数量计算权重。必须启用 NUMATopologyFilter 过滤器,才能具有任何意义。如需更多信息,请参阅过滤器文档:

https://docs.openstack.org/nova/latest/user/filter-scheduler.html

可能的值:

  • 一个正整数或浮点值,该值对应于这个自己的倍数比率。

ram_weight_multiplier = 1.0

浮点值

RAM 权重倍比率。

此选项决定了如何超过或更少的可用 RAM 的主机。正值将导致调度程序优先选择具有更多可用 RAM 的主机,负数会导致调度程序优先使用具有较少可用 RAM 的主机。查看此选项的另一种方法是,此选项的正值往往会将实例分散到多个主机上,负值则往往在调度到较少使用的主机前尽可能填充(堆栈)主机。绝对值(无论是正还是负)控制 RAM weigher 相对于其他 Weighers 的强度。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。另请注意,如果启用了 ram weigher,此设置才会影响调度。

可能的值:

  • 整数或浮点值,值对应于此自己的倍数比率。

restrict_isolated_hosts_to_isolated_images = True

布尔值

防止在隔离的主机上构建非隔离镜像。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。另请注意,只有在启用了 IsolatedHostsFilter 过滤器时,此设置才会影响调度。即使如此,此选项不会影响隔离镜像的请求行为,这将 始终 仅限于隔离的主机。

相关选项:

  • scheduler/isolated_images
  • scheduler/isolated_hosts

shuffle_best_same_weighed_hosts = False

布尔值

启用将实例分散到具有相同最佳权重的主机之间。

当 host_subset_size 为 1 (默认),但有大量主机时,启用它很有用。这个场景在 Ironic 部署中很常见,其中通常会有许多具有相同权重的 baremetal 节点返回到调度程序。在这种情况下,启用此选项可减少重新调度事件的竞争和机会。同时,它将使实例打包(即使在未加重的情况下)减少密度。

soft_affinity_weight_multiplier = 1.0

浮点值

用于为组软关联性分配主机的倍数。

可能的值:

  • 非负整数或浮点值,其值对应于具有组软关联性的主机的权重倍。

soft_anti_affinity_weight_multiplier = 1.0

浮点值

用于为组 soft-anti-affinity 加权主机的倍数。

可能的值:

  • 非负整数或浮点值,其中值对应于组软反关联性的主机的权重倍。

track_instance_changes = True

布尔值

启用查询单个主机以获取实例信息。

调度程序可能需要有关主机上实例的信息,以评估其过滤器和 Weighers。此信息的最常见需求是(anti-) affinity 过滤器,这需要根据主机上已在运行的实例选择主机。

如果配置的过滤器和 weighers 不需要此信息,则禁用此选项将提高性能。当跟踪开销太重时,也可以禁用它,但这会导致类需要主机使用量数据来查询每个请求上的数据库。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。

注意

在多单元(v2)设置中,单元 MQ 与顶级分开,计算无法直接与调度程序通信。因此,在这种情况下无法启用这个选项。另请参阅 [workarounds]/disable_group_policy_check_upcall 选项。

weight_classes = ['nova.scheduler.weights.all_weighers']

列出值

调度程序将使用的 weighers。

只有通过过滤器的主机才会被驱除。任何主机的权重从 0 开始,并且通过添加或减去之前自己分配的权重来排序这些主机。权重可能会成为负数。一个实例将调度到 N 个最加权的主机,其中 N 是 scheduler_host_subset_size

默认情况下,这被设置为 Nova 中包含的所有 weighers。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。

可能的值:

  • 一个零个或多个字符串的列表,每个字符串都对应于用于选择主机的 weigher 的名称

9.1.16. Glance

下表概述了 /etc/nova/nova.conf 文件中的 [glance] 组下可用的选项。

表 9.15. Glance
配置选项 = 默认值类型Description

allowed_direct_url_schemes = []

列出值

可直接访问的 url 方案列表。

这个选项指定可通过 direct_url 直接下载的 url 方案列表。此 direct_URL 可以从镜像元数据中获取,供 nova 用于更有效地获取镜像。nova-compute 可在可以访问与 glance 相同的文件系统时从此中受益。

可能的值:

  • [file], Empty list (默认)

弃用自:17.0.0

原因: 这最初为 nova.image.download.file FileTransfer 扩展添加,该扩展已在 16.0.0 Pike 发行版本中删除。nova.image.download.modules 扩展点不会被维护,在生产云中没有显示其使用。

api_servers = None

列出值

nova 可用的 glance api 服务器端点列表。

HTTPS 用于基于 ssl 的 glance api 服务器。

注意

端点发现的首选机制是通过 keystoneauth1 加载选项。只有在需要多个端点且无法使用负载均衡器时,才使用 api_servers。

可能的值:

  • 形式为 "scheme://hostname:port[/path]" (例如 "http://10.0.1.0:9292" 或 "https://my.glance.server/image")的任何完全限定 url 列表。

cafile = None

字符串值

在验证 HTTP 连接时要使用的 PEM 编码证书颁发机构。

certFile = None

字符串值

PEM 编码客户端证书文件

collect-timing = False

布尔值

收集每个API 调用计时信息。

connect-retries = None

整数值

应该尝试连接错误的最大重试次数。

connect-retry-delay = None

浮点值

连接错误两次重试之间的延迟(以秒为单位)。如果没有设置,则使用最多 60 秒的指数重试,从 0.5 秒开始。

debug = False

布尔值

使用 glanceclient 启用或禁用调试日志。

default_trusted_certificate_ids = []

列出值

应该被信任的证书的证书 ID 列表。

可用作证书验证的可信证书 ID 的默认列表。如果用户提供带有实例 API 请求的可信证书 ID 列表,则此选项的值将被忽略。如果启用了签名验证和证书验证,以及用户不提供替代列表,则此选项的值将与实例数据保留。如果在启用了证书验证时留空,用户必须提供可信证书 ID 列表,否则证书验证将失败。

相关选项:

  • 如果启用了 verify_glance_signatures 和 enable_certificate_validation,则可以使用此选项的值。

enable_certificate_validation = False

布尔值

为镜像签名验证启用证书验证。

在镜像签名验证 nova 期间,首先将使用与实例关联的可信证书集合来验证镜像签名的有效性。如果证书验证失败,则不会执行签名验证,并且实例将放入错误状态。这为最终用户提供了更强大的保证镜像数据未修改且值得信任。如果禁用,镜像签名验证仍然可以发生,但最终用户不会保证用于生成镜像签名的签名证书仍被信任。

相关选项:

  • 只有在启用了 verify_glance_signatures 时,此选项才会生效。
  • 启用此选项时,可以使用 default_trusted_certificate_ids 的值。

弃用自:16.0.0

原因: 此选项旨在简化利用镜像签名验证的部署过渡。预期的状态长期是签名验证和证书验证,以便始终一起进行。

enable_rbd_download = False

布尔值

启用直接通过 RBD 下载 Glance 镜像。

允许计算主机直接从 Ceph 本地下载和缓存镜像,而不是从 Glance API 下载速度较慢。这可能会使下载几十到几百 GB 镜像所需的时间从几十分钟减少到及十秒,但这需要基于 Ceph 的部署并需要可以从计算节点访问到 Ceph。

相关选项:

  • [glance] rbd_user
  • [glance] rbd_connect_timeout
  • [glance] rbd_pool
  • [glance] rbd_ceph_conf

endpoint-override = None

字符串值

始终将此端点 URL 用于此客户端的请求。注意:应在此处指定未版本化的端点;若要请求特定的 API 版本,使用 version, min-version, 和/或 max-version 选项。

insecure = False

布尔值

验证 HTTPS 连接。

keyfile = None

字符串值

PEM 编码客户端证书密钥文件

num_retries = 3

整数值

启用 glance 操作重试。

指定在将镜像上传到 glance 中的 / 时重试次数。0 表示没有重试。

`rbd_ceph_conf = `

字符串值

要使用的 ceph 配置文件的路径。

相关选项:

  • 只有在 [glance] enable_rbd_download 设置为 True 时才会使用这个选项。

rbd_connect_timeout = 5

整数值

最初连接到集群时 RADOS 客户端超时(以秒为单位)。

相关选项:

  • 只有在 [glance] enable_rbd_download 设置为 True 时才会使用这个选项。

`rbd_pool = `

字符串值

Glance 镜像存储为 rbd 卷的 RADOS 池。

相关选项:

  • 只有在 [glance] enable_rbd_download 设置为 True 时才会使用这个选项。

`rbd_user = `

字符串值

用于访问存储在 rbd 卷的 Glance 镜像的 RADOS 客户端名称。

相关选项:

  • 只有在 [glance] enable_rbd_download 设置为 True 时才会使用这个选项。

region-name = None

字符串值

端点 URL 发现的默认 region_name。

service-name = None

字符串值

用于端点 URL 发现的默认 service_name。

service-type = image

字符串值

端点 URL 发现的默认 service_type。

split-loggers = False

布尔值

将请求记录到多个日志记录器。

status-code-retries = None

整数值

应该尝试检索 HTTP 状态代码的最大重试次数。

status-code-retry-delay = None

浮点值

对可分配状态代码进行两个重试之间的延迟(以秒为单位)。如果没有设置,则使用最多 60 秒的指数重试,从 0.5 秒开始。

timeout = None

整数值

http 请求的超时值

valid-interfaces = ['internal', 'public']

列出值

端点 URL 的首选接口列表。

verify_glance_signatures = False

布尔值

启用镜像签名验证。

Nova 使用 glance 中的镜像签名元数据,并在下载该镜像时验证已签名镜像的签名。如果无法验证镜像签名,或者镜像签名元数据不是不完整或不可用的,则 nova 不会引导镜像,而是将实例置于错误状态。这为最终用户提供了更强大的保证它们用来创建服务器的镜像数据的完整性。

相关选项:

  • key_manager 组中的选项,因为 key_manager 用于签名验证。
  • 以下 enable_certificate_validation 和 default_trusted_certificate_ids 都依赖于启用此选项。

9.1.17. guestfs

下表概述了 /etc/nova/nova.conf 文件中的 [guestfs] 组下可用的选项。

表 9.16. guestfs
配置选项 = 默认值类型Description

debug = False

布尔值

启用/禁用 guestfs 日志记录。

这将配置 guestfs 以调试消息并将其推送到 OpenStack 日志记录系统。当设置为 True 时,它会跟踪 libguestfs API 调用并启用详细的调试信息。要使用上述功能,必须安装 "libguestfs" 软件包。

相关选项:

由于 libguestfs 访问和修改由 libvirt 管理的虚拟机,因此应设置以下选项以授予对这些虚拟机的访问权限。

  • libvirt.inject_key
  • libvirt.inject_partition
  • libvirt.inject_password

9.1.18. Healthcheck

下表概述了 /etc/nova/nova.conf 文件中的 [healthcheck] 组下可用的选项。

表 9.17. Healthcheck
配置选项 = 默认值类型Description

backends = []

列出值

可执行健康检查并将信息作为请求的一部分报告的其他后端。

detailed = False

布尔值

在响应中显示更详细的信息。安全备注:启用此选项可能会公开有关被监控服务的敏感详情。务必验证它是否不会违反您的安全策略。

disable_by_file_path = None

字符串值

检查是否存在文件,以确定应用程序是否在端口上运行。DisableByFileHealthcheck 插件使用。

disable_by_file_paths = []

列出值

检查是否存在基于端口的文件,以确定应用程序是否在端口上运行。需要字符串的 "port:path" 列表。DisableByFilesPortsHealthcheck 插件使用。

path = /healthcheck

字符串值

响应 healtcheck 请求的路径。

9.1.19. hyperv

下表概述了 /etc/nova/nova.conf 文件中的 [hyperv] 组下可用的选项。

表 9.18. hyperv
配置选项 = 默认值类型Description

config_drive_cdrom = False

布尔值

将配置驱动器挂载为 CD 驱动器。

OpenStack 可以配置为将实例元数据写入配置驱动器,然后在实例引导前将其附加到实例。配置驱动器可作为磁盘驱动器(默认)或 CD 驱动器附加。

相关选项:

  • 这个选项在 force_config_drive 选项设置为 True,或者 REST API 调用创建实例时,则此选项具有 --config-drive=True 标志。
  • config_drive_format 选项必须设置为 iso9660,才能使用 CD 驱动器作为配置驱动器镜像。
  • 要将配置驱动器与 Hyper-V 搭配使用,您必须将 mkisofs_cmd 值设置为 mkisofs.exe 安装的完整路径。另外,您必须将 qemu_img_cmd 值设置为 qemu-img 命令安装的完整路径。
  • 您可以通过将 force_config_drive 选项设置为 True 来始终创建配置驱动器。

config_drive_inject_password = False

布尔值

将密码注入配置驱动器。

启用后,从配置驱动器镜像获取 admin 密码。

相关选项:

  • 当与通过 Hyper-V 启用配置驱动器使用的其他选项一起使用时,这个选项很有用,如 force_config_drive

dynamic_memory_ratio = 1.0

浮点值

动态内存比率

当设置为大于 1 的值时,启用动态内存分配(气球)。该值表示分配给实例的总 RAM 与其启动 RAM 量之间的比率。例如,对于 1024MB RAM 的实例,比率为 2.0,表示在启动时分配的 512MB RAM。

可能的值:

  • 1.0 :禁用动态内存分配(默认)。
  • 大于 1.0 的浮点值:启用分配总表示的 RAM 的分配,以便启动这个值。

enable_instance_metrics_collection = False

布尔值

启用实例指标集合

使用 Hyper-V 的指标 API 为实例启用指标集合。收集的数据可由其他应用程序和服务检索,例如:Chter。

enable_remotefx = False

布尔值

启用 RemoteFX 功能

这至少需要一个支持 Windows / Hyper-V Server 2012 R2 或更新版本的图形适配器的 DirectX 11 图形适配器,且必须启用 RDS-virtualization 功能。

具有 RemoteFX 的实例可使用以下类别额外规格来请求:

OS:分辨率.客户机虚拟机屏幕分辨率大小。可接受值
1024x768, 1280x1024, 1600x1200, 1920x1200, 2560x1600, 3840x2160

3840x2160 仅适用于 Windows / Hyper-V Server 2016。

OS:.客户机虚拟机数量。可接受值
[1, 4] - Windows / Hyper-V Server 2012 R2 [1, 8] - Windows / Hyper-V Server 2016

OS:vram。客户机 VM VRAM 数量。仅在 Windows / Hyper-V Server 2016 上可用。可接受值:

64, 128, 256, 512, 1024

`instances_path_share = `

字符串值

实例路径共享

映射到 "instances_path" dir 的 Windows 共享的名称,并由调整大小的功能将文件复制到目标主机。如果留空,则使用管理共享(隐藏网络共享),查找本地使用的相同"instances_path"。

可能的值:

  • "":将使用管理共享(默认)。
  • Windows 共享的名称。

相关选项:

  • "instances_path": 此处这个选项为空时将使用的目录。

iscsi_initiator_list = []

列出值

用于建立 iSCSI 会话的 iSCSI 启动器列表。

如果没有指定,Microsoft iSCSI initiator 服务将选择启动器。

limit_cpu_features = False

布尔值

限制 CPU 功能

这个标志需要支持实时迁移具有不同 CPU 功能的主机,并在实例创建过程中检查,以限制实例使用的 CPU 功能。

mounted_disk_query_retry_count = 10

整数值

挂载的磁盘查询重试计数

重试检查挂载磁盘的次数。查询运行直到可以找到设备或达到重试数为止。

可能的值:

  • 正整数值。建议大于 1 的值(默认值:10)。

相关选项:

  • 使用 "mounted_disk_query_retry_interval" 选项声明磁盘挂载重试之间的时间间隔。

mounted_disk_query_retry_interval = 5

整数值

挂载的磁盘查询重试间隔

检查挂载磁盘间隔(以秒为单位)。

可能的值:

  • 时间(默认值:5)。

相关选项:

  • 当 mount_disk_query_retry_count 大于 1 时,这个选项有意义。
  • 重试循环使用 mount_disk_query_retry_count 和 mounted_disk_query_retry_interval 配置选项运行。

power_state_check_timeframe = 60

整数值

电源状态检查时间线

要检查实例电源状态更改的时间框。此选项用于在指定时间段内通过 WMI 接口从 Hyper-V 获取实例的状态。

可能的值:

  • 时间周期(默认:60)。

power_state_event_polling_interval = 2

整数值

电源状态事件轮询间隔

实例电源状态更改事件轮询频率。将电源状态事件的监听程序间隔设置为给定值。这个选项增强了重启自身实例的内部生命周期通知。不太可能更改这个值。

可能的值:

  • 时间(默认:2)。

qemu_img_cmd = qemu-img.exe

字符串值

qemu-img 命令

某些镜像相关的操作需要 QEMU-img,如在不同镜像类型之间进行转换。您可以从 http://qemu.weilnetz.de/ 获得它,或安装 Cloudbase OpenStack Hyper-V Compute Driver (https://cloudbase.it/openstack-hyperv-driver/),这会自动为这个设置选项设置正确的路径。您可以提供 qemu-img.exe 的完整路径,或者在 PATH 环境变量中设置其路径,并将此选项保留为默认值。

可能的值:

  • qemu-img 可执行文件的名称,如果它与 nova-compute 服务相同,或者其路径位于 PATH 环境变量(默认)中。
  • qemu-img 命令的路径(DRIVELETTER:\PATH\TO\QEMU-IMG\COMMAND)。

相关选项:

  • 如果 config_drive_cdrom 选项为 False,qemu-img 将用于将 ISO 转换为 VHD,否则配置驱动器将保留 ISO。要将配置驱动器与 Hyper-V 搭配使用,您必须将 mkisofs_cmd 值设置为 mkisofs.exe 安装的完整路径。

use_multipath_io = False

布尔值

在附加 iSCSI 或 FC 磁盘时使用多路径连接。

这需要启用多路径 IO Windows 功能。MPIO 必须配置为声明这样的设备。

volume_attach_retry_count = 10

整数值

卷附加重试计数

重试附加卷的次数。卷附加会被重试,直到成功或达到给定重试次数。

可能的值:

  • 正整数值(默认值:10)。

相关选项:

  • 附加尝试之间的时间间隔使用 volume_attach_retry_interval 选项声明。

volume_attach_retry_interval = 5

整数值

卷附加重试间隔

卷附加尝试间隔,以秒为单位。

可能的值:

  • 时间(默认值:5)。

相关选项:

  • 当 volume_attach_retry_count 大于 1 时,这个选项有意义。
  • 重试循环使用 volume_attach_retry_count 和 volume_attach_retry_interval 配置选项运行。

vswitch_name = None

字符串值

外部虚拟交换机名称

Hyper-V Virtual Switch 是一个基于软件的第 2 层以太网网络交换机,可用于安装 Hyper-V 服务器角色。交换机包括以编程方式管理和可扩展功能,将虚拟机连接到虚拟网络和物理网络。另外,Hyper-V Virtual Switch 为安全性、隔离和服务级别提供策略强制。此配置选项表示的 vSwitch 必须是一个外部的(而不是内部或私有)。

可能的值:

  • 如果没有提供,则使用第一个可用 vswitches 列表。此列表通过 WQL 查询。
  • 虚拟交换机名称。

wait_soft_reboot_seconds = 60

整数值

等待软重启秒数

在进行软重启请求后等待实例关闭的秒数。如果实例没有在此窗口中关闭,我们回退到硬重启。

可能的值:

  • 时间(默认:60)。

9.1.20. ironic

下表概述了 /etc/nova/nova.conf 文件中的 [ironic] 组下可用的选项。

表 9.19. ironic
配置选项 = 默认值类型Description

api_max_retries = 60

整数值

请求冲突时要重试的次数。如果设置为 0,则只尝试一次,则不重试。

相关选项:

  • api_retry_interval

api_retry_interval = 2

整数值

重试请求前等待的秒数。

相关选项:

  • api_max_retries

auth-url = None

字符串值

身份验证 URL

auth_section = None

字符串值

从中加载插件特定选项的配置部分

auth_type = None

字符串值

要载入的身份验证类型

cafile = None

字符串值

在验证 HTTP 连接时要使用的 PEM 编码证书颁发机构。

certFile = None

字符串值

PEM 编码客户端证书文件

collect-timing = False

布尔值

收集每个API 调用计时信息。

connect-retries = None

整数值

应该尝试连接错误的最大重试次数。

connect-retry-delay = None

浮点值

连接错误两次重试之间的延迟(以秒为单位)。如果没有设置,则使用最多 60 秒的指数重试,从 0.5 秒开始。

domain-id = None

字符串值

范围到的域 ID

domain-name = None

字符串值

范围到的域名

endpoint-override = None

字符串值

始终将此端点 URL 用于此客户端的请求。注意:应在此处指定未版本化的端点;若要请求特定的 API 版本,使用 version, min-version, 和/或 max-version 选项。

insecure = False

布尔值

验证 HTTPS 连接。

keyfile = None

字符串值

PEM 编码客户端证书密钥文件

partition_key = None

字符串值

区分大小写的键,用于将此服务管理的一组节点限制为 Ironic 中具有匹配的 conductor_group 属性的一组节点。如果未设置,所有可用节点将有资格由该服务管理。请注意,将其设置为空字符串("")将与默认的编排器组匹配,它与保留选项未设置。

password = None

字符串值

用户密码

peer_list = []

列出值

使用这个 partition_key 配置值的所有 nova-compute 服务(包括此主机)的主机名列表。与 partition_key 值匹配的节点将在此处指定的所有服务之间分布。如果未设置 partition_key,这个选项将被忽略。

project-domain-id = None

字符串值

包含项目的域 ID

project-domain-name = None

字符串值

包含项目的域名

project-id = None

字符串值

项目 ID 的范围

project-name = None

字符串值

范围到的项目名称

region-name = None

字符串值

端点 URL 发现的默认 region_name。

serial_console_state_timeout = 10

整数值

等待节点串口控制台状态更改的超时(秒)。设置为 0 以禁用超时。

service-name = None

字符串值

用于端点 URL 发现的默认 service_name。

service-type = baremetal

字符串值

端点 URL 发现的默认 service_type。

split-loggers = False

布尔值

将请求记录到多个日志记录器。

status-code-retries = None

整数值

应该尝试检索 HTTP 状态代码的最大重试次数。

status-code-retry-delay = None

浮点值

对可分配状态代码进行两个重试之间的延迟(以秒为单位)。如果没有设置,则使用最多 60 秒的指数重试,从 0.5 秒开始。

system-scope = None

字符串值

系统操作范围

timeout = None

整数值

http 请求的超时值

trust-id = None

字符串值

信任 ID

user-domain-id = None

字符串值

用户的域 ID

user-domain-name = None

字符串值

用户的域名

user-id = None

字符串值

用户 ID

username = None

字符串值

用户名

valid-interfaces = ['internal', 'public']

列出值

端点 URL 的首选接口列表。

9.1.21. key_manager

下表概述了 /etc/nova/nova.conf 文件中的 [key_manager] 组下可用的选项。

表 9.20. key_manager
配置选项 = 默认值类型Description

auth_type = None

字符串值

要创建的身份验证凭证的类型。可能的值有 tokenpasswordkeystone_tokenkeystone_password。如果没有将上下文传递给凭证工厂,则需要此项。

auth_url = None

字符串值

使用此端点连接到 Keystone。

backend = barbican

字符串值

指定密钥管理器实现。选项是 "barbican" 和 "vault"。默认为 "barbican"。将支持之前使用 [key_manager]/api_class 设置的值。

domain_id = None

字符串值

域范围的域 ID。keystone_tokenkeystone_password auth_type 可选。

domain_name = None

字符串值

域范围的域名。keystone_tokenkeystone_password auth_type 可选。

fixed_key = None

字符串值

修复了密钥管理器返回的密钥,以十六进制为单位指定。

可能的值:

  • 空字符串或十六进制值中的键

password = None

字符串值

用于身份验证的密码。passwordkeystone_password auth_type 需要。

project_domain_id = None

字符串值

项目的域 ID。keystone_tokenkeystone_password auth_type 可选。

project_domain_name = None

字符串值

项目的域名。keystone_tokenkeystone_password auth_type 可选。

project_id = None

字符串值

项目范围的项目 ID。keystone_tokenkeystone_password auth_type 可选。

project_name = None

字符串值

项目范围的项目名称。keystone_tokenkeystone_password auth_type 可选。

reauthenticate = True

布尔值

如果当前令牌即将过期,允许获取新令牌。keystone_tokenkeystone_password auth_type 可选。

token = None

字符串值

用于身份验证的令牌。如果没有将上下文传递给凭证工厂,tokenkeystone_token auth_type 需要。

trust_id = None

字符串值

信任范围的信任 ID。keystone_tokenkeystone_password auth_type 可选。

user_domain_id = None

字符串值

用于身份验证的用户域 ID。keystone_tokenkeystone_password auth_type 可选。

user_domain_name = None

字符串值

用于身份验证的用户域名。keystone_tokenkeystone_password auth_type 可选。

user_id = None

字符串值

用于身份验证的用户 ID。keystone_tokenkeystone_password auth_type 可选。

username = None

字符串值

用于身份验证的用户名。密码 auth_type 需要。keystone_password auth_type 可选。

9.1.22. Keystone

下表概述了 /etc/nova/nova.conf 文件中的 [keystone] 组下可用的选项。

表 9.21. Keystone
配置选项 = 默认值类型Description

cafile = None

字符串值

在验证 HTTP 连接时要使用的 PEM 编码证书颁发机构。

certFile = None

字符串值

PEM 编码客户端证书文件

collect-timing = False

布尔值

收集每个API 调用计时信息。

connect-retries = None

整数值

应该尝试连接错误的最大重试次数。

connect-retry-delay = None

浮点值

连接错误两次重试之间的延迟(以秒为单位)。如果没有设置,则使用最多 60 秒的指数重试,从 0.5 秒开始。

endpoint-override = None

字符串值

始终将此端点 URL 用于此客户端的请求。注意:应在此处指定未版本化的端点;若要请求特定的 API 版本,使用 version, min-version, 和/或 max-version 选项。

insecure = False

布尔值

验证 HTTPS 连接。

keyfile = None

字符串值

PEM 编码客户端证书密钥文件

region-name = None

字符串值

端点 URL 发现的默认 region_name。

service-name = None

字符串值

用于端点 URL 发现的默认 service_name。

service-type = identity

字符串值

端点 URL 发现的默认 service_type。

split-loggers = False

布尔值

将请求记录到多个日志记录器。

status-code-retries = None

整数值

应该尝试检索 HTTP 状态代码的最大重试次数。

status-code-retry-delay = None

浮点值

对可分配状态代码进行两个重试之间的延迟(以秒为单位)。如果没有设置,则使用最多 60 秒的指数重试,从 0.5 秒开始。

timeout = None

整数值

http 请求的超时值

valid-interfaces = ['internal', 'public']

列出值

端点 URL 的首选接口列表。

9.1.23. keystone_authtoken

下表概述了 /etc/nova/nova.conf 文件中的 [keystone_authtoken] 组下可用的选项。

表 9.22. keystone_authtoken
配置选项 = 默认值类型Description

auth_section = None

字符串值

从中加载插件特定选项的配置部分

auth_type = None

字符串值

要载入的身份验证类型

auth_uri = None

字符串值

完成"公共"身份 API 端点。此端点不应是一个"admin"端点,因为它应该可以被所有最终用户访问。未经身份验证的客户端重定向到此端点以进行身份验证。虽然此端点应该被版本写,但通配符中的客户端支持会有所不同。如果您在此处使用版本化的 v2 端点,则这 不应与 服务用户用于验证令牌的端点相同,因为普通用户可能无法访问该端点。这个选项已弃用,而是使用 www_authenticate_uri,并将在 S 发行版本中删除。弃用自: Queens

btrfsreason: the auth_uri 选项已弃用,而是使用 www_authenticate_uri,并将在 S 发行版本中删除。

auth_version = None

字符串值

Identity API 端点的 API 版本。

cache = None

字符串值

存储 Swift 缓存对象的请求环境密钥。当 auth_token 中间件使用 Swift 缓存部署时,请使用此选项使中间件与 swift 共享缓存后端。否则,请使用 memcached_servers 选项。

cafile = None

字符串值

验证 HTTP 连接时使用的 PEM 编码证书颁发机构。默认为系统 CA。

certFile = None

字符串值

如果身份服务器需要客户端证书,则需要此项

delay_auth_decision = False

布尔值

不要处理中间件中的授权请求,而是将授权决定委派给下游 WSGI 组件。

enforce_token_bind = permissive

字符串值

用于控制令牌绑定的使用和类型。可以设置为:"disabled" 以不检查令牌绑定。"permissive" (默认)验证绑定信息(如果绑定类型是服务器所知的格式),并忽略它(如"permissive"。如果绑定类型未知,则令牌将被拒绝。"必需"任何形式的令牌绑定需要被允许。最后,令牌中必须存在的绑定方法的名称。

http_connect_timeout = None

整数值

与 Identity API 服务器通信的请求超时值。

http_request_max_retries = 3

整数值

与 Identity API 服务器通信时,我们将尝试重新连接的次数。

include_service_catalog = True

布尔值

(可选)指示是否设置 X-Service-Catalog 标头。如果为 False,则中间件不会在令牌验证上请求服务目录,也不会设置 X-Service-Catalog 标头。

insecure = False

布尔值

验证 HTTPS 连接。

interface = admin

字符串值

用于 Identity API 端点的接口。有效值为 "public", "internal" 或 "admin" (default)。

keyfile = None

字符串值

如果身份服务器需要客户端证书,则需要此项

memcache_pool_conn_get_timeout = 10

整数值

(可选)操作从池中获取 memcached 客户端连接的秒数。

memcache_pool_dead_retry = 300

整数值

(可选)在尝试前 memcached 服务器被视为死的秒数。

memcache_pool_maxsize = 10

整数值

(可选)每个 memcached 服务器的最大打开连接数。

memcache_pool_socket_timeout = 3

整数值

(可选)与 memcached 服务器通信的插槽超时(以秒为单位)。

memcache_pool_unused_timeout = 60

整数值

(可选)在关闭前,与 memcached 的连接保持在池中未使用的秒数。

memcache_secret_key = None

字符串值

(可选,如果定义了 memcache_security_strategy,则强制设置)此字符串用于密钥生成。

memcache_security_strategy = None

字符串值

(可选)如果定义,指示令牌数据是否应该经过验证还是经过验证和加密。如果 MAC,令牌数据在缓存中进行身份验证(使用 HMAC)。如果 ENCRYPT,令牌数据会在缓存中加密和验证。如果该值不是这些选项之一或为空,auth_token 会在初始化时引发异常。

memcache_use_advanced_pool = False

布尔值

(可选)使用 advanced (eventlet safe) memcached 客户端池。高级池只能在 python 2.x 下工作。

memcached_servers = None

列出值

(可选)指定用于缓存的 memcached 服务器列表。如果未定义,令牌将在进程中缓存。

region_name = None

字符串值

可以找到身份服务器的区域。

service_token_roles = ['service']

列出值

需要出现在服务令牌中的角色。服务令牌允许请求过期令牌可以使用,因此此检查应严格控制仅应发送此令牌的实际服务。此处的角色作为 ANY 检查应用,因此此列表中的任何角色都必须存在。出于向后兼容的原因,这目前仅影响 allow_expired 检查。

service_token_roles_required = False

布尔值

出于向后兼容的原因,我们必须让有效的服务令牌通过,这些令牌不会传递 service_token_roles 检查。设置此 true 将在以后的版本中成为默认值,并应该尽可能启用。

service_type = None

字符串值

服务目录中出现的服务名称或类型。这用于验证具有受限访问规则的令牌。

token_cache_time = 300

整数值

为了防止过度工作需要验证令牌,在可配置的持续时间(以秒为单位)内,中间件缓存之前可切换令牌的中间件缓存(以秒为单位)。设置为 -1 以完全禁用缓存。

www_authenticate_uri = None

字符串值

完成"公共"身份 API 端点。此端点不应是一个"admin"端点,因为它应该可以被所有最终用户访问。未经身份验证的客户端重定向到此端点以进行身份验证。虽然此端点应该被版本写,但通配符中的客户端支持会有所不同。如果您在此处使用版本化的 v2 端点,则这 不应与 服务用户用于验证令牌的端点相同,因为普通用户可能无法访问该端点。

9.1.24. libvirt

下表概述了 /etc/nova/nova.conf 文件中的 [libvirt] 组下可用的选项。

表 9.23. libvirt
配置选项 = 默认值类型Description

`connection_uri = `

字符串值

覆盖所选虚拟化类型的默认 libvirt URI。

如果设置,Nova 将使用此 URI 连接到 libvirt。

可能的值:

  • qemu:///systemxen+ssh://oirase/ 的 URI,例如 qemu:///system 或 xen+ssh://oirase/。这只有在 URI 与所选虚拟化类型的常用 URI 不同时才需要。

相关选项:

  • virt_type :包含在此处用作默认值的内容。

cpu_mode = None

字符串值

用于设置实例应具有的 CPU 模式。

如果 virt_type="kvm&verbar;qemu",它将默认为 host-model,否则它将默认为 none

相关选项:

  • cpu_models :当 cpu_mode 设置为 custom 时,应该只设置此设置。否则,它会出现错误,实例启动将失败。

cpu_model_extra_flags = []

列出值

启用或禁用客户机 CPU 标记。

要显式启用或禁用 CPU 标记,请使用 +flag-flag - + 为客户及启用 CPU 标记,而 - 会禁用它。如果未指定 +-,则会启用标志,这是默认行为。例如,如果您指定以下内容(假设上述 CPU 型号和功能由主机硬件和软件支持)::

[libvirt]
cpu_mode = custom
cpu_models = Cascadelake-Server
cpu_model_extra_flags = -hle, -rtm, +ssbd, mtrr

Nova 将禁用客户机的 hlertm 标志;它将启用 sbdmttr (因为它没有使用 +- 前缀指定)。

CPU 标志区分大小写。在以下示例中,客户机将禁用 pdpe1gb 标志;vmxpcid 标志将启用:

[libvirt]
cpu_mode = custom
cpu_models = Haswell-noTSX-IBRS
cpu_model_extra_flags = -PDPE1GB, +VMX, pcid

额外的 CPU 标志与 cpu_mode config 属性的所有三种可能值相结合: custom (这还需要通过 cpu_models config 属性指定显式 CPU 模型)、host-modelhost-passthrough

在某些情况下,您可能需要配置额外的 CPU 标志,即使主机 传递 CPU 模式也是如此,因为有时 QEMU 可能会禁用某些 CPU 功能。例如,Intel 的"invtsc" (Invariable Time Stamp Counter) CPU 标记,您需要向 Nova 实例公开此标志,您需要明确启用它。

cpu_model_extra_flags 的可能值取决于使用的 CPU 模型。如需给定 CPU 模型的可能 CPU 功能标记,请参阅 /usr/share/libvirt/cpu_map the.xml

对一个特定 CPU 标记的一个特殊备注: pcid (Intel 处理器功能会降低客户机性能下降,从而应用 Meltdown CVE 修复)。当使用 自定义 CPU 模式配置此标志时,并非所有 CPU 型号(如 QEMU 和 libvirt 定义)都需要它:

  • 包括 pcid 功能的唯一虚拟 CPU 模型是 Intel "Haswell"、"Broadwell" 和 "Skylake" 变体。
  • libvirt / QEMU CPU 模型 "Nehalem", "Westmere", "SandyBridge" 和 "IvyBridge" 默认不 会公开 pcid 功能,即使相同名称的主机 CPU 包含它。i.e.使用上述虚拟 CPU 模型时,需要明确指定 PCID

libvirt 驱动程序的默认 CPU 模式 host-model 会对客户机的 PCID CPU 标志执行正确的操作,假设您正在运行更新的处理器 microcode、主机和客户机内核、libvirt 和 QEMU。 另一个模式 host-passthrough,检查硬件中是否存在 PCID,如果直接将其传递给 Nova 客户机。因此,在 PCID 中,具有这些 CPU 模式之一(host-modelhost-passthrough),无需使用 cpu_model_extra_flags

相关选项:

  • cpu_mode
  • cpu_models

cpu_models = []

列出值

主机支持的 CPU 模型列表。

预期列表会被排序,以便之前列出更常见的和较少的高级 CPU 模型。下面是一个示例:SandyBridge ,IvyBridge,Haswell,Broad well,后者的 CPU 模型的功能是以前的 CPU 模型的丰富的。

可能的值:

  • 命名的 CPU 模型可以通过 virsh cpu-models ARCH 找到,其中 ARCH 是您的主机架构。

相关选项:

  • cpu_mode :当您要配置(通过 cpu_models)一个特定的命名 CPU 模型时,这应设置为 自定义。否则,它会出现错误,实例启动将失败。
  • virt_type :只有虚拟化类型 kvmqemu 使用此选项。

    1. 注意:请小心,仅指定可在硬件中完全支持的型号。

disk_cachemodes = []

列出值

用于不同磁盘类型的特定缓存模式。

例如: file=directsync,block=none,network=writeback

对于本地或直接附加存储,建议您使用 writethrough (默认)模式,因为它确保数据完整性并具有客户机中运行的应用程序可接受的 I/O 性能,特别是读操作。但是,对于远程 NFS 存储,建议使用缓存模式,因为直接 I/O 操作(O_DIRECT)比同步 I/O 操作(使用 O_SYNC)更好。缓存模式没有有效地将所有客户机 I/O 操作转换为主机上的直接 I/O 操作,这是此环境中的 NFS 客户端。

可能的缓存模式:

  • 默认:"取决具体情况" — 对于 Nova 管理的磁盘,none,如果主机文件系统符合 Linux 的 O_DIRECT 规格;否则为 writeback。对于卷驱动程序,默认决定于具体的驱动程序:除了 SMBFS 和 Virtuzzo (使用 writeback)外,都为 none
  • none :将缓存模式设置为 none 时,主机页面缓存被禁用,但客户机启用了磁盘写缓存。在这个模式中,客户机中的写入性能是最佳的,因为写入操作会绕过主机页面缓存,并直接转至磁盘写缓存。如果磁盘写缓存是电池支持的,或者客户机传输数据中的应用程序或存储堆栈正确(通过 fsync 操作或文件系统障碍),则可以确保数据完整性。但是,由于主机页面缓存被禁用,因此客户机中的读取性能不适合于启用主机页面缓存的模式,如 writethrough 模式。共享磁盘设备(如可多附加块存储卷)将将其缓存模式设置为 none,而不考虑配置。
  • writethrough :缓存设置为 writethrough 模式时,主机页面缓存会被启用,但客户机禁用了磁盘写缓存。因此,即使客户机中的应用程序和存储堆栈无法正确将数据传送到持久性存储(通过 fsync 操作或文件系统障碍),这种缓存模式确保数据完整性。由于此模式中启用了主机页面缓存,因此客户机中运行的应用程序的读取性能通常更好。但是,因为磁盘写缓存被禁用,所以可能会降低写入性能。
  • writeback :将缓存设置为 writeback 模式时,客户机都启用了主机页面缓存和磁盘写缓存。因此,在客户机中运行的应用程序的 I/O 性能很好,但数据不会在电源故障中受到保护。因此,只建议针对潜在的数据丢失的临时数据使用这个缓存模式。注意:包含后端磁盘机制可能会提供安全回写缓存语义。专门用于绕过主机页面缓存,如 QEMU 的集成式 RBD 驱动程序。Ceph 文档建议将其设置为写入最大性能,同时保持数据安全性。
  • directsync :与"writethrough"类似,但它绕过主机页面缓存。
  • insecure :不安全缓存模式忽略缓存传输操作。由于其名称意味着,此缓存模式应该只用于数据丢失而非关注的临时数据。这个模式可用于加快客户机安装,但应该在生产环境中切换到另一个缓存模式。

disk_prefix = None

字符串值

覆盖附加到实例的设备的默认磁盘前缀。

如果设置,这用于识别总线的可用磁盘空间。

可能的值:

  • 例如,任何将生成有效磁盘设备名称(如 sdahda )的前缀。只有在设备名称与虚拟化类型的常见已知设备名称前缀不同(如 sd、xvd、uvd、vd)时才需要。

相关选项:

  • virt_type :检查使用哪个设备类型,这决定了默认的磁盘前缀。

enabled_perf_events = []

列出值

这将允许您指定一个事件列表来监控客户机的低级性能,并通过 libvirt 驱动程序收集相关的统计数据,以使用 Linux 内核的 perf 基础架构。设置此配置属性后,Nova 将生成 libvirt 客户机 XML 来监控指定的事件。如需更多信息,请参阅此处的"性能监控事件"部分: https://libvirt.org/formatdomain.html#elementsPerf。这里:https://libvirt.org/html/libvirt-libvirt-domain.html — look 用于 VIR_PERF_PARAM_*

例如,要监控 CPU 周期数(total/elapsed)和缓存未命中的数量,请按如下所示启用它们:

[libvirt]
enabled_perf_events = cpu_clock, cache_misses

可能的值: 字符串列表。支持的事件列表可在此处找到 :https://libvirt.org/formatdomain.html#elementsPerf。

请注意,对 Intel CMT 事件(cmtmbmbtmbml)的支持已弃用,并将在"Stein"发行版本中删除。这是因为上游 Linux 内核(来自 4.14)删除了对 Intel CMT 的支持,因为它被设计中断。

file_backed_memory = 0

整数值

可用容量(以 MiB 为单位)用于文件支持的内存。

设置为 0 以禁用由文件支持的内存。

启用后,实例将在 /etc/libvirt/qemu.confmemory_backing_dir 选项指定的目录中创建内存文件。默认位置为 /var/lib/libvirt/qemu/ram

启用后,为这个选项定义的值会报告为节点内存容量。Compute 节点系统内存将通过内核的 pagecache 机制用作文件支持内存的缓存。

  1. 注: 这个功能与巨页不兼容。
  2. 注: 这个功能与内存过量使用不兼容。

相关选项:

  • virt_type 必须设置为 kvmqemu
  • ram_allocation_ratio 必须设置为 1.0。

gid_maps = []

列出值

guid 目标和范围列表.Syntax 是 guest-gid:host-gid:count。允许最多 5 个。

hw_disk_discard = None

字符串值

nova 受管磁盘的丢弃选项。

requires:

  • Libvirt >= 1.0.6
  • qemu >= 1.5 (原始格式)
  • qemu >= 1.6 (qcow2 格式)

hw_machine_type = None

列出值

对于 qemu 或 KVM 客户机,将此选项设置为为每个主机架构指定默认机器类型。您可以通过检查 :command:virsh capabilities 命令的输出,在环境中找到支持的机器类型列表。此配置选项的值格式为 host-arch=machine-type。例如: x86_64=machinetype1、armv7l=machinetype2

`images_rbd_ceph_conf = `

字符串值

要使用的 ceph 配置文件的路径

images_rbd_pool = rbd

字符串值

存储 rbd 卷的 RADOS 池

images_type = default

字符串值

VM 镜像格式.

如果指定了默认值,则使用 use_cow_images 标志而不是这个标志。

相关选项:

  • compute.use_cow_images
  • images_volume_group
  • [workarounds]/ensure_libvirt_rbd_instance_dir_cleanup
  • compute.force_raw_images

images_volume_group = None

字符串值

指定 images_type=lvm 时,用于虚拟机镜像的 LVM 卷组

相关选项:

  • images_type

inject_key = False

布尔值

允许在引导时注入 SSH 密钥。

镜像中不需要代理来执行此操作。如果 libguestfs 在主机上可用,则会使用它。否则会使用 nbd。将挂载镜像的文件系统,并且 REST API 调用中提供的 SSH 密钥将作为环境变量注入为 root 用户的 SSH 密钥,并附加到该用户的 authorized_keys。如果需要,将设置 SELinux 上下文。请注意,当实例从卷启动时,无法 注入。

此配置选项将启用直接修改实例磁盘,不会影响 cloud-init 可使用 config_drive 选项或元数据服务中的数据。

仅限 Linux 发行版客户机。

相关选项:

  • inject_partition :该选项将决定文件系统的发现和使用。它还可完全禁用注入。

inject_partition = -2

整数值

决定如何选择将数据注入文件系统的方法。

libguestfs 将使用第一个注入数据的解决方案。如果主机上不可用,该镜像将本地作为回退解决方案挂载到主机上。如果 libguestfs 无法确定根分区(因为有多个或者少于一个根分区),或者无法挂载文件系统将导致错误,且实例将无法引导。

可能的值:

  • -2 IANA 禁用数据的注入。
  • -1 IANA 找到使用 libguestfs 挂载的文件系统的根分区
  • 0 代表镜像没有分区
  • >0 表示用于注入的分区数

仅限 Linux 发行版客户机。

相关选项:

  • inject_key :如果此选项允许注入 SSH 密钥,它依赖于值大于或等于 -1 用于 inject_partition
  • inject_password :如果此选项允许注入管理员密码,它依赖于大于或等于 -1 的值进行 注入_partition
  • guestfs 您可以使用此配置选项启用 libguestfs 的 debug 日志级别。更详细的输出有助于调试问题。
  • virt_type :如果您使用 lxc 作为 virt_type,它将被视为单个分区镜像

inject_password = False

布尔值

仅在创建和重建过程中为实例注入管理员密码。

镜像中不需要代理来执行此操作。如果 libguestfs 在主机上可用,则会使用它。否则会使用 nbd。将挂载镜像的文件系统,并且 REST API 调用中提供的 admin 密码将被注入为 root 用户的密码。如果没有 root 用户可用,则不会启动实例,并抛出错误。请注意,当实例从卷启动时,无法 注入。

仅限 Linux 发行版客户机。

可能的值:

  • true :允许注入。
  • false :不允许注入。任何通过 REST API 提供的管理员密码都将静默忽略。

相关选项:

  • inject_partition :该选项将决定文件系统的发现和使用。它还可完全禁用注入。

iscsi_iface = None

字符串值

需要卸载支持时,用于连接到目标的 iSCSI 传输 iface。

默认格式格式为 <transport_name>.<hwaddress>,其中 <transport_name> 是接口的 MAC 地址之一(be2iscsi、bnx2i、cxgb3i、cxgb4i、qla4xxx、ocs)和 <hwaddress> 是接口的 MAC 地址,可通过 iscsiadm -m iface 命令生成。不要在此处提供 iscsi_iface 参数与实际传输名称混淆。

iser_use_multipath = False

布尔值

使用 iSER 卷的多路径连接。

iSER 卷可作为多路径设备连接。这将提供高可用性和容错。

live_migration_bandwidth = 0

整数值

迁移期间使用的最大带宽(以 MiB/s 为单位)。

如果设置为 0,则管理程序将选择适当的默认值。有些虚拟机监控程序不支持此功能,并在带宽不是 0 时返回错误。详情请参考 libvirt 文档。

live_migration_completion_timeout = 800

整数值

迁移在中止操作前成功传输数据的时间(以秒为单位)。

值是每个 GiB 的客户机 RAM + 磁盘,最大限为 2 GiB。通常应大于停机延迟 停机时间步骤。设置为 0 以禁用超时。

相关选项:

  • live_migration_downtime
  • live_migration_downtime_steps
  • live_migration_downtime_delay

live_migration_downtime = 500

整数值

实时迁移交换机允许的最大停机时间(以毫秒为单位)。

将最多舍入到 100ms。如果要允许实时迁移更快地完成,或者避免在实时迁移交换机期间暂停客户机来避免实时迁移超时错误,则可以提高这个值。

相关选项:

  • live_migration_completion_timeout

live_migration_downtime_delay = 75

整数值

迁移停机时间的每个步骤之间等待的时间(以秒为单位)。

最小延迟为 3 秒。值是每个 GiB 的客户机 RAM + 磁盘,每个设备最少为 2 GiB。

live_migration_downtime_steps = 10

整数值

达到最大停机时间值的增量步骤数。

将最多舍入 3 个步骤。

live_migration_inbound_addr = None

主机地址值

用于实时迁移流量的目标。

如果此选项设置为 None,则会使用迁移目标计算节点的主机名。

这个选项对于在实时迁移流量可能会显著影响 network plane 的环境中非常有用。然后,用于实时迁移流量的单独网络可以使用此配置选项并避免对管理网络的影响。

相关选项:

  • live_migration_tunnelled :如果启用了隧道,则 live_migration_inbound_addr 值将被忽略。

live_migration_permit_auto_converge = False

布尔值

这个选项允许 nova 使用自动聚合启动实时迁移。

如果正在进行的实时迁移缓慢,则自动聚合的 CPU 节流。只有此标志被设置为 True 且因为使用的 libvirt 和 QEMU 的版本不可用时,才会使用 autoverge。

相关选项:

  • live_migration_permit_post_copy

live_migration_permit_post_copy = False

布尔值

这个选项允许 nova 将持续实时迁移切换到 post-copy 模式,例如,在迁移完成前将活动虚拟机切换到目标节点上的目标节点上的,因此请确保在需要传输的内存上有一个上限。后复制需要 libvirt>=1.3.3 和 QEMU>=2.5.0。

允许后,如果达到 live_migration_completion_timeout 定义的超时,且 ,则 live_migration_timeout_action 设置为 force_complete,则 post-copy 模式将自动激活。请注意,如果您更改为 no timeout 或选择使用 abort,即 live_migration_completion_timeout = 0, 则没有自动切换来复制。

实时迁移强制完成 API 在允许后使用 post-copy。如果复制后模式不可用,请强制完成回暂停虚拟机,以确保实时迁移操作将完成。

使用 post-copy 模式时,如果源和目标主机丢失网络连接,则需要重启实时迁移的虚拟机。如需了解更多详细信息,请参阅管理指南。

相关选项:

  • live_migration_permit_auto_converge
  • live_migration_timeout_action

live_migration_scheme = None

字符串值

用于实时迁移的 URI 方案。

覆盖默认 libvirt 实时迁移方案(依赖于 virt_type)。如果此选项设为 None,nova 将自动选择基于虚拟机监控程序的敏感默认值。除非非常确定虚拟机监控程序支持一个特定的方案,否则不建议您更改此设置。

相关选项:

  • virt_type :只有在 virt_type 设为 kvmqemu 时,此选项才有意义。
  • live_migration_uri: 如果 live_migration_uri 值不是 None,则从 live_migration_uri 替代用于实时迁移的方案。

live_migration_timeout_action = abort

字符串值

这个选项将用于决定在 live_migration_completion_timeout 过期后对虚拟机执行的操作。默认情况下,实时迁移操作将在完成超时后中止。如果设置为 force_complete,则计算服务会根据是否启用了 post copy 并可用(live_migration_permit_post_post_copy )暂停虚拟机或触发 post-copy

相关选项:

  • live_migration_completion_timeout
  • live_migration_permit_post_copy

live_migration_tunnelled = False

布尔值

启用隧道迁移。

这个选项启用隧道迁移功能,其中迁移数据通过 libvirtd 连接传输。如果启用,我们使用 VIR_MIGRATE_TUNNELLED 迁移标志,避免需要配置网络以允许虚拟机监控程序到虚拟机监控程序通信。如果为 False,则使用原生传输。如果没有设置,Nova 将基于 sensable 默认,例如虚拟机监控程序中原生加密支持的可用性。启用此选项将严重影响性能。

请注意,这个选项与块迁移的使用不兼容。

相关选项:

  • live_migration_inbound_addr :如果启用了隧道,则 live_migration_inbound_addr 值将被忽略。

live_migration_uri = None

字符串值

要使用的实时迁移目标 URI。

覆盖默认 libvirt 实时迁移目标 URI (依赖于 virt_type)。任何包含的 "%s" 都会被替换为迁移目标主机名。

如果此选项被设置为 None (默认值),则 Nova 将根据以下列表中只支持 4 个支持的 virt_type 自动生成 live_migration_uri 值:

  • kvm: qemu+tcp://%s/system
  • qemu: qemu+tcp://%s/system
  • xen: xenmigr://%s/system
  • parallels: parallels+tcp://%s/system

相关选项:

  • live_migration_inbound_addr: 如果 live_migration_inbound_addr 值不是 None,并且 live_migration_tunnelled 为 False,将使用目标计算节点的 ip/hostname 地址而不是 live_migration_uri 作为作实时迁移的 uri。
  • live_migration_scheme :如果没有设置 live_migration_uri,则从 live_migration_scheme 中获取用于实时迁移的方案。

弃用自:15.0.0

原因: live_migration_uri 已弃用以移除两个其他选项,允许分别更改实时迁移方案和目标 URI: ''live_migration_scheme'' 和 ''live_migration_inbound_addr''。

live_migration_with_native_tls = False

布尔值

实时迁移时使用 QEMU 原生 TLS 加密。

此选项将允许迁移流(客户机 RAM 加上设备状态) 和磁盘 流都通过原生 TLS 传输,例如将 TLS 支持内置到 QEMU 中。

先决条件:所有相关的 Compute 节点上都正确配置了 TLS 环境。这意味着,证书颁发机构(CA)、服务器、客户端证书、对应的密钥及其文件权限已就位,并被验证。

备注:

  • 要对迁移流和磁盘流进行加密(也称为"块迁移"),live_migration_with_native_tls 是首选的 config 属性,而不是 live_migration_tunnelled
  • live_migration_tunnelled 将因为两个主要原因在长期弃用:(a)会导致大量性能损失;(b)它与块迁移不兼容。因此,如果您的计算节点至少有 libvirt 4.4.0 和 QEMU 2.11.0,则强烈建议您使用 live_migration_with_native_tls
  • live_migration_tunnelledlive_migration_with_native_tls 不应该同时使用。
  • live_migration_tunnelled 不同,live_migration_with_native_tls 与块迁移兼容。也就是说,使用这个选项 NBD 流(在哪些磁盘迁移到目标主机中)将被加密。

相关选项:

live_migration_tunnelled :通过 libvirtd 传输迁移流(而非磁盘流)。

max_queues = None

整数值

创建多队列客户端时可启用的最大 virtio 队列对数。分配的 virtio 队列数量将减少客户机所请求的 CPU 以及定义的最大值。默认情况下,这个值被设置为 none,这意味着将使用基于所报告内核主版本的传统限制。

mem_stats_period_seconds = 10

整数值

内存用量统计期间的秒数。零或负值意味着禁用内存用量统计。

nfs_mount_options = None

字符串值

传递给 NFS 客户端的挂载选项。详情请查看 nfs man page 一节。

挂载选项控制挂载文件系统的方式,以及 NFS 客户端在访问此挂载点上的文件时的行为方式。

可能的值:

  • 代表用逗号分开的挂载选项的任何字符串。
  • 示例字符串:vers=3,lookupcache=pos

nfs_mount_point_base = $state_path/mnt

字符串值

在计算节点上挂载 NFS 卷的目录。默认为安装 nova 的 Python 模块的位置的 mnt 目录。

NFS 为 OpenStack Block Storage 服务提供共享存储。

可能的值:

  • 代表挂载点的绝对路径的字符串。

num_aoe_discover_tries = 3

整数值

重新发现 AoE 目标以查找卷的次数。

Nova 支持通过 AOE (通过以太网的ATA)附加到主机的块存储。这个选项允许用户指定可发现 AoE 设备的最大重试尝试次数。

num_iser_scan_tries = 5

整数值

扫描 iSER 目标以查找卷的次数。

iSER 是一个服务器网络协议,它扩展了 iSCSI 协议以使用远程直接内存访问(RDMA)。此选项允许用户指定可以查找 iSER 卷的最大扫描尝试数。

num_memory_encrypted_guests = None

整数值

具有加密内存的最大客户机数,可以同时运行此计算主机上。

现在,这只与支持 SEV (安全加密虚拟化)的 AMD 机器相关。此类机器在其内存控制器中拥有有限的插槽来存储加密密钥。每个运行带有加密内存的客户机都将消耗其中一个插槽。

未来可能会将选项用于其他同等技术。如果计算机不支持内存加密,则忽略该选项,并将清单设置为 0。

如果机器确实支持内存加密,现在值为 None 表示实际无限的清单,例如,Nova 在可以启动的 SEV 客户机数量上不会实施限制,即使底层硬件将强制实施自己的限制。但是,未来,从硬件自动检测的清单将成为可能,因此没有会导致自动检测自动检测正确的限制。

  1. note::

    It is recommended to read :ref:`the deployment documentation's
    section on this option <num_memory_encrypted_guests>` before
    deciding whether to configure this setting or leave it at the
    default.

相关选项:

  • :oslo.config:option:libvirt.virt_type 必须设为 kvm
  • 建议您考虑在 :oslo.config:option:libvirt.hw_machine_type 中包含 x86_64=q35,请参阅 :ref:deploy-sev-enabled-infrastructure

num_nvme_discover_tries = 5

整数值

重新发现 NVMe 目标以查找卷的次数

Nova 支持通过 NVMe (Non-Volatile Memory Express)附加到主机的块存储。这个选项允许用户指定可发现 NVMe 设备的重试尝试的最大数量。

num_pcie_ports = 0

整数值

实例将获取的 PCIe 端口数量。

libvirt 允许一个目标实例的自定义 PCIe 端口(pcie-root-port 控制器)。其中一些将默认使用,其余则可用于热插拔。

默认情况下,我们只有 1-2 个空闲端口来限制热插拔。

更多信息: https://github.com/qemu/qemu/blob/master/docs/pcie.txt

由于 aarch64/virt 最大值的 QEMU 限制设置为 28

默认值为 0 将计算端口数量移到 libvirt。

num_volume_scan_tries = 5

整数值

扫描给定存储协议以查找卷的次数。

pmem_namespaces = []

列出值

配置持久内存(pmem)命名空间。

这些命名空间必须已在主机上创建。此配置选项采用以下格式:

"$LABEL:$NSNAME[&verbar;$NSNAME][,$LABEL:$NSNAME[&verbar;$NSNAME]]"
  • $NSNAME 是 pmem 命名空间的名称。
  • $LABEL 代表一个资源类,它用于生成资源类名称,作为 CUSTOM_PMEM_NAMESPACE_$LABEL

    例如:
    [libvirt] pmem_namespaces=128G:ns0|ns1|ns2|ns3,262144MB:ns4|ns5,MEDIUM:ns6|ns7

quobyte_client_cfg = None

字符串值

到 Quobyte 客户端配置文件的路径。

quobyte_mount_point_base = $state_path/mnt

字符串值

在计算节点上挂载 Quobyte 卷的目录。

Nova 支持 Quobyte 卷驱动程序,它允许在 Quobyte 存储后端中存储块存储服务卷。这个选项指定挂载 Quobyte 卷的目录的路径。

可能的值:

  • 代表挂载点的绝对路径的字符串。

rbd_connect_timeout = 5

整数值

最初连接到集群时 RADOS 客户端超时(以秒为单位)。

rbd_secret_uuid = None

字符串值

rbd_user 卷的 secret 的 libvirt UUID。

rbd_user = None

字符串值

用于访问 rbd (RADOS 块设备)卷的 RADOS 客户端名称。

libvirt 在连接和与 Ceph RBD 服务器进行身份验证时引用此用户。

realtime_scheduler_priority = 1

整数值

在实时主机上下文 vCPU 中,客户机将在该调度优先级中运行。优先级取决于主机内核(通常为 1-99)

remote_filesystem_transport = ssh

字符串值

libvirt 远程文件操作的传输方法。

因为 libvirt 无法使用 RPC 通过网络复制文件,因此必须使用其他方法:

  • 在远程主机上创建目录
  • 在远程主机上创建文件
  • 从远程主机中删除文件
  • 将文件复制到远程主机

remove_unused_resized_minimum_age_seconds = 3600

整数值

未使用的已调整的基础镜像的大小比这个镜像不太可能被删除

rescue_image_id = None

字符串值

要从损坏的实例引导到救援数据的镜像的 ID。

如果救援 REST API 操作不提供要使用的镜像的 ID,则会使用此 ID 引用的镜像。如果没有设置这个选项,则使用实例中的镜像。

可能的值:

  • 镜像或任何内容的 ID。如果它指向 Amazon Machine Image (AMI),请考虑设置配置选项 rescue_kernel_idrescue_ramdisk_id。如果没有设置任何内容,则使用实例的镜像。

相关选项:

  • rescue_kernel_id :如果所选救援镜像允许单独定义其内核磁盘,则会使用这个选项的值(如果指定)。这是 Amazon 的 AMI/AKI/ARI 镜像格式用于救援镜像的情况。
  • rescue_ramdisk_id :如果所选的救援镜像允许单独的 RAM 磁盘定义,如果指定,则使用此选项的值。这是 Amazon 的 AMI/AKI/ARI 镜像格式用于救援镜像的情况。

rescue_kernel_id = None

字符串值

用于救援镜像的内核(AKI)镜像的 ID。

如果所选救援镜像允许单独定义其内核磁盘,则会使用这个选项的值(如果指定)。这是 Amazon 的 AMI/AKI/ARI 镜像格式用于救援镜像的情况。

可能的值:

  • 内核镜像的 ID 或任何内容。如果未指定任何内容,则使用实例中的内核磁盘(如果它从一个启动)。

相关选项:

  • rescue_image_id :如果该选项指向 Amazon 的 AMI/AKI/ARI 镜像格式的镜像,则使用 rescue_kernel_id 也很有用。

rescue_ramdisk_id = None

字符串值

用于救援镜像的 RAM 磁盘(ARI)镜像的 ID。

如果所选救援镜像允许单独定义其 RAM 磁盘,则会使用此选项的值(如果指定)。这是 Amazon 的 AMI/AKI/ARI 镜像格式用于救援镜像的情况。

可能的值:

  • RAM 磁盘镜像或无任何内容的 ID。如果未指定任何内容,则使用实例的 RAM 磁盘(如果实例启动)。

相关选项:

  • rescue_image_id :如果该选项指向 Amazon 的 AMI/AKI/ARI 镜像格式的镜像,则使用 rescue_ramdisk_id 也很有用。

rng_dev_path = /dev/urandom

字符串值

用作主机上熵源的 RNG (随机数生成器)设备的路径。从 libvirt 1.3.4 开始,任何路径(在读取时返回随机数字)都被接受。建议的熵源为 /dev/urandom Evolutionit is non-blocking,因此相对快;并避免 /dev/random 的限制,这是传统接口。如需更多详细信息(以及不同 RNG 源之间的比较),请参阅 Linux 内核 API 文档中的"Usage"部分 [u]random:http://man7.org/linux/man-pages/man4/urandom.4.htmlhttp://man7.org/linux/man-pages/man7/random.7.html。

rx_queue_size = None

整数值

配置 virtio rx 队列大小。

这个选项仅适用于带有 vhost 和 vhost-user 后端的 virtio-net 设备。仅适用于 QEMU/KVM。需要 libvirt v2.3 QEMU v2.7。

`smbfs_mount_options = `

字符串值

传递给 SMBFS 客户端的挂载选项。

提供 SMBFS 选项作为包含所有参数的字符串。详情请查看 mount.cifs 手册页。请注意,必须指定 libvirt-qemu uidgid

smbfs_mount_point_base = $state_path/mnt

字符串值

在计算节点上挂载 SMBFS 共享的目录。

snapshot_compression = False

布尔值

qcow2 镜像启用快照压缩。

注:您可以将 snapshot_image_format 设置为 qcow2 以强制所有快照都采用 qcow2 格式,独立于其原始镜像类型。

相关选项:

  • snapshot_image_format

snapshot_image_format = None

字符串值

确定发送到镜像服务时的快照镜像格式。

如果设置,这决定了将快照发送到镜像服务时使用什么格式。如果没有设置,则默认为与源镜像相同的类型。

snapshots_directory = $instances_path/snapshots

字符串值

libvirt 驱动程序在将快照上传到镜像服务之前存储快照的位置

sparse_logical_volumes = False

布尔值

如果此标志设为 True,则创建稀疏逻辑卷(使用 virtualsize)。

弃用自:18.0.0

原因: 由于parse 逻辑卷是一个未经测试的功能,因此不支持。LVM 逻辑卷默认预先分配。如果要精简配置,请使用 Cinder 精简配置的卷。

sysinfo_serial = unique

字符串值

用于填充公开给虚拟 BIOS 中客户机的主机"serial" UUID 的数据源。除非将实例迁移到 另一主机 时,否则所有选择都会更改串行。更改此选项的选择也会在停止并再次启动后影响此主机上的现有实例。建议使用默认选择(唯一),因为在迁移实例时不会更改。但是,如果您还需要每个主机的串行,除了每个实例的序列号外,请考虑通过主机聚合限制类别。

tx_queue_size = None

整数值

配置 virtio tx 队列大小。

这个选项仅适用于带有 vhost-user 后端的 virtio-net 设备。仅适用于 QEMU/KVM。需要 libvirt v3.7 QEMU v2.10。

uid_maps = []

列出值

uid 目标和范围列表.Syntax 是 guest-uid:host-uid:count。允许最多 5 个。

use_usb_tablet = True

布尔值

在图形 VNC 或 SPICE 会话中启用鼠标光标。

只有在虚拟机完全虚拟化且启用了 VNC 和/或 SPICE 时,才会考虑这一点。如果节点不支持图形帧缓冲器,那么将其设置为 False。

相关选项:

  • [VNC]enabled :如果启用了 VNC,use_usb_tablet 将生效。
  • [SPICE]enabled + [spice].agent_enabled: 如果启用了 SPICE,且禁用 spice 代理,则 use_usb_tablet 的配置值将生效。

弃用自:14.0.0

evincereason :此选项被 pointer_model 选项替代。

use_virtio_for_bridges = True

布尔值

将 virtio 用于 KVM/QEMU 的网桥接口

virt_type = kvm

字符串值

描述应使用虚拟化类型(或称为域类型)libvirt。

这种类型的选择必须与您为这个主机选择的底层虚拟化策略匹配。

相关选项:

  • connection_uri :这取决于这一点
  • disk_prefix :这取决于它
  • cpu_mode :这取决于这一点
  • cpu_models: 取决于这一点

volume_clear = zero

字符串值

删除时用于擦除临时磁盘的方法。只有在将 LVM 设置为后备存储时,才会生效。

相关选项:

  • images_type - must be set to lvm
  • volume_clear_size

volume_clear_size = 0

整数值

MiB 中的区域大小,计算从分配的卷开始,该大小将使用 volume_clear 选项中设置的方法进行清除。

可能的值:

  • 0 - 清除整个卷
  • >0 - 清除指定的 MiB 数量

相关选项:

  • images_type - must be set to lvm
  • volume_clear - 必须设置,值不是 none 时才能使此选项产生实际影响

volume_use_multipath = False

布尔值

使用 iSCSI 或 FC 卷的多路径连接

卷可以在 LibVirt 中作为多路径设备连接。这将提供高可用性和容错。

vzstorage_cache_path = None

字符串值

SSD 缓存文件的路径。

您可以将 SSD 驱动器附加到客户端,并将驱动器配置为存储经常访问的数据的本地缓存。通过在客户端的 SSD 驱动器上具有本地缓存,您可以将整个集群性能提高最多 10 倍。警告!有很多 SSD 模型没有服务器等级,并可能会在电源丢失时丢失任意数据更改。此类 SSD 不应在 Vstorage 中使用,且存在危险,因此可能会导致数据崩溃和不一致。请参考已知安全或使用 vstorage-hwflush-check (1)实用程序对其进行验证的手册。

此选项定义应包含 "%(cluster_name) " 模板的路径,用于将缓存与多个共享分开。

相关选项:

  • vzstorage_mount_opts 可能包含更详细的缓存选项。

vzstorage_log_path = /var/log/vstorage/%(cluster_name)s/nova.log.gz

字符串值

vzstorage 客户端日志的路径。

此选项定义集群操作的日志,它应包含 "%(cluster_name) " 模板,以将日志与多个共享分开。

相关选项:

  • vzstorage_mount_opts 可能包含更详细的日志记录选项。

vzstorage_mount_group = qemu

字符串值

挂载所有者组名称。

此选项定义 Vzstorage 集群挂载点的所有者组。

相关选项:

  • vzstorage_mount the 参数组

vzstorage_mount_opts = []

列出值

pstorage-mount 的额外挂载选项

有关它们的完整描述,请参阅 https://static.openvz.org/vz-man/man1/pstorage-mount.1.gz.html Format 是参数列表的 python 字符串表示,例如:"[-v,-R,500]" Shouldn't include -c, -l, -C, -u, -g, -g 和 -m,因为它们有显式的 vzstorage VNI 选项。

相关选项:

  • 所有其他 vzstorage the 选项

vzstorage_mount_perms = 0770

字符串值

挂载访问模式。

此选项定义 Vzstorage 集群挂载点的访问位,其格式类似于 chmod (1)工具之一,如下所示:0770。它由一到四个数字组成,范围从 0 到 7,如果缺少前面的位则代表这些位为 0。

相关选项:

  • vzstorage_mount the 参数组

vzstorage_mount_point_base = $state_path/mnt

字符串值

在计算节点上挂载 Virtuozzo 存储集群的目录。

此选项为 Vzstorage 集群定义非标准挂载点。

相关选项:

  • vzstorage_mount the 参数组

vzstorage_mount_user = stack

字符串值

挂载所有者用户名。

此选项定义 Vzstorage 集群挂载点的所有者用户。

相关选项:

  • vzstorage_mount the 参数组

wait_soft_reboot_seconds = 120

整数值

在进行软重启请求后等待实例关闭的秒数。如果实例没有在此窗口中关闭,我们回退到硬重启。

xen_hvmloader_path = /usr/lib/xen/boot/hvmloader

字符串值

保存 Xen hvmloader 的位置

9.1.25. metrics

下表概述了 /etc/nova/nova.conf 文件中的 [metrics] 组下可用的选项。

表 9.24. metrics
配置选项 = 默认值类型Description

required = True

布尔值

此设置决定了如何处理任何不可用的指标。如果此选项设为 True,则指标不可用的任何主机都会引发异常,因此建议使用 MetricFilter 在权重前过滤这些主机。

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。

可能的值:

  • true 或 False,其中 False 确保主机的任何指标都不可用,则将主机权重设置为 weight_of_unavailable

相关选项:

  • weight_of_unavailable

weight_multiplier = 1.0

浮点值

当使用指标来权重主机的适用性时,您可以使用这个选项更改计算的权重如何影响分配给主机的权重,如下所示:

  • >1.0:增加指标对总权重的影响
  • 1.0:不更改计算的权重
  • >0.0,<1.0: 减少指标对总权重的影响
  • 0.0 :指标值将被忽略,并返回 weight_of_unavailable 选项的值
  • >-1.0,<0.0: effect 被减少并反向
  • -1.0 :效果被撤销
  • IANA1.0:其效果以比例和反向方式增加

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。

可能的值:

  • 整数或浮点值,值对应于此自己的倍数比率。

相关选项:

  • weight_of_unavailable

weight_of_unavailable = -10000.0

浮点值

当满足以下条件时,会使用这个值代替任何实际指标值:

  • 主机不能使用在 weight_setting 中命名的指标之一,所需 值为 False
  • weight_setting 中为指标指定的比率是 0
  • weight_multiplier 选项设置为 0

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。

可能的值:

  • 整数或浮点值,值对应于此自己的倍数比率。

相关选项:

  • weight_setting
  • required
  • weight_multiplier

weight_setting = []

列出值

此设置指定要 weighed 的指标以及每个指标的相对比率。这应该是一个字符串值,由由一个或多个 name=ratio 对组成的系列组成,用逗号分开,其中 name 是要加重的指标的名称,而 ratio 是该指标的相对权重。

请注意,如果比率设定为 0,则指标值将被忽略,权重将设置为 weight_of_unavailable 选项的值。

例如,请考虑将这个选项设置为的情况:

`name1=1.0, name2=-1.3`

最后的权重将是:

`(name1.value * 1.0) + (name2.value * -1.3)`

FilterScheduler 及其子类只使用这个选项;如果您使用不同的调度程序,这个选项无效。

可能的值:

  • 用逗号分开的零个或多个键/值对列表,其中键是一个字符串,代表指标的名称,其值是该指标的数字权重。如果将任何值设定为 0,则忽略该值,权重将设置为 weight_of_unavailable 选项的值。

相关选项:

  • weight_of_unavailable

9.1.26. mks

下表概述了 /etc/nova/nova.conf 文件中的 [mks] 组下可用的选项。

表 9.25. mks
配置选项 = 默认值类型Description

enabled = False

布尔值

为虚拟机启用图形控制台访问。

mksproxy_base_url = http://127.0.0.1:6090/

URI 值

MKS Web 控制台代理的位置

响应中的 URL 指向 WebMKS 代理,该代理在客户端和实例运行的对应 vCenter 服务器之间启动代理。要使用基于 Web 的控制台访问,应该安装并配置 WebMKS 代理

可能的值:

  • 必须是格式的有效 URL:http://host:port/https://host:port/

9.1.27. neutron

下表概述了 /etc/nova/nova.conf 文件中的 [neutron] 组下可用的选项。

表 9.26. neutron
配置选项 = 默认值类型Description

auth-url = None

字符串值

身份验证 URL

auth_section = None

字符串值

从中加载插件特定选项的配置部分

auth_type = None

字符串值

要载入的身份验证类型

cafile = None

字符串值

在验证 HTTP 连接时要使用的 PEM 编码证书颁发机构。

certFile = None

字符串值

PEM 编码客户端证书文件

collect-timing = False

布尔值

收集每个API 调用计时信息。

connect-retries = None

整数值

应该尝试连接错误的最大重试次数。

connect-retry-delay = None

浮点值

连接错误两次重试之间的延迟(以秒为单位)。如果没有设置,则使用最多 60 秒的指数重试,从 0.5 秒开始。

default-domain-id = None

字符串值

用于 v3 和 v2 参数的可选域 ID。它将用于 v3 中的用户和项目域,并在 v2 身份验证中忽略。

default-domain-name = None

字符串值

用于 v3 API 和 v2 参数的可选域名。它将用于 v3 中的用户和项目域,并在 v2 身份验证中忽略。

default_floating_pool = nova

字符串值

浮动 IP 池的默认名称。

指定用于分配浮动 IP 的浮动 IP 池的名称。只有在 Neutron 没有在端口绑定响应中指定浮动 IP 池名称时,才会使用这个选项。

domain-id = None

字符串值

范围到的域 ID

domain-name = None

字符串值

范围到的域名

endpoint-override = None

字符串值

始终将此端点 URL 用于此客户端的请求。注意:应在此处指定未版本化的端点;若要请求特定的 API 版本,使用 version, min-version, 和/或 max-version 选项。

extension_sync_interval = 600

整数值

代表在查询 Neutron 扩展前要等待的秒数。在这十秒后,Nova 下次需要在 Neutron 中创建资源,它将重新查询 Neutron 以进行加载的扩展。将值设为 0 将在没有等待的情况下刷新扩展。

http_retries = 3

整数值

neutronclient 应该在任何失败的 http 调用中重试的次数。

0 表示连接仅尝试一次。将它设置为任意正整数意味着重试失败连接时,多次(例如将其设置为 3)意味着连接的总尝试将是 4。

可能的值:

  • 任何整数值。0 表示只尝试连接一次

insecure = False

布尔值

验证 HTTPS 连接。

keyfile = None

字符串值

PEM 编码客户端证书密钥文件

`metadata_proxy_shared_secret = `

字符串值

此选项包含用于验证到 Neutron 元数据请求的代理请求的共享机密字符串。要使用,必须在请求中提供 X-Metadata-Provider-Signature 标头。

相关选项:

  • service_metadata_proxy

ovs_bridge = br-int

字符串值

Open vSwitch 集成网桥的默认名称。

指定 OpenvSwitch 使用的集成测试接口名称。只有 Neutron 在端口绑定响应中指定 OVS 网桥名称时,才会使用这个选项。

password = None

字符串值

用户密码

physnets = []

列出值

此主机上存在的 physnets 列表。

对于列出的每个 physnet,额外的部分 [neutron_physnet_$PHYSNET] 将添加到配置文件中。每个部分都必须使用单个配置选项 numa_nodes 配置,它应该是与 physnet 相关联的所有 NUMA 节点的节点 ID 列表。例如:

[neutron]
physnets = foo, bar
[neutron_physnet_foo]
numa_nodes = 0
[neutron_physnet_bar]
numa_nodes = 0,1

任何没有使用此选项列出的 physnet 都将被视为没有特定的 NUMA 节点关联性。

Tunnelled 网络(VXLAN, GRE, …​)无法以这种方式考虑,而是使用 [neutron_tunnel] 组进行配置。例如:

[neutron_tunnel]
numa_nodes = 1

相关选项:

  • [neutron_tunnel] numa_nodes 可用于为所有隧道网络配置 NUMA 关联性
  • [neutron_physnet_$PHYSNET] numa_nodes 需要为由这个选项指定的每个 $PHYSNET 值进度设置

project-domain-id = None

字符串值

包含项目的域 ID

project-domain-name = None

字符串值

包含项目的域名

project-id = None

字符串值

项目 ID 的范围

project-name = None

字符串值

范围到的项目名称

region-name = None

字符串值

端点 URL 发现的默认 region_name。

service-name = None

字符串值

用于端点 URL 发现的默认 service_name。

service-type = network

字符串值

端点 URL 发现的默认 service_type。

service_metadata_proxy = False

布尔值

当设置为 True 时,此选项表示 Neutron 将用于代理元数据请求并解析实例 ID。否则,实例 ID 必须传递到 X-Instance-ID 标头中的元数据请求。

相关选项:

  • metadata_proxy_shared_secret

split-loggers = False

布尔值

将请求记录到多个日志记录器。

status-code-retries = None

整数值

应该尝试检索 HTTP 状态代码的最大重试次数。

status-code-retry-delay = None

浮点值

对可分配状态代码进行两个重试之间的延迟(以秒为单位)。如果没有设置,则使用最多 60 秒的指数重试,从 0.5 秒开始。

system-scope = None

字符串值

系统操作范围

tenant-id = None

字符串值

租户 ID

tenant-name = None

字符串值

租户名称

timeout = None

整数值

http 请求的超时值

trust-id = None

字符串值

信任 ID

user-domain-id = None

字符串值

用户的域 ID

user-domain-name = None

字符串值

用户的域名

user-id = None

字符串值

用户 ID

username = None

字符串值

用户名

valid-interfaces = ['internal', 'public']

列出值

端点 URL 的首选接口列表。

9.1.28. notifications

下表概述了 /etc/nova/nova.conf 文件中的 [notifications] 组下可用的选项。

表 9.27. notifications
配置选项 = 默认值类型Description

bdms_in_notifications = False

布尔值

如果启用,在版本化通知有效负载中包含块设备信息。默认情况下禁用发送块设备信息,因为提供这些信息可能会在系统中产生一些开销,因为可能需要从数据库加载信息。

default_level = INFO

字符串值

传出通知的默认通知级别。

notification_format = unversioned

字符串值

指定 nova 应发出哪些通知格式。

版本化通知界面与旧接口的功能奇偶校验中,版本化的界面正在积极开发,因此新消费者应使用版本的接口。

但是,ceilometer 和其他技术 OpenStack 组件广泛使用传统接口,使其保持默认设置。

请注意,通过在 [oslo_messaging_notifications] 组中设置 driver=noop 来完全禁用通知。

版本通知列表在 https://docs.openstack.org/nova/latest/reference/notifications.html中可见

notify_on_state_change = None

字符串值

如果设置,在实例状态更改时发送 compute.instance.update 通知。

有关通知的详情,请参考 https://docs.openstack.org/nova/latest/reference/notifications.html

versioned_notifications_topics = ['versioned_notifications']

列出值

指定 nova 发布的版本通知的主题。

对于大多数部署,默认值是正常的,很少需要更改。但是,如果您有一个使用版本化通知的第三方服务,则可能需要获取该服务的主题。Nova 将向此列表中的每个主题队列发送包含版本通知有效负载的消息。

版本通知列表在 https://docs.openstack.org/nova/latest/reference/notifications.html中可见

9.1.29. osapi_v21

下表概述了 /etc/nova/nova.conf 文件中的 [osapi_v21] 组下可用的选项。

表 9.28. osapi_v21
配置选项 = 默认值类型Description

project_id_regex = None

字符串值

此选项是一个字符串,代表正则表达式(regex),与 URL 中包含的 project_id 匹配。如果没有设置,它将与 keystone 创建的普通 UUID 匹配。

可能的值:

  • 代表任何法律正则表达式的字符串

弃用自:13.0.0

原因: nova 的早期版本将项目 ID 限制为十六进制字符和短划线。如果您的安装使用这个范围之外的 ID,您应该使用这个选项提供自己的正则表达式,并留出时间将外部项目迁移到下一版本前的有效 ID。

9.1.30. oslo_concurrency

下表概述了 /etc/nova/nova.conf 文件中的 [oslo_concurrency] 组下可用的选项。

表 9.29. oslo_concurrency
配置选项 = 默认值类型Description

disable_process_locking = False

布尔值

启用或禁用进程间锁定。

lock_path = None

字符串值

用于锁定文件的目录。为安全起见,指定的目录应仅可由运行需要锁定的进程的用户写入。默认为环境变量 OSLO_LOCK_PATH。如果使用外部锁定,则必须设置锁定路径。

9.1.31. oslo_messaging_amqp

下表概述了 /etc/nova/nova.conf 文件中的 [oslo_messaging_amqp] 组下可用的选项。

表 9.30. oslo_messaging_amqp
配置选项 = 默认值类型Description

addressing_mode = dynamic

字符串值

表示驱动程序使用的寻址模式。允许的值: legacy - 使用旧的不可路由寻址;routable - 使用可路由地址;dynamic - 如果消息总线不支持路由,使用 legacy,如果支持,使用 routable。

anycast_address = anycast

字符串值

发送到一组消费者时附加到地址前缀。消息总线用来识别应跨消费者以轮循方式发送的消息。

broadcast_prefix = broadcast

字符串值

地址广播到所有服务器时使用的地址前缀

connection_retry_backoff = 2

整数值

在每个故障转移尝试失败后,将 connection_retry_interval 增加这个秒数。

connection_retry_interval = 1

整数值

尝试重新连接前暂停的秒数。

connection_retry_interval_max = 30

整数值

connection_retry_interval + connection_retry_backoff 的最大限制

container_name = None

字符串值

AMQP 容器的名称。必须是全局唯一的。默认为生成的 UUID

default_notification_exchange = None

字符串值

通知地址中使用的交换名称。Exchange name resolution priority: Target.exchange,如果设置了其他 default_notification_exchange,如果设置了其他 control_exchange,则 Target.exchange

default_notify_timeout = 30

整数值

发送通知消息发送的截止时间。仅在调用者不提供超时到期时使用。

default_reply_retry = 0

整数值

重新发送因可恢复错误导致回复消息的最大尝试数。

default_reply_timeout = 30

整数值

rpc 回复消息发送的截止时间。

default_rpc_exchange = None

字符串值

RPC 地址中使用的交换名称。Exchange name resolution priority: Target.exchange (如果设置了其他 default_ rpc_exchange,如果设置了其他 control_exchange,则 Target.exchange

default_send_timeout = 30

整数值

rpc cast 或调用消息发送的截止时间。仅在调用者不提供超时到期时使用。

default_sender_link_timeout = 600

整数值

调度闲置发送方链接的清除持续时间。在到期后分离链接。

group_request_prefix = unicast

字符串值

发送到组中任何服务器时的地址前缀

idle_timeout = 0

整数值

不活跃连接的超时时间(以秒为单位)

link_retry_delay = 10

整数值

由于可恢复的错误,在重新连接 AMQP 1.0 链接之间暂停的时间。

multicast_address = multicast

字符串值

发送 fanout 消息时附加到地址前缀。消息总线用于识别 fanout 消息。

notify_address_prefix = openstack.org/om/notify

字符串值

所有生成的通知地址的地址前缀

notify_server_credit = 100

整数值

传入通知消息的窗口大小

pre_settled = ['rpc-cast', 'rpc-reply']

多值

预设置此类型的消息。pre-settled 消息不会从 peer 接收确认。注:如果发送失败,可能会静默地丢弃预先设置的消息。允许的值: rpc-call - 发送 RPC 调用预设定的 rpc-reply- 发送 RPC Replies pre-settled rpc-cast - Send RPC Casts pre-settled notify - 发送通知预设置

pseudo_vhost = True

布尔值

为不原生支持虚拟主机(如 qpidd)的消息总线启用虚拟主机支持。当设置为 true 时,虚拟主机名将添加到所有消息总线地址中,从而有效地为每个虚拟主机 创建专用子网。如果消息总线支持使用 AMQP 1.0 Open performative 作为虚拟主机名称中的 hostname 字段进行虚拟主机,设置为 False。

reply_link_credit = 200

整数值

传入 RPC Reply 消息的窗口大小。

rpc_address_prefix = openstack.org/om/rpc

字符串值

所有生成的 RPC 地址的地址前缀

rpc_server_credit = 100

整数值

传入 RPC 请求消息的窗口大小

`sasl_config_dir = `

字符串值

包含 SASL 配置的目录路径

`sasl_config_name = `

字符串值

配置文件的名称(不带 .conf 后缀)

`sasl_default_realm = `

字符串值

如果用户名中没有域,则使用 SASL 域

`sasl_mechanisms = `

字符串值

空格分隔的 SASL 机制列表

server_request_prefix = exclusive

字符串值

发送到特定服务器时使用的地址前缀

ssl = False

布尔值

尝试通过 SSL 连接。如果没有给出其他与 ssl 相关的参数,它将使用系统的 CA-bundle 来验证服务器的证书。

`ssl_ca_file = `

字符串值

用于验证服务器证书的 CA 证书 PEM 文件

`ssl_cert_file = `

字符串值

自我识别证书 PEM 文件以进行客户端身份验证

`ssl_key_file = `

字符串值

用于为 ssl_cert_file 证书签名的私钥 PEM 文件(可选)

ssl_key_password = None

字符串值

用于解密 ssl_key_file 的密码(如果加密)

ssl_verify_vhost = False

布尔值

默认情况下,SSL 检查服务器证书中的名称是否与 transport_url 中的主机名匹配。在某些配置中,最好使用虚拟主机名,例如,如果服务器使用 Server Name Indication TLS 扩展(rfc6066)为每个虚拟主机提供证书。如果服务器的 SSL 证书使用虚拟主机名而不是 DNS 名称,则将 ssl_verify_vhost 设置为 True。

trace = False

布尔值

debug:将 AMQP 帧转储到 stdout

unicast_address = unicast

字符串值

当发送到特定的 RPC/Notification 服务器时,附加到地址前缀。消息总线用来识别发送到单个目的地的消息。

9.1.32. oslo_messaging_kafka

下表概述了 /etc/nova/nova.conf 文件中的 [oslo_messaging_kafka] 组下可用的选项。

表 9.31. oslo_messaging_kafka
配置选项 = 默认值类型Description

compression_codec = none

字符串值

生成者生成的所有数据的压缩代码c。如果没有设置,则不会使用压缩。请注意,允许的值取决于 kafka 版本

conn_pool_min_size = 2

整数值

连接过期策略的池大小限制

conn_pool_ttl = 1200

整数值

池中闲置连接的时间为 sec

consumer_group = oslo_messaging_consumer

字符串值

Kafka 消费者的组 ID。一个组中的消费者将协调消息消耗

enable_auto_commit = False

布尔值

启用异步消费者提交

kafka_consumer_timeout = 1.0

浮点值

Kafka 用户的默认超时时间

kafka_max_fetch_bytes = 1048576

整数值

Kafka 使用者的最大获取字节

max_poll_records = 500

整数值

轮询调用中返回的最大记录数

pool_size = 10

整数值

Kafka Consumers 的池大小

producer_batch_size = 16384

整数值

producer async 发送的批处理大小

producer_batch_timeout = 0.0

浮点值

KafkaProducer batching 延迟的上限(以秒为单位)

sasl_mechanism = PLAIN

字符串值

安全协议为 SASL 时的机制

security_protocol = PLAINTEXT

字符串值

用于与代理通信的协议

`ssl_cafile = `

字符串值

用于验证服务器证书的 CA 证书 PEM 文件

9.1.33. oslo_messaging_notifications

下表概述了 /etc/nova/nova.conf 文件中的 [oslo_messaging_notifications] 组下可用的选项。

表 9.32. oslo_messaging_notifications
配置选项 = 默认值类型Description

driver = []

多值

处理发送通知的驱动程序。可能的值有 messaging, messagingv2, route, log, test, noop

retry = -1

整数值

重新发送通知消息的最大次数,该消息因为可恢复的错误而无法发送。0 - 无重试,-1 - indefinite

topics = ['notifications']

列出值

用于 OpenStack 通知的 AMQP 主题。

transport_url = None

字符串值

代表用于通知的消息驱动程序的 URL。如果没有设置,我们回退到用于 RPC 的相同配置。

9.1.34. oslo_messaging_rabbit

下表概述了 /etc/nova/nova.conf 文件中的 [oslo_messaging_rabbit] 组下可用的选项。

表 9.33. oslo_messaging_rabbit
配置选项 = 默认值类型Description

amqp_auto_delete = False

布尔值

AMQP 中的自动删除队列。

amqp_durable_queues = False

布尔值

在 AMQP 中使用 durable 队列。

direct_mandatory_flag = True

布尔值

(DEPRECATED)为直接发送启用/禁用 RabbitMQ 强制标志。直接发送作为回复使用,因此在客户端队列不存在时引发 MessageUndeliverable 异常。MessageUndeliverable 异常将用于循环超时,以便可以进行发送者恢复。这个标志已弃用,且无法停用此功能

enable_cancel_on_failover = False

布尔值

启用 x-cancel-on-ha-failover 标志,以便 rabbitmq 服务器将取消并通知消费者的时间队列停机

heartbeat_in_pthread = False

布尔值

EXPERIMENTAL:通过原生 python 线程运行健康检查心跳线程。默认情况下,如果此选项未提供健康检查心跳,则来自父进程的执行模型。例如,如果父进程使用 eventlet/greenlet 对stdlib 进行补丁,则通过绿色线程运行 heartbeatwill。

heartbeat_rate = 2

整数值

在 heartbeat_timeout_threshold 期间,我们检查心跳的频率。

heartbeat_timeout_threshold = 60

整数值

如果心跳的 keep-alive 失败(0 禁用心跳)时 Rabbit 代理被视为 down 的秒数。

kombu_compression = None

字符串值

EXPERIMENTAL :可能的值有:gzip、bz2。如果没有设置压缩,则不会使用。以后的版本中可能不提供这个选项。

kombu_failover_strategy = round-robin

字符串值

决定在我们当前连接到的 RabbitMQ 节点不可用时如何选择下一个 RabbitMQ 节点。仅在配置中提供了多个 RabbitMQ 节点时才生效。

kombu_missing_consumer_retry_timeout = 60

整数值

在取消发送其回复前,等待丢失客户端的时间。这个值不应超过 rpc_response_timeout。

kombu_reconnect_delay = 1.0

浮点值

在响应 AMQP 消费者取消通知前等待的时间。

rabbit_ha_queues = False

布尔值

尝试在 RabbitMQ 中使用 HA 队列(x-ha-policy: all)。如果更改这个选项,您必须擦除 RabbitMQ 数据库。在 RabbitMQ 3.0 中,在声明队列时,队列镜像不再由 x-ha-policy 参数控制。如果您只想确保所有队列(除自动生成的名称外)都在所有节点上镜像,请运行:"rabbitmqctl set_policy HA ^(?!amq\.) VirtualMachine {"ha-mode": "all"} "

rabbit_interval_max = 30

整数值

RabbitMQ 连接重试的最大间隔。默认值为 30 秒。

rabbit_login_method = AMQPLAIN

字符串值

RabbitMQ 登录方法。

rabbit_qos_prefetch_count = 0

整数值

指定要 prefetch 的消息数。设置为零可允许无限消息。

rabbit_retry_backoff = 2

整数值

连接到 RabbitMQ 时重试之间的 backoff 时长。

rabbit_retry_interval = 1

整数值

重试与 RabbitMQ 连接的频率。

rabbit_transient_queues_ttl = 1800

整数值

正整数,代表队列 TTL (x-expires)的持续时间(以秒为单位)。在 TTL 持续时间内未使用的队列会被自动删除。参数仅影响回复和无线队列。

ssl = False

布尔值

通过 SSL 连接。

`ssl_ca_file = `

字符串值

SSL 认证认证机构文件(仅在启用 SSL 时进行检查)。

`ssl_cert_file = `

字符串值

SSL 证书文件(仅在启用 SSL 时进行检查)。

`ssl_key_file = `

字符串值

SSL 密钥文件(仅在启用 SSL 时进行检查)。

`ssl_version = `

字符串值

要使用的 SSL 版本(仅在启用 SSL 时进行评估)。有效值为 TLSv1 和 SSLv23。SSLv2、SSLv3、TLSv1_1 和 TLSv1_2 可以在某些发行版中可用。

9.1.35. oslo_middleware

下表概述了 /etc/nova/nova.conf 文件中的 [oslo_middleware] 组下可用的选项。

表 9.34. oslo_middleware
配置选项 = 默认值类型Description

enable_proxy_headers_parsing = False

布尔值

应用程序是否在代理后面。这决定了中间件是否应该解析标头。

max_request_body_size = 114688

整数值

每个请求的最大正文大小,以字节为单位。

secure_proxy_ssl_header = X-Forwarded-Proto

字符串值

用于决定原始请求协议方案的 HTTP 标头,即使它被 SSL 终止代理隐藏。

9.1.36. oslo_policy

下表概述了 /etc/nova/nova.conf 文件中的 [oslo_policy] 组下可用的选项。

表 9.35. oslo_policy
配置选项 = 默认值类型Description

enforce_scope = False

布尔值

此选项控制在评估策略时是否强制执行范围。如果为 True,则请求中使用的令牌范围将与要强制执行的策略的 scope_types 进行比较。如果范围不匹配,则引发 InvalidScope 异常。如果为 False,则会记录一条信息,告知操作员使用了不匹配的范围调用策略。

policy_default_rule = default

字符串值

默认规则。未找到请求的规则时强制执行。

policy_dirs = ['policy.d']

多值

保存策略配置文件的目录。它们可以相对于 config_dir 选项定义的搜索路径中的任何目录,或绝对路径。policy_file 定义的文件必须存在,才能搜索这些目录。缺少或空目录将被忽略。

policy_file = policy.json

字符串值

将文件相对或绝对路径,该文件将角色映射到给定服务的权限。相对路径必须与配置文件设置此选项相关。

remote_content_type = application/x-www-form-urlencoded

字符串值

用于发送和接收基于 REST 策略检查的数据的内容类型

remote_ssl_ca_crt_file = None

字符串值

基于 REST 的策略检查的 ca 证书文件的绝对路径

remote_ssl_client_crt_file = None

字符串值

基于 REST 的策略检查的客户端证书的绝对路径

remote_ssl_client_key_file = None

字符串值

绝对路径客户端密钥文件 REST 基于策略检查

remote_ssl_verify_server_crt = False

布尔值

基于 REST 的策略检查的服务器身份验证

9.1.37. pci

下表概述了 /etc/nova/nova.conf 文件中的 [pci] 组下可用的选项。

表 9.36. pci
配置选项 = 默认值类型Description

alias = []

多值

PCI 透传设备要求的别名。

这允许用户在类别的额外规格中指定别名,而无需重复所有 PCI 属性要求。

这应该为 nova-api 服务配置,并且假设您想为每个 nova-compute 服务使用移动操作。

可能的值:

  • 描述别名的 JSON 值的字典。例如:

    alias = {
      "name": "QuickAssist",
      "product_id": "0443",
      "vendor_id": "8086",
      "device_type": "type-PCI",
      "numa_policy": "required"
    }
    This defines an alias for the Intel QuickAssist card. (multi valued). Valid
    key values are :
    `name`
      Name of the PCI alias.
    `product_id`
      Product ID of the device in hexadecimal.
    `vendor_id`
      Vendor ID of the device in hexadecimal.
    `device_type`
      Type of PCI device. Valid values are: `type-PCI`, `type-PF` and
      `type-VF`. Note that `"device_type": "type-PF"` **must** be specified
      if you wish to passthrough a device that supports SR-IOV in its entirety.
    `numa_policy`
      Required NUMA affinity of device. Valid values are: `legacy`,
      `preferred` and `required`.
  • 通过重复选项来支持多个别名(而不是通过指定

    列表值)
    alias = { "name": "QuickAssist-1", "product_id": "0443", "vendor_id": "8086", "device_type": "type-PCI", "numa_policy": "required" } alias = { "name": "QuickAssist-2", "product_id": "0444", "vendor_id": "8086", "device_type": "type-PCI", "numa_policy": "required" }

passthrough_whitelist = []

多值

可用于虚拟机的 PCI 设备列表。

可能的值:

  • 描述白名单 PCI 设备的 JSON 字典。它应该采取

    以下格式

    ["vendor_id": "<id>",] ["product_id": "<id>",] ["address": "[[[[<domain>]:]<bus>]:][<slot>][.[<function>]]" | "devname": "<name>",] {"<tag>": "<tag_value>",}

    Where `[` indicates zero or one occurrences, `{` indicates zero or
    multiple occurrences, and `&verbar;` mutually exclusive options. Note that any
    missing fields are automatically wildcarded.
    Valid key values are :
    `vendor_id`
      Vendor ID of the device in hexadecimal.
    `product_id`
      Product ID of the device in hexadecimal.
    `address`
      PCI address of the device. Both traditional glob style and regular
      expression syntax is supported.
    `devname`
      Device name of the device (for e.g. interface name). Not all PCI devices
      have a name.
    `<tag>`
      Additional `<tag>` and `<tag_value>` used for matching PCI devices.
      Supported `<tag>` values are :
    • physical_network
    • trusted
    有效示例为
    passthrough_whitelist = {"devname":"eth0", "physical_network":"physnet"} passthrough_whitelist = {"address":":0a:00."} passthrough_whitelist = {"address":":0a:00.", "physical_network":"physnet1"} passthrough_whitelist = {"vendor_id":"1137", "product_id":"0071"} passthrough_whitelist = {"vendor_id":"1137", "product_id":"0071", "address": "0000:0a:00.1", "physical_network":"physnet1"} passthrough_whitelist = {"address":{"domain": ".", "bus": "02", "slot": "01", "function": "[2-7]"}, "physical_network":"physnet1"} passthrough_whitelist = {"address":{"domain": ".", "bus": "02", "slot": "0[1-2]", "function": ".*"}, "physical_network":"physnet1"} passthrough_whitelist = {"devname": "eth0", "physical_network":"physnet1", "trusted": "true"}
    以下是无效的,因为它们指定了互斥选项
    passthrough_whitelist = {"devname":"eth0", "physical_network":"physnet", "address":":0a:00."}
  • 与上述格式对应的 JSON 字典列表。对于

    示例
    passthrough_whitelist = [{"product_id":"0001", "vendor_id":"8086"}, {"product_id":"0002", "vendor_id":"8086"}]

9.1.38. placement

下表概述了 /etc/nova/nova.conf 文件中的 [placement] 组下可用的选项。

表 9.37. placement
配置选项 = 默认值类型Description

auth-url = None

字符串值

身份验证 URL

auth_section = None

字符串值

从中加载插件特定选项的配置部分

auth_type = None

字符串值

要载入的身份验证类型

cafile = None

字符串值

在验证 HTTP 连接时要使用的 PEM 编码证书颁发机构。

certFile = None

字符串值

PEM 编码客户端证书文件

collect-timing = False

布尔值

收集每个API 调用计时信息。

connect-retries = None

整数值

应该尝试连接错误的最大重试次数。

connect-retry-delay = None

浮点值

连接错误两次重试之间的延迟(以秒为单位)。如果没有设置,则使用最多 60 秒的指数重试,从 0.5 秒开始。

default-domain-id = None

字符串值

用于 v3 和 v2 参数的可选域 ID。它将用于 v3 中的用户和项目域,并在 v2 身份验证中忽略。

default-domain-name = None

字符串值

用于 v3 API 和 v2 参数的可选域名。它将用于 v3 中的用户和项目域,并在 v2 身份验证中忽略。

domain-id = None

字符串值

范围到的域 ID

domain-name = None

字符串值

范围到的域名

endpoint-override = None

字符串值

始终将此端点 URL 用于此客户端的请求。注意:应在此处指定未版本化的端点;若要请求特定的 API 版本,使用 version, min-version, 和/或 max-version 选项。

insecure = False

布尔值

验证 HTTPS 连接。

keyfile = None

字符串值

PEM 编码客户端证书密钥文件

password = None

字符串值

用户密码

project-domain-id = None

字符串值

包含项目的域 ID

project-domain-name = None

字符串值

包含项目的域名

project-id = None

字符串值

项目 ID 的范围

project-name = None

字符串值

范围到的项目名称

region-name = None

字符串值

端点 URL 发现的默认 region_name。

service-name = None

字符串值

用于端点 URL 发现的默认 service_name。

service-type = placement

字符串值

端点 URL 发现的默认 service_type。

split-loggers = False

布尔值

将请求记录到多个日志记录器。

status-code-retries = None

整数值

应该尝试检索 HTTP 状态代码的最大重试次数。

status-code-retry-delay = None

浮点值

对可分配状态代码进行两个重试之间的延迟(以秒为单位)。如果没有设置,则使用最多 60 秒的指数重试,从 0.5 秒开始。

system-scope = None

字符串值

系统操作范围

tenant-id = None

字符串值

租户 ID

tenant-name = None

字符串值

租户名称

timeout = None

整数值

http 请求的超时值

trust-id = None

字符串值

信任 ID

user-domain-id = None

字符串值

用户的域 ID

user-domain-name = None

字符串值

用户的域名

user-id = None

字符串值

用户 ID

username = None

字符串值

用户名

valid-interfaces = ['internal', 'public']

列出值

端点 URL 的首选接口列表。

9.1.39. powervm

下表概述了 /etc/nova/nova.conf 文件中的 [powervm] 组下可用的选项。

表 9.38. powervm
配置选项 = 默认值类型Description

disk_driver = localdisk

字符串值

用于 PowerVM 磁盘的磁盘驱动程序。PowerVM 支持 localdisk 和 PowerVM 共享存储池磁盘驱动程序。

相关选项:

  • volume_group_name - 使用 localdisk 时需要

proc_units_factor = 0.1

浮点值

用于计算提供给每个 vCPU 的物理处理器计算电源的因素。例如值 1.0 表示整个物理处理器,而 0.05 表示物理处理器的 1/20 个。

`volume_group_name = `

字符串值

用于块设备操作的卷组。如果 disk_driver 是 localdisk,则必须指定此属性。强烈建议您不要使用 rootvg,因为由管理分区使用,并填充会导致失败。

9.1.40. privsep

下表概述了 /etc/nova/nova.conf 文件中的 [privsep] 组下可用的选项。

表 9.39. privsep
配置选项 = 默认值类型Description

capabilities = []

列出值

privsep 守护进程保留的 Linux 功能列表。

group = None

字符串值

privsep 守护进程应运行的组。

helper_command = None

字符串值

如果使用 "fork" 方法调用来启动 privsep 守护进程的命令。如果没有指定,则使用 "sudo privsep-helper" 生成默认值,以及旨在重新创建当前配置的参数。这个命令必须接受合适的 --privsep_context 和 --privsep_sock_path 参数。

thread_pool_size = <based on operating system>

整数值

privsep 用于同时运行进程的线程数量。默认为系统中的 CPU 内核数。

user = None

字符串值

privsep 守护进程应该运行的用户。

9.1.41. profiler

下表概述了 /etc/nova/nova.conf 文件中的 [profiler] 组下可用的选项。

表 9.40. profiler
配置选项 = 默认值类型Description

connection_string = messaging://

字符串值

通知程序后端的连接字符串。

默认值为 messaging://,它将 notifier 设置为 oslo_messaging。

可能的值示例:

  • messaging:// - 使用 oslo_messaging 驱动程序来发送 span。
  • redis://127.0.0.1:6379 - 使用 redis 驱动程序来发送 span。
  • MongoDB://127.0.0.1:27017 - 使用 mongodb 驱动程序来发送 span。
  • elasticsearch://127.0.0.1:9200 - 使用 elasticsearch 驱动程序来发送 span。
  • Jaeger://127.0.0.1:6831 - 使用 jaeger tracing 作为发送 span 的驱动程序。

enabled = False

布尔值

为此节点上的所有服务启用性能分析。

默认值为 False (完全禁用性能分析功能)。

可能的值:

  • true :启用该功能
  • false :禁用该功能。分析无法通过此项目操作启动。如果分析是由另一个项目触发的,则此项目部分为空。

es_doc_type = notification

字符串值

elasticsearch 中通知索引的文档类型。

es_scroll_size = 10000

整数值

Elasticsearch 将大型请求分成批处理。此参数定义每个批处理的最大大小(例如:es_scroll_size=10000)。

es_scroll_time = 2m

字符串值

此参数是一个时间值参数(例如:es_scroll_time=2m),指示参与搜索的节点将维护相关资源的时长,以便继续和支持它。

filter_error_trace = False

布尔值

启用包含与分隔位置的错误/删除的过滤跟踪。

默认值为 False。

可能的值:

  • true :启用包含 error/exception 的过滤器追踪。
  • false :禁用过滤器。

hmac_keys = SECRET_KEY

字符串值

用于加密性能分析上下文数据的 secret 密钥。

此字符串值应具有以下格式:<key1>[,<key2>,…​<keyn>],其中每个键都是一些随机字符串。通过 REST API 触发性能分析的用户必须在 REST API 调用的标头中设置其中一个密钥,使其包含此特定项目的性能分析结果。

"enabled"标志和"hmac_keys"配置选项都应设置为启用性能分析。此外,若要在所有服务中生成正确的性能分析信息,在 OpenStack 项目之间至少需要一个密钥的一致性。这样可确保可以从客户端使用它来生成 trace,其中包含所有可能资源的信息。

sentinel_service_name = mymaster

字符串值

Redissentinel 使用服务名称来识别 master redis 服务。此参数定义名称(例如:send inal_service_name=mymaster)。

socket_timeout = 0.1

浮点值

Redissentinel 在连接上提供了一个 timeout 选项。此参数定义超时(例如: socket_timeout=0.1)。

trace_sqlalchemy = False

布尔值

在服务中启用 SQL 请求性能分析。

默认值为 False (SQL 请求不会被跟踪)。

可能的值:

  • true :启用 SQL 请求分析。每个 SQL 查询都将是 trace 的一部分,可通过花费的时间来分析。
  • false :禁用 SQL 请求分析。花费的时间仅显示在更高级别的操作上。无法以这种方式分析单个 SQL 查询。

9.1.42. quota

下表概述了 /etc/nova/nova.conf 文件中的 [quota] 组下可用的选项。

表 9.41. quota
配置选项 = 默认值类型Description

cores = 20

整数值

每个项目允许的实例内核数或 vCPU 数量。

可能的值:

  • 一个正整数或 0。
  • -1 禁用配额。

count_usage_from_placement = False

布尔值

启用放置服务的配额使用量计数。

从 Train 开始,可以从 API 数据库计算内核和 ram 的配额使用量,而不必从单元数据库计算实例。

如果每个放置部署只有一个 Nova 部署,则这可以正常工作。但是,如果操作器运行多个 Nova 部署共享放置部署,则不应将此选项设置为 True,因为当前放置服务无法为每个 Nova 部署对资源提供程序进行分区。当此选项保留为默认值或设置为 False 时,Nova 将使用旧计数方法计算其单元数据库中实例的配额使用量。

请注意,如果此选项设为 True,则与调整大小相关的配额使用量行为将会受到影响。放置资源分配在目的地上声明,同时在调整大小期间对源进行分配,直到确认或恢复大小。在此期间,当服务器处于 VERIFY_RESIZE 状态时,配额使用量将反映源和目标上的资源消耗。这很有用,因为它为降级的恢复保留空间,但这意味着配额使用量在确认或恢复大小前会被释放。

对于处于 ERROR 状态的非计划服务器,行为也会有所不同。处于 ERROR 状态的服务器尚未调度到计算主机,因此不会消耗内核和 ram 的配额使用量。

对于处于 SHELVED_OFFLOADED 状态的服务器,行为会有所不同。SHELVED_OFFLOADED 状态的服务器没有放置分配,因此不会消耗内核和 ram 的配额使用量。请注意,如果用户没有足够的配额来支持服务器被取消使用,则请求可以取消服务器取消使用。

在从放置计算使用量前,必须完成 populate_queued_for_deletepopulate_user_id 在线数据迁移。在数据迁移完成前,如果此配置选项被设置为 True,系统将回退到从单元数据库计算的旧配额使用量,具体取决于每个配额检查过程中的 EXISTS 数据库查询的结果。希望避免从 EXISTS 查询的性能命中的 Operator,应该等待此配置选项设置为 True,直到它们通过 nova-manage db online_data_migrations 完成其在线数据迁移。

driver = nova.quota.DbQuotaDriver

字符串值

为配额检查提供抽象。用户可以配置用于配额检查的特定驱动程序。

fixed_ips = -1

整数值

每个项目允许的固定 IP 数量。

与浮动 IP 不同,固定 IP 在实例引导时由网络组件动态分配。此配额值应至少被允许的实例数

可能的值:

  • 一个正整数或 0。
  • -1 禁用配额。

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

floating_ips = 10

整数值

每个项目允许的浮动 IP 数量。

默认情况下,浮动 IP 不会分配给实例。用户需要从由 OpenStack 管理员配置的池中选择它们,才能将其附加到其实例。

可能的值:

  • 一个正整数或 0。
  • -1 禁用配额。

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

injected_file_content_bytes = 10240

整数值

每个注入的文件允许的字节数。

可能的值:

  • 一个正整数或 0。
  • -1 禁用配额。

injected_file_path_length = 255

整数值

允许注入的最大文件路径长度。

可能的值:

  • 一个正整数或 0。
  • -1 禁用配额。

injected_files = 5

整数值

允许注入的文件数量。

文件注入允许用户通过在引导时将数据注入其中来自定义实例的个人。只允许文本文件注入:二进制或 ZIP 文件不会被接受。在文件注入过程中,与指定文件匹配的任何现有文件都会重命名为包含带有时间戳的 .bak 扩展。

可能的值:

  • 一个正整数或 0。
  • -1 禁用配额。

instances = 10

整数值

每个项目允许的实例数量。

可能的值

  • 一个正整数或 0。
  • -1 禁用配额。

key_pairs = 100

整数值

每个用户允许的最大密钥对数。

用户可以为每个项目创建一个密钥对,并将密钥对用于属于该项目的多个实例。

可能的值:

  • 一个正整数或 0。
  • -1 禁用配额。

metadata_items = 128

整数值

每个实例允许的元数据项目数量。

用户可以在实例创建过程中将元数据与实例关联。此元数据采用键值对的形式。

可能的值:

  • 一个正整数或 0。
  • -1 禁用配额。

ram = 51200

整数值

每个项目允许的 MB 实例 RAM 数量。

可能的值:

  • 一个正整数或 0。
  • -1 禁用配额。

recheck_quota = True

布尔值

在创建资源后重新检查配额,以防止超过配额。

默认值为 True (在资源创建后重新检查配额),但可以设置为 False,以避免因为实际请求可以接受而超过配额时进行额外的负载。例如,当用户发出高并行 REST API 请求来创建服务器时,可以在竞争期间创建比允许的配额更多的服务器。如果配额是 10 个服务器,则它们可能会在突发期间创建 50 个。在突发后,他们将无法创建任何更多服务器,但它们能够保留其 50 个服务器,直到它们删除它们为止。

初始配额检查是在创建资源之前完成的,因此如果多个并行请求同时到达,则所有请求都可以通过配额检查和创建资源,可能会超过配额。当 recheck_quota 为 True 时,配额将在资源创建后第二次检查,如果资源超过配额,它将被删除,并引发 OverQuota,通常会导致对 REST API 用户的 403 响应。这使得用户无法超过配额,但当 REST API 用户有足够配额时,即使用户请求有足够配额可用,也可以被拒绝 REST API 用户。

security_group_rules = 20

整数值

每个安全组的安全规则数量。

每个安全组中的关联规则控制到组中实例的流量。

可能的值:

  • 一个正整数或 0。
  • -1 禁用配额。

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

security_groups = 10

整数值

项目的安全组数量。

可能的值:

  • 一个正整数或 0。
  • -1 禁用配额。

弃用自:15.0.0

原因: nova-network 已被弃用,就像任何相关的配置选项一样。

server_group_members = 10

整数值

每个服务器组的最大服务器数量。

可能的值:

  • 一个正整数或 0。
  • -1 禁用配额。

server_groups = 10

整数值

每个项目的最大服务器组数量。

服务器组用于控制一组服务器或实例的关联性和反关联性调度策略。减少配额不会影响任何现有组,但不会允许新的服务器超过配额。

可能的值:

  • 一个正整数或 0。
  • -1 禁用配额。

9.1.43. rdp

下表概述了 /etc/nova/nova.conf 文件中的 [rdp] 组下可用的选项。

表 9.42. rdp
配置选项 = 默认值类型Description

enabled = False

布尔值

启用远程桌面协议(RDP)相关功能。

Hyper-V 与在 Nova 计算节点中使用的大多数虚拟机监控程序不同,使用 RDP 而不是 VNC 和 SPICE 作为桌面共享协议,以提供实例控制台访问。这个选项为 Hyper-V 创建的虚拟机启用 RDP 图形控制台访问。

注: 只有支持 Hyper-V 虚拟化平台的计算节点上才会启用 RDP。

相关选项:

  • compute_driver :必须是 hyperv。

html5_proxy_base_url = http://127.0.0.1:6083/

URI 值

最终用户用来连接到 RDP HTML5 控制台代理的 URL。控制台代理服务通过这个 token-embedded URL 调用,并建立与正确实例的连接。

RDP HTML5 控制台代理服务需要配置为侦听此处配置的地址。通常,控制台代理服务将在控制器节点上运行。作为默认使用的 localhost 地址只能在单一节点环境中工作,例如 devstack。

RDP HTML5 代理允许用户使用 RDP 通过任何 Windows 服务器或工作站的文本或图形控制台访问。RDP HTML5 控制台代理服务包括 FreeRDP、wsgate。请参阅 https://github.com/FreeRDP/FreeRDP-WebConnect

可能的值:

  • <scheme>://<ip-address>:<port-number>/

    The scheme must be identical to the scheme configured for the RDP HTML5
    console proxy service. It is `http` or `https`.
    The IP address must be identical to the address on which the RDP HTML5
    console proxy service is listening.
    The port must be identical to the port on which the RDP HTML5 console proxy
    service is listening.

相关选项:

  • RDP.enabled: 必须设为 True,用于 html5_proxy_base_url 才有效。

9.1.44. remote_debug

下表概述了 /etc/nova/nova.conf 文件中的 [remote_debug] 组下可用的选项。

表 9.43. remote_debug
配置选项 = 默认值类型Description

host = None

主机地址值

要连接的调试主机(IP 或 name)。当您要通过不同主机上运行的虚拟机的调试器连接到 nova 服务时,会使用此命令行参数。

请注意,使用远程调试选项更改 Nova 如何使用 eventlet 库支持 async IO。这可能会导致在正常操作下不会发生失败。自行使用风险。

可能的值:

  • 远程主机的 IP 地址作为 nova 服务的命令行参数。例如:

    /usr/local/bin/nova-compute --config-file /etc/nova/nova.conf
    --remote_debug-host <IP address where the debugger is running>

port = None

端口值

要连接的调试端口。此命令行参数允许您指定通过在不同主机上运行的调试器连接到 nova 服务的端口。

请注意,使用远程调试选项更改 Nova 如何使用 eventlet 库支持 async IO。这可能会导致在正常操作下不会发生失败。自行使用风险。

可能的值:

  • 您要用作 nova 服务的命令行参数的端口号。例如:

    /usr/local/bin/nova-compute --config-file /etc/nova/nova.conf
    --remote_debug-host <IP address where the debugger is running>
    --remote_debug-port <port> it's listening on>.

9.1.45. scheduler

下表概述了 /etc/nova/nova.conf 文件中的 [scheduler] 组下可用的选项。

表 9.44. scheduler
配置选项 = 默认值类型Description

discover_hosts_in_cells_interval = -1

整数值

定期任务间隔。

这个值控制调度程序应尝试发现添加到单元中的新主机的频率(以秒为单位)。如果为负(默认),则不会进行自动发现。

计算节点变得经常需要启用的部署,在添加节点时可能会首选手动发现主机,以避免持续检查任何开销。如果启用,每次运行时,每次运行时,我们将在每次运行时从每个单元数据库中选择任何未映射的主机。

driver = filter_scheduler

字符串值

调度程序使用的驱动程序类。这应该从文件 setup.cfg 的命名空间 nova.scheduler.driver 下的其中一个入口点中选择。如果此选项中没有指定任何内容,则使用 filter_scheduler

其他选项有:

  • fake_scheduler 用于测试。

可能的值:

  • Nova 中包含的任何驱动程序:
  • filter_scheduler
  • fake_scheduler
  • 您还可以将其设置为自定义调度程序驱动程序的入口点名称,但您将在 setup.cfg 文件中创建和维护它。

相关选项:

  • Worker

enable_isolated_aggregate_filtering = False

布尔值

此设置允许调度程序根据聚合元数据和实例 flavor/image 中匹配的所需特征来限制聚合中的主机。如果使用带有键特征的属性配置了聚合:trait:$TRAIT_NAME 和值 required,则实例类别 extra_specs 和/或镜像元数据还必须包含trait:$TRAIT_NAME=required 有资格调度到该聚合中的主机。更多技术详情,请访问 https://docs.openstack.org/nova/latest/reference/isolate-aggregates.html

limit_tenants_to_placement_aggregate = False

布尔值

此设置会导致调度程序使用将 filter_tenant_id 设置为传入请求的元数据键来查找主机聚合,并从放置请求请求结果限制为该聚合。通过将序列号附加到键,如 filter_tenant_id:123,可以将多个租户添加到单个聚合中。

必须在放置中镜像匹配的聚合 UUID,才能正确操作。如果没有找到租户 ID 的主机聚合,或者聚合与放置中不匹配,则结果将与不查找任何适合请求的主机相同。

另请参阅 placement_aggregate_required_for_tenants 选项。

max_attempts = 3

整数值

这是为给定实例 build/move 操作进行的最大尝试次数。它限制调度程序返回的备用主机数量。当该主机列表耗尽时,会引发 MaxRetriesExceeded 异常,实例被设置为错误状态。

可能的值:

  • 一个正整数,整数与构建或移动实例时可以进行的最大尝试数对应。

max_placement_results = 1000

整数值

此设置决定了在调度操作期间从放置服务接收的结果的最大限制。它有效地限制可能考虑用于与大量候选者匹配的调度请求的主机数量。

值为 1 (最小)将有效地对放置服务进行延迟调度,"will it fit"。数值将设置调度程序在过滤和权重过程中将考虑的结果数上限。大型部署可能需要将其设置为可用主机总数,以限制调度程序的内存消耗、网络流量等。

FilterScheduler 只使用这个选项;如果您使用不同的调度程序,这个选项无效。

periodic_task_interval = 60

整数值

定期任务间隔。

这个值控制在调度程序中运行定期任务的频率(以秒为单位)。对每个期间运行的特定任务由所使用的特定调度程序决定。目前没有使用这个选项的树内调度程序驱动程序。

如果这大于 nova-service service_down_time 设置,ComputeFilter (如果启用)可能会认为计算服务为 down。由于每个调度程序的工作方式与其它调度程序不同,因此请务必使用您选择的调度程序对其进行测试。

可能的值:

  • 整数,整数对应于定期任务间隔(以秒为单位)。0 使用默认间隔(60 秒)。负值会禁用定期任务。

相关选项:

  • nova-service service_down_time

placement_aggregate_required_for_tenants = False

布尔值

当 limit_tenants_to_placement_aggregate=True 时,将控制是否允许没有聚合关联性的租户调度到任何可用的节点。如果使用聚合来限制某些租户但并非所有,则这应为 False。如果所有租户都应通过聚合限制,则这应为 True,以防止它们获得对任何可用节点的不受限制的调度。

另请参阅 limit_tenants_to_placement_aggregate 选项。

query_placement_for_availability_zone = False

布尔值

此设置会使调度程序使用设置为传入请求所提供的值的元数据键(availability_zone)查找主机聚合,并从放置请求请求结果限制为该聚合。

必须在放置中镜像匹配的聚合 UUID,才能正确操作。如果没有找到 availability_zone 键的主机聚合,或者该聚合在放置中不匹配,则结果将与不查找任何合适的主机相同。

请注意,如果启用此标志,您可以在调度程序中禁用 (效率) AvailabilityZoneFilter。

query_placement_for_image_type_support = False

布尔值

此设置会导致调度程序仅为支持请求中使用的镜像的 disk_format 的计算主机请求放置。

Worker = None

整数值

nova-scheduler 服务的 worker 数量。如果使用 "filter_scheduler" 调度程序驱动程序,默认是可用的 CPU 数量,否则默认值为 1。

9.1.46. serial_console

下表概述了 /etc/nova/nova.conf 文件中的 [serial_console] 组下可用的选项。

表 9.45. serial_console
配置选项 = 默认值类型Description

base_url = ws://127.0.0.1:6083/

URI 值

最终用户用来连接到 nova-serialproxy 服务的 URL。

nova-serialproxy 服务通过此令牌增强的 URL 调用,并建立与正确实例的连接。

相关选项:

  • IP 地址必须与 nova-serialproxy 服务正在侦听的地址相同(请参阅本节中的选项 serialproxy_host )。
  • 该端口必须与本节的 serialproxy_port 选项相同。
  • 如果您选择使用安全的 websocket 连接,则使用 ws:// 启动此选项,而不是不安全的 ws://。必须为此在 [DEFAULT] 项中设置 certkey 选项。

enabled = False

布尔值

启用串行控制台功能。

要使用此功能,服务 nova-serialproxy 需要运行。此服务通常在控制器节点上执行。

port_range = 10000:20000

字符串值

客户机可用于其后端的 TCP 端口范围。

创建的每个实例都使用此范围内的一个端口。如果范围不足来为新实例提供另一个端口,则此实例不会启动。

可能的值:

  • 传递 regex ^\d+:\d+$ 的每个字符串,如 10000:20000。确保第一个端口号小于第二个端口号,并且两者都从 0 到 65535。

proxyclient_address = 127.0.0.1

字符串值

代理客户端(如 nova-serialproxy)应连接到的 IP 地址,以获取实例的串行控制台。

这通常是 nova-compute 服务的主机的 IP 地址。

serialproxy_host = 0.0.0.0

字符串值

nova-serialproxy 服务使用的 IP 地址,用于侦听传入请求。

nova-serialproxy 服务侦听此 IP 地址,以获取到公开串行控制台的实例的连接请求。

相关选项:

  • 确保这与本节的 base_url 选项中定义的相同 IP 地址,或者使用 0.0.0.0 侦听所有地址。

serialproxy_port = 6083

端口值

nova-serialproxy 服务用来侦听传入请求的端口号。

nova-serialproxy 服务侦听此端口号,以获取到公开串行控制台的实例的连接请求。

相关选项:

  • 确保这与本节的 base_url 选项中定义的相同端口号。

9.1.47. service_user

下表概述了 /etc/nova/nova.conf 文件中的 [service_user] 组下可用的选项。

表 9.46. service_user
配置选项 = 默认值类型Description

auth-url = None

字符串值

身份验证 URL

auth_section = None

字符串值

从中加载插件特定选项的配置部分

auth_type = None

字符串值

要载入的身份验证类型

cafile = None

字符串值

在验证 HTTP 连接时要使用的 PEM 编码证书颁发机构。

certFile = None

字符串值

PEM 编码客户端证书文件

collect-timing = False

布尔值

收集每个API 调用计时信息。

default-domain-id = None

字符串值

用于 v3 和 v2 参数的可选域 ID。它将用于 v3 中的用户和项目域,并在 v2 身份验证中忽略。

default-domain-name = None

字符串值

用于 v3 API 和 v2 参数的可选域名。它将用于 v3 中的用户和项目域,并在 v2 身份验证中忽略。

domain-id = None

字符串值

范围到的域 ID

domain-name = None

字符串值

范围到的域名

insecure = False

布尔值

验证 HTTPS 连接。

keyfile = None

字符串值

PEM 编码客户端证书密钥文件

password = None

字符串值

用户密码

project-domain-id = None

字符串值

包含项目的域 ID

project-domain-name = None

字符串值

包含项目的域名

project-id = None

字符串值

项目 ID 的范围

project-name = None

字符串值

范围到的项目名称

send_service_user_token = False

布尔值

为 True 时,如果将用户令牌发送到 REST API,还会发送服务令牌。

Nova 经常重复使用提供给 nova-api 的用户令牌与其他 REST API 通信,如 Cinder、Glance 和 Neutron。用户令牌在向 Nova 发出请求时有效,但令牌可能会在到达其他服务前过期。为避免任何故障,并且为了清除它是 Nova 代表用户调用该服务的 Nova,我们将包含服务令牌以及用户令牌。如果用户的令牌已过期,有效的服务令牌可确保 keystone 中间件仍然可以接受 REST API 请求。

split-loggers = False

布尔值

将请求记录到多个日志记录器。

system-scope = None

字符串值

系统操作范围

tenant-id = None

字符串值

租户 ID

tenant-name = None

字符串值

租户名称

timeout = None

整数值

http 请求的超时值

trust-id = None

字符串值

信任 ID

user-domain-id = None

字符串值

用户的域 ID

user-domain-name = None

字符串值

用户的域名

user-id = None

字符串值

用户 ID

username = None

字符串值

用户名

9.1.48. spice

下表概述了 /etc/nova/nova.conf 文件中的 [spice] 组下可用的选项。

表 9.47. spice
配置选项 = 默认值类型Description

agent_enabled = True

布尔值

在实例上启用 SPICE 客户机代理支持。

Tailoring 代理与 Ice 协议一起工作,以提供更好的客户机控制台体验。但是,仍然可以在不进行站代理的情况下,仍可使用 kiosk 控制台。启用了 Tailoring 代理后启用了以下功能:

  • 在客户端和客户端机器之间复制和粘贴文本和镜像
  • 自动调整当客户端屏幕更改时的分辨率 - 例如,如果您使面的控制台完整屏幕,则客户机分辨率将调整以匹配它,而不是字母箱。
  • 更好的鼠标集成 - 可捕获和发布鼠标,而无需在控制台内点击鼠标或按键释放它。鼠标移动的性能也提高了。

enabled = False

布尔值

启用 SPICE 相关功能。

相关选项:

  • 必须明确禁用 VNC 才能访问 SPICE 控制台。将 [vnc] 部分中的 enabled 选项设置为 False 以禁用 VNC 控制台。

html5proxy_base_url = http://127.0.0.1:6082/spice_auto.html

URI 值

SPICE HTML5 控制台代理的位置。

最终用户将使用此 URL 连接到 nova-spicehtml5proxy 服务。此服务将请求转发到实例的控制台。

要使用 SPICE 控制台,服务 nova-spicehtml5proxy 应该正在运行。此服务通常在控制器节点上启动。

可能的值:

  • 必须是格式的有效 URL:http://host:port/spice_auto.html,其中 host 是运行 nova-spicehtml5proxy 的节点,端口通常为 6082。考虑不使用默认值,因为它没有为任何实际部署定义。

相关选项:

  • 这个选项取决于 html5proxy_hosthtml5proxy_port 选项。计算节点返回的访问 URL 必须具有 nova-spicehtml5proxy 服务正在侦听的主机和端口。

html5proxy_host = 0.0.0.0

主机地址值

nova-spicehtml5proxy 服务侦听传入请求的 IP 地址或主机名。

相关选项:

  • 这个选项取决于 html5proxy_base_url 选项。nova-spicehtml5proxy 服务必须侦听可通过 HTML5 客户端访问的主机。

html5proxy_port = 6082

端口值

nova-spicehtml5proxy 服务在其上侦听传入请求的端口。

相关选项:

  • 这个选项取决于 html5proxy_base_url 选项。nova-spicehtml5proxy 服务必须侦听可通过 HTML5 客户端访问的端口。

keymap = None

字符串值

此节点上的底层管理程序支持键盘布局。

可能的值:

  • 这通常是一个 IETF 语言标签 (默认为 en-us)。如果您使用 QEMU 作为虚拟机监控程序,则应在 /usr/share/qemu/keymaps 中找到支持的键盘布局列表。

弃用自:18.0.0

原因: 配置这个选项会强制 QEMU 进行密钥映射转换。这些转换是丢失的,这可能会给非 en-US 键盘的用户造成严重问题。如需更多信息,请参阅 bug IANA82020。

server_listen = 127.0.0.1

字符串值

在实例上运行的 SPICE 服务器应侦听的地址。

通常,nova-spicehtml5proxy 代理客户端在控制器节点上运行,并通过专用网络连接到计算节点上这个地址。

可能的值:

  • 要侦听的 IP 地址。

server_proxyclient_address = 127.0.0.1

字符串值

nova-spicehtml5proxy 客户端用来连接实例控制台的地址。

通常,nova-spicehtml5proxy 代理客户端在控制器节点上运行,并通过专用网络连接到计算节点上这个地址。

可能的值:

  • 计算节点上任何有效的 IP 地址。

相关选项:

  • 此选项取决于 server_listen 选项。代理客户端必须能够使用此选项的值访问 server_listen 中指定的地址。

9.1.49. upgrade_levels

下表概述了 /etc/nova/nova.conf 文件中的 [upgrade_levels] 组下可用的选项。

表 9.48. upgrade_levels
配置选项 = 默认值类型Description

baseapi = None

字符串值

基本 API RPC API 版本大写。

可能的值:

  • 默认情况下,发送客户端所知的最新版本
  • 代表 N.N 格式的版本号的字符串;例如,可能的值可以是 1.122.0
  • OpenStack 发行版本名称,在小写中,如 mitakaliberty

cert = None

字符串值

Cert RPC API 版本大写。

可能的值:

  • 默认情况下,发送客户端所知的最新版本
  • 代表 N.N 格式的版本号的字符串;例如,可能的值可以是 1.122.0
  • OpenStack 发行版本名称,在小写中,如 mitakaliberty

弃用自:18.0.0

原因: nova-cert 服务在 16.0.0 (Pike)中删除,因此不再使用这个选项。

compute = None

字符串值

计算 RPC API 版本大写。

默认情况下,我们始终使用客户端所知的最新版本发送消息。

如果您运行有旧的计算服务和新的计算服务,应该将其设置为最低部署的版本。这是为了保证所有服务永远不会发送其中一个计算节点无法理解的消息。请注意,我们只支持从 N 升级到 N 版本。

如果要让 compute RPC 模块根据部署中的服务版本自动决定要使用的版本,请将此选项设置为"auto"。

可能的值:

  • 默认情况下,发送客户端所知的最新版本
  • auto :根据部署中的服务版本自动决定要使用的版本。
  • 代表 N.N 格式的版本号的字符串;例如,可能的值可以是 1.122.0
  • OpenStack 发行版本名称,在小写中,如 mitakaliberty

conductor = None

字符串值

编排器 RPC API 版本大写。

可能的值:

  • 默认情况下,发送客户端所知的最新版本
  • 代表 N.N 格式的版本号的字符串;例如,可能的值可以是 1.122.0
  • OpenStack 发行版本名称,在小写中,如 mitakaliberty

console = None

字符串值

控制台 RPC API 版本大写。

可能的值:

  • 默认情况下,发送客户端所知的最新版本
  • 代表 N.N 格式的版本号的字符串;例如,可能的值可以是 1.122.0
  • OpenStack 发行版本名称,在小写中,如 mitakaliberty

network = None

字符串值

网络 RPC API 版本大写。

可能的值:

  • 默认情况下,发送客户端所知的最新版本
  • 代表 N.N 格式的版本号的字符串;例如,可能的值可以是 1.122.0
  • OpenStack 发行版本名称,在小写中,如 mitakaliberty

弃用自:18.0.0

原因: nova-network 服务在 14.0.0 (Newton)中已弃用,并将在以后的发行版本中删除。

scheduler = None

字符串值

调度程序 RPC API 版本大写。

可能的值:

  • 默认情况下,发送客户端所知的最新版本
  • 代表 N.N 格式的版本号的字符串;例如,可能的值可以是 1.122.0
  • OpenStack 发行版本名称,在小写中,如 mitakaliberty

9.1.50. Vault

下表概述了 /etc/nova/nova.conf 文件中的 [vault] 组下可用的选项。

表 9.49. Vault
配置选项 = 默认值类型Description

approle_role_id = None

字符串值

Approle role_id 使用 vault 进行身份验证

approle_secret_id = None

字符串值

Approle secret_id 使用 vault 进行身份验证

kv_mountpoint = secret

字符串值

Vault 中要使用的 KV 存储的挂载点,例如:secret

root_token_id = None

字符串值

vault 的 root 令牌

ssl_ca_crt_file = None

字符串值

ca 证书文件的绝对路径

use_ssl = False

布尔值

启用 SSL/Disabled

vault_url = http://127.0.0.1:8200

字符串值

使用此端点连接到 Vault,例如: "http://127.0.0.1:8200"

9.1.51. vendordata_dynamic_auth

下表概述了 /etc/nova/nova.conf 文件中的 [vendordata_dynamic_auth] 组下可用的选项。

表 9.50. vendordata_dynamic_auth
配置选项 = 默认值类型Description

auth-url = None

字符串值

身份验证 URL

auth_section = None

字符串值

从中加载插件特定选项的配置部分

auth_type = None

字符串值

要载入的身份验证类型

cafile = None

字符串值

在验证 HTTP 连接时要使用的 PEM 编码证书颁发机构。

certFile = None

字符串值

PEM 编码客户端证书文件

collect-timing = False

布尔值

收集每个API 调用计时信息。

default-domain-id = None

字符串值

用于 v3 和 v2 参数的可选域 ID。它将用于 v3 中的用户和项目域,并在 v2 身份验证中忽略。

default-domain-name = None

字符串值

用于 v3 API 和 v2 参数的可选域名。它将用于 v3 中的用户和项目域,并在 v2 身份验证中忽略。

domain-id = None

字符串值

范围到的域 ID

domain-name = None

字符串值

范围到的域名

insecure = False

布尔值

验证 HTTPS 连接。

keyfile = None

字符串值

PEM 编码客户端证书密钥文件

password = None

字符串值

用户密码

project-domain-id = None

字符串值

包含项目的域 ID

project-domain-name = None

字符串值

包含项目的域名

project-id = None

字符串值

项目 ID 的范围

project-name = None

字符串值

范围到的项目名称

split-loggers = False

布尔值

将请求记录到多个日志记录器。

system-scope = None

字符串值

系统操作范围

tenant-id = None

字符串值

租户 ID

tenant-name = None

字符串值

租户名称

timeout = None

整数值

http 请求的超时值

trust-id = None

字符串值

信任 ID

user-domain-id = None

字符串值

用户的域 ID

user-domain-name = None

字符串值

用户的域名

user-id = None

字符串值

用户 ID

username = None

字符串值

用户名

9.1.52. vmware

下表概述了 /etc/nova/nova.conf 文件中的 [vmware] 组下可用的选项。

表 9.51. vmware
配置选项 = 默认值类型Description

api_retry_count = 10

整数值

在连接失败时必须重试 VMware vCenter 服务器 API 的次数,如套接字错误等。

ca_file = None

字符串值

指定用于验证 vCenter 服务器证书的 CA 捆绑包文件。

cache_prefix = None

字符串值

此选项在存储缓存镜像的文件夹中添加一个前缀

这不是完整路径 - 只是文件夹前缀。这只有在计算节点之间共享数据存储缓存时才应使用。

注意:这只有在计算节点在同一主机上运行或具有共享文件系统时才应使用。

可能的值:

  • 代表到文件夹的缓存前缀的任何字符串

cluster_name = None

字符串值

VMware Cluster ComputeResource 的名称。

connection_pool_size = 10

整数值

这个选项设置 http 连接池大小

连接池大小是从 nova 到 vSphere 的最大连接数。只有在有警告表示连接池已满时,才应增加它,否则默认应该足够。

console_delay_seconds = None

整数值

如果受增加的网络延迟影响,则设置这个值,从而导致在远程控制台中输入时出现重复字符。

datastore_regex = None

字符串值

与数据存储的名称匹配的正则表达式模式。

datastore_regex 设置指定要用于 Compute 的数据存储。例如,datastore_regex="nas047" 选择名称以"nas"开头的所有数据存储。

注意

如果没有给出正则表达式,它只会选择具有最多可用空间的数据存储。

可能的值:

  • 必须指定与数据存储匹配的正则表达式

host_ip = None

主机地址值

用于连接到 VMware vCenter 主机的主机名或 IP 地址。

host_password = None

字符串值

连接到 VMware vCenter 主机的密码。

host_port = 443

端口值

连接到 VMware vCenter 主机的端口。

host_username = None

字符串值

与 VMware vCenter 主机连接的用户名。

insecure = False

布尔值

如果为 true,则不会验证 vCenter 服务器证书。如果为 false,则使用默认 CA 信任存储进行验证。

相关选项:如果设置了 "ca_file",则此选项将被忽略。

integration_bridge = None

字符串值

只有在使用 NSX-MH Neutron 插件时,才应配置这个选项。这是 ESXi 服务器或主机上集成测试的名称。这不应该为任何其他 Neutron 插件设置。因此,不会设置默认值。

可能的值:

  • 代表集成网桥名称的任何有效字符串

maximum_objects = 100

整数值

这个选项指定要在单个结果中返回的最大对象数量的限值。

正值将导致操作在对象数量达到指定限制时挂起检索。服务器仍然可以将计数限制为小于配置的值。任何剩余的对象都可以通过其他请求来检索。

pbm_default_policy = None

字符串值

这个选项指定要使用的默认策略。

如果设置了 pbm_enabled,且没有为特定请求定义的存储策略,则会使用此策略。

可能的值:

  • 任何有效的存储策略,如 VSAN 默认存储策略

相关选项:

  • pbm_enabled

pbm_enabled = False

布尔值

这个选项可启用或禁用基于实例的放置的存储策略。

相关选项:

  • pbm_default_policy

pbm_wsdl_location = None

字符串值

此选项指定 PBM 服务 WSDL 文件位置 URL。

设置这将禁用基于存储策略的实例放置。

可能的值:

serial_log_dir = /opt/vmware/vspc

字符串值

指定 Virtual Serial Port Concentrator 存储控制台日志文件的目录。它应与 VSPC 的 serial_log_dir 配置值匹配。

serial_port_proxy_uri = None

URI 值

标识提供对 serial_port_service_uri 的网络访问权限的代理服务。

可能的值:

  • 任何有效的 URI (方案为 telnettelnet )。

相关选项: 如果没有指定 serial_port_service_uri,则此选项将被忽略。* serial_port_service_uri

serial_port_service_uri = None

字符串值

标识发送串行端口流量的远程系统。

这个选项添加了一个虚拟串行端口,它将控制台输出发送到可配置的服务 URI。在服务 URI 地址上,虚拟串行端口集中将收集控制台日志。如果没有设置,则不会将串行端口添加到创建的虚拟机中。

可能的值:

  • 任何有效的 URI

task_poll_interval = 0.5

浮点值

轮询 VMware VC 服务器上调用的远程任务的时间间隔(以秒为单位)。

use_linked_clone = True

布尔值

这个选项启用/禁用链接克隆的使用。

ESX hypervisor 需要 VMDK 文件的副本才能启动虚拟机。计算驱动程序必须通过 HTTP 从 OpenStack 镜像服务下载 VMDK 到虚拟机监控程序可见的数据存储中,并缓存它。需要 VMDK 的后续虚拟机使用缓存的版本,无需从 OpenStack 镜像服务再次复制文件。

如果设置为 false,即使使用缓存的 VMDK,仍然有从缓存位置到共享数据存储中的 hypervisor 文件目录的副本操作。如果设置为 true,则避免上述复制操作,因为它会创建与其父虚拟机共享虚拟磁盘的虚拟机副本。

vlan_interface = vmnic0

字符串值

这个选项指定 VLAN 网络的物理以太网适配器名称。

设置 vlan_interface 配置选项,以匹配处理 VLAN 标记虚拟机流量的 ESX 主机接口。

可能的值:

  • 任何代表 VLAN 接口名称的有效字符串

vnc_keymap = en-us

字符串值

VNC 的键映射。

键盘映射(keymap)决定 VNC 会话默认使用哪个键盘布局。

可能的值:

  • 此节点上的底层管理程序支持键盘布局。这通常是一个 IETF 语言标签 (如 en-us)。

vnc_port = 5900

端口值

这个选项指定 VNC 启动端口。

由 ESX 主机创建的每个虚拟机都有一个选项,可以选择为远程连接启用 VNC 客户端。以上选项 vnc_port 可帮助您为 VNC 客户端设置默认启动端口。

可能的值:

  • Any valid port number within 5900 -(5900 + vnc_port_total)

相关选项:应将其设置为启用 VNC 客户端。* vnc.enabled = True * vnc_port_total

vnc_port_total = 10000

整数值

VNC 端口总数。

9.1.53. vnc

下表概述了 /etc/nova/nova.conf 文件中的 [vnc] 组下可用的选项。

表 9.52. vnc
配置选项 = 默认值类型Description

auth_schemes = ['none']

列出值

与计算节点一起使用的身份验证方案。

控制代理和计算主机之间允许哪些 RFB 身份验证方案。如果启用了多个方案,则会使用第一个匹配的方案,因此应首先列出最强的方案。

相关选项:

  • [VNC]vencrypt_client_key,[vnc]vencrypt_client_cert: 还必须设置

enabled = True

布尔值

启用 VNC 相关功能。

客户机将使用图形设备创建来支持这一点。然后,客户端(如 Horizon)可以建立与客户机的 VNC 连接。

keymap = None

字符串值

VNC 的键映射。

键盘映射(keymap)决定 VNC 会话默认使用哪个键盘布局。

可能的值:

  • 此节点上的底层管理程序支持键盘布局。这通常是一个 IETF 语言标签 (如 en-us)。如果您使用 QEMU 作为 hypervisor,则应在 /usr/share/qemu/keymaps 中找到支持的键盘布局列表。

弃用自:18.0.0

原因: 配置这个选项会强制 QEMU 进行密钥映射转换。这些转换是丢失的,这可能会给非 en-US 键盘的用户造成严重问题。您应该使用支持扩展密钥事件消息的 VNC 客户端,如 noVNC 1.0.0。如需更多信息,请参阅 bug IANA82020。

novncproxy_base_url = http://127.0.0.1:6080/vnc_auto.html

URI 值

noVNC VNC 控制台代理的公共地址。

VNC 代理是一个 OpenStack 组件,可让计算服务用户通过 VNC 客户端访问其实例。noVNC 通过基于 websocket 的客户端提供 VNC 支持。

这个选项设置客户端系统要连接的公共基本 URL。noVNC 客户端可以使用这个地址连接到 noVNC 实例,并通过扩展 VNC 会话。

如果使用 noVNC >= 1.0.0,您应该使用 vnc_lite.html 而不是 vnc_auto.html

相关选项:

  • novncproxy_host
  • novncproxy_port

novncproxy_host = 0.0.0.0

字符串值

noVNC 控制台代理应绑定到的 IP 地址。

VNC 代理是一个 OpenStack 组件,可让计算服务用户通过 VNC 客户端访问其实例。noVNC 通过基于 websocket 的客户端提供 VNC 支持。

这个选项设置 noVNC 控制台代理服务应绑定到的专用地址。

相关选项:

  • novncproxy_port
  • novncproxy_base_url

novncproxy_port = 6080

端口值

noVNC 控制台代理应绑定到的端口。

VNC 代理是一个 OpenStack 组件,可让计算服务用户通过 VNC 客户端访问其实例。noVNC 通过基于 websocket 的客户端提供 VNC 支持。

这个选项设置 noVNC 控制台代理服务应绑定到的私有端口。

相关选项:

  • novncproxy_host
  • novncproxy_base_url

server_listen = 127.0.0.1

主机地址值

实例应侦听此节点上的传入 VNC 连接请求的 IP 地址或主机名。

server_proxyclient_address = 127.0.0.1

主机地址值

VNC 控制台代理的专用、内部 IP 地址或主机名。

VNC 代理是一个 OpenStack 组件,可让计算服务用户可以通过 VNC 客户端访问其实例。

此选项设置代理客户端(如 nova-novncproxy )应连接到的专用地址。

vencrypt_ca_certs = None

字符串值

CA 证书 PEM 文件的路径

到 PEM 文件的完全限定路径,其中包含计算节点 VNC 服务器使用的证书颁发机构的一个或多个 x509 证书。

相关选项:

  • VNC.auth_schemes: 必须包含 vencrypt

vencrypt_client_cert = None

字符串值

客户端密钥文件的路径(用于 x509)

到包含 x509 证书的 PEM 文件的完全限定路径,VNC 代理服务器在 VNC 身份验证期间提供给计算节点。

相关选项:

  • VNC.auth_schemes: 必须包含 vencrypt
  • VNC.vencrypt_client_key :还必须设置

vencrypt_client_key = None

字符串值

客户端证书 PEM 文件的路径(用于 x509)

到 PEM 文件的完全限定路径,其中包含 VNC 代理服务器在 VNC 身份验证期间提供给计算节点的私钥。

相关选项:

  • VNC.auth_schemes: 必须包含 vencrypt
  • VNC.vencrypt_client_cert :还必须设置

xvpvncproxy_base_url = http://127.0.0.1:6081/console

URI 值

XVP VNC 控制台代理的公共 URL 地址。

VNC 代理是一个 OpenStack 组件,可让计算服务用户可以通过 VNC 客户端访问其实例。Xen 提供 Xenserver VNC 代理或 XVP,作为 Libvirt 使用的基于 websocket 的 noVNC 代理的替代选择。与 noVNC 不同,XVP 客户端基于 Java。

这个选项设置客户端系统要连接到的公共基本 URL。XVP 客户端可以使用这个地址连接到 XVP 实例,并通过扩展 VNC 会话。

相关选项:

  • xvpvncproxy_host
  • xvpvncproxy_port

弃用自:19. 0.0

原因: ''nova-xvpvnxproxy' 服务已弃用,并将在以后的发行版本中删除。

xvpvncproxy_host = 0.0.0.0

主机地址值

XVP VNC 控制台代理应绑定到的 IP 地址或主机名。

VNC 代理是一个 OpenStack 组件,可让计算服务用户可以通过 VNC 客户端访问其实例。Xen 提供 Xenserver VNC 代理或 XVP,作为 Libvirt 使用的基于 websocket 的 noVNC 代理的替代选择。与 noVNC 不同,XVP 客户端基于 Java。

这个选项设置 XVP VNC 控制台代理服务应绑定到的专用地址。

相关选项:

  • xvpvncproxy_port
  • xvpvncproxy_base_url

弃用自:19. 0.0

原因: ''nova-xvpvnxproxy' 服务已弃用,并将在以后的发行版本中删除。

xvpvncproxy_port = 6081

端口值

XVP VNC 控制台代理应绑定到的端口。

VNC 代理是一个 OpenStack 组件,可让计算服务用户可以通过 VNC 客户端访问其实例。Xen 提供 Xenserver VNC 代理或 XVP,作为 Libvirt 使用的基于 websocket 的 noVNC 代理的替代选择。与 noVNC 不同,XVP 客户端基于 Java。

这个选项设置 XVP VNC 控制台代理服务应绑定到的私有端口。

相关选项:

  • xvpvncproxy_host
  • xvpvncproxy_base_url

弃用自:19. 0.0

原因: ''nova-xvpvnxproxy' 服务已弃用,并将在以后的发行版本中删除。

9.1.54. 临时解决方案

下表概述了 /etc/nova/nova.conf 文件中的 [workarounds] 组下可用的选项。

表 9.53. 临时解决方案
配置选项 = 默认值类型Description

disable_fallback_pcpu_query = False

布尔值

在使用固定实例时,禁用对 sVirt 分配的回退请求。

从 Train 开始,使用 libvirt virt 驱动程序的计算节点可以报告 PCPU 清单,并将使用它来固定实例。调度程序将自动使用旧的 CPU 固定相关类别 specs、hw:cpu_policyhw:cpu_thread_policy、其镜像元数据属性以及仿真程序线程固定类别规格 hw:emulator_threads_policy 来自动转换为新的放置请求。但是,计算节点需要额外的配置来报告 PCPU 清单,且升级后可能不会立即出现此配置。为确保在没有此额外配置的情况下创建固定实例,调度程序将对基于旧方法的分配者发出第二个请求,并在需要时回退到这些分配候选者。这对性能有一定的影响,对于在所有主机上设置了新配置的新或升级部署中不需要。通过设置这个选项,第二个查找被禁用,调度程序仅请求基于 PCPU的分配。

弃用自:20.0.0

账单原因:ChefNone

disable_group_policy_check_upcall = False

布尔值

在 compute 中禁用服务器组策略检查 upcall。

为了检测与服务器组关联性策略的竞争,计算服务会尝试验证策略是否没有被调度程序违反。它通过调用 API 数据库来列出服务器组中的实例以进行引导,这违反了 api/cell 隔离目标。最终,这会在调度程序和放置服务中正确保证来解决,直到之后进行检查才能保证正确的关联性策略。

希望通过此检查进行 api/cell 隔离的 Operator 应该启用此标志,这样可避免从计算进行调用。

相关选项:

  • [filter_scheduler]/track_instance_changes 还依赖于从计算服务到调度程序服务的 upcalls。

disable_libvirt_livesnapshot = False

布尔值

在使用 libvirt 驱动程序时禁用实时快照。

通过实时快照,可在不中断客户端的情况下进行磁盘快照,从而与客户机代理一起使用以静止文件系统。

当使用 libvirt 1.2.2 live 快照时,在负载下间歇性会失败(类似于并发 libvirt/qemu 操作)。此配置选项提供了一种禁用实时快照的机制,而是使用冷快照,同时解决。在客户机完成快照时,冷快照会导致实例中断。

如需更多信息,请参阅错误报告:

https://bugs.launchpad.net/nova/+bug/1334398

可能的值:

  • true :使用 libvirt 时会禁用实时快照
  • false :快照时总是使用实时快照(只要有新的 libvirt,并且后端存储支持它)

弃用自:19. 0.0

reason: 添加了这个选项来解决 libvirt 1.2.2 的问题。我们不再支持这个版本的 libvirt,这意味着不再需要这个临时解决方案。它将在以后的发行版本中被删除。

disable_native_luksv1 = False

布尔值

将加密的 LUKSv1 Cinder 卷附加到实例时,Lipi 驱动程序会将加密磁盘配置为由 QEMU 原生解密。

QEMU 使用的 libgcrypt 库中发现了一个性能问题,该服务器在这种情况下会限制 I/O 性能。

如需更多信息,请参阅以下错误报告:

RFE: 硬件加速 AES-XTS 模式 https://bugzilla.redhat.com/show_bug.cgi?id=1762765

启用此临时解决方案选项将导致 Nova 使用传统的基于 dm-crypt 的 os-brick 加密程序来解密 LUKSv1 卷。

请注意,在使用不提供主机块设备的卷时启用此选项,如 Ceph 会导致从卷引导或将卷附加到实例。如需了解为 RBD 避免这种情况的方法,请参阅 [workarounds]/rbd_block_device 选项。

相关选项:

  • compute_driver (libvirt)
  • rbd_block_device (workarounds)

disable_rootwrap = False

布尔值

使用 sudo 而不是使用 rootwrap。

出于性能的原因,允许回退到 sudo。

如需更多信息,请参阅错误报告:

https://bugs.launchpad.net/nova/+bug/1415106

可能的值:

  • true :使用 sudo 而不是 rootwrap
  • false: 使用 rootwrap 正常

与其他选项间的依赖关系:

  • 所有影响 rootwrap 的选项都将被忽略。

enable_numa_live_migration = False

布尔值

启用带有 NUMA 拓扑的实例实时迁移。

只有在使用 libvirt 驱动程序时,才会在完全升级到 Train 的部署中支持带有 NUMA 拓扑的实时迁移。在以前的版本中,或者在带有滚动升级的混合 Stein/Train 部署中,使用 libvirt 驱动程序时默认禁用带有 NUMA 拓扑的实例实时迁移。这包括使用 CPU 固定或巨页进行实例实时迁移。目前,此类实例的 CPU 固定和巨页信息没有重新计算,如 'bug the89064'_ 所述。这意味着,如果实例已在目标主机上存在,则迁移的实例可能会放置在与这些实例相同的专用内核中,或使用分配给另一个实例的巨页。另外,如果主机平台不是相同的,则实例可以分配给不存在的内核,或者在主机 NUMA 节点间意外分割。

尽管这些已知问题,但在某些情况下可能需要实时迁移。通过启用此选项,了解问题的操作员会手动解决它们,可以启用对这些实例的实时迁移支持。

相关选项:

弃用自:20.0.0

Tailoringreason:添加了此选项,以缓解使用 libvirt 驱动程序的 NUMA 拓扑实时迁移实例时的已知问题。这些问题在 Train 中解决。使用 libvirt 驱动程序的云,并完全升级到 Train 支持 NUMA 感知实时迁移。这个选项将在以后的发行版本中被删除。

ensure_libvirt_rbd_instance_dir_cleanup = False

布尔值

在使用 rbd 时,确保在清理过程中移除了实例目录。

启用此临时解决方案后,请确保在使用 [libvirt]/images_type=rbd 的主机上清理过程中始终删除实例目录。这可避免以下错误,并恢复清理结果,从而导致主机上剩余的实例目录:

https://bugs.launchpad.net/nova/+bug/1414895

https://bugs.launchpad.net/nova/+bug/1761062

然后,如果实例试图返回主机,则这两个错误都可能会导致 DestinationDiskExists 错误。

  1. 警告: Operator 需要确保由 [DEFAULT]/instances_path 指定的实例目录本身不会在计算之间共享,否则启用这个临时解决方案,否则 console.log、kernel、ramdisk 和由正在运行的实例使用的任何其他文件将会丢失。

相关选项:

  • compute_driver (libvirt)
  • [libvirt]/images_type (rbd)
  • instances_path

handle_virt_lifecycle_events = True

布尔值

启用处理计算驱动程序的事件。

许多计算驱动程序发出生命周期事件,它们是实例启动或停止事件。如果实例因为 API 操作而经历任务状态变化,如调整大小,则忽略事件。

这是一个高级功能,允许虚拟机监控程序向在实例中发生意外状态更改的计算服务发出信号,并且实例可以自动关闭。不幸的是,这可能会在某些条件中竞争,例如在重启操作或重启计算服务或主机重启时(计划或因为中断)发生。如果这种竞争比较常见,建议禁用此功能。

当禁用这个功能且 sync_power_state_interval 设置为负值时,应小心。在这种情况下,所有在虚拟机监控程序和 Nova 数据库之间的同步实例都必须手动同步。

如需更多信息,请参阅错误报告: https://bugs.launchpad.net/bugs/1444630

与其他选项间的依赖关系:

  • 如果 sync_power_state_interval 为负数,并且禁用了此功能,那么管理程序和 Nova 数据库之间的同步实例必须手动同步。

never_download_image_if_on_rbd = False

布尔值

从由 ceph 支持的计算节点上引导时,如果镜像还没有位于 ceph 集群上(如果 glance 也使用相同的集群),nova 将从 glance 下载镜像并将其上传到 ceph 本身。如果使用多个 ceph 集群,这可能会导致 nova 在本地 ceph 部署中以不可解析的方式意外地复制镜像,从而导致空间。

如需更多信息,请参阅错误报告:

https://bugs.launchpad.net/nova/+bug/1858877

启用此选项将导致 nova 在需要从 glance 下载镜像并将其上传到 ceph 本身时 拒绝 引导实例。

相关选项:

  • compute_driver (libvirt)
  • [libvirt]/images_type (rbd)

rbd_volume_local_attach = False

布尔值

将 RBD Cinder 卷作为主机块设备附加到计算中。

启用此选项后,指示 os-brick 将计算主机上本地的 RBD 卷连接为块设备,而不是通过 QEMU 原生连接。

这个临时解决方案目前不支持扩展附加的卷。

这可以与 disable_native_luksv1 临时解决方案配置选项一起使用,以避免 libgcrypt 库中最近发现的性能问题。

这个临时解决方案是临时的,当所有受影响的发行版都能够更新其 libgcrypt 库版本后,将在 W 发行版中删除。

相关选项:VirtualMachine compute_driver (libvirt) 114 disable_qemu_native_luksv1 (workarounds)

reserve_disk_resource_for_image_cache = False

布尔值

如果设为 True,则 libvirt 驱动程序将为镜像缓存中存储的镜像保留 DISK_GB 资源。如果 :oslo.config:option:DEFAULT.instances_path 位于与镜像缓存目录不同的磁盘分区中,则驱动程序不会为缓存保留资源。

这种磁盘保留由资源跟踪器中的定期任务完成,每 :oslo.config:option:update_resources_interval 秒运行。因此,当镜像被缓存时,保留不会立即更新。

相关选项:

  • :oslo.config:option:DEFAULT.instances_path
  • :oslo.config:option:image_cache_subdirectory_name
  • :oslo.config:option:update_resources_interval

9.1.55. wsgi

下表概述了 /etc/nova/nova.conf 文件中的 [wsgi] 组下可用的选项。

表 9.54. wsgi
配置选项 = 默认值类型Description

api_paste_config = api-paste.ini

字符串值

此选项代表了 nova-api 的 paste.deploy 配置的文件名。

可能的值:

  • 代表 paste.deploy 配置的文件名的字符串。

client_socket_timeout = 900

整数值

这个选项指定客户端连接的套接字操作的超时时间。如果进入的连接闲置了这个秒数,它将被关闭。它代表了套接字连接中单独读/写的超时。等待ever 设置为 0。

default_pool_size = 1000

整数值

此选项指定 wsgi 使用的 greenthreads 池的大小。可以使用此选项限制并发连接数量。

keep_alive = True

布尔值

这个选项允许使用相同的 TCP 连接来发送和接收多个 HTTP 请求/响应,而不是为每个请求/响应对打开一个新请求。HTTP keep-alive 表示 HTTP 连接重复使用。

可能的值:

  • true :重复使用 HTTP 连接。
  • false :显式关闭客户端套接字连接。

相关选项:

  • tcp_keepidle

max_header_line = 16384

整数值

此选项指定要接受的消息标头的最大行大小。在使用大型令牌时可能需要增加 max_header_line (通常是由具有大型服务目录的 Keystone v3 API 生成的)。

由于 TCP 是基于流的协议,为了重复使用连接,因此 HTTP 必须有一种方法来指示上一个响应的结束和下一个响应开始。因此,在 keep_alive 情况下,所有消息都必须具有自定义消息长度。

secure_proxy_ssl_header = None

字符串值

这个选项指定用来决定原始请求的协议方案的 HTTP 标头,即使它已被 SSL 终止代理删除。

可能的值:

  • none (默认)- 请求方案不受任何 HTTP 标头的影响
  • 有效的 HTTP 标头,如 HTTP_X_FORWARDED_PROTO
警告

除非您知道要做什么,否则请不要设置此设置。

在设置此功能前,请确保以下所有都为 true (假设上例中的值):

  • 您的 API 位于代理后面。
  • 您的代理从所有传入请求中分离 X-Forwarded-Proto 标头。换句话说,如果最终用户在其请求中包含该标头,代理将丢弃它。
  • 您的代理设置 X-Forwarded-Proto 标头并将其发送到 API,但仅对最初通过 HTTPS 中的请求发送。

如果其中任何一个不是 true,您应该保持此设置设置为 None。

ssl_ca_file = None

字符串值

这个选项允许设置应该在连接客户端的 CA 证书文件的路径。

可能的值:

  • 代表 CA 证书文件的路径的字符串。

相关选项:

  • enabled_ssl_apis

ssl_cert_file = None

字符串值

此选项允许设置 API 服务器 SSL 证书的路径。

可能的值:

  • 代表 SSL 证书路径的字符串。

相关选项:

  • enabled_ssl_apis

ssl_key_file = None

字符串值

此选项指定在 SSL 生效时存储 API 服务器 SSL 私钥的文件的路径。

可能的值:

  • 代表 SSL 私钥的路径的字符串。

相关选项:

  • enabled_ssl_apis

tcp_keepidle = 600

整数值

这个选项为每个服务器套接字设置 TCP_KEEPIDLE 的值(以秒为单位)。它指定了保持连接处于活跃状态的时间持续时间。TCP 为请求保持连接活跃的应用程序生成 KEEPALIVE 传输。不支持 OS X。

相关选项:

  • keep_alive

wsgi_log_format = %(client_ip) s "%(request_line) s" status: %(status_code) s len: %(body_length) s time: %(wall_seconds).7f

字符串值

它代表了一个 python 格式字符串,用作模板来生成日志行。以下值可以格式化为其中: client_ip, date_time, request_line, status_code, body_length, wall_seconds。

在 eventlet 下运行 nova-api 时,此选项用于构建自定义请求日志行。如果在 uwsgi 或 apache 下使用,这个选项无效。

可能的值:

  • %(client_ip) s "%(request_line) " status: %(status_code) s ' 'len: %(body_length) s time: %(wall_seconds).7f (default)
  • 任何由特定值组成的格式字符串。

弃用自:16.0.0

原因: 此选项仅在 eventlet 下运行 nova-api 时有效,并编码非常特定于事件的信息。从 Pike 运行 nova-api 的首选模型是在 uwsgi 或 apache mod_wsgi 下。

9.1.56. xenserver

下表概述了 /etc/nova/nova.conf 文件中的 [xenserver] 组下可用的选项。

表 9.55. xenserver
配置选项 = 默认值类型Description

agent_path = usr/sbin/xe-update-networking

字符串值

在服务器上定位客户机代理的路径。

指定 XenAPI 客户机代理应所在的路径。如果代理存在,则不会将网络配置注入镜像中。

相关选项:

要使此选项生效:Choffa flat_injected 应设置为 True 正常工作 compute_driver

agent_resetnetwork_timeout = 60

整数值

等待代理的回复重置网络请求的秒数。

这表示 xapi 代理 插件等待的时间会等待代理专门响应 resetnetwork 请求。本例中会忽略代理通信 agent_timeout 的通用超时。

agent_timeout = 30

整数值

等待代理回复请求的秒数。

Nova 在服务器上安装的代理时,在服务器上配置/识别某些管理操作。Nova 和代理之间的通信是通过共享消息(称为 记录(通过 xenstore)实现的,这是 Xenserver 主机上所有域的共享存储。代理代表 nova 执行的操作包括: 版本、key_init'、password、setnetworkinject_fileagentupdate

要执行上述操作中的一个,xapi 代理 插件会将命令及其关联的参数写入域已知的特定位置和等待响应。在收到邮件通知时,代理在服务器上执行适当的操作,并将结果写入 xenstore。然后,xapi 代理 插件读取此结果,以确定操作的成功/失败。

此配置选项决定了 xapi 代理 插件等待的时间,以等待给定请求/命令从 xenstore 中读取响应。如果实例上的代理无法写入结果,则操作将被视为超时。

相关选项:

  • agent_version_timeout
  • agent_resetnetwork_timeout

agent_version_timeout = 300

整数值

等待代理未回复版本请求的秒数。

这表示 xapi 代理 插件等待的时间会等待代理专门响应 版本 请求。本例中会忽略代理通信 agent_timeout 的通用超时。

在构建过程中,版本 请求用于确定代理是否可用/运行来执行其他请求,如 resetnetworkpasswordkey_initinject_file。如果 版本 调用失败,则跳过其他配置。因此,也可以将此配置选项解释为代理应完全运行的时间。

block_device_creation_timeout = 10

整数值

等待块设备的时间(以 sec 为单位)

cache_images = all

字符串值

本地缓存 glance 镜像。

这个选项的值必须从此处列出的选择中选择。配置除这些值以外的值将默认为 all

注:没有删除这些镜像。

check_host = True

布尔值

确保计算服务在主机 XenAPI 连接上运行。如果将 independent_compute 选项设为 true,则必须将此选项设置为 false。

可能的值:

  • 将此选项设置为 true 将确保 compute 服务在由 connection_url 指定的同一主机上运行。
  • 将这个选项设置为 false,不执行检查。

相关选项:

  • independent_compute

connection_concurrent = 5

整数值

最大并发 XenAPI 连接数。

在 nova 中,一次可能会发生多个 XenAPI 请求。配置此选项将并行化对 XenAPI 会话的访问,该会话允许您进行并发 XenAPI 连接。

connection_password = None

字符串值

连接到 XenServer/Xen 云平台的密码

connection_url = None

字符串值

与 XenServer/Xen 云平台的连接的 URL。特殊值 unix://local 可用于连接到本地 unix 套接字。

可能的值:

  • 代表 URL 的任何字符串。connection_url 通常是 XenServer 的管理网络 IP 地址。
  • 如果您选择 XenServer 驱动程序,则必须设置这个选项。

connection_username = root

字符串值

与 XenServer/Xen 云平台连接的用户名

console_public_hostname = <based on operating system>

字符串值

此控制台主机的公开可见名称。

可能的值:

  • 当前的主机名(默认)或任何代表主机名的字符串。

default_os_type = linux

字符串值

将镜像上传到 glance 时使用的默认操作系统类型

disable_agent = False

布尔值

禁用 XenAPI 代理的使用。

此配置选项建议是否应启用代理的使用,无论存在哪些镜像属性。镜像属性仅在设置为 True 时生效。如需更多信息,请阅读配置选项 use_agent_default 的描述。

相关选项:

  • use_agent_default

image_compression_level = None

整数值

镜像的压缩级别。

通过设置这个选项,我们可以配置 gzip 压缩级别。这个选项在生成 tar -cz 前设置 GZIP 环境变量,以强制压缩级别。默认为 none,这意味着未设置 GZIP 环境变量,并使用默认值(通常为 -6)。

可能的值:

  • 范围为 1-9,例如 9 代表 gzip -9,9 表示最多压缩,但会占用最多的 dom0。
  • 此范围内的任何值都将默认为 None。

image_handler = direct_vhd

字符串值

用于处理镜像上传和下载的插件。

提供代表计算主机和 glance 之间处理镜像所需的镜像驱动程序的短名称。

`image_upload_handler = `

字符串值

用于处理镜像上传的 slirp0 插件驱动程序。

提供代表处理上传到 GlanceStore 镜像所需的插件驱动程序的字符串值。

镜像以及来自 XenServer 的快照需要上传到数据存储中以便使用。image_upload_handler 会为 Dom0 插件驱动取一个值。然后,调用此驱动程序来将镜像上传到 GlanceStore。

弃用自:18.0.0

原因: 在此处设置类路径时,我们将使用短名称来表示镜像处理程序。下载和上传处理程序也必须匹配。因此,另一个新选项 "image_handler" 将用于设置镜像下载和上传的特定镜像处理程序的短名称。

independent_compute = False

布尔值

用于防止尝试在本地附加 VBD,因此 Nova 可以在不同主机上的虚拟机中运行。

相关选项:

  • CONF.flat_injected (Must 为 False)
  • CONF.xenserver.check_host (Must be False)
  • CONF.default_ephemeral_format (Must 为 unset 或 ext3)
  • 加入主机聚合(如果尝试,则出现错误)
  • Windows 虚拟机的交换磁盘(如果尝试,则出现错误)
  • 基于 Nova 的 auto_configure_disk (如果尝试,则错误)

introduce_vdi_retry_wait = 20

整数值

在第一次引入时没有 Evolution,等待 SR 的秒数。

一些 SR,特别是 iSCSI 连接在引入后看到 Evolutions 的正确连接。将这个选项设置为时间间隔将使 SR 能够等待该时间段,然后再在 raising Evolution not found 异常之前等待。

ipxe_boot_menu_url = None

字符串值

iPXE 引导菜单的 URL。

iPXE ISO 是一个特殊设计的 ISO,它支持 iPXE 引导。此功能提供了一种方法来推出您自己的镜像。

默认情况下不设置这个选项。启用此选项以引导 iPXE ISO。

相关选项:

  • ipxe_network_name
  • ipxe_mkisofs_cmd

ipxe_mkisofs_cmd = mkisofs

字符串值

用于 ISO 镜像创建的工具的名称和可选路径。

iPXE ISO 是一个特殊设计的 ISO,它支持 iPXE 引导。此功能提供了一种方法来推出您自己的镜像。

注意:默认情况下 mkisofs 不存在在 slirp0 中,因此软件包可以手动添加到 sVirt0 中,或者在镜像本身中包含 mkisofs 二进制文件。

相关选项:

  • ipxe_network_name
  • ipxe_boot_menu_url

ipxe_network_name = None

字符串值

用于引导 iPXE ISO 的网络名称。

iPXE ISO 是一个特殊设计的 ISO,它支持 iPXE 引导。此功能提供了一种方法来推出您自己的镜像。

默认情况下不设置这个选项。启用此选项以引导 iPXE ISO。

相关选项:

  • ipxe_boot_menu_url
  • ipxe_mkisofs_cmd

login_timeout = 10

整数值

XenAPI 登录的超时时间(以秒为单位)。

max_kernel_ramdisk_size = 16777216

整数值

内核或 ramdisk 镜像的最大大小,以字节为单位。

指定内核或 ramdisk 的最大大小将避免将大型文件复制到 dom0 并填充 /boot/guest。

num_vbd_unplug_retries = 10

整数值

拔出 VBD 的最大重试次数。如果设置为 0,则应该重试一次,则不重试。

ovs_integration_bridge = None

字符串值

与 Open vSwitch 连接时与 xenapi 一起使用的集成 Bridge 的名称。

注:此配置选项的值取决于环境,因此如果您使用 XenAPI,则必须相应地设置此配置值。

可能的值:

  • 代表网桥名称的任何字符串。

running_timeout = 60

整数值

等待实例进入 running 状态的时间。

提供代表时间(以秒为单位)的整数值,以便实例进入 running 状态。

当 nova-api 收到创建实例的请求时,与 nova-compute 通信,通过计算节点中的 XenAPI 与 XenAPI 交互来创建一个实例。在要启动实例的节点由 nova-schedule 决定,并且触发启动后,将涉及一定数量的等待时间,直到实例可用 并正在运行。此等待时间通过 running_timeout 定义。如果实例在此指定等待时间内没有进入运行状态,启动过期,并且实例设置为 error 状态。

sparse_copy = True

布尔值

是否使用 sparse_copy 在调整大小上复制数据。(false 将使用标准 dd)。这个速度会显著下降,因为不需要有大型运行零的运行。

sr_base_path = /var/run/sr-mount

字符串值

XenServer 主机上的存储存储库的基本路径。

sr_matching_filter = default-sr:true

字符串值

过滤以查找用来在其上安装客户机实例的 SR。

可能的值:

  • 要在默认的 XenServer/XCP 安装中使用 Local Storage,将此标志设置为 other-config:i18n-key=local-storage。
  • 要选择具有不同匹配条件的 SR,您可以将其设置为 other-config:my_favorite_sr=true。
  • 要回退到 Default SR,如 XenCenter 显示,将此标志设置为:default-sr:true。

target_host = None

主机地址值

iSCSI 目标主机.

这个选项代表 iSCSI 目标的主机名或 ip。如果卷供应商的连接信息中没有目标主机,则会获取这个选项中的值。

可能的值:

  • 代表目标主机名/ip 的任何字符串。

target_port = 3260

端口值

iSCSI 目标端口。

这个选项代表 iSCSI 目标的端口。如果卷供应商的连接信息中没有目标端口,则会获取这个选项中的值。

use_agent_default = False

布尔值

在启用其使用量但没有由镜像指示时,是否默认使用代理。

可以使用配置选项 disable_agent 完全禁用 XenAPI 代理。但是,如果没有禁用,则仍可通过其中一个属性( xenapi_use_agent )控制代理的使用。如果镜像上不存在或指定了此属性,则代理的使用由这个配置选项决定。

请注意,如果这个配置被设置为 True,但代理不存时,则引导时间会显著增加。

相关选项:

  • disable_agent

use_join_force = True

布尔值

向池添加新主机时,这会在命令中附加 --force 标志,强制主机加入池,即使它们具有不同的 CPU。

由于 XenServer 版本 5.6 开始,可以创建具有不同 CPU 能力的主机池。为容纳 CPU 差异,其使用 XenServer 来决定 CPU 兼容性仅到由 CPU 屏蔽公开的 CPU 兼容性,并支持 CPU 屏蔽。虽然这会努力级别 CPU 之间的区别,但添加新主机仍可能会失败,因此引入强制加入的选项。

vhd_coalesce_max_attempts = 20

整数值

轮询 VHD 以 coalesce 轮询的次数上限。

此选项决定了在放弃前可用于协调 VHD 的最大尝试次数。

相关选项:

  • vhd_coalesce_poll_interval

vhd_coalesce_poll_interval = 5.0

浮点值

用于轮询 vhds 的时间间隔。

这是执行 coalesce VHD 任务的时间间隔,直到达到 vhd_coalesce_max_attempts 设置的最大尝试。

相关选项:

  • vhd_coalesce_max_attempts

9.1.57. xvp

下表概述了 /etc/nova/nova.conf 文件中的 [xvp] 组下可用的选项。

表 9.56. xvp
配置选项 = 默认值类型Description

console_xvp_conf = /etc/xvp.conf

字符串值

生成的 XVP conf 文件

console_xvp_conf_template = $pybasedir/nova/console/xvp.conf.template

字符串值

XVP conf 模板

console_xvp_log = /var/log/xvp.log

字符串值

XVP 日志文件

console_xvp_multiplex_port = 5900

端口值

XVP 到多路 VNC 连接的端口

console_xvp_pid = /var/run/xvp.pid

字符串值

XVP master 进程 pid 文件

9.1.58. zvm

下表概述了 /etc/nova/nova.conf 文件中的 [zvm] 组下可用的选项。

表 9.57. zvm
配置选项 = 默认值类型Description

ca_file = None

字符串值

在启用了 TLS 的 httpd 服务器中验证 CA 证书文件

字符串,它必须是要使用的 CA 捆绑包的路径。

cloud_connector_url = None

URI 值

用于与 z/VM 云连接器通信的 URL。

image_tmp_path = $state_path/images

字符串值

存储镜像的路径(快照、部署等)。

用于通过快照捕获的镜像和镜像需要存储在计算主机的本地磁盘中。此配置标识目录位置。

可能的值:运行 compute 服务的主机上的文件系统路径。

reachable_timeout = 300

整数值

等待实例启动超时(秒)。

z/VM 驱动程序依赖于实例和云连接器之间的通信。创建实例后,必须有足够的时间等待所有网络信息写入用户目录中。驱动程序将使用超时值为实例重新检查网络状态,如果设置网络失败,它将通知用户启动实例失败,并将实例置于 ERROR 状态。然后会删除底层 z/VM 客户机。

可能的值:任何正整数。建议至少为 300 秒(5 分钟),但会因实例和系统负载而异。值 0 用于调试。在这种情况下,当实例标记为 ERROR 状态时,底层 z/VM 客户机不会被删除。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.