搜索

第 5 章 ironic

download PDF

下面的章节包含有关 ironic 服务中的配置选项的信息。

5.1. ironic.conf

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

5.1.1. DEFAULT

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

.

配置选项 = 默认值类型Description

auth_strategy = keystone

字符串值

ironic-api 使用的验证策略不应在生产环境中使用 "noauth",因为所有身份验证都会被禁用。

backdoor_port = None

字符串值

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

backdoor_socket = None

字符串值

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

bindir = $pybasedir/bin

字符串值

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

conn_pool_min_size = 2

整数值

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

conn_pool_ttl = 1200

整数值

池中闲置连接的时间延迟

control_exchange = openstack

字符串值

默认交换,哪些主题在哪些方面有范围。可以被 transport_url 选项指定的交换名称覆盖。

debug = False

布尔值

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

debug_tracebacks_in_api = False

布尔值

在 API 响应中返回任何错误响应的服务器回溯。警告:这是不安全的,不应在生产环境中使用。

default_bios_interface = None

字符串值

用于没有设置 bios_interface 字段的节点的默认 bios 接口。通过枚举 "ironic.hardware.interfaces.bios" 入口点,可以找到系统上存在的 bios 接口的完整列表。

default_boot_interface = None

字符串值

用于没有设置 boot_interface 字段的节点的默认引导接口。通过枚举 "ironic.hardware.interfaces.boot" 入口点,可以找到系统上存在的完整引导接口列表。

default_console_interface = None

字符串值

用于没有设置 console_interface 字段的节点的默认控制台接口。通过枚举 "ironic.hardware.interfaces.console" 入口点,可以找到系统中存在的控制台接口的完整列表。

default_deploy_interface = None

字符串值

用于没有设置 deploy_interface 字段的节点的默认部署接口。通过枚举 "ironic.hardware.interfaces.deploy" 入口点,可以找到系统上存在的部署接口的完整列表。

default_inspect_interface = None

字符串值

用于没有设置 inspect_interface 字段的节点的默认检查接口。通过枚举 "ironic.hardware.interfaces.inspect" 入口点,可以找到系统上存在的检查接口的完整列表。

default_log_levels = ['amqp=WARNING', 'amqplib=WARNING', 'qpid.messaging=INFO', 'oslo.messaging=INFO', 'oslo_messaging=INFO', 'sqlalchemy=WARNING', 'stevedore=INFO', 'eventlet.wsgi.server=INFO', 'iso8601=WARNING', 'requests=WARNING', 'glanceclient=WARNING', 'urllib3.connectionpool=WARNING', 'keystonemiddleware.auth_token=INFO', 'keystoneauth.session=INFO', 'openstack=WARNING']

列表值

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

default_management_interface = None

字符串值

用于没有设置 management_interface 字段的节点的默认管理界面。通过枚举 "ironic.hardware.interfaces.management" 入口点,可以找到系统中存在的管理界面的完整列表。

default_network_interface = None

字符串值

用于没有设置 network_interface 字段的节点的默认网络接口。通过枚举 "ironic.hardware.interfaces.network" 入口点,可以找到系统上存在的网络接口的完整列表。

default_portgroup_mode = active-backup

字符串值

portgroups 的默认模式。允许的值可在 Linux 内核文档绑定中找到: https://www.kernel.org/doc/Documentation/networking/bonding.txt

default_power_interface = None

字符串值

用于没有设置 power_interface 字段的节点的默认电源接口。通过枚举 "ironic.hardware.interfaces.power" 入口点,可以找到系统上存在的电源接口的完整列表。

default_raid_interface = None

字符串值

用于没有设置 raid_interface 字段的节点的默认 raid 接口。通过枚举 "ironic.hardware.interfaces.raid" 入口点,可以找到系统上存在的 raid 接口的完整列表。

default_rescue_interface = None

字符串值

用于没有设置 rescue_interface 字段的节点的默认救援接口。通过枚举 "ironic.hardware.interfaces.rescue" 入口点,可以找到系统上存在的救援接口的完整列表。

default_resource_class = None

字符串值

在创建请求中没有提供资源类时用于新节点的资源类。

default_storage_interface = noop

字符串值

用于没有设置 storage_interface 字段的节点的默认存储接口。通过枚举 "ironic.hardware.interfaces.storage" 入口点,可以找到系统中存在的存储接口的完整列表。

default_vendor_interface = None

字符串值

用于没有设置 vendor_interface 字段的节点的默认供应商接口。通过枚举 "ironic.hardware.interfaces.vendor" 入口点,可以找到系统上存在的厂商接口的完整列表。

enabled_bios_interfaces = ['no-bios']

列表值

指定要在服务初始化期间加载的 bios 接口列表。缺少 bios 接口或无法初始化的 bios 接口将阻止 ironic-conductor 服务启动。此处必须启用每个启用的硬件类型支持的 bios 接口,否则 ironic-conductor 服务将不会启动。不能是一个空列表。默认值是一组推荐的面向生产环境的 bios 接口。通过枚举 "ironic.hardware.interfaces.bios" 入口点,可以找到系统上存在的 bios 接口的完整列表。在设置这个值时,请确保每个启用的硬件类型在每个 ironic-conductor 服务中都有相同的启用的 bios 接口。

enabled_boot_interfaces = ['pxe']

列表值

指定在服务初始化过程中载入的引导接口列表。缺少引导接口或无法初始化的引导接口将导致 ironic-conductor 服务启动。每个启用的硬件类型支持至少一个引导接口必须在这里启用,或者 ironic-conductor 服务将不会启动。不能是一个空列表。默认值是一组推荐的面向生产环境的引导接口。通过枚举 "ironic.hardware.interfaces.boot" 入口点,可以找到系统上存在的完整引导接口列表。在设置这个值时,请确保每个启用的硬件类型在每个 ironic-conductor 服务中都有相同的启用的引导接口。

enabled_console_interfaces = ['no-console']

列表值

指定要在服务初始化过程中载入的控制台接口列表。缺少控制台接口或无法初始化的控制台接口会阻止 ironic-conductor 服务启动。至少一个由每个启用的硬件类型支持的控制台接口必须在这里启用,否则 ironic-conductor 服务将不会启动。不能是一个空列表。默认值是一组推荐的面向生产环境的控制台接口。通过枚举 "ironic.hardware.interfaces.console" 入口点,可以找到系统中存在的控制台接口的完整列表。在设置这个值时,请确保每个启用的硬件类型在每个 ironic-conductor 服务中都有相同的启用的控制台接口。

enabled_deploy_interfaces = ['direct']

列表值

指定在服务初始化过程中载入的部署接口列表。缺少部署接口或部署无法初始化的接口将导致 ironic-conductor 服务启动。至少一个由每个启用的硬件类型支持的部署接口必须在这里启用,否则 ironic-conductor 服务将不会启动。不能是一个空列表。默认值是一组推荐的面向生产环境的部署接口。通过枚举 "ironic.hardware.interfaces.deploy" 入口点,可以找到系统上存在的部署接口的完整列表。在设置这个值时,请确保每个启用的硬件类型在每个 ironic-conductor 服务中都有相同的启用的部署接口。

enabled_hardware_types = ['ipmi']

列表值

指定在服务初始化过程中载入的硬件类型列表。缺少硬件类型或无法初始化的硬件类型将阻止编排器服务启动。这个选项默认为推荐的一组面向生产环境的硬件类型。通过枚举 "ironic.hardware.types" 入口点,可以找到系统中存在的硬件类型的完整列表。

enabled_inspect_interfaces = ['no-inspect']

列表值

指定在服务初始化过程中载入的检查接口的列表。缺少检查接口,或检查没有初始化的接口,将阻止 ironic-conductor 服务启动。至少一个由每个启用的硬件类型支持的检查接口必须在这里启用,否则 ironic-conductor 服务将不会启动。不能是一个空列表。默认值是一组推荐的面向生产环境的检查接口。通过枚举 "ironic.hardware.interfaces.inspect" 入口点,可以找到系统上存在的检查接口的完整列表。在设置这个值时,请确保每个启用的硬件类型在每个 ironic-conductor 服务中都有相同的启用的检查接口。

enabled_management_interfaces = ['ipmitool']

列表值

指定在服务初始化过程中载入的管理接口列表。缺少管理接口或无法初始化的管理接口将阻止 ironic-conductor 服务启动。每个启用的硬件类型支持至少一个管理接口必须在这里启用,否则 ironic-conductor 服务将不会启动。不能是一个空列表。默认值是一组推荐的面向生产环境的管理界面。通过枚举 "ironic.hardware.interfaces.management" 入口点,可以找到系统中存在的管理界面的完整列表。在设置这个值时,请确保每个启用的硬件类型在每个 ironic-conductor 服务中都有相同的启用的管理接口集。

enabled_network_interfaces = ['flat', 'noop']

列表值

指定在服务初始化过程中载入的网络接口列表。缺少网络接口或无法初始化的网络接口将导致 ironic-conductor 服务启动。每个启用的硬件类型支持至少一个网络接口必须在这里启用,否则 ironic-conductor 服务将不会启动。不能是一个空列表。默认值是一组推荐的面向生产环境的网络接口。通过枚举 "ironic.hardware.interfaces.network" 入口点,可以找到系统上存在的网络接口的完整列表。在设置这个值时,请确保每个启用的硬件类型在每个 ironic-conductor 服务中都有相同的启用的网络接口集。

enabled_power_interfaces = ['ipmitool']

列表值

指定在服务初始化过程中载入的电源接口列表。缺少电源接口或无法初始化的电源接口将导致 ironic-conductor 服务启动。每个启用的硬件类型支持至少一个电源接口必须在这里启用,否则 ironic-conductor 服务将不会启动。不能是一个空列表。默认值是一组推荐的面向生产环境的电源接口。通过枚举 "ironic.hardware.interfaces.power" 入口点,可以找到系统上存在的电源接口的完整列表。在设置这个值时,请确保每个启用的硬件类型在每个 ironic-conductor 服务上都有相同的启用电源接口集。

enabled_raid_interfaces = ['agent', 'no-raid']

列表值

指定要在服务初始化过程中载入的 raid 接口列表。缺少 raid 接口,或者无法初始化的 raid 接口将导致 ironic-conductor 服务启动。每个启用的硬件类型支持至少一个 raid 接口必须在这里启用,或者 ironic-conductor 服务将不会启动。不能是一个空列表。默认值是一组推荐的适用于生产环境的 raid 接口。通过枚举 "ironic.hardware.interfaces.raid" 入口点,可以找到系统上存在的 raid 接口的完整列表。在设置这个值时,请确保每个启用的硬件类型在每个 ironic-conductor 服务中都有相同的启用 raid 接口集。

enabled_rescue_interfaces = ['no-rescue']

列表值

指定要在服务初始化过程中载入的救援接口列表。缺少救援接口,或者无法初始化的救援接口会阻止 ironic-conductor 服务启动。每个启用的硬件类型支持至少一个救援接口必须在这里启用,或者 ironic-conductor 服务将不会启动。不能是一个空列表。默认值是一组推荐的面向生产环境的救援接口。通过枚举 "ironic.hardware.interfaces.rescue" 入口点,可以找到系统上存在的救援接口的完整列表。在设置这个值时,请确保每个启用的硬件类型在每个 ironic-conductor 服务中都有相同的启用的救援接口。

enabled_storage_interfaces = ['cinder', 'noop']

列表值

指定在服务初始化过程中载入的存储接口列表。缺少存储接口或无法初始化的存储接口将导致 ironic-conductor 服务启动。每个启用的硬件类型支持至少一个存储接口必须在这里启用,或者 ironic-conductor 服务将不会启动。不能是一个空列表。默认值是一组推荐的面向生产环境的存储接口。通过枚举 "ironic.hardware.interfaces.storage" 入口点,可以找到系统中存在的存储接口的完整列表。在设置这个值时,请确保每个启用的硬件类型在每个 ironic-conductor 服务中都有相同的启用的存储接口集。

enabled_vendor_interfaces = ['ipmitool', 'no-vendor']

列表值

指定在服务初始化过程中载入的供应商接口列表。缺少供应商接口或无法初始化的供应商接口将导致 ironic-conductor 服务启动。此处必须启用每个启用的硬件类型支持的供应商接口,否则 ironic-conductor 服务将不会启动。不能是一个空列表。默认值是一组推荐的面向生产环境的供应商接口。通过枚举 "ironic.hardware.interfaces.vendor" 入口点,可以找到系统上存在的厂商接口的完整列表。在设置这个值时,请确保每个启用的硬件类型在每个 ironic-conductor 服务中都有相同的启用的供应商接口。

esp_image = None

字符串值

EFI 系统分区镜像文件的路径。建议有效地创建 UEFI 可引导 ISO 镜像。ESP 镜像应该包含为每个硬件架构 ironic 需要引导的 FAT12/16/32 格式的文件系统(例如 GRUB2)。这个选项只有在没有将 ESP 和 ISO 部署镜像配置为要部署的节点时才使用,在这种情况下,ironic 将尝试从配置的位置获取 ESP 镜像,或者从 UEFI 启动的部署 ISO 镜像中提取 ESP 镜像。

executor_thread_pool_size = 64

整数值

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

fatal_deprecations = False

布尔值

启用或禁用弃用的致命状态。

force_raw_images = True

布尔值

如果为 True,请将后备镜像转换为"原始"磁盘镜像格式。

graceful_shutdown_timeout = 60

整数值

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

grub_config_path = /boot/grub/grub.cfg

字符串值

由 ironic 生成的 UEFI ISO 镜像中的 GRUB2 配置文件位置。默认值通常是不正确的,不应依赖于。如果您使用特定发行版本中的 GRUB2 镜像,请在此处使用特定于发行版的路径,例如 EFI/ubuntu/grub.cfg

grub_config_template = $pybasedir/common/grub_conf.template

字符串值

grub 配置文件的模板文件。

hash_partition_exponent = 5

整数值

体验来确定在跨编排器分布负载时要使用的哈希分区数量。在重新平衡环时,较大的值将导致负载的分配和减少负载,但内存使用量越多。每个编排器的分区数为(2^hash_partition_exponent)。这决定了重新平衡的粒度:给定 10 个主机,2 的exponent,环中有 40 个分区。在大多数情形中,一些分区应该平稳进行重新平衡。默认值适用于最多几百个编排器。为太多分区配置 对 CPU 使用率造成负面影响。

hash_ring_algorithm = md5

字符串值

构建哈希环时要使用的哈希函数。如果在 FIPS 系统上运行,请不要使用 md5。警告:集群中的所有 ironic 服务必须始终使用相同的算法。更改算法需要离线更新。

hash_ring_reset_interval = 15

整数值

哈希环被视为过时并在下次访问时刷新的时间(以秒为单位)。

Host = <based on operating system>

字符串值

此节点的名称。这可以是不透明标识符。它不一定是主机名、FQDN 或 IP 地址。但是,节点名称必须在 AMQP 密钥内有效,如果使用 ZeroMQ (将在 Stein 发行版本中删除)、有效的主机名、FQDN 或 IP 地址。

http_basic_auth_user_file = /etc/ironic/htpasswd

字符串值

auth_strategy=http_basic 时使用的 Apache 格式用户身份验证文件的路径

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

字符串值

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

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

字符串值

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

isolinux_bin = /usr/lib/syslinux/isolinux.bin

字符串值

isolinux 二进制文件文件的路径。

isolinux_config_template = $pybasedir/common/isolinux_config.template

字符串值

isolinux 配置文件的模板文件。

ldlinux_c32 = None

字符串值

ldlinux.c32 文件的路径。syslinux 5.0 或更高版本需要这个文件。如果没有指定,则会在 "/usr/lib/syslinux/modules/bios/ldlinux.c32" 和 "/usr/share/syslinux/ldlinux.c32" 中查找该文件。

log-config-append = None

字符串值

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

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

字符串值

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

log-dir = None

字符串值

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

log-file = None

字符串值

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

log_in_db_max_size = 4096

整数值

任何节点 last_error/maintenance_reason 推送到数据库的最大字符数。

log_options = True

布尔值

启动服务时,启用或禁用所有注册选项的日志值(在 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) s

字符串值

使用上下文格式化用于日志消息的字符串。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

字符串值

上下文未定义时用于日志消息的字符串。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

字符串值

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

max_logfile_count = 30

整数值

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

max_logfile_size_mb = 200

整数值

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

minimum_memory_wait_retries = 6

整数值

如果编排器可以自动重试,在失败或将线程返回到池前要暂停的重试次数。

minimum_memory_wait_time = 15

整数值

在启动进程前,在重试可用内存之间等待几秒钟。这和 memory_wait_retries 结合使用可让编排器确定我们应尝试直接重试的时长。

minimum_memory_warning_only = False

布尔值

将 设置为管理,如果 Ironic 应该只发出警告,而不是尝试返回请求,以防止系统内存耗尽。

minimum_required_memory = 1024

整数值

在编排器上启动内存密集型进程前,系统在启动内存密集型进程前,以 MiB 为单位的最小内存。

my_ip = <based on operating system>

字符串值

此主机的 IPv4 地址。如果未设置,将以编程方式确定 IP。如果无法这样做,将使用"127.0.0.1"。注意:此字段接受 IPv6 地址作为模板和 URL 的覆盖,但建议使用 [DEFAULT]my_ipv6 以及双栈环境的服务 URL 的 DNS 名称。

my_ipv6 = None

字符串值

此主机的 IP 地址使用 IPv6。这个值必须通过配置提供,不能以编程方式确定 IPv4 的 [DEFAULT]my_ip 参数。

notification_level = None

字符串值

指定要发送通知的最低级别。如果没有设置,则不会发送通知。默认是此选项取消设置。

parallel_image_downloads = False

布尔值

并行运行镜像下载和原始格式转换。

pecan_debug = False

布尔值

启用 pecan 调试模式。警告:这是不安全的,不应在生产环境中使用。

pin_release_version = None

字符串值

用于滚动升级。设置此选项会降级(或固定)Bare Metal API、内部 ironic RPC 通信,以及数据库对象到其相应的版本,以便它们与旧服务兼容。在进行从 N 版本到 N+1 的滚动升级时,将这个设置(固定)为 N。要取消固定(默认),请取消设置,这会使用最新版本。

publish_errors = False

布尔值

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

pybasedir = /usr/lib/python3.9/site-packages/ironic

字符串值

安装了 ironic python 模块的目录。

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

整数值

日志速率限制的间隔、秒数。

raw_image_growth_factor = 2.0

浮点值

用于估算从精简镜像格式(如 QCOW2)转换的原始镜像大小时的缩放因素。默认值为 2.0,必须大于 1.0。

rootwrap_config = /etc/ironic/rootwrap.conf

字符串值

用于以 root 身份运行命令的 rootwrap 配置文件的路径。

rpc_conn_pool_size = 30

整数值

RPC 连接池的大小。

rpc_ping_enabled = False

布尔值

添加端点以回答 ping 调用。端点名为 oslo_rpc_server_ping

rpc_response_timeout = 60

整数值

从调用等待响应的秒数。

rpc_transport = oslo

字符串值

用于在编排器和 API 服务间使用的 RPC 传输实现

run_external_periodic_tasks = True

布尔值

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

state_path = $pybasedir

字符串值

维护 ironic 状态的顶级目录。

syslog-log-facility = LOG_USER

字符串值

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

tempdir = /tmp

字符串值

临时工作目录,默认为 Python temp dir。

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

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_eventlog = False

布尔值

日志输出到 Windows 事件日志.

use_stderr = False

布尔值

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

versioned_notifications_topics = ['ironic_versioned_notifications']

列表值

指定 Ironic 发布的版本通知的主题。

对于大多数部署,默认值是正常的,很少需要更改。但是,如果您有一个使用版本通知的第三方服务,可能需要获得该服务的一个主题。Ironic 将向此列表中的每个主题队列发送一条包含版本控制通知有效负载的消息。

版本通知列表在 https://docs.openstack.org/ironic/latest/admin/notifications.html中看到

watch-log-file = False

布尔值

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

webserver_connection_timeout = 60

整数值

使用镜像访问远程 Web 服务器时的连接超时。

webserver_verify_ca = True

字符串值

用于证书验证的 CA 证书。这可以是布尔值或 CA_BUNDLE 文件的路径。如果设为 True,则标准路径中存在的证书用于验证主机证书。如果设为 False,则编排器将忽略验证主机提供的 SSL 证书。如果为 true,则编排器将使用指定的证书进行验证。如果为 SSL 验证,则编排器将使用指定的证书进行验证。如果路径不存在,则行为与这个值设置为 True 时的行为相同。例如,标准路径中存在的证书用于 SSL 验证。Defaults to True。

5.1.2. agent

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

表 5.1. agent
配置选项 = 默认值类型Description

agent_api_version = v1

字符串值

用于与 ramdisk 代理通信的 API 版本。

api_ca_file = None

字符串值

用于启动裸机 API 的 TLS CA 的路径。在某些引导方法中,该文件可以传递到 ramdisk。

certificates_path = /var/lib/ironic/certificates

字符串值

存储自动生成的 TLS 证书的路径,用于验证到 ramdisk 的连接。

command_timeout = 60

整数值

IPA 命令的超时时间(以秒为单位)。

command_wait_attempts = 100

整数值

在超时前检查异步命令完成的尝试次数。

command_wait_interval = 6

整数值

在检查异步命令完成之间等待的秒数。

deploy_logs_collect = on_failure

字符串值

Ironic 是否应该收集部署失败时的部署日志(on_failure),始终或永不。

deploy_logs_local_path = /var/log/ironic/deploy

字符串值

应该存储日志的目录路径,在 deploy_logs_storage_backend 配置为"local"时使用。

deploy_logs_storage_backend = local

字符串值

存储日志的存储后端的名称。

deploy_logs_swift_container = ironic_deploy_logs_container

字符串值

用于存储日志的 Swift 容器的名称,在 deploy_logs_storage_backend 配置为"swift"时使用。

deploy_logs_swift_days_to_expire = 30

整数值

日志对象在 Swift 中标记为已过期前的天数。如果 None,日志将永久保留,或直到手动删除为止。当 deploy_logs_storage_backend 配置为"swift"时使用。

image_download_source = http

字符串值

指定直接部署接口是否应该尝试直接使用镜像源,或者 ironic 是否应该缓存编排器中的镜像,并从 ironic 自己的 http 服务器提供该镜像。

manage_agent_boot = True

布尔值

Ironic 是否将管理代理 ramdisk 的引导。如果设置为 False,则需要配置您的机制以允许引导代理 ramdisk。

max_command_attempts = 3

整数值

这是为因为网络问题而失败的 IPA 命令执行的最大尝试次数。

memory_consumed_by_agent = 0

整数值

当代理在裸机节点上引导时,代理消耗的内存大小(以 MiB 为单位)。这用于检查在引导代理 ramdisk 后是否可以下载并部署到裸机节点上。这可以根据代理 ramdisk 镜像消耗的内存设置。

neutron_agent_max_attempts = 100

整数值

在死代理的网络错误前验证 Neutron 代理状态的最大尝试次数。

neutron_agent_poll_interval = 2

整数值

Neutron 代理在轮询设备更改之间等待的时间。这个值应该与 Neutron 配置中的 CONF.AGENT.polling_interval 相同。

neutron_agent_status_retry_interval = 10

整数值

在尝试验证 Neutron 代理状态之间等待时间(以秒为单位)。

post_deploy_get_power_state_retries = 6

整数值

重试获取电源状态的次数,以检查裸机节点是否在软关闭后关闭。

post_deploy_get_power_state_retry_interval = 5

整数值

触发软关闭后轮询电源状态之间等待的时间(以秒为单位)。

require_tls = False

布尔值

如果设置为 True,则没有 https:// 的回调 URL 将由编排器拒绝。

stream_raw_images = True

布尔值

代理 ramdisk 是否应该将原始镜像直接流传输到磁盘上。通过将原始镜像直接流传输到磁盘上,代理 ramdisk 不会将镜像复制到 tmpfs 分区(占用较少的内存)的时间,然后再将其写入磁盘。除非镜像复制为真正慢的磁盘,否则此选项应设置为 True。默认值为 True。

verify_ca = True

字符串值

TLS CA 的路径以验证到 ramdisk 的连接。设置为 True 以使用系统默认 CA 存储。设置为 False 以禁用验证。使用自动 TLS 设置时忽略。

5.1.3. anaconda

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

表 5.2. anaconda
配置选项 = 默认值类型描述

default_ks_template = $pybasedir/drivers/modules/ks.cfg.template

字符串值

在 instance_info 或 glance OS 镜像中没有指定 kickstart 模板时,要使用的 Kickstart 模板。

5.1.4. ansible

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

表 5.3. ansible
配置选项 = 默认值类型Description

ansible_extra_args = None

字符串值

在每次调用 Ansible 时要传递的额外参数。

ansible_playbook_script = ansible-playbook

字符串值

到 "ansible-playbook" 脚本的路径。默认将搜索为运行 ironic-conductor 进程的用户配置的 $PATH。当 ansible-playbook 不在 $PATH 中或不安装到默认位置时,提供完整路径。

config_file_path = $pybasedir/drivers/modules/ansible/playbooks/ansible.cfg

字符串值

ansible 配置文件的路径。如果设置为空,则将使用系统默认。

default_clean_playbook = clean.yaml

字符串值

path (相对于 $playbooks_path 或 absolute)到用于节点清理的默认 playbook。它可能会被节点的 driver_info 字段中的 per-node ansible_clean_playbook 选项覆盖。

default_clean_steps_config = clean_steps.yaml

字符串值

path (相对于 $playbooks_path 或 absolute)到节点清理过程中使用的默认辅助清理步骤文件。它可能会被节点的 driver_info 字段中的 per-node ansible_clean_steps_config 选项覆盖。

default_deploy_playbook = deploy.yaml

字符串值

path (相对于 $playbooks_path 或 absolute)到用于部署的默认 playbook。它可能会被节点的 driver_info 字段中的 per-node ansible_deploy_playbook 选项覆盖。

default_key_file = None

字符串值

在通过 SSH 连接到 ramdisk 时,默认情况下 Ansible 使用的专用 SSH 密钥文件的绝对路径。默认为使用为运行 ironic-conductor 服务的用户配置的默认 SSH 密钥。必须使用密码的私钥预加载到 ssh-agent。它可能会被节点的 driver_info 字段中按节点 ansible_key_file 选项覆盖。

default_python_interpreter = None

字符串值

受管机器上 python 解释器的绝对路径。它可能会被节点的 driver_info 字段中按节点 ansible_python_interpreter 选项覆盖。默认情况下,ansible 使用 /usr/bin/python

default_shutdown_playbook = shutdown.yaml

字符串值

path (相对于 $playbooks_path 或 absolute)到用于安全关闭节点的默认 playbook 的路径。它可能会被节点的 driver_info 字段中的 per-node ansible_shutdown_playbook 选项覆盖。

default_username = ansible

字符串值

通过 SSH 连接到 ramdisk 时用于 Ansible 的用户名称。它可能会被节点的 driver_info 字段中按节点 ansible_username 选项覆盖。

extra_memory = 10

整数值

预期要被节点上的与 Ansible 相关的进程消耗的额外内存量(以 MiB 为单位)。影响镜像是否适合 RAM 的决定。

image_store_cafile = None

字符串值

用于验证到镜像存储的 SSL 连接的特定 CA 捆绑包。如果没有指定,则使用 ramdisk 中的 CA。不被驱动程序包括的默认 playbook 使用。适用于使用自签名证书的环境。

image_store_certfile = None

字符串值

用于 SSL 连接到镜像存储的客户端证书。不被驱动程序包括的默认 playbook 使用。

image_store_insecure = False

布尔值

在下载镜像时跳过验证到镜像存储的 SSL 连接。只有在测试使用自签名证书的环境时,才建议将其设置为 "True"。

image_store_keyfile = None

字符串值

用于 SSL 连接到镜像存储的客户端密钥。不被驱动程序包括的默认 playbook 使用。

playbooks_path = $pybasedir/drivers/modules/ansible/playbooks

字符串值

带有 playbook、角色和本地清单的目录路径。

post_deploy_get_power_state_retries = 6

整数值

重试获取电源状态的次数,以检查裸机节点是否在软关闭后关闭。值 0 表示不会在失败时重试。

post_deploy_get_power_state_retry_interval = 5

整数值

触发软关闭后轮询电源状态之间等待的时间(以秒为单位)。

verbosity = None

整数值

在调用 "ansible-playbook" 命令时设置请求的 ansible 详细程度。4 包括详细的 SSH 会话日志记录。启用全局调试时默认为 4,否则默认为 0。

5.1.5. api

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

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

api_workers = None

整数值

OpenStack Ironic API 服务的 worker 数量。默认值等于可用的 CPU 数量,但不超过 4。如果无法检测到 CPU 号,则使用一个 worker。

enable_ssl_api = False

布尔值

启用集成的独立 API 到通过 HTTPS 而不是 HTTP 服务请求。如果存在从服务执行 HTTPS 卸载的前端服务,这个选项应该是 False;请注意,您要使用 [oslo_middleware]enable_proxy_headers_parsing 选项启用代理标头解析,或配置 [api]public_endpoint 选项,以设置对 SSL 终止的响应。

host_ip = 0.0.0.0

主机地址值

ironic-api 侦听的 IP 地址或主机名。

max_limit = 1000

整数值

从集合资源在单个响应中返回的最大项目数。

network_data_schema = $pybasedir/api/controllers/v1/network-data-schema.json

字符串值

此部署所使用的网络数据的 schema。

port = 6385

端口值

ironic-api 侦听的 TCP 端口。

public_endpoint = None

字符串值

构建 API 资源链接时使用的公共 URL (如 "https://ironic.rocks:6384")。如果 None,则使用请求的主机 URL 构建链接。如果 API 在代理后面运行,则需要更改它来代表代理的 URL。默认值为 None。当通过 [oslo_middleware]enable_proxy_headers_parsing 选项启用代理标头解析时忽略。

ramdisk_heartbeat_timeout = 300

整数值

代理心跳的最大间隔(以秒为单位)。

restrict_lookup = True

布尔值

是否将查找 API 限制为处于特定状态的节点。

5.1.6. audit

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

表 5.5. audit
配置选项 = 默认值类型Description

audit_map_file = /etc/ironic/api_audit_map.conf

字符串值

ironic-api 服务的审计映射文件的路径。仅在启用 API Audit 时使用。

enabled = False

布尔值

启用 API 请求的审计(用于 ironic-api 服务)。

`ignore_req_list = `

字符串值

在审计日志记录过程中忽略的 Ironic REST API HTTP 方法的逗号分隔列表。例如:如果将其设定为 "GET,POST",则不会在任何 GET 或 POST 请求上进行审计。只有在启用 API 审计时才使用它。

5.1.7. cinder

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

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

action_retries = 3

整数值

失败操作时重试次数(当前仅在分离卷时使用)。

action_retry_interval = 5

整数值

如果失败动作,重试间隔(以秒为单位)(只重试特定的操作)。

auth-url = None

字符串值

身份验证 URL

auth_type = None

字符串值

要加载的身份验证类型

cafile = None

字符串值

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

certFile = None

字符串值

PEM 编码的客户端证书证书文件

collect-timing = False

布尔值

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

connect-retries = None

整数值

应该尝试连接错误的最大重试次数。

connect-retry-delay = None

浮点值

两次重试之间延迟(以秒为单位)用于连接错误。如果没有设置,则以 0.5 秒开始的指数重试,最多使用 60 秒。

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 编码的客户端证书密钥文件

max-version = None

字符串值

给定 API 的最大主要版本,旨在作为带有 min_version 的范围的上限。与版本相互排斥。

min-version = None

字符串值

给定 API 的最低主要版本,旨在作为 max_version 的范围低限。与版本相互排斥。如果给出了 min_version,且没有 max_version,它就如同 max version 为 "latest"。

password = None

字符串值

用户的密码

project-domain-id = None

字符串值

包含项目的域 ID

project-domain-name = None

字符串值

包含项目的域名

project-id = None

字符串值

项目 ID 的范围

project-name = None

字符串值

范围的项目名称

region-name = None

字符串值

用于端点 URL 发现的默认 region_name。

retries = 3

整数值

在请求失败的情况下,客户端重试。

service-name = None

字符串值

用于端点 URL 发现的默认 service_name。

service-type = volumev3

字符串值

端点 URL 发现的默认 service_type。

split-loggers = False

布尔值

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

status-code-retries = None

整数值

应该尝试重新分配 HTTP 状态代码的最大重试次数。

status-code-retry-delay = None

浮点值

在两次重试之间延迟(以秒为单位)用于可重新分配状态代码。如果没有设置,则以 0.5 秒开始的指数重试,最多使用 60 秒。

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。

version = None

字符串值

给定主版本 API 版本内用于端点 URL 发现的最低 Major API 版本。与 min_version 和 max_version 相互排斥

5.1.8. conductor

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

表 5.7. conductor
配置选项 = 默认值类型Description

allow_deleting_available_nodes = True

布尔值

允许删除处于 available 状态的节点。默认值为 True。

allow_provisioning_in_maintenance = True

布尔值

在处于维护模式时,是否允许节点进入或进行部署或清理。如果此选项设置为 False,且节点在部署或清理过程中进入维护,则该过程将在下一个心跳后中止。自动清理或使节点可用也会失败。如果为 True (默认),进程将在节点启动心跳后开始并暂停。将其从维护中移动会导致进程继续进行。

automated_clean = True

布尔值

启用或禁用自动清理。自动清理是一组可配置的步骤,如清除磁盘驱动器,在节点上执行以确保它处于基准状态并准备好部署到其中。这在实例删除后完成,并在从"manageable"过渡到 "available" 状态的过程中完成。启用后,执行清理节点的具体步骤取决于该节点由哪个驱动程序管理;有关详细信息,请参阅单个驱动程序的文档。注意:引入清理操作会导致实例删除需要更长的时间。在所有租户都信任的环境中(例如,因为只有一个租户),可以安全地禁用此选项。

bootloader = None

字符串值

包含 EFI 引导装载程序的 EFI 系统分区镜像的 glance ID、http:// 或 file:// URL。从内核和 ramdisk 构建 UEFI 引导 ISO 时,此映像将供 ironic 使用。UEFI 从分区镜像引导是必需的。

check_allocations_interval = 60

整数值

检查孤立分配的间隔,以秒为单位。设置为 0 可禁用检查。

check_provision_state_interval = 60

整数值

检查置备超时之间的间隔,以秒为单位。设置为 0 可禁用检查。

check_rescue_state_interval = 60

整数值

救援超时检查间隔(秒)。

clean_callback_timeout = 1800

整数值

超时(秒),以等待来自 ramdisk 执行清理的回调。如果达到超时,节点将置于"clean failed"调配状态。设置为 0 可禁用超时。

clean_step_priority_override = {}

dict 值

优先级为 in-band 和 out-band clean 步骤(以 interface.step_name:priority 格式提供)运行自动清理步骤,如 deploy.erase_devices_metadata:123。可多次指定 选项,以定义多个步骤的优先级。如果设置为 0,则在清理过程中不会运行这个特定步骤。如果未设置 inband clean 步骤,将使用 ramdisk 中设置的优先级。

`conductor_group = `

字符串值

要加入的编排器组的名称。最多可有 255 个字符,不区分大小写。此编排器将仅管理节点上设置了匹配的 "conductor_group" 字段的节点。

configdrive_swift_container = ironic_configdrive_container

字符串值

用于存储配置驱动器数据的 Swift 容器的名称。当 configdrive_use_object_store 为 True 时使用。

configdrive_swift_temp_url_duration = None

整数值

configdrive 临时 URL 无效超时(以秒为单位)。如果设置了,则默认为 deploy_callback_timeout,否则默认为 1800 秒。当 configdrive_use_object_store 为 True 时使用。

deploy_callback_timeout = 1800

整数值

从部署 ramdisk 等待回调的超时(秒)。设置为 0 可禁用超时。

deploy_kernel = None

字符串值

默认部署镜像的 kernel 的 Glance ID、http:// 或 file:// URL。

deploy_ramdisk = None

字符串值

默认部署镜像的 initramfs 的 glance ID、http:// 或 file:// URL。

enable_mdns = False

布尔值

是否启用通过多播 DNS 发布 baremetal API 端点。

force_power_state_during_sync = True

布尔值

在 sync_power_state 过程中,应该将硬件电源状态设置为数据库中记录的状态(True),或者应该根据硬件状态(False)更新数据库。

heartbeat_interval = 10

整数值

编排器核心为ats 之间的秒。

heartbeat_timeout = 60

整数值

编排器最后一次检查后的最大时间(以秒为单位)。超过这个时间时,编排器被视为不活跃。

inspect_wait_timeout = 1800

整数值

等待节点检查的超时(秒)。0 - 无限。

node_locked_retry_attempts = 3

整数值

获取节点锁定的尝试次数。

node_locked_retry_interval = 1

整数值

在节点锁定尝试之间休眠的秒数。

periodic_max_workers = 8

整数值

通过定期任务可以同时启动的最大 worker 线程数量。RPC 线程池大小应小于 RPC 线程池大小。

power_failure_recovery_interval = 300

整数值

由于电源同步失败,在检查之前处于维护模式的节点之间的间隔(以秒为单位)。成功检索其电源状态后,节点会自动从维护模式移出。设置为 0 以禁用这个检查。

power_state_change_timeout = 60

整数值

等待电源操作完成的秒数,即 baremetal 节点处于所需的电源状态。如果超时,电源操作被视为失败。

power_state_sync_max_retries = 3

整数值

在 sync_power_state 失败过程中,限制 Ironic 应该尝试使用 DB 中的节点电源状态同步硬件节点电源状态的次数

require_rescue_password_hashed = False

布尔值

选项使编排器不会回退到救援密码的未哈希版本,从而允许使用旧的 ironic-python-agent ramdisks 的救援。

rescue_callback_timeout = 1800

整数值

超时(秒)从救援 ramdisk 中等待回调。如果达到超时,节点将置于 "rescue failed" provision 状态。设置为 0 可禁用超时。

rescue_kernel = None

字符串值

默认救援镜像的 kernel 的 glance ID、http:// 或 file:// URL。

rescue_password_hash_algorithm = sha256

字符串值

用于救援密码的密码哈希算法。

rescue_ramdisk = None

字符串值

默认救援镜像的 initramfs 的 glance ID、http:// 或 file:// URL。

send_sensor_data = False

布尔值

启用通过通知总线发送传感器数据消息

send_sensor_data_for_undeployed_nodes = False

布尔值

传感器数据收集的默认值是仅收集已部署机器的数据,但操作员可能需要知道硬件中是否存在故障。当设置为 true 时,当通过 send_sensor_data 设置启用传感器数据收集时,编排器将从所有节点收集传感器信息。

send_sensor_data_interval = 600

整数值

通过通知总线向 ceilometer 发送传感器数据消息之间的秒数。

send_sensor_data_types = ['ALL']

列表值

需要发送到 Ceilometer 的以逗号分隔的量表类型列表。默认值为 "ALL",它是一个特殊值,表示发送所有传感器数据。

send_sensor_data_wait_timeout = 300

整数值

在允许再次进行定期调用前,等待发送传感器数据定期任务的时间(以秒为单位)。应小于 send_sensor_data_interval 值。

send_sensor_data_workers = 4

整数值

可同时启动用于发送传感器定期任务数据的最大 worker 数量。

soft_power_off_timeout = 600

整数值

软重启和软关闭操作的超时(以秒为单位)。这个值必须始终为正数。

sync_local_state_interval = 180

整数值

当编排器加入或离开集群时,现有编排器可能需要更新任何持久的本地状态,因为节点在集群移动时。这个选项控制每个编排器将检查它应该"接管"的节点的频率(以秒为单位)。将它设置为 0 (或负值)以完全禁用检查。

sync_power_state_interval = 60

整数值

将节点电源状态同步到数据库(以秒为单位)之间的间隔。设置为 0 以禁用同步。

sync_power_state_workers = 8

整数值

可以同时启动的最大 worker 线程数,以便从定期任务同步节点电源状态。

workers_pool_size = 100

整数值

worker 绿色线程池的大小。请注意,双线程将由编排器本身保留,用于处理核心情况和定期任务。在此之上,sync_power_state_workers 将最多需要 7 个绿色线程,默认值为 8。

5.1.9. 控制台

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

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

kill_timeout = 1

整数值

在发送 SIGKILL 信号前,等待控制台子进程退出的时间(以秒为单位)。

port_range = None

字符串值

可用于在 ironic conductor 主机上运行的控制台代理服务的端口范围,格式为 <start>:<stop>。Shellinabox 和 Socat 控制台都使用这个选项

socat_address = $my_ip

IP 地址值

在 ironic conductor 主机上运行的 Socat 服务的 IP 地址。仅由 Socat 控制台使用。

subprocess_checking_interval = 1

整数值

检查控制台子进程状态的时间间隔(以秒为单位)。

subprocess_timeout = 10

整数值

等待控制台子进程启动的时间(以秒为单位)。

terminal = shellinaboxd

字符串值

串行控制台终端程序的路径。仅由 Shell In A Box 控制台使用。

terminal_cert_dir = None

字符串值

包含用于串行控制台访问的终端 SSL 证书(PEM)的目录。仅由 Shell In A Box 控制台使用。

terminal_pid_dir = None

字符串值

用于保存终端 pid 文件的目录。如果没有指定,则使用临时目录。

terminal_timeout = 600

整数值

超时(以秒为单位)使终端会话在不活跃时关闭。设置为 0 可禁用超时。仅由 Socat 控制台使用。

5.1.10. CORS

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

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

allow_credentials = True

布尔值

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

allow_headers = []

列表值

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

allow_methods = ['OPTIONS', 'GET', 'HEAD', 'POST', 'PUT', 'DELETE', 'TRACE', 'PATCH']

列表值

指明在实际请求期间可以使用哪些方法。

allowed_origin = None

列表值

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

expose_headers = []

列表值

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

max_age = 3600

整数值

CORS preflight 请求的最大缓存期限。

5.1.11. database

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

表 5.10. database
配置选项 = 默认值类型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_engine = InnoDB

字符串值

要使用的 MySQL 引擎。

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

字符串值

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

sqlite_synchronous = True

布尔值

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

use_db_reconnect = False

布尔值

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

5.1.12. deploy

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

表 5.11. deploy
配置选项 = 默认值类型Description

configdrive_use_object_store = False

布尔值

是否将配置驱动器上传到对象存储。将这个选项设置为 True,将配置驱动器存储在 swift 端点中。

continue_if_disk_secure_erase_fails = False

布尔值

在 Ironic Python Agent 中清理过程中,定义在安全擦除操作(NVMe 或 ATA)失败时该怎么办。如果为 False,清理操作将失败,节点将处于 干净的失败状态。如果为 True,则继续调用并清理 shred。

create_configuration_priority = None

整数值

通过 Ironic Python Agent ramdisk 从设备创建 RAID 配置的优先级。如果未设置,将使用 ramdisk 中设置的优先级(对于 GenericHardwareManager,默认为 0)。如果设置为 0,则在清理过程中不会运行。

default_boot_mode = bios

字符串值

在节点的 driver_info、功能或 instance_info 配置中没有请求引导模式时,要使用的默认引导模式。目前默认引导模式为"bios",但将在以后将其更改为"定义"。建议为这个选项设置明确的值。这个选项仅在管理界面支持引导模式管理时才生效

default_boot_option = local

字符串值

在节点的 driver_info 中不请求引导选项时,使用默认引导选项。默认为 "local"。在 Usssuri 发布之前,默认值为"netboot"。

delete_configuration_priority = None

整数值

通过 Ironic Python Agent ramdisk 从设备中删除 RAID 配置的优先级。如果未设置,将使用 ramdisk 中设置的优先级(对于 GenericHardwareManager,默认为 0)。如果设置为 0,则在清理过程中不会运行。

disk_erasure_concurrency = 1

整数值

定义 Ironic Python Agent ramdisk 擦除磁盘设备的目标池大小。为擦除磁盘创建的线程数量不能超过这个值或要擦除的磁盘数量。

enable_ata_secure_erase = True

布尔值

是否在清理过程中支持使用 ATA 安全 Erase。默认值为 True。

enable_nvme_secure_erase = True

布尔值

是否在清理过程中支持使用 NVMe Secure Erase。目前,user-data 和 crypto 模式支持 nvme-cli format 命令,具体取决于设备 capabilities.Defaults 为 True。

erase_devices_metadata_priority = None

整数值

通过 Ironic Python Agent ramdisk 从设备中删除元数据的优先级,运行带清理的步骤。如果未设置,将使用 ramdisk 中设置的优先级(对于 GenericHardwareManager,默认为 99)。如果设置为 0,则在清理过程中不会运行。

erase_devices_priority = None

整数值

通过 Ironic Python Agent ramdisk 运行带外清除设备的优先级。如果未设置,将使用 ramdisk 中设置的优先级(对于 GenericHardwareManager,默认为 10)。如果设置为 0,则在清理过程中不会运行。

erase_skip_read_only = False

布尔值

如果 ironic-python-agent 在运行"erase_devices"清理步骤时跳过只读设备,其中块设备为零。这需要 ironic-python-agent 6.0.0 或更高版本。默认情况下,只读设备将导致基于非元数据的清理操作失败,因为数据在裸机节点部署之间可能的操作安全风险被保留。

external_callback_url = None

字符串值

用于引导方法的裸机 API 的代理回调 URL,如虚拟介质,可以在 provisioning 网络外提供镜像。默认为来自 [service_catalog] 的配置。

external_http_url = None

字符串值

ironic-conductor 节点的 HTTP 服务器的 URL 用于虚拟介质等引导方法,其中镜像可以在 provisioning 网络外提供。使用 Swift 时不适用。默认为 http_url。

fast_track = False

布尔值

是否允许部署代理在机器生命周期的初始状态执行查找,并传递 ramdisk 的常规设置流程。此功能还启用电源操作,它们是要绕过部署过程的一部分,如果 ramdisk 使用了 fast_track_timeout 设置执行心跳操作。

fast_track_timeout = 300

整数值

对于快速跟踪序列,最后一个心跳事件被视为有效的秒数。此设置通常应小于 "Power-On Self Test" 和典型的 ramdisk 启动率的秒数。这个值不应超过 [api]ramdisk_heartbeat_timeout 设置。

http_image_subdir = agent_images

字符串值

ironic-conductor 节点的 HTTP 根路径下的子目录名称,用于为直接部署接口放置实例镜像,当本地 HTTP 服务合并到提供实例镜像而不是 swift tempurls 时。

http_root = /httpboot

字符串值

ironic-conductor 节点的 HTTP 根路径。

http_url = None

字符串值

ironic-conductor 节点的 HTTP 服务器 URL。示例 :http://192.1.2.3:8080

power_off_after_deploy_failure = True

布尔值

在部署失败后是否关闭节点。默认值为 True。

ramdisk_image_download_source = local

字符串值

指定引导 iso 镜像是否应该直接使用镜像源 url 从其原始位置提供,或者 ironic 应该缓存编排器中的镜像并从 ironic 自身的 http 服务器提供它。

shred_final_overwrite_with_zeros = True

布尔值

在编写随机数据后,是否将零写入节点的块设备。即使 deploy.shred_random_overwrite_iterations 为 0,这也会向设备写入零。只有在设备无法为 ATA 安全 Erased 时才使用此选项。默认值为 True。

shred_random_overwrite_iterations = 1

整数值

在 shred 期间,使用随机数据覆盖所有块设备 N 次。这只有在无法 ATA 安全 Erased 时使用。默认为 1。

5.1.13. dhcp

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

表 5.12. dhcp
配置选项 = 默认值类型Description

dhcp_provider = neutron

字符串值

要使用的 DHCP 提供程序。"neutron"使用 Neutron,而"none"则使用 no-op 提供程序。

5.1.14. disk_partitioner

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

表 5.13. disk_partitioner
配置选项 = 默认值类型Description

check_device_interval = 1

整数值

在 Ironic 完成分区表后,它会继续在此间隔上检查附加的 iSCSI 设备状态的活动,然后再将镜像复制到节点,以秒为单位

check_device_max_retries = 20

整数值

检查设备没有被另一个进程访问的次数上限。如果设备在那后仍然忙碌,磁盘分区将被视为已失败。

5.1.15. disk_utils

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

表 5.14. disk_utils
配置选项 = 默认值类型Description

bios_boot_partition_size = 1

整数值

在 BIOS 中为本地引导时,以 MiB 为单位的 BIOS 引导分区大小(以 MiB 为单位)。

dd_block_size = 1M

字符串值

写入节点磁盘的块大小。

efi_system_partition_size = 200

整数值

为本地引导配置 UEFI 系统时,以 MiB 为单位的 EFI 系统分区大小。

image_convert_attempts = 3

整数值

镜像转换的尝试次数。

image_convert_memory_limit = 2048

整数值

MiB 中的 "qemu-img convert" 的内存限值。通过地址空间资源限制实施。

partition_detection_attempts = 3

整数值

最多尝试检测新创建的分区。

partprobe_attempts = 10

整数值

尝试读取分区的最大尝试次数。

5.1.16. drac

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

表 5.15. drac
配置选项 = 默认值类型描述

bios_factory_reset_timeout = 600

整数值

等待工厂重置 BIOS 设置完成的最长时间(以秒为单位)。

boot_device_job_status_timeout = 30

整数值

等待引导设备配置作业过渡到正确的状态的最长时间(以秒为单位),以允许重新引导或开机完成。

config_job_max_retries = 240

整数值

配置作业成功完成的最大重试次数。

query_import_config_job_status_interval = 60

整数值

检查完成导入配置任务之间等待的秒数

query_raid_config_job_status_interval = 120

整数值

定期 RAID 作业状态检查间隔(以秒为单位),以确定异步 RAID 配置是否已成功完成。

5.1.17. Glance

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

表 5.16. Glance
配置选项 = 默认值类型Description

allowed_direct_url_schemes = []

列表值

可以直接通过 direct_url 下载的 URL 方案列表。目前支持的方案:[file]。

auth-url = None

字符串值

身份验证 URL

auth_type = None

字符串值

要加载的身份验证类型

cafile = None

字符串值

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

certFile = None

字符串值

PEM 编码的客户端证书证书文件

collect-timing = False

布尔值

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

connect-retries = None

整数值

应该尝试连接错误的最大重试次数。

connect-retry-delay = None

浮点值

两次重试之间延迟(以秒为单位)用于连接错误。如果没有设置,则以 0.5 秒开始的指数重试,最多使用 60 秒。

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 编码的客户端证书密钥文件

max-version = None

字符串值

给定 API 的最大主要版本,旨在作为带有 min_version 的范围的上限。与版本相互排斥。

min-version = None

字符串值

给定 API 的最低主要版本,旨在作为 max_version 的范围低限。与版本相互排斥。如果给出了 min_version,且没有 max_version,它就如同 max version 为 "latest"。

num_retries = 0

整数值

从 glance 下载镜像时重试次数。

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 = image

字符串值

端点 URL 发现的默认 service_type。

split-loggers = False

布尔值

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

status-code-retries = None

整数值

应该尝试重新分配 HTTP 状态代码的最大重试次数。

status-code-retry-delay = None

浮点值

在两次重试之间延迟(以秒为单位)用于可重新分配状态代码。如果没有设置,则以 0.5 秒开始的指数重试,最多使用 60 秒。

swift_account = None

字符串值

Glance 用于与 Swift 通信的帐户。格式为 "AUTH_uuid"。"uuid" 是 glance-api.conf 中配置的帐户的 UUID。例如:"AUTH_a422b2-91f3-2f46-74b7-d7c9e8958f5d30"。如果没有设置,则根据用于访问 Swift 的项目 ID (如 [swift] 部分中所设置)计算默认值。Swift 临时 URL 格式:"endpoint_url/api_version/account/container/object_id"

swift_api_version = v1

字符串值

用于为以下目的创建临时 URL 的 Swift API 版本。默认为 "v1"。Swift 临时 URL 格式:"endpoint_url/api_version/account/container/object_id"

swift_container = glance

字符串值

Swift 容器 Glance 已配置为将其映像存储在.默认为 "glance",这是 glance-api.conf 中的默认值。Swift 临时 URL 格式:"endpoint_url/api_version/account/container/object_id"

swift_endpoint_url = None

字符串值

用于 "endpoint_url/api_version/account/container/object_id" 的 Swift URL 的 "endpoint, hostname, optional port)。不要包含结尾的"/"。例如,使用 "https://swift.example.com"。如果使用 RADOS 网关,端点也可以包含 /swift 路径;如果不存在,它将会被附加。用于临时 URL,如果未提供,将从服务目录获取。

swift_store_multiple_containers_seed = 0

整数值

这应该与 Glance 配置文件中同名的配置匹配。当设置为 0 时,单租户存储将仅使用一个容器来存储所有镜像。当设置为 1 到 32 之间的整数值时,单租户存储将使用多个容器来存储镜像,这个值将决定创建多少个容器。

swift_temp_url_cache_enabled = False

布尔值

是否缓存生成的 Swift 临时 URL。只有在使用镜像缓存代理时,将它设置为 true 才有用。默认值为 False。

swift_temp_url_duration = 1200

整数值

临时 URL 有效的时间长度(以秒为单位)。默认值为 20 分钟。如果某些部署在尝试从临时 URL 下载时获得 401 响应代码,请尝试此持续时间。这个值必须大于或等于 swift_temp_url_expected_download_start_delay 的值

swift_temp_url_expected_download_start_delay = 0

整数值

这是部署请求时(以秒为单位)的时间(如果生成 Swift 临时 URL)到 IPA ramdisk 启动并且使用 URL 进行镜像下载的时间。这个值用于检查 Swift 临时 URL 持续时间是否足够大,以便开始下载镜像。另外,如果启用了临时 URL 缓存,这将确定在下载启动时缓存的条目是否仍然有效。swift_temp_url_duration 值必须大于或等于这个选项的值。默认值为 0。

swift_temp_url_key = None

字符串值

提供给 Swift 的 secret 令牌,以允许下载临时 URL。临时 URL 需要。对于 Swift 后端,默认使用服务项目上的密钥(如 [swift] 部分中所设置)。

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。

version = None

字符串值

给定主版本 API 版本内用于端点 URL 发现的最低 Major API 版本。与 min_version 和 max_version 相互排斥

5.1.18. healthcheck

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

表 5.17. healthcheck
配置选项 = 默认值类型Description

backends = []

列表值

可执行健康检查并报告该信息作为请求的一部分的其他后端。

detailed = False

布尔值

显示响应中更详细的信息。安全备注:启用此选项可能会公开有关被监控服务的敏感详情。务必验证它是否不会违反您的安全策略。

disable_by_file_path = None

字符串值

检查是否存在文件,以确定应用是否在端口上运行。DisableByFileHealthcheck 插件使用。

disable_by_file_paths = []

列表值

根据端口检查文件是否存在,以确定应用是否在端口上运行。需要字符串的 "port:path" 列表。DisableByFilesPortsHealthcheck 插件使用。

enabled = False

布尔值

在 /healthcheck 中启用健康检查端点。请注意,这是未经身份验证的。有关更多信息,请参见 https://docs.openstack.org/oslo.middleware/latest/reference/healthcheck_plugins.html

path = /healthcheck

字符串值

响应 healtcheck 请求的路径。

5.1.19. ilo

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

表 5.18. ilo
配置选项 = 默认值类型Description

ca_file = None

字符串值

用于验证 iLO 的 CA 证书文件。

clean_priority_clear_secure_boot_keys = 0

整数值

clear_secure_boot_keys 清理步骤的优先级。默认情况下不启用此步骤。它可启用以清除使用 iLO 注册的所有安全引导密钥。

clean_priority_reset_bios_to_default = 10

整数值

reset_bios_to_default 清理步骤的优先级。

clean_priority_reset_ilo = 0

整数值

reset_ilo clean 步骤的优先级。

clean_priority_reset_ilo_credential = 30

整数值

reset_ilo_credential 清理步骤的优先级。此步骤要求在节点的 driver_info 中使用新密码更新 "ilo_change_password" 参数。

clean_priority_reset_secure_boot_keys_to_default = 20

整数值

reset_secure_boot_keys 清理步骤的优先级。此步骤会将安全引导密钥重置为 manufacturing 默认值。

client_port = 443

端口值

用于 iLO 操作的端口

client_timeout = 60

整数值

iLO 操作的超时时间(以秒为单位)

default_boot_mode = auto

字符串值

在节点的 "properties/capabilities" 功能中没有提供 "boot_mode" 功能时,用于置备的默认引导模式。默认为"auto"用于向后兼容。当指定 "auto" 时,将根据系统上的引导模式设置选择默认引导模式。

file_permission = 420

整数值

swift-less 镜像的文件权限,使用文件访问权限的八进制权限表示。此设置默认为 644,或 Python 中的八进制数 0o644。此设置必须设置为八进制数表示,即以 0o 开始。

kernel_append_params = nofb nomodeset vga=normal

字符串值

传递给实例内核的其他内核参数。这些参数可由内核或应用程序使用,方法是读取 /proc/cmdline。严重的 cmdline 大小限制!可以被 instance_info/kernel_append_params 属性覆盖。

oob_erase_devices_job_status_interval = 300

整数值

定期擦除状态检查之间的间隔(以秒为单位),以确定异步外除擦除设备是否已成功完成。平均来说,具有默认模式"overwrite"的 300GB HDD 大约需要 9 小时,默认模式为 "block" 的 300GB SSD 需要约为 "block"。30 秒才能完成 sanitize 磁盘清除。

power_wait = 2

整数值

在电源操作之间等待的时间(以秒为单位)

swift_ilo_container = ironic_ilo_container

字符串值

用于存储数据的 Swift iLO 容器。

swift_object_expiry_timeout = 900

整数值

Swift 对象自动过期的时间(以秒为单位)。

use_web_server_for_images = False

布尔值

把它设置为 True,以使用 http web 服务器托管软盘镜像和生成的启动 ISO。这要求 http_root 和 http_url 在配置文件的 [deploy] 部分中配置。如果这设置为 False,则 Ironic 将使用 Swift 托管软盘镜像和生成的 boot_iso。

verify_ca = True

字符串值

用于验证 iLO 的 CA 证书。这可以是布尔值,也可以是 CA_BUNDLE 文件的路径,也可以是带有可信 CA 证书的目录。如果设置为 True,则驱动程序将验证主机证书;如果 False,则驱动程序将忽略验证 SSL 证书。如果是路径,则驱动程序将使用指定的证书或目录中的其中一个证书。默认值为 True。

5.1.20. inspector

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

表 5.19. inspector
配置选项 = 默认值类型Description

auth-url = None

字符串值

身份验证 URL

auth_type = None

字符串值

要加载的身份验证类型

cafile = None

字符串值

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

callback_endpoint_override = None

字符串值

引导由 ironic 管理时用于回发内省数据的回调端点。默认使用标准 keystoneauth 选项。

certFile = None

字符串值

PEM 编码的客户端证书证书文件

collect-timing = False

布尔值

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

connect-retries = None

整数值

应该尝试连接错误的最大重试次数。

connect-retry-delay = None

浮点值

两次重试之间延迟(以秒为单位)用于连接错误。如果没有设置,则以 0.5 秒开始的指数重试,最多使用 60 秒。

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 选项。

`extra_kernel_params = `

字符串值

引导由 ironic (而非 ironic-inspector)管理时,要传递给检查 ramdisk 的额外内核参数。对键=值用空格分开。

insecure = False

布尔值

验证 HTTPS 连接。

keyfile = None

字符串值

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

max-version = None

字符串值

给定 API 的最大主要版本,旨在作为带有 min_version 的范围的上限。与版本相互排斥。

min-version = None

字符串值

给定 API 的最低主要版本,旨在作为 max_version 的范围低限。与版本相互排斥。如果给出了 min_version,且没有 max_version,它就如同 max version 为 "latest"。

password = None

字符串值

用户的密码

power_off = True

布尔值

检查完成后是否关闭节点

project-domain-id = None

字符串值

包含项目的域 ID

project-domain-name = None

字符串值

包含项目的域名

project-id = None

字符串值

项目 ID 的范围

project-name = None

字符串值

范围的项目名称

region-name = None

字符串值

用于端点 URL 发现的默认 region_name。

require_managed_boot = False

布尔值

要求带外检查引导由 ironic 完全管理。如果您安装的 ironic-inspector 没有单独的 PXE 引导环境,则将其设置为 True。

service-name = None

字符串值

用于端点 URL 发现的默认 service_name。

service-type = baremetal-introspection

字符串值

端点 URL 发现的默认 service_type。

split-loggers = False

布尔值

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

status-code-retries = None

整数值

应该尝试重新分配 HTTP 状态代码的最大重试次数。

status-code-retry-delay = None

浮点值

在两次重试之间延迟(以秒为单位)用于可重新分配状态代码。如果没有设置,则以 0.5 秒开始的指数重试,最多使用 60 秒。

status_check_period = 60

整数值

检查检查时节点状态的时间(以秒为单位)

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。

version = None

字符串值

给定主版本 API 版本内用于端点 URL 发现的最低 Major API 版本。与 min_version 和 max_version 相互排斥

5.1.21. ipmi

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

表 5.20. ipmi
配置选项 = 默认值类型Description

additional_retryable_ipmi_errors = []

多值

ipmitool 可能会遇到的额外错误,特定于它在其中运行的环境。

cipher_suite_versions = []

列表值

如果没有为节点设置字段 cipher_suite,则硬件可以支持的可能密码套件版本列表。

command_retry_timeout = 60

整数值

重试 IPMI 操作的最大时间(以秒为单位)。(例如,如果请求的操作失败,则一个操作可以被重试。)当存在缓慢或无响应的 BMC 时,设置此值可能会导致同步电源状态定期任务挂起。

debug = False

布尔值

启用使用额外的调试输出执行所有 ipmi 命令。这是单独的选项,因为在这个模式中,ipmitool 可以记录大量误导文本。

disable_boot_timeout = True

布尔值

Ironic 发送原始 IPMI 命令的默认超时行为,以禁用 60 秒启动超时。将此选项设置为 False 不会发送该命令,默认值为 True。它可以被节点的 driver_info 字段中的 per-node ipmi_disable_boot_timeout 选项覆盖。

kill_on_timeout = True

布尔值

如果 ipmitool 进程在 command_retry_timeout 超时到期后没有退出,则终止由 ironic 调用的 ipmitool 进程来读取节点电源状态。推荐的设置为 True

min_command_interval = 5

整数值

发送到服务器的 IPMI 操作之间的最短时间(以秒为单位)。有些硬件设置得太低时,可能会导致 BMC 崩溃。推荐的设置为 5 秒。

use_ipmitool_retries = False

布尔值

当设置为 True 且 ipmitool 支持参数时,重试间隔的数量和重试间隔会作为参数传递给 ipmitool,ipmitool 将执行重试。当设置为 False 时,ironic 将重试 ipmitool 命令。推荐的设置是 False

5.1.22. irmc

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

表 5.21. irmc
配置选项 = 默认值类型Description

auth_method = basic

字符串值

用于 iRMC 操作的验证方法

clean_priority_restore_irmc_bios_config = 0

整数值

restore_irmc_bios_config clean 步骤的优先级。

client_timeout = 60

整数值

iRMC 操作的超时时间(以秒为单位)

fpga_ids = []

列表值

要检查的 CPU FPGA 的厂商 ID 和设备 ID 列表。列表项的格式是 vendorID/deviceID,用逗号分开。CPU 检查将使用此值来查找节点中是否存在 CPU FPGA。如果没有定义这个选项,请在节点特征中保留 CUSTOM_CPU_FPGA。示例 fpga_ids 值: 0x1000/0x0079,0x2100/0x0080

gpu_ids = []

列表值

要检查的 GPU 设备的厂商 ID 和设备 ID 列表。列表项的格式是 vendorID/deviceID,用逗号分开。GPU 检查将使用此值来计算节点中的 GPU 设备数量。如果没有定义这个选项,请在 capabilities 属性中保留 pci_gpu_devices。示例 gpu_ids 值: 0x1000/0x0079,0x2100/0x0080

port = 443

端口值

用于 iRMC 操作的端口

query_raid_config_fgi_status_interval = 300

整数值

定期 RAID 状态检查之间的间隔(以秒为单位),以确定异步 RAID 配置是否已成功完成。在创建虚拟驱动器后,前台初始化(FGI)将启动 5 分钟。

remote_image_server = None

字符串值

远程镜像服务器的 IP

remote_image_share_name = share

字符串值

share name of remote_image_server

remote_image_share_root = /remote_image_share_root

字符串值

Ironic 编排器节点的"NFS"或"CIFS"根路径

remote_image_share_type = CIFS

字符串值

共享虚拟介质类型

`remote_image_user_domain = `

字符串值

remote_image_user_name 的域名

remote_image_user_name = None

字符串值

remote_image_server 的用户名

remote_image_user_password = None

字符串值

remote_image_user_name 的密码

sensor_method = ipmitool

字符串值

获得感应器数据的方法。

snmp_auth_proto = sha

字符串值

SNMPv3 消息身份验证协议 ID。版本 v3 需要。如果 python-scciclient 的版本为 0.10.1,则将忽略。有效选项包括 sha ,sha256,sha384sha512,而 sha 是 iRMC S4 和 S5 中唯一支持的协议,但支持 sha256sha384sha512,但不支持 sha。

snmp_community = public

字符串值

SNMP 社区.版本 "v1" 和 "v2c" 需要

snmp_polling_interval = 10

整数值

SNMP 轮询间隔(以秒为单位)

snmp_port = 161

端口值

SNMP 端口

snmp_priv_proto = aes

字符串值

SNMPv3 消息隐私(加密)协议 ID。版本 v3 需要。如果 python-scciclient 的版本为 0.10.1,则将忽略。支持 AES。

snmp_security = None

字符串值

SNMP 安全性名称。版本 v3 需要。如果设置了 driver_info/irmc_snmp_user,则将忽略。

snmp_version = v2c

字符串值

SNMP 协议版本

5.1.23. ironic_lib

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

表 5.22. ironic_lib
配置选项 = 默认值类型Description

fatal_exception_format_errors = False

布尔值

在生成异常消息时,使用格式错误(编程错误)。如果为 True,则引发异常;如果 False,请使用未格式化的消息。

root_helper = sudo ironic-rootwrap /etc/ironic/rootwrap.conf

字符串值

前缀为以 root 身份运行的命令的命令。如果没有指定,则不会以 root 用户身份运行任何命令。

5.1.24. iscsi

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

表 5.23. iscsi
配置选项 = 默认值类型Description

conv_flags = None

字符串值

需要发送到 dd 命令的标记,以控制复制到主机时原始文件的转换。它可以包含多个选项,用逗号分开。

portal_port = 3260

端口值

iSCSI 门户侦听传入连接的端口号。

verify_attempts = 3

整数值

最多尝试验证 iSCSI 连接是否处于活动状态,在尝试之间休眠 1 秒。默认值为 3。

5.1.25. json_rpc

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

表 5.24. json_rpc
配置选项 = 默认值类型Description

auth-url = None

字符串值

身份验证 URL

auth_strategy = None

字符串值

JSON RPC 使用的验证策略。默认为全局 auth_strategy 设置。

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

字符串值

范围为的域名

host_ip = ::

主机地址值

JSON RPC 将侦听的 IP 地址或主机名。

http_basic_auth_user_file = /etc/ironic/htpasswd-json-rpc

字符串值

auth_strategy=http_basic 时使用的 Apache 格式用户身份验证文件的路径

http_basic_password = None

字符串值

用于 HTTP 基本身份验证客户端请求的密码。

http_basic_username = None

字符串值

用于 HTTP 基本身份验证客户端请求的用户名。

insecure = False

布尔值

验证 HTTPS 连接。

keyfile = None

字符串值

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

password = None

字符串值

用户的密码

port = 8089

端口值

JSON RPC 使用的端口

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

use_ssl = False

布尔值

是否为 JSON RPC 使用 TLS

user-domain-id = None

字符串值

用户的域 ID

user-domain-name = None

字符串值

用户的域名

user-id = None

字符串值

用户 ID

username = None

字符串值

用户名

5.1.26. keystone_authtoken

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

表 5.25. keystone_authtoken
配置选项 = 默认值类型Description

auth_section = None

字符串值

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

auth_type = None

字符串值

要加载的身份验证类型

auth_uri = None

字符串值

完整的"公共"身份 API 端点。此端点不应是一个 "admin" 端点,因为它应该可以被所有最终用户访问。未经身份验证的客户端重定向到此端点以进行身份验证。虽然理想情况下,这个端点应该被未指定版本,但通配符中的客户端支持会有所不同。如果您在这里使用版本化的 v2 端点,则该服务用户不应该用于验证令牌的端点,因为普通用户可能无法访问该端点。这个选项已弃用,现在使用 www_authenticate_uri,并将在 S 发行版本中删除。弃用自: Queens

*reason:* auth_uri 选项已弃用,现在使用 www_authenticate_uri,并将在 S 发行版本中删除。

auth_version = None

字符串值

Identity API 端点的 API 版本。

cache = None

字符串值

存储 Swift 缓存对象的请求环境密钥。当使用 Swift 缓存部署 auth_token 中间件时,请使用此选项使中间件共享具有 swift 的缓存后端。否则,使用 memcached_servers 选项。

cafile = None

字符串值

验证 HTTP 连接时要使用的 PEM 编码证书颁发机构。默认为系统 CA。

certFile = None

字符串值

如果身份服务器需要客户端证书,则需要此项

delay_auth_decision = False

布尔值

不要在中间件内处理授权请求,而是将授权决策委派给下游 WSGI 组件。

enforce_token_bind = permissive

字符串值

用于控制令牌绑定的使用和类型。可以设置为 "disabled" 以不检查令牌绑定。如果绑定类型是已知服务器的绑定类型,则验证绑定信息,并忽略它(如 "permissive" ),但如果绑定类型未知,则令牌将被拒绝。"必需"令牌绑定需要允许任何形式的令牌绑定。最后,令牌中必须存在的绑定方法名称。

http_connect_timeout = None

整数值

请求超时值与身份 API 服务器通信。

http_request_max_retries = 3

整数值

与身份 API 服务器通信时,我们尝试重新连接的次数。

include_service_catalog = True

布尔值

(可选)指示是否设置 X-Service-Catalog 标头。如果为 False,则中间件不会要求在令牌验证时请求服务目录,且不会设置 X-Service-Catalog 标头。

insecure = False

布尔值

验证 HTTPS 连接。

interface = internal

字符串值

用于 Identity API 端点的接口。有效值为 "public", "internal" (默认)或 "admin"。

keyfile = None

字符串值

如果身份服务器需要客户端证书,则需要此项

memcache_pool_conn_get_timeout = 10

整数值

(可选)操作等待从池中获取 memcached 客户端连接的秒数。

memcache_pool_dead_retry = 300

整数值

(可选)在再次尝试前 memcached 服务器被视为 dead 的秒数。

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 (事件安全)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 端点,则该服务用户不应该用于验证令牌的端点,因为普通用户可能无法访问该端点。

5.1.27. mdns

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

表 5.26. mdns
配置选项 = 默认值类型Description

interfaces = None

列表值

用于 mDNS 的接口的 IP 地址列表。默认为系统中的所有接口。

lookup_attempts = 3

整数值

查找服务的尝试次数。

params = {}

dict 值

为注册的服务传递的其他参数。

registration_attempts = 5

整数值

注册服务的尝试次数。由于 zeroconf 库中的竞争条件,目前必须大于 1。

5.1.28. metrics

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

表 5.27. metrics
配置选项 = 默认值类型Description

agent_backend = noop

字符串值

用于指标代理 ramdisk 的后端。默认可能的后端为 "noop" 和 "statsd"。

agent_global_prefix = None

字符串值

为代理 ramdisk 发送的所有指标名称添加前缀。指标名称的格式是 [global_prefix.][uuid.][host_name.]prefix.metric_name。

agent_prepend_host = False

布尔值

将主机名添加到代理 ramdisk 发送的所有指标名称。指标名称的格式是 [global_prefix.][uuid.][host_name.]prefix.metric_name。

agent_prepend_host_reverse = True

布尔值

将前置的主机值分割为 ".",将其反向用于代理 ramdisk 发送的指标(以便更好地匹配域名的反向分级形式)。

agent_prepend_uuid = False

布尔值

将节点的 Ironic uuid 添加到代理 ramdisk 发送的所有指标名称。指标名称的格式是 [global_prefix.][uuid.][host_name.]prefix.metric_name。

backend = noop

字符串值

用于 metrics 系统的后端。

global_prefix = None

字符串值

使用这个值为所有指标名称添加前缀。默认情况下,没有全局前缀。指标名称的格式是 [global_prefix.][host_name.]prefix.metric_name。

prepend_host = False

布尔值

将主机名添加到所有指标名称。指标名称的格式是 [global_prefix.][host_name.]prefix.metric_name。

prepend_host_reverse = True

布尔值

将前置的主机值分割为 "." 并反向它(以更好地匹配域名的反向层次结构形式)。

5.1.29. metrics_statsd

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

表 5.28. metrics_statsd
配置选项 = 默认值类型Description

agent_statsd_host = localhost

字符串值

与 statsd 后端一起使用的代理 ramdisk 的主机。这必须可从代理引导的网络访问。

agent_statsd_port = 8125

端口值

与 statsd 后端一起使用的代理 ramdisk 端口。

statsd_host = localhost

字符串值

用于 statsd 后端的主机。

statsd_port = 8125

端口值

与 statsd 后端一起使用的端口。

5.1.30. molds

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

表 5.29. molds
配置选项 = 默认值类型描述

password = None

字符串值

"http" Basic auth 的密码。默认情况下,设置为空。

retry_attempts = 3

整数值

重试尝试保存或获取配置 molds。

retry_interval = 3

整数值

保存或获取配置折叠的重试间隔。

storage = swift

字符串值

配置 mold 存储位置。支持 "swift" 和 "http"。默认 "swift"。

user = None

字符串值

user for "http" Basic auth。默认情况下,设置为空。

5.1.31. neutron

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

表 5.30. neutron
配置选项 = 默认值类型Description

add_all_ports = False

布尔值

选项,可在创建用于置备、清理或救援的端口时将所有端口传输到 neutron。这是在没有分配给端口的 IP 地址的情况下完成的,在某些绑定的网络配置中可能很有用。

auth-url = None

字符串值

身份验证 URL

auth_type = None

字符串值

要加载的身份验证类型

cafile = None

字符串值

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

certFile = None

字符串值

PEM 编码的客户端证书证书文件

cleaning_network = None

字符串值

引导至中用于清理节点的 ramdisk 的 Neutron 网络 UUID 或名称。"neutron"网络接口需要。如果使用 "flat" 网络接口或 "neutron" DHCP 供应商时,还需要清理节点。如果提供了名称,则必须在所有网络或清理中唯一,否则清理将失败。

cleaning_network_security_groups = []

列表值

在清理节点的过程中要应用的 Neutron 安全组 UUID 列表。可选的 "neutron" 网络接口,不用于"flat"或"noop"网络接口。如果未指定,则使用默认安全组。

collect-timing = False

布尔值

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

connect-retries = None

整数值

应该尝试连接错误的最大重试次数。

connect-retry-delay = None

浮点值

两次重试之间延迟(以秒为单位)用于连接错误。如果没有设置,则以 0.5 秒开始的指数重试,最多使用 60 秒。

default-domain-id = None

字符串值

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

default-domain-name = None

字符串值

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

dhcpv6_stateful_address_count = 4

整数值

为在 DHCPv6-stateful 网络上创建的用于置备、清理、救援或检查的端口分配的 IPv6 地址数量。链加载过程的不同阶段将请求具有不同 CLID/IAID 的地址。由于主机必须保留非标识性标识符多个地址,以确保引导过程的每个步骤都可以成功租期地址。

domain-id = None

字符串值

范围的域 ID

domain-name = None

字符串值

范围为的域名

endpoint-override = None

字符串值

始终将此端点 URL 用于此客户端的请求。注意:应在此处指定未版本化的端点;若要请求特定的 API 版本,使用 version, min-version, 和/或 max-version 选项。

insecure = False

布尔值

验证 HTTPS 连接。

inspection_network = None

字符串值

要引导到的 ramdisk 的 Neutron 网络 UUID 或名称,以进行节点进行带处理检查。如果提供了名称,则必须在所有网络或检查中唯一,否则检查将失败。

inspection_network_security_groups = []

列表值

在节点检查过程中应用的 Neutron 安全组 UUID 列表。可选的 "neutron" 网络接口,不用于"flat"或"noop"网络接口。如果未指定,则使用默认安全组。

keyfile = None

字符串值

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

max-version = None

字符串值

给定 API 的最大主要版本,旨在作为带有 min_version 的范围的上限。与版本相互排斥。

min-version = None

字符串值

给定 API 的最低主要版本,旨在作为 max_version 的范围低限。与版本相互排斥。如果给出了 min_version,且没有 max_version,它就如同 max version 为 "latest"。

password = None

字符串值

用户的密码

port_setup_delay = 0

整数值

延迟值,以等待 Neutron 代理为端口设置足够的 DHCP 配置。

project-domain-id = None

字符串值

包含项目的域 ID

project-domain-name = None

字符串值

包含项目的域名

project-id = None

字符串值

项目 ID 的范围

project-name = None

字符串值

范围的项目名称

provisioning_network = None

字符串值

为调配节点引导到的 ramdisk 的 Neutron 网络 UUID 或名称。"neutron"网络接口需要。如果提供了名称,则必须在所有网络或部署中唯一,否则部署将失败。

provisioning_network_security_groups = []

列表值

在置备节点的过程中应用的 Neutron 安全组 UUID 列表。可选的 "neutron" 网络接口,不用于"flat"或"noop"网络接口。如果未指定,则使用默认安全组。

region-name = None

字符串值

用于端点 URL 发现的默认 region_name。

request_timeout = 45

整数值

与 Neutron 交互时请求处理的超时。如果观察到 neutron 端口操作超时,则应增加这个值,因为 neutron 在返回到 API 客户端之前执行预提交验证的时间可能比正常的客户端/服务器交互要长。

rescuing_network = None

字符串值

为救援模式引导 ramdisk 的 Neutron 网络 UUID 或名称。这不是救援 ramdisk 将使用 post-boot iwl-categoriesthe 租户网络用于该网络的网络。如果使用救援模式,则需要 "neutron" 网络接口。它不适用于 "flat" 或 "noop" 网络接口。如果提供了名称,则它在所有网络之间必须是唯一的,否则 rescue 将失败。

rescuing_network_security_groups = []

列表值

在节点救援过程中应用的 Neutron 安全组 UUID 列表。可选的 "neutron" 网络接口,不用于"flat"或"noop"网络接口。如果未指定,则使用默认安全组。

retries = 3

整数值

DEPRECATED :当请求失败时,客户端重试。

service-name = None

字符串值

用于端点 URL 发现的默认 service_name。

service-type = network

字符串值

端点 URL 发现的默认 service_type。

split-loggers = False

布尔值

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

status-code-retries = None

整数值

应该尝试重新分配 HTTP 状态代码的最大重试次数。

status-code-retry-delay = None

浮点值

在两次重试之间延迟(以秒为单位)用于可重新分配状态代码。如果没有设置,则以 0.5 秒开始的指数重试,最多使用 60 秒。

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。

version = None

字符串值

给定主版本 API 版本内用于端点 URL 发现的最低 Major API 版本。与 min_version 和 max_version 相互排斥

5.1.32. nova

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

表 5.31. nova
配置选项 = 默认值类型Description

auth-url = None

字符串值

身份验证 URL

auth_type = None

字符串值

要加载的身份验证类型

cafile = None

字符串值

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

certFile = None

字符串值

PEM 编码的客户端证书证书文件

collect-timing = False

布尔值

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

connect-retries = None

整数值

应该尝试连接错误的最大重试次数。

connect-retry-delay = None

浮点值

两次重试之间延迟(以秒为单位)用于连接错误。如果没有设置,则以 0.5 秒开始的指数重试,最多使用 60 秒。

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 编码的客户端证书密钥文件

max-version = None

字符串值

给定 API 的最大主要版本,旨在作为带有 min_version 的范围的上限。与版本相互排斥。

min-version = None

字符串值

给定 API 的最低主要版本,旨在作为 max_version 的范围低限。与版本相互排斥。如果给出了 min_version,且没有 max_version,它就如同 max version 为 "latest"。

password = None

字符串值

用户的密码

project-domain-id = None

字符串值

包含项目的域 ID

project-domain-name = None

字符串值

包含项目的域名

project-id = None

字符串值

项目 ID 的范围

project-name = None

字符串值

范围的项目名称

region-name = None

字符串值

用于端点 URL 发现的默认 region_name。

send_power_notifications = True

布尔值

当设置为 True 时,它将启用电源状态将回调更改为 nova 的支持。在没有 openstack 计算服务的部署中,此选项应设置为 False。

service-name = None

字符串值

用于端点 URL 发现的默认 service_name。

service-type = compute

字符串值

端点 URL 发现的默认 service_type。

split-loggers = False

布尔值

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

status-code-retries = None

整数值

应该尝试重新分配 HTTP 状态代码的最大重试次数。

status-code-retry-delay = None

浮点值

在两次重试之间延迟(以秒为单位)用于可重新分配状态代码。如果没有设置,则以 0.5 秒开始的指数重试,最多使用 60 秒。

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。

version = None

字符串值

给定主版本 API 版本内用于端点 URL 发现的最低 Major API 版本。与 min_version 和 max_version 相互排斥

5.1.33. oslo_concurrency

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

表 5.32. oslo_concurrency
配置选项 = 默认值类型Description

disable_process_locking = False

布尔值

启用或禁用进程间锁定。

lock_path = None

字符串值

用于锁定文件的目录。为安全起见,指定目录应只由运行需要锁定的进程的用户写入。默认为环境变量 OSLO_LOCK_PATH。如果使用外部锁定,则必须设置锁定路径。

5.1.34. oslo_messaging_amqp

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

表 5.33. 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 if set default_notification_exchange if set else control_exchange if set else notify

default_notify_timeout = 30

整数值

发送通知消息发送的截止时间。仅在调用者不提供超时到期时使用。

default_reply_retry = 0

整数值

重新发送回复消息的最大尝试次数,因为可恢复错误而失败。

default_reply_timeout = 30

整数值

rpc 回复消息发送的截止时间。

default_rpc_exchange = None

字符串值

RPC 地址中使用的交换名称。Exchange name resolution priority: Target.exchange if set default_rpc_exchange if set other control_exchange if set else rpc

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 消息。

notify_address_prefix = openstack.org/om/notify

字符串值

所有生成的通知地址的地址前缀

notify_server_credit = 100

整数值

传入通知消息的窗口大小

pre_settled = ['rpc-cast', 'rpc-reply']

多值

发送此类型的消息预先组装。预先设置的消息不会接收来自 peer 的确认信息。请注意:如果发送失败,则预先设置的消息可能会被静默丢弃。允许的值: rpc-call - 发送 RPC Calls pre-settled rpc-reply- 发送 RPC Replies pre-settled rpc-cast - Send RPC Casts pre-settled notify - Send Notifications pre-settled

pseudo_vhost = True

布尔值

为不支持虚拟主机的消息总线启用虚拟主机支持(如 qpidd)。当设置为 true 时,虚拟主机名将添加到所有消息总线地址中,从而有效地为每个虚拟主机 创建专用子网。如果消息总线支持使用 AMQP 1.0 Open performative 中的 hostname 字段作为虚拟主机的名称,设置为 False。

reply_link_credit = 200

整数值

传入 RPC 消息的窗口大小。

rpc_address_prefix = openstack.org/om/rpc

字符串值

所有生成的 RPC 地址的地址前缀

rpc_server_credit = 100

整数值

传入 RPC Request 消息的窗口大小

`sasl_config_dir = `

字符串值

包含 SASL 配置的目录路径

`sasl_config_name = `

字符串值

配置文件名称(不带 .conf 后缀)

`sasl_default_realm = `

字符串值

如果用户名中没有 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 extension (rfc6066)来为每个虚拟主机提供证书。如果服务器的 SSL 证书使用虚拟主机名称而不是 DNS 名称,则将 ssl_verify_vhost 设置为 True。

trace = False

布尔值

debug :将 AMQP 帧转储到 stdout

unicast_address = unicast

字符串值

在发送到特定 RPC/Notification 服务器时,附加到地址前缀。消息总线用来识别发送到单个目的地的消息。

5.1.35. oslo_messaging_kafka

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

表 5.34. oslo_messaging_kafka
配置选项 = 默认值类型Description

compression_codec = none

字符串值

producer 生成的所有数据的压缩 codec。如果没有设置,则不会使用压缩。请注意,这允许的值取决于 kafka 版本

conn_pool_min_size = 2

整数值

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

conn_pool_ttl = 1200

整数值

池中闲置连接的时间延迟

consumer_group = oslo_messaging_consumer

字符串值

Kafka 消费者的组 ID。一个组中的消费者将协调消息消耗

enable_auto_commit = False

布尔值

启用异步消费者提交

kafka_consumer_timeout = 1.0

浮点值

Kafka 用户的默认超时

kafka_max_fetch_bytes = 1048576

整数值

Kafka consumer 的最大获取字节数

max_poll_records = 500

整数值

轮询调用中返回的最大记录数

pool_size = 10

整数值

Kafka Consumers 的池大小

producer_batch_size = 16384

整数值

producer async 发送的批处理大小

producer_batch_timeout = 0.0

浮点值

以秒为单位的 KafkaProducer 批处理延迟上限

sasl_mechanism = PLAIN

字符串值

当安全协议是 SASL 时的机制

security_protocol = PLAINTEXT

字符串值

用于与代理通信的协议

`ssl_cafile = `

字符串值

用于验证服务器证书的 CA 证书 PEM 文件

`ssl_client_cert_file = `

字符串值

用于身份验证的客户端证书 PEM 文件。

`ssl_client_key_file = `

字符串值

用于身份验证的客户端密钥 PEM 文件。

`ssl_client_key_password = `

字符串值

用于身份验证的客户端密钥密码文件。

5.1.36. oslo_messaging_notifications

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

表 5.35. oslo_messaging_notifications
配置选项 = 默认值类型Description

driver = []

多值

处理发送通知的驱动程序。可能的值有 messaging, messagingv2, routing, log, test, noop

retry = -1

整数值

重新发送因为可恢复错误而发送失败的通知消息的最大尝试次数。0 - 不重试,-1 - indefinite

topics = ['notifications']

列表值

用于 OpenStack 通知的 AMQP 主题。

transport_url = None

字符串值

代表用于通知的消息传递驱动程序的 URL。如果没有设置,我们回退到用于 RPC 的同一配置。

5.1.37. oslo_messaging_rabbit

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

表 5.36. oslo_messaging_rabbit
配置选项 = 默认值类型Description

amqp_auto_delete = False

布尔值

AMQP 中的自动删除队列。

amqp_durable_queues = False

布尔值

在 AMQP 中使用持久队列。

direct_mandatory_flag = True

布尔值

(DEPRECATED)为直接发送启用/禁用 RabbitMQ 强制标记。直接发送用作回复,因此在客户端队列不存在时引发 MessageUndeliverable 异常。MessageUndeliverable 异常将用于循环使发送者恢复。此标志已弃用,且无法停用此功能

enable_cancel_on_failover = False

布尔值

启用 x-cancel-on-ha-failover 标志,使 rabbitmq 服务器将取消并通知 consumerswhen 队列停机

heartbeat_in_pthread = False

布尔值

默认情况下,通过原生 python 线程运行健康检查心跳线程。如果此选项等于 False,则健康检查 heartbeat 将继承父进程的执行模型。例如,如果父进程使用 eventlet/greenlet 对 stdlib 进行补丁,则心跳将通过绿色线程运行。这个选项应该只针对 wsgi 服务设置为 True。

heartbeat_rate = 2

整数值

heartbeat_timeout_threshold 期间的时间我们检查心跳的频率。

heartbeat_timeout_threshold = 60

整数值

如果 heartbeat 的 keep-alive 失败(0 禁用 heartbeat),则 Rabbit 代理被视为 down 的秒数。

kombu_compression = None

字符串值

EXPERIMENTAL: Possible 值为: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\.) gem {"ha-mode": "all"} "

rabbit_interval_max = 30

整数值

RabbitMQ 连接重试的最大间隔。默认值为 30 秒。

rabbit_login_method = AMQPLAIN

字符串值

RabbitMQ 登录方法。

rabbit_qos_prefetch_count = 0

整数值

指定要预抓取的消息数量。设置为零可允许无限消息。

rabbit_retry_backoff = 2

整数值

连接到 RabbitMQ 时重试之间的 backoff 时长。

rabbit_retry_interval = 1

整数值

使用 RabbitMQ 重试连接的频率。

rabbit_transient_queues_ttl = 1800

整数值

正整数代表队列 TTL (x-expires)的持续时间(以秒为单位)。TTL 期间未使用的队列将被自动删除。参数仅影响 reply 和 fanout 队列。

ssl = False

布尔值

通过 SSL 连接。

`ssl_ca_file = `

字符串值

SSL 证书颁发机构文件(仅在启用了 SSL 时评估)。

`ssl_cert_file = `

字符串值

SSL 证书文件(仅在启用了 SSL 时评估)。

`ssl_key_file = `

字符串值

SSL 密钥文件(仅在启用了 SSL 时valid)。

`ssl_version = `

字符串值

要使用的 SSL 版本(仅在启用了 SSL 时评估)。有效值为 TLSv1 和 SSLv23。SSLv2、SSLv3、TLSv1_1 和 TLSv1_2 可能在某些发行版中提供。

5.1.38. oslo_middleware

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

表 5.37. oslo_middleware
配置选项 = 默认值类型Description

enable_proxy_headers_parsing = False

布尔值

应用程序是否在代理后面。这决定了中间件是否应该解析标头。

5.1.39. oslo_policy

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

表 5.38. oslo_policy
配置选项 = 默认值类型描述

enforce_new_defaults = False

布尔值

这个选项控制在评估策略时是否使用旧的弃用默认值。如果为 True,则不会评估旧的已弃用的默认值。这意味着,如果旧默认值允许任何现有令牌,但不允许使用新默认值,它将被禁止。我们鼓励启用此标志以及 enforce_scope 标志,以便您可以同时获得新默认值和 scope_type 的好处

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 cert 文件的绝对路径

remote_ssl_client_crt_file = None

字符串值

基于 REST 的策略检查的客户端证书的绝对路径

remote_ssl_client_key_file = None

字符串值

绝对路径客户端密钥文件 REST 基于策略检查

remote_ssl_verify_server_crt = False

布尔值

基于 REST 的策略检查的服务器身份验证

5.1.40. oslo_reports

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

表 5.39. oslo_reports
配置选项 = 默认值类型Description

file_event_handler = None

字符串值

要监视触发报告更改的文件路径,而不是信号。设置此选项会禁用报告的信号触发器。如果应用程序作为 WSGI 应用程序运行,则建议使用此选项而不是信号。

file_event_handler_interval = 1

整数值

设置 file_event_handler 时轮询之间等待的秒数

log_dir = None

字符串值

创建文件的路径

5.1.41. profiler

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

表 5.40. profiler
配置选项 = 默认值类型Description

connection_string = messaging://

字符串值

通知程序后端的连接字符串。

默认值为 messaging://,它将通知程序设置为 oslo_messaging。

可能的值示例:

  • messaging:// - 使用 oslo_messaging 驱动程序来发送范围。
  • redis://127.0.0.1:6379 - 使用 redis 驱动程序发送 span。
  • MongoDB://127.0.0.1:27017 - 使用 mongodb 驱动程序进行发送范围。
  • 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

布尔值

启用包含 error/exception 的过滤器追踪来分隔的位置。

默认值为 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 服务。此参数定义名称(例如: sentinal_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 查询。

5.1.42. pxe

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

表 5.41. pxe
配置选项 = 默认值类型Description

boot_retry_check_interval = 90

整数值

PXE 引导重试时定期检查间隔(以秒为单位)。如果没有设置 boot_retry_timeout,则无效。

boot_retry_timeout = None

整数值

应该重试 PXE 引导的超时(以秒为单位)。必须小于 [conductor]deploy_callback_timeout。默认禁用此选项。

default_ephemeral_format = ext4

字符串值

临时分区的默认文件系统格式(如果创建)。

dir_permission = None

整数值

创建时将应用到 TFTP 文件夹的权限。这应该设置为权限,以便 tftpserver 有权访问配置的 TFTP 文件夹的内容。只有在操作系统的 umask 的限制限制时才需要此设置,以便 ironic-conductor 创建无法由 TFTP 服务器读取的文件。设置为 <None> 将导致操作系统的 umask 用于创建新的 tftp 文件夹。建议指定八进制表示。例如: 0o755

enable_netboot_fallback = False

布尔值

如果为 True,即使使用本地引导的节点也会生成 PXE 环境。当驱动程序无法将节点切换到本地引导时,这很有用,例如,在无法进行持久性引导的机器上使用 SNMP 或 Redfish。主要用于独立的 ironic,因为 Neutron 会阻止不正确的 PXE 引导。

image_cache_size = 20480

整数值

master 镜像的最大缓存大小(单位 MiB),包括正在使用的镜像。

image_cache_ttl = 10080

整数值

缓存中旧 master 镜像的最大 TTL (以分钟为单位)。

images_path = /var/lib/ironic/images/

字符串值

在 ironic-conductor 节点上,镜像存储在磁盘上的目录。

instance_master_path = /var/lib/ironic/master_images

字符串值

在 ironic-conductor 节点上,master 实例镜像存储在磁盘上的目录。设置为空字符串可禁用镜像缓存。

ip_version = 4

字符串值

用于 PXE 引导的 IP 版本。默认值为 4。实验性

ipxe_boot_script = $pybasedir/drivers/modules/boot.ipxe

字符串值

在 ironic-conductor 节点上,主 iPXE 脚本文件的路径。

ipxe_bootfile_name = undionly.kpxe

字符串值

Bootfile DHCP 参数。

ipxe_bootfile_name_by_arch = {}

dict 值

每个节点架构的 Bootfile DHCP 参数。例如: aarch64:ipxe_aa64.efi

ipxe_config_template = $pybasedir/drivers/modules/ipxe_config.template

字符串值

在 ironic-conductor 节点上,用于 iPXE 操作的模板文件。

ipxe_timeout = 0

整数值

通过 iPXE 下载镜像的超时值(以秒为单位)。默认值为 0 (无超时)

ipxe_use_swift = False

布尔值

使用临时 URL 从 swift 下载部署和救援镜像。如果设置为 false (默认),镜像将下载到 ironic-conductor 节点,并通过其本地 HTTP 服务器提供。仅在使用 ipxe 兼容引导接口时适用。

pxe_append_params = nofb nomodeset vga=normal

字符串值

为 baremetal PXE 引导附加参数。

pxe_bootfile_name = pxelinux.0

字符串值

Bootfile DHCP 参数。

pxe_bootfile_name_by_arch = {}

dict 值

每个节点架构的 Bootfile DHCP 参数。例如: aarch64:grubaa64.efi

pxe_config_subdir = pxelinux.cfg

字符串值

创建代表节点上端口 MAC 或 IP 地址的符号链接的目录,并允许引导装载程序为节点加载 PXE 文件。此目录名称与 PXE 或 iPXE 文件夹相对。

pxe_config_template = $pybasedir/drivers/modules/pxe_config.template

字符串值

在 ironic-conductor 节点上,用于 PXE 加载程序配置的模板文件。

pxe_config_template_by_arch = {}

dict 值

在 ironic-conductor 节点上,用于每个节点的架构 PXE 配置的模板文件。例如: aarch64:/opt/share/grubaa64_pxe_config.template

tftp_master_path = /tftpboot/master_images

字符串值

在 ironic-conductor 节点上,master TFTP 镜像存储在磁盘上的目录。设置为空字符串可禁用镜像缓存。

tftp_root = /tftpboot

字符串值

ironic-conductor 节点的 TFTP 根路径。ironic-conductor 必须具有对此路径的读/写权限。

tftp_server = $my_ip

字符串值

ironic-conductor 节点的 TFTP 服务器的 IP 地址。

uefi_ipxe_bootfile_name = ipxe.efi

字符串值

UEFI 引导模式的 Bootfile DHCP 参数。如果您在使用引导时遇到问题,请尝试 snponly.efi。

uefi_pxe_bootfile_name = bootx64.efi

字符串值

UEFI 引导模式的 Bootfile DHCP 参数。

uefi_pxe_config_template = $pybasedir/drivers/modules/pxe_grub_config.template

字符串值

在 ironic-conductor 节点上,UEFI 引导装载程序的 PXE 配置的模板文件。这通常用于 GRUB 特定模板。

5.1.43. Redfish

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

表 5.42. Redfish
配置选项 = 默认值类型描述

auth_type = auto

字符串值

Redfish HTTP 客户端验证方法。

connection_attempts = 5

整数值

尝试连接到 Redfish 的最大尝试次数

connection_cache_size = 1000

整数值

最大 Redfish 客户端连接缓存大小。Redfish 驱动程序会努力重复使用经过身份验证的 BMC 连接(通过 Redfish Session Service 获得)。这个选项限制了要维护的最大连接数。0 代表完全禁用客户端连接缓存。

connection_retry_interval = 4

整数值

尝试连接到 Redfish 间等待的秒数

file_permission = 420

整数值

swift-less 镜像的文件权限,使用文件访问权限的八进制权限表示。此设置默认为 644,或 Python 中的八进制数 0o644。此设置必须设置为八进制数表示,即以 0o 开始。

firmware_update_fail_interval = 60

整数值

检查失败的固件更新任务之间等待的秒数

firmware_update_status_interval = 60

整数值

检查完成的固件更新任务之间等待的秒数

kernel_append_params = nofb nomodeset vga=normal

字符串值

传递给实例内核的其他内核参数。这些参数可由内核或应用程序使用,方法是读取 /proc/cmdline。严重的 cmdline 大小限制!可以被 instance_info/kernel_append_params 属性覆盖。

raid_config_fail_interval = 60

整数值

检查失败的 raid 配置任务之间等待的秒数

raid_config_status_interval = 60

整数值

检查完成的 raid 配置任务之间等待的秒数

swift_container = ironic_redfish_container

字符串值

用于存储 Redfish 驱动程序数据的 Swift 容器。仅在启用 use_swift 时应用。

swift_object_expiry_timeout = 900

整数值

Swift 对象自动过期的时间(以秒为单位)。仅在启用 use_swift 时应用。

use_swift = True

布尔值

将为虚拟介质引导生成的 ISO 镜像上传到 Swift,然后将临时 URL 传递给 BMC 以引导节点。如果设置为 false,则镜像放置在 ironic-conductor 节点上,并通过其本地 HTTP 服务器提供。

5.1.44. service_catalog

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

表 5.43. service_catalog
配置选项 = 默认值类型Description

auth-url = None

字符串值

身份验证 URL

auth_type = None

字符串值

要加载的身份验证类型

cafile = None

字符串值

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

certFile = None

字符串值

PEM 编码的客户端证书证书文件

collect-timing = False

布尔值

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

connect-retries = None

整数值

应该尝试连接错误的最大重试次数。

connect-retry-delay = None

浮点值

两次重试之间延迟(以秒为单位)用于连接错误。如果没有设置,则以 0.5 秒开始的指数重试,最多使用 60 秒。

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 编码的客户端证书密钥文件

max-version = None

字符串值

给定 API 的最大主要版本,旨在作为带有 min_version 的范围的上限。与版本相互排斥。

min-version = None

字符串值

给定 API 的最低主要版本,旨在作为 max_version 的范围低限。与版本相互排斥。如果给出了 min_version,且没有 max_version,它就如同 max version 为 "latest"。

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 = baremetal

字符串值

端点 URL 发现的默认 service_type。

split-loggers = False

布尔值

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

status-code-retries = None

整数值

应该尝试重新分配 HTTP 状态代码的最大重试次数。

status-code-retry-delay = None

浮点值

在两次重试之间延迟(以秒为单位)用于可重新分配状态代码。如果没有设置,则以 0.5 秒开始的指数重试,最多使用 60 秒。

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。

version = None

字符串值

给定主版本 API 版本内用于端点 URL 发现的最低 Major API 版本。与 min_version 和 max_version 相互排斥

5.1.45. snmp

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

表 5.44. snmp
配置选项 = 默认值类型Description

power_timeout = 10

整数值

等待电源操作完成的秒数

reboot_delay = 0

整数值

重启(关闭和再次打开)之间休眠的时间(以秒为单位)

udp_transport_retries = 5

整数值

最多 UDP 请求重试次数,0 代表没有重试。

udp_transport_timeout = 1.0

浮点值

用于 UDP 传输的响应超时(以秒为单位)。超时应该是 0.5 秒的倍数,并适用于每个重试。

5.1.46. ssl

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

表 5.45. ssl
配置选项 = 默认值类型Description

ca_file = None

字符串值

用于验证连接客户端的 CA 证书文件。

cert_file = None

字符串值

安全启动服务器时要使用的证书文件。

密码 = None

字符串值

设置可用密码列表。值应该是 OpenSSL 密码列表格式的字符串。

key_file = None

字符串值

安全启动服务器时使用的私钥文件。

version = None

字符串值

要使用的 SSL 版本(仅在启用了 SSL 时评估)。有效值为 TLSv1 和 SSLv23。SSLv2、SSLv3、TLSv1_1 和 TLSv1_2 可能在某些发行版中提供。

5.1.47. swift

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

表 5.46. swift
配置选项 = 默认值类型Description

auth-url = None

字符串值

身份验证 URL

auth_type = None

字符串值

要加载的身份验证类型

cafile = None

字符串值

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

certFile = None

字符串值

PEM 编码的客户端证书证书文件

collect-timing = False

布尔值

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

connect-retries = None

整数值

应该尝试连接错误的最大重试次数。

connect-retry-delay = None

浮点值

两次重试之间延迟(以秒为单位)用于连接错误。如果没有设置,则以 0.5 秒开始的指数重试,最多使用 60 秒。

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 编码的客户端证书密钥文件

max-version = None

字符串值

给定 API 的最大主要版本,旨在作为带有 min_version 的范围的上限。与版本相互排斥。

min-version = None

字符串值

给定 API 的最低主要版本,旨在作为 max_version 的范围低限。与版本相互排斥。如果给出了 min_version,且没有 max_version,它就如同 max version 为 "latest"。

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 = object-store

字符串值

端点 URL 发现的默认 service_type。

split-loggers = False

布尔值

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

status-code-retries = None

整数值

应该尝试重新分配 HTTP 状态代码的最大重试次数。

status-code-retry-delay = None

浮点值

在两次重试之间延迟(以秒为单位)用于可重新分配状态代码。如果没有设置,则以 0.5 秒开始的指数重试,最多使用 60 秒。

swift_max_retries = 2

整数值

失败前重试 Swift 请求的次数上限。

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。

version = None

字符串值

给定主版本 API 版本内用于端点 URL 发现的最低 Major API 版本。与 min_version 和 max_version 相互排斥

5.1.48. xclarity

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

表 5.47. xclarity
配置选项 = 默认值类型Description

manager_ip = None

字符串值

XClarity Controller 的 IP 地址。这里的配置已弃用,并将在 Stein 发行版本中删除。请更新 driver_info 字段以使用 "xclarity_manager_ip" 替代

password = None

字符串值

XClarity Controller 用户名的密码。这里的配置已弃用,并将在 Stein 发行版本中删除。请更新 driver_info 字段以使用 "xclarity_password" 替代

port = 443

端口值

用于 XClarity Controller 连接的端口。

username = None

字符串值

XClarity Controller 的用户名。这里的配置已弃用,并将在 Stein 发行版本中删除。请更新 driver_info 字段以使用 "xclarity_username" 替代

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.