第 13 章 Octavia


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

13.1. octavia.conf

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

13.1.1. DEFAULT

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

.

Expand
配置选项 = 默认值类型Description

conn_pool_min_size = 2

整数值

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

conn_pool_ttl = 1200

整数值

池中闲置连接的生存时间

control_exchange = octavia

字符串值

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

debug = False

布尔值

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

default_log_levels = ['amqp=WARN', 'amqplib=WARN', 'boto=WARN', 'qpid=WARN', 'sqlalchemy=WARN', 'suds=INFO', 'oslo.messaging=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', 'taskflow=WARN', 'keystoneauth=WARN', 'oslo.cache=INFO', 'oslo_policy=INFO', 'dogpile.core.dogpile=INFO']

列出值

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

executor_thread_pool_size = 64

整数值

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

fatal_deprecations = False

布尔值

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

graceful_shutdown_timeout = 60

整数值

指定一个超时,之后安全关闭服务器将退出。零值表示无限等待。

host = <based on operating system>

主机名值

主机名 Octavia 运行

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

字符串值

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

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

字符串值

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

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_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 [%(global_request_id) 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 %(project) s %(system_scope) 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",则忽略这个选项。

octavia_plugins = hot_plug_plugin

字符串值

要使用的控制器插件的名称

publish_errors = False

布尔值

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

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

整数值

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

rpc_conn_pool_size = 30

整数值

RPC 连接池的大小。

rpc_ping_enabled = False

布尔值

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

rpc_response_timeout = 60

整数值

等待来自调用的响应的秒数。

syslog-log-facility = LOG_USER

字符串值

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

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,则忽略这个选项。

watch-log-file = False

布尔值

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

13.1.2. amphora_agent

下表概述了 octavia.conf 文件中的 [amphora_agent] 组下可用的选项。

Expand
表 13.1. amphora_agent
配置选项 = 默认值类型描述

admin_log_targets = None

列出值

管理日志的日志服务器 ip 和端口对列表。其他主机是备份到主服务器。如果没有指定远程日志记录,则禁用。127.0.0.1:10514, 192.168.0.1:10514

administrative_log_facility = 1

整数值

LOG_LOCAL 工具号用于 amphora 进程日志。

agent_request_read_timeout = 180

整数值

允许来自控制器的请求在终止套接字前运行的时间(以秒为单位)。

agent_server_ca = /etc/octavia/certs/client_ca.pem

字符串值

签署客户端证书的 ca

agent_server_cert = /etc/octavia/certs/server.pem

字符串值

代理服务器的服务器证书

agent_server_network_dir = None

字符串值

新网络接口所在的目录

agent_server_network_file = None

字符串值

网络接口所在的文件。指定此选项将覆盖为 agent_server_network_dir 设置的任何值。弃用自: Xena

*reason:*New amphora 接口管理不支持单个接口文件。

agent_tls_protocol = TLSv1.2

字符串值

与 amphora 代理通信的最低 TLS 协议。

amphora_id = None

字符串值

amphora ID。

amphora_udp_driver = keepalived_lvs

字符串值

amphora 代理的 UDP API 后端。弃用自: Wallaby

*reason:*amphora-agent 将不支持 keepalived_lvs 以外的任何后端。

disable_local_log_storage = False

布尔值

为 True 时,不会将日志写入 amphora 文件系统。当 False 时,日志文件将写入本地文件系统。

forward_all_logs = False

布尔值

为 True 时,amphora 会将所有系统日志(租户流量日志除外)转发到 admin 日志目标。当 False 时,只有 amphora 特定的 admin 日志才会转发。

log_protocol = UDP

字符串值

日志转发传输协议。UDP 或 TCP 之一。

log_queue_size = 10000

整数值

用于缓冲日志消息的队列大小(messages)。

log_retry_count = 5

整数值

重试连接到日志记录主机的最大尝试。

log_retry_interval = 2

整数值

在重试连接到日志记录主机之间等待的时间(以秒为单位)。

logging_template_override = None

字符串值

自定义日志记录配置模板。

tenant_log_targets = None

列出值

租户流量日志的日志消息 ip 和端口对列表。其他主机是备份到主服务器。如果没有指定远程日志记录,则禁用。127.0.0.1:10514, 192.168.0.1:10514

user_log_facility = 0

整数值

LOG_LOCAL 工具号用于用户流量日志。

13.1.3. api_settings

下表概述了 octavia.conf 文件中的 [api_settings] 组下可用的选项。

Expand
表 13.2. api_settings
配置选项 = 默认值类型描述

allow_field_selection = True

布尔值

允许使用字段选择

allow_filtering = True

布尔值

允许使用过滤

allow_pagination = True

布尔值

允许使用分页

allow_ping_health_monitors = True

布尔值

允许用户创建 PING 类型 Health Monitor?

allow_prometheus_listeners = True

布尔值

允许用户创建 PROMETHEUS 类型监听程序?

allow_sorting = True

布尔值

允许使用排序

allow_tls_terminated_listeners = True

布尔值

允许用户创建 TLS 终止监听程序?

api_base_uri = None

字符串值

用于分页链接的 API 的基本 URI。如果此处未覆盖,这将从请求中自动检测。

auth_strategy = keystone

字符串值

API 请求的 auth 策略。

bind_host = 127.0.0.1

IP 地址值

要绑定到的主机 IP

bind_port = 9876

端口值

要绑定到的端口

default_listener_alpn_protocols = ['h2', 'http/1.1', 'http/1.0']

列出值

用于新启用了 TLS 的监听程序的 ALPN 协议列表。

default_listener_ciphers = TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-RSA-AES128-AES256-AES256-SHA384

字符串值

新的启用了 TLS 的监听程序的默认 OpenSSL 密码字符串(colon- separated)。

default_listener_tls_versions = ['TLSv1.2', 'TLSv1.3']

列出值

用于新启用了 TLS 的监听程序的 TLS 版本列表。

default_pool_alpn_protocols = ['h2', 'http/1.1', 'http/1.0']

列出值

用于新启用 TLS 池的 ALPN 协议列表。

default_pool_ciphers = TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-RSA-AES128-AES256-AES256-SHA384

字符串值

新的启用了 TLS 的池的默认 OpenSSL 密码字符串(colon- separated)。

default_pool_tls_versions = ['TLSv1.2', 'TLSv1.3']

列出值

用于新启用 TLS 池的 TLS 版本列表。

default_provider_driver = amphora

字符串值

默认提供者驱动程序。

enabled_provider_drivers = {'amphora': 'The Octavia Amphora driver.', 'octavia': 'Deprecated alias of the Octavia Amphora driver.'}

字典值

以逗号分隔的启用供应商驱动程序名称和描述的字典列表。必须与 octavia.api.drivers 入口点中的驱动程序名称匹配。

healthcheck_enabled = False

布尔值

当 True 时,Octavia API 中启用了 oslo 中间件健康检查端点。

healthcheck_refresh_interval = 5

整数值

健康检查插件的时间间隔应缓存结果,以秒为单位。

minimum_tls_version = None

字符串值

监听程序和池允许的最小 TLS 版本。

pagination_max_limit = 1000

字符串值

单个响应中返回的最大项目数。字符串 无限 或负整数值表示 没有限制

`tls_cipher_prohibit_list = `

字符串值

冒号分隔的 OpenSSL 密码列表。这些密码的使用将被阻止。

udp_connect_min_interval_health_monitor = 3

整数值

UDP-CONNECT Health Monitor 类型的最小运行状况监视器延迟间隔。负整数值表示 没有限制

13.1.4. audit

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

Expand
表 13.3. audit
配置选项 = 默认值类型描述

audit_map_file = /etc/octavia/octavia_api_audit_map.conf

字符串值

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

enabled = False

布尔值

启用 API 请求的审计

`ignore_req_list = `

字符串值

在审计过程中会忽略以逗号分隔的 REST API HTTP 方法列表。例如:如果将其设置为 "GET,POST",则不会对任何 GET 或 POST 请求进行审计。它仅在启用 API 审计时使用。

13.1.5. audit_middleware_notifications

下表概述了 octavia.conf 文件中的 [audit_middleware_notifications] 组下可用的选项。

Expand
表 13.4. audit_middleware_notifications
配置选项 = 默认值类型描述

driver = None

字符串值

处理发送通知的驱动程序。可能的值有 messaging, messagingv2, routing, log, test, noop。如果没有指定,则使用 oslo_messaging_notifications conf 部分中的值。

topics = None

列出值

用于 OpenStack 通知的 AMQP 主题列表。如果没有指定,则使用 oslo_messaging_notifications conf 部分中的值。

transport_url = None

字符串值

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

use_oslo_messaging = True

布尔值

指明是否使用 oslo_messaging 作为通知程序。如果设置为 False,则本地日志记录器将用作通知程序。如果设置为 True,还必须存在 oslo_messaging 软件包。否则,将使用本地。

13.1.6. barbican

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

Expand
表 13.5. 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

barbican_region_name = None

字符串值

指定所选端点的区域。

number_of_retries = 60

整数值

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

retry_delay = 1

整数值

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

send_service_user_token = False

布尔值

为 True 时,如果向 REST API 发送用户令牌,也会发送服务令牌。

Nova 通常重复使用提供给 nova-api 的用户令牌,以与其他 REST API 通信,如 Cinder、Glance 和 Neutron。当用户令牌在向 Nova 发出请求时有效时,令牌可能会在到达其他服务之前过期。为避免出现任何故障,并且使其清除为 Nova 代表用户调用服务,我们会包括服务令牌以及用户令牌。如果用户的令牌已过期,则有效的服务令牌可确保 keystone 中间件仍接受 REST API 请求。

verify_ssl = True

布尔值

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

verify_ssl_path = None

字符串值

要针对的捆绑包或 CA 证书检查的路径,或 None 用于尝试查找并使用 verify_ssh 为 True 的证书。如果 verify_ssl 是 False,这会被忽略。

13.1.7. barbican_service_user

下表概述了 octavia.conf 文件中的 [barbican_service_user] 组下可用的选项。

Expand
表 13.6. barbican_service_user
配置选项 = 默认值类型Description

auth_section = None

字符串值

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

auth_type = None

字符串值

要载入的身份验证类型

cafile = None

字符串值

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

certFile = None

字符串值

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

collect-timing = False

布尔值

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

insecure = False

布尔值

验证 HTTPS 连接。

keyfile = None

字符串值

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

split-loggers = False

布尔值

记录对多个日志记录器的请求。

timeout = None

整数值

http 请求的超时值

13.1.8. 证书

下表概述了 octavia.conf 文件中的 [certificates] 组下可用的选项。

Expand
表 13.7. 证书
配置选项 = 默认值类型描述

barbican_auth = barbican_acl_auth

字符串值

要使用的 Barbican 验证方法的名称

ca_certificate = /etc/ssl/certs/ssl-cert-snakeoil.pem

字符串值

CA 证书的绝对路径以签名。默认为 env[OS_OCTAVIA_TLS_CA_CERT]。

ca_certificates_file = None

字符串值

密钥管理器服务的 CA 证书文件路径(如 Barbican)。

ca_private_key = /etc/ssl/private/ssl-cert-snakeoil.key

字符串值

要签名的私钥的绝对路径。默认为 env[OS_OCTAVIA_TLS_CA_KEY]。

ca_private_key_passphrase = None

字符串值

私钥的密码短语。默认为 env[OS_OCTAVIA_CA_KEY_PASS] 或 None。

cert_generator = local_cert_generator

字符串值

要使用的证书生成器的名称

cert_manager = barbican_cert_manager

字符串值

要使用的证书管理器的名称

cert_validity_time = 2592000

整数值

Amphora 证书的有效期时间(以秒为单位)。

endpoint = None

字符串值

用于覆盖 keystone 目录中端点的新端点。

endpoint_type = publicURL

字符串值

用于 barbican 服务的 endpoint_type。

insecure = False

布尔值

在 SSL 连接中禁用证书验证

region_name = None

字符串值

用于与 barbican 服务通信的 Identity 服务目录中的地区。

server_certs_key_passphrase = insecure-key-do-not-use-this-key

字符串值

加密 Amphora 证书和私钥的密码短语。必须为 32, base64 (url)兼容,字符长度。默认为 env[TLS_PASS_AMPS_DEFAULT] 或 insecure-key-do-not-use-this-key

service_name = None

字符串值

keystone 目录中证书服务的名称

signing_digest = sha256

字符串值

证书签名请求.默认为 env[OS_OCTAVIA_CA_SIGNING_DIGEST] 或 "sha256"。

13.1.9. cinder

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

Expand
表 13.8. cinder
配置选项 = 默认值类型描述

availability_zone = None

字符串值

用于创建卷的可用区

ca_certificates_file = None

字符串值

CA 证书文件路径

endpoint = None

字符串值

用于覆盖 keystone 目录中端点的新端点。

endpoint_type = publicURL

字符串值

要使用的身份服务中的端点接口

insecure = False

布尔值

在 SSL 连接中禁用证书验证

region_name = None

字符串值

用于与 OpenStack 服务通信的 Identity 服务目录中的地区。

service_name = None

字符串值

keystone 目录中 cinder 服务的名称

volume_create_max_retries = 5

整数值

创建卷的重试次数上限

volume_create_retry_interval = 5

整数值

等待卷以可用状态创建的时间间隔

volume_create_timeout = 300

整数值

等待卷创建成功的超时

volume_size = 16

整数值

Amphora 实例的卷大小(以 GB 为单位)

volume_type = None

字符串值

Amphorae 卷根磁盘的卷类型

13.1.10. Compute

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

Expand
表 13.9. Compute
配置选项 = 默认值类型描述

max_retries = 15

整数值

最大尝试通过计算服务重试操作。

retry_backoff = 1

整数值

backoff 重试尝试的秒数。

retry_interval = 1

整数值

在使用计算服务重试操作前等待的秒数。

retry_max = 10

整数值

重试尝试之间的最大间隔(以秒为单位)。

13.1.11. controller_worker

下表概述了 octavia.conf 文件中的 [controller_worker] 组下可用的选项。

Expand
表 13.10. controller_worker
配置选项 = 默认值类型描述

amp_active_retries = 30

整数值

重试尝试等待 Amphora 变为活跃状态

amp_active_wait_sec = 10

整数值

当 Amphora 是否变为 active 检查之间等待的秒数

`amp_boot_network_list = `

列出值

要附加到 Amphorae 的网络列表。列表中定义的所有网络将附加到每个 amphora。

`amp_flavor_id = `

字符串值

Amphora 的 Nova 实例类型 ID

`amp_image_owner_id = `

字符串值

将 glance 镜像选择限制为特定的所有者 ID。这是推荐的安全设置。

`amp_image_tag = `

字符串值

要引导的 Amphora 镜像的 Glance 镜像标签。使用这个选项可以在不重新配置 Octavia 的情况下更新镜像。

`amp_secgroup_list = `

列出值

要附加到 Amphora 的安全组列表。

`amp_ssh_key_name = `

字符串值

nova 中可选的 SSH 密钥对名称将用于 amphora 中的 authorized_keys。

amp_timezone = UTC

字符串值

在 /usr/share/zoneinfo 中代表的 Amphora 时区。

amphora_delete_retries = 5

整数值

应重试 amphora 删除的次数。

amphora_delete_retry_interval = 5

整数值

amphora 删除重试之间的时间(以秒为单位)。

amphora_driver = amphora_haproxy_rest_driver

字符串值

要使用的 amphora 驱动程序的名称

client_ca = /etc/octavia/certs/ca_01.pem

字符串值

要使用的 amphora 代理的客户端 CA

compute_driver = compute_nova_driver

字符串值

要使用的计算驱动程序的名称

db_commit_retry_attempts = 2000

整数值

将尝试数据库操作的次数。

db_commit_retry_backoff = 1

整数值

backoff 重试尝试的时间。

db_commit_retry_initial_delay = 1

整数值

重试尝试前的初始延迟。

db_commit_retry_max = 5

整数值

重试尝试之间等待的最长时间。

distributor_driver = distributor_noop_driver

字符串值

要使用的经销商驱动程序的名称

event_notifications = True

布尔值

启用 octavia 事件通知。如需了解更多要求,请参阅 oslo_messaging_notifications 部分。

image_driver = image_glance_driver

字符串值

要使用的镜像驱动程序的名称

loadbalancer_topology = SINGLE

字符串值

负载均衡器拓扑配置。SINGLE - 每个负载均衡器一个 amphora。ACTIVE_STANDBY - 每个负载均衡器的两个 amphora。

network_driver = allowed_address_pairs_driver

字符串值

要使用的网络驱动程序的名称

statistics_drivers = ['stats_db']

列出值

更新 amphora 统计的驱动程序列表。弃用自: Victoria

*reason:*None

user_data_config_drive = False

布尔值

如果为 True,在 Amphora 引导上构建 cloud-init user-data 传递给 config 驱动器,而不是个人文件。如果 False,则使用个人文件。弃用自:An telope (2023.1)

*reason:*User_data nova 选项没有被使用,且太小来替换 config_drive。

volume_driver = volume_noop_driver

字符串值

要使用的卷驱动程序的名称

workers = 1

整数值

controller-worker 服务的 worker 数量。

13.1.12. CORS

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

Expand
表 13.11. 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 请求的最大缓存期限。

13.1.13. database

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

Expand
表 13.12. database
配置选项 = 默认值类型描述

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)的支持。弃用自: 12.1.0

适用于 MySQL NDB 集群存储引擎的reason:*Support 已弃用,并将在以后的版本中删除。

mysql_sql_mode = TRADITIONAL

字符串值

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

mysql_wsrep_sync_wait = None

整数值

对于 Galera,对新连接配置 wsrep_sync_wait 导致性检查。默认为 None,表示不配置任何设置。

pool_timeout = None

整数值

如果设置,请对带有 SQLAlchemy 的 pool_timeout 使用这个值。

retry_interval = 10

整数值

打开 SQL 连接之间的间隔。

slave_connection = None

字符串值

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

sqlite_synchronous = True

布尔值

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

use_db_reconnect = False

布尔值

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

13.1.14. driver_agent

下表概述了 octavia.conf 文件中的 [driver_agent] 组下可用的选项。

Expand
表 13.13. driver_agent
配置选项 = 默认值类型描述

`enabled_provider_agents = `

列出值

启用的供应商代理列表。driver-agent 将在启动时启动这些代理。

get_max_processes = 50

整数值

使用服务 get 请求的并发进程的最大数量。

get_request_timeout = 5

整数值

等待 get 请求的时间(以秒为单位)。

get_socket_path = /var/run/octavia/get.sock

字符串值

驱动程序 get unix 域套接字文件的路径。

max_process_warning_percent = 0.75

浮点值

使用 max_processes (状态和统计)的百分比,用于启动有关过载驱动程序-agent 的日志记录警告消息。

provider_agent_shutdown_timeout = 60

整数值

设置退出事件后等待供应商代理关闭的时间(以秒为单位)。

stats_max_processes = 50

整数值

使用服务统计更新的最大并发进程数。

stats_request_timeout = 5

整数值

等待统计更新请求的时间(以秒为单位)。

stats_socket_path = /var/run/octavia/stats.sock

字符串值

驱动程序统计 unix 域套接字文件的路径。

status_max_processes = 50

整数值

使用服务状态更新的最大并发进程数。

status_request_timeout = 5

整数值

等待状态更新请求的时间(以秒为单位)。

status_socket_path = /var/run/octavia/status.sock

字符串值

驱动程序状态 unix 域套接字文件的路径。

13.1.15. Glance

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

Expand
表 13.14. Glance
配置选项 = 默认值类型描述

ca_certificates_file = None

字符串值

CA 证书文件路径

endpoint = None

字符串值

用于覆盖 keystone 目录中端点的新端点。

endpoint_type = publicURL

字符串值

要使用的身份服务中的端点接口

insecure = False

布尔值

在 SSL 连接中禁用证书验证

region_name = None

字符串值

用于与 OpenStack 服务通信的 Identity 服务目录中的地区。

service_name = None

字符串值

keystone 目录中 glance 服务的名称

13.1.16. haproxy_amphora

下表概述了 octavia.conf 文件中的 [haproxy_amphora] 组下可用的选项。

Expand
表 13.15. haproxy_amphora
配置选项 = 默认值类型描述

active_connection_max_retries = 15

整数值

连接到活跃 amphorae 的重试阈值。

active_connection_retry_interval = 2

整数值

在活动 amphora 的连接尝试之间重试超时。

api_db_commit_retry_attempts = 15

整数值

将尝试数据库操作的次数。

api_db_commit_retry_backoff = 1

整数值

backoff 重试尝试的时间。

api_db_commit_retry_initial_delay = 1

整数值

重试尝试前的初始延迟。

api_db_commit_retry_max = 5

整数值

重试尝试之间等待的最长时间。

base_cert_dir = /var/lib/octavia/certs

字符串值

证书存储的基础目录。

base_path = /var/lib/octavia

字符串值

amphora 文件的基础目录。

bind_host = ::

IP 地址值

要绑定到的主机 IP

bind_port = 9443

端口值

要绑定到的端口

build_active_retries = 120

整数值

等待构建插槽的重试阈值。

build_rate_limit = -1

整数值

可以同时为每个控制器 worker 构建的 amphorae 数量。

build_retry_interval = 5

整数值

在构建尝试之间重试超时(以秒为单位)。

client_cert = /etc/octavia/certs/client.pem

字符串值

与代理通信的客户端证书

connection_logging = True

布尔值

把它设置为 False 以禁用连接日志记录。

connection_max_retries = 120

整数值

连接到 amphorae 的重试阈值。

connection_retry_interval = 5

整数值

在连接尝试之间重试超时(以秒为单位)。

default_connection_limit = 50000

整数值

侦听器的默认 connection_limit,在设置 "-1" 或使用监听器 API 取消设置 connection_limit 时使用。

failover_connection_max_retries = 2

整数值

连接到故障切换中的 amphora 的重试阈值。

failover_connection_retry_interval = 5

整数值

在故障转移中,在连接尝试(以秒为单位)之间重试超时。

haproxy_cmd = /usr/sbin/haproxy

字符串值

haproxy 的完整路径

haproxy_stick_size = 10k

字符串值

HAProxy 记忆表的大小。接受 k、m、g 后缀。

haproxy_template = None

字符串值

自定义 haproxy 模板。

lb_network_interface = o-hm0

字符串值

用于访问 amphora 的网络接口,只有在使用 IPv6 链接本地地址时才需要。

respawn_count = 2

整数值

haproxy 的 upstart 脚本的 respawn 计数

respawn_interval = 2

整数值

haproxy 的 upstart 脚本的 respawn 间隔

rest_request_conn_timeout = 10

浮点值

等待 REST API 连接的时间(以秒为单位)。

rest_request_read_timeout = 60

浮点值

等待 REST API 响应的时间(以秒为单位)。

server_ca = /etc/octavia/certs/server_ca.pem

字符串值

签署服务器证书的 ca

timeout_client_data = 50000

整数值

前端客户端不活动超时。

timeout_member_connect = 5000

整数值

后端成员连接超时。

timeout_member_data = 50000

整数值

后端成员不活跃超时。

timeout_tcp_inspect = 0

整数值

等待 TCP 数据包进行内容检查的时间。

use_upstart = True

布尔值

如果为 False,请使用 sysvinit。

user_log_format = {{ project_id }} {{ lb_id }} %f %ci %cp %t %{+Q}r %ST %B %U %[ssl_c_verify] %{+Q}[ssl_c_s_dn] %b %s %Tt %tsc

字符串值

用户流日志记录的日志格式字符串。

13.1.17. health_manager

下表概述了 octavia.conf 文件中的 [health_manager] 组下可用的选项。

Expand
表 13.16. health_manager
配置选项 = 默认值类型描述

bind_ip = 127.0.0.1

IP 地址值

控制器将侦听内核的 IP 地址

bind_port = 5555

端口值

控制器将侦听内核的端口号

controller_ip_port_list = []

列出值

heartbeat 接收器的控制器 ip 和端口对列表。示例 127.0.0.1:5555, 192.168.0.1:5555

failover_threads = 10

整数值

执行 amphora 故障切换的线程数量。

failover_threshold = None

整数值

如果同时失败的 amphora 达到这个数字,则停止故障切换。这可能会防止大规模出现意外故障转移事件,比如在出现网络故障或只读数据库问题时。

health_check_interval = 3

整数值

健康检查之间休眠时间(以秒为单位)。

health_update_driver = health_db

字符串值

更新 amphora 健康系统的驱动程序。弃用自: Victoria

*reason:* this driver interface was removed.

health_update_threads = None

整数值

amphora 健康更新的进程数。

heartbeat_interval = 10

整数值

发送心跳之间的睡眠时间。

heartbeat_key = None

字符串值

用于验证 amphora 发送消息的密钥

heartbeat_timeout = 60

整数值

在通过 amphora 失败前等待的时间间隔(以秒为单位)。

sock_rlimit = 0

整数值

设置心跳 recv 缓冲区的值

stats_update_threads = None

整数值

amphora stats 更新的进程数。

13.1.18. healthcheck

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

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

backends = []

列出值

可以执行健康检查的额外后端,并报告信息作为请求的一部分。

detailed = False

布尔值

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

disable_by_file_path = None

字符串值

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

disable_by_file_paths = []

列出值

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

path = /healthcheck

字符串值

响应 healtcheck 请求的路径。

13.1.19. house_keeping

下表概述了 octavia.conf 文件中的 [house_keeping] 组下可用的选项。

Expand
表 13.18. house_keeping
配置选项 = 默认值类型描述

amphora_expiry_age = 604800

整数值

Amphora 过期期限(以秒为单位)

cert_expiry_buffer = 1209600

整数值

证书过期前的秒数

cert_interval = 3600

整数值

证书检查间隔(以秒为单位)

cert_rotate_threads = 10

整数值

执行 amphora 证书轮转的线程数量

cleanup_interval = 30

整数值

DB 清理间隔(以秒为单位)

load_balancer_expiry_age = 604800

整数值

负载均衡器的过期期限(以秒为单位)

13.1.20. keepalived_vrrp

下表概述了 octavia.conf 文件中的 [keepalived_vrrp] 组下可用的选项。

Expand
表 13.19. keepalived_vrrp
配置选项 = 默认值类型描述

vrrp_advert_int = 1

整数值

Amphora 角色和优先级公告间隔(以秒为单位)。

vrrp_check_interval = 5

整数值

VRRP 健康检查脚本运行间隔(以秒为单位)。

vrrp_fail_count = 2

整数值

过渡到失败状态前的连续失败数量。

vrrp_garp_refresh_count = 2

整数值

每次刷新间隔上进行的 gratuitous ARP 公告的数量。

vrrp_garp_refresh_interval = 5

整数值

MASTER 获取 ARP 公告之间的时间(以秒为单位)。

vrrp_success_count = 2

整数值

过渡到成功状态前连续成功的次数。

13.1.21. key_manager

下表概述了 octavia.conf 文件中的 [key_manager] 组下可用的选项。

Expand
表 13.20. key_manager
配置选项 = 默认值类型Description

auth_type = None

字符串值

要创建的身份验证凭证类型。可能的值有 token密码keystone_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 的可选选项。

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

13.1.22. keystone_authtoken

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

Expand
表 13.21. 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" (默认)无法验证绑定信息,如果不是,则忽略它。如"permissive",但如果绑定类型未知,令牌将被拒绝。"必需"格式的任何令牌绑定格式是允许的。最后,令牌中必须存在的绑定方法的名称。

http_connect_timeout = None

整数值

请求超时值与 Identity 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 服务器再次尝试前,memcached 服务器被视为死服务器的秒数。

memcache_pool_maxsize = 10

整数值

(可选)到每个 memcached 服务器的最大打开连接总数。

memcache_pool_socket_timeout = 3

整数值

(可选)与 memcached 服务器通信的套接字超时(以秒为单位)。

memcache_pool_unused_timeout = 60

整数值

(可选)在关闭到 memcached 前,与 memcached 的连接数的秒数。

memcache_secret_key = None

字符串值

(可选,如果定义了 memcache_security_strategy,则此字符串用于密钥派生。

memcache_security_strategy = None

字符串值

(可选)如果定义,指定令牌数据是否应该经过身份验证或经过身份验证并加密。如果 MAC,令牌数据在缓存中进行身份验证(使用 HMAC)。如果 ENCRYPT,令牌数据将在缓存中加密和验证。如果该值不是这些选项之一或为空,则 auth_token 会在初始化时引发异常。

memcache_tls_allowed_ciphers = None

字符串值

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

memcache_tls_cafile = None

字符串值

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

memcache_tls_certfile = None

字符串值

(可选) PEM 格式的单个文件的路径,其中包含客户端的证书以及建立证书真实性所需的任意数量的 CA 证书。仅当需要客户端身份验证时,才需要此文件。如果 tls_enabled 是 False,则忽略这个选项。

memcache_tls_enabled = False

布尔值

(可选)与缓存服务器捆绑时的 TLS 使用全局切换。

memcache_tls_keyfile = None

字符串值

(可选)到包含客户端私钥的单个文件的路径。其他私钥将被从 tls_certfile 中指定的文件中获取。如果 tls_enabled 是 False,则忽略这个选项。

memcache_use_advanced_pool = True

布尔值

(可选)使用 advanced (eventlet 安全) memcached 客户端池。

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 端点,则不 应该与服务用户用来验证令牌的端点相同,因为普通的最终用户可能无法到达该端点。

13.1.23. networking

下表概述了 octavia.conf 文件中的 [networking] 组下可用的选项。

Expand
表 13.22. networking
配置选项 = 默认值类型描述

allow_invisible_resource_usage = False

布尔值

为 True 时,用户可以使用它们通常无法视为 VIP 或成员子网的网络资源。使此 True 可能允许用户访问他们通常无法通过 neutron RBAC 策略访问的子网上的资源。

allow_vip_network_id = True

布尔值

用户能否为其 VIP 提供 network_id?

allow_vip_port_id = True

布尔值

用户能否为其 VIP 提供 port_id?

allow_vip_subnet_id = True

布尔值

用户是否为 VIP 提供 subnet_id 吗?

max_retries = 15

整数值

使用网络服务重试操作的最大尝试。

port_detach_timeout = 300

整数值

等待端口从 amphora 分离的秒数。

reserved_ips = ['169.254.169.254']

列出值

为成员地址保留的 IP 地址列表。IPv6 地址应采用扩展的大写形式。

retry_backoff = 1

整数值

backoff 重试尝试的秒数。

retry_interval = 1

整数值

使用网络服务重试操作前等待的秒数。

retry_max = 10

整数值

重试尝试之间的最大间隔(以秒为单位)。

valid_vip_networks = None

列出值

有效创建 VIP 的 network_ids 列表。如果此字段为空,则不会执行验证。

13.1.24. neutron

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

Expand
表 13.23. neutron
配置选项 = 默认值类型描述

ca_certificates_file = None

字符串值

CA 证书文件路径

endpoint = None

字符串值

用于覆盖 keystone 目录中端点的新端点。

endpoint_type = publicURL

字符串值

要使用的身份服务中的端点接口

insecure = False

布尔值

在 SSL 连接中禁用证书验证

region_name = None

字符串值

用于与 OpenStack 服务通信的 Identity 服务目录中的地区。

service_name = None

字符串值

keystone 目录中 neutron 服务的名称

13.1.25. nova

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

Expand
表 13.24. nova
配置选项 = 默认值类型描述

anti_affinity_policy = anti-affinity

字符串值

为 nova 设置反关联性策略

availability_zone = None

字符串值

用于创建 Amphorae 的可用区

ca_certificates_file = None

字符串值

CA 证书文件路径

enable_anti_affinity = False

布尔值

指示是否打开 nova anti-affinity 功能的标记。这个选项仅在 ACTIVE_STANDBY 拓扑中创建 amphorae 时使用。

endpoint = None

字符串值

用于覆盖 keystone 目录中端点的新端点。

endpoint_type = publicURL

字符串值

要使用的身份服务中的端点接口

insecure = False

布尔值

在 SSL 连接中禁用证书验证

random_amphora_name_length = 0

整数值

如果非零,为每个 amphora 提供的长度生成一个随机名称,格式为 "a[A-Z0-9]*"。否则将使用默认名称格式:"amphora-{UUID}"。

region_name = None

字符串值

用于与 OpenStack 服务通信的 Identity 服务目录中的地区。

service_name = None

字符串值

keystone 目录中 nova 服务的名称

13.1.26. oslo_messaging

下表概述了 octavia.conf 文件中的 [oslo_messaging] 组下可用的选项。

Expand
表 13.25. oslo_messaging
配置选项 = 默认值类型描述

topic = None

字符串值

Topic (i.e. Queue)名称

13.1.27. oslo_messaging_amqp

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

Expand
表 13.26. 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 else 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 else default_rpc_exchange if set else 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 消息时附加到地址前缀中。由消息总线用来识别 fanout 消息。

notify_address_prefix = openstack.org/om/notify

字符串值

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

notify_server_credit = 100

整数值

传入通知消息的窗口大小

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

多值

发送此类类型的消息。预先修改的消息将不会接收来自对等点的确认。注意:如果发送失败,则预先修改的消息可能会静默丢弃。允许的值: rpc-call - send RPC Calls pre-settled rpc-reply- send 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 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 服务器时,附加到地址前缀中。由消息总线用来识别发送到单个目的地的消息。

13.1.28. oslo_messaging_kafka

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

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

compression_codec = none

字符串值

生成者生成的所有数据的压缩码c。如果没有设置,则不会使用压缩。请注意,这允许的值取决于 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 使用者的最大获取字节数

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 文件

`ssl_client_cert_file = `

字符串值

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

`ssl_client_key_file = `

字符串值

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

`ssl_client_key_password = `

字符串值

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

13.1.29. oslo_messaging_notifications

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

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

driver = []

多值

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

retry = -1

整数值

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

topics = ['notifications']

列出值

用于 OpenStack 通知的 AMQP 主题。

transport_url = None

字符串值

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

13.1.30. oslo_messaging_rabbit

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

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

amqp_auto_delete = False

布尔值

AMQP 中的自动删除队列。

amqp_durable_queues = False

布尔值

在 AMQP 中使用持久队列。如果启用了 rabbit_quorum_queue,则队列将具有持久性,并且此值将被忽略。

direct_mandatory_flag = True

布尔值

(DEPRECATED)为直接发送启用/禁用 RabbitMQ 强制标记。直接发送用作回复,因此当客户端队列不存在时,会引发 MessageUndeliverable 异常。MessageUndeliverable 异常将用于对超时进行循环,以便发送者有机会恢复该标志,且无法停用此功能。

enable_cancel_on_failover = False

布尔值

启用 x-cancel-on-ha-failover 标志,rabbitmq 服务器将取消和通知消费者何时队列停机

heartbeat_in_pthread = False

布尔值

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

heartbeat_rate = 2

整数值

heartbeat_timeout_threshold 中检查心跳的频率。

heartbeat_timeout_threshold = 60

整数值

如果 heartbeat 的 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\.) commands {"ha-mode": "all"} "

rabbit_interval_max = 30

整数值

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

rabbit_login_method = AMQPLAIN

字符串值

RabbitMQ 登录方法。

rabbit_qos_prefetch_count = 0

整数值

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

rabbit_quorum_delivery_limit = 0

整数值

每次消息被重新设计为消费者时,计数器都会递增。当重新传送计数超过交付限制后,消息将被丢弃或死信(如果配置了 DLX 交换)仅在启用 rabbit_quorum_queue 时使用,默认 0 代表没有设置限制。

rabbit_quorum_max_memory_bytes = 0

整数值

默认情况下,如果仲裁队列增加,则所有消息都会在内存中维护,这会给集群造成内存压力。这个选项可以限制仲裁队列使用的内存字节数。仅在启用 rabbit_quorum_queue 时使用,默认 0 代表 dont 设置限制。

rabbit_quorum_max_memory_length = 0

整数值

默认情况下,如果仲裁队列增加,则所有消息都会在内存中维护,这会给集群造成内存压力。这个选项可以限制仲裁队列中的消息数量。仅在启用 rabbit_quorum_queue 时使用,默认 0 代表 dont 设置限制。

rabbit_quorum_queue = False

布尔值

在 RabbitMQ 中使用仲裁队列(x-queue-type: quorum)。仲裁队列是基于 Raft 共识算法的 RabbitMQ 实施持久复制 FIFO 队列的现代队列类型。它从 RabbitMQ 3.8.0 开始提供。如果设置此选项将与 HA 队列(rabbit_ha_queues) aka 镜像队列冲突,换句话说,应该禁用 HA 队列,因此启用此选项时会忽略 amqp_durable_queues opion。

rabbit_retry_backoff = 2

整数值

连接到 RabbitMQ 时,在重试之间会多长时间进行 backoff。

rabbit_retry_interval = 1

整数值

使用 RabbitMQ 重试连接的频率。

rabbit_transient_queues_ttl = 1800

整数值

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

ssl = False

布尔值

通过 SSL 连接。

`ssl_ca_file = `

字符串值

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

`ssl_cert_file = `

字符串值

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

ssl_enforce_fips_mode = False

布尔值

强制 OpenSSL FIPS 模式的全局切换。此功能需要 Python 支持。这在所有环境中的 Python 3.9 中都可用,并可能已向后移植到所选环境中的旧的 Python 版本。如果使用的 Python 可执行文件不支持 OpenSSL FIPS 模式,则会引发异常。

`ssl_key_file = `

字符串值

SSL 密钥文件(仅在启用 SSL 时才评估)。

`ssl_version = `

字符串值

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

13.1.31. oslo_middleware

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

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

enable_proxy_headers_parsing = False

布尔值

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

13.1.32. oslo_policy

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

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

enforce_new_defaults = False

布尔值

这个选项控制在评估策略时是否使用旧的已弃用默认值。如果为 True,则不会评估旧的已弃用默认值。这意味着,如果旧默认值允许任何现有令牌,但不允许使用新默认值。建议启用此标志以及 enforce_scope 标志,以便您可以将新默认值和 scope_type 的好处结合在一起。如果为 False,弃用的策略检查字符串在逻辑上或带有新策略检查字符串,允许在带有新策略的发行版本间进行安全升级体验,这是默认行为。

enforce_scope = False

布尔值

此选项控制在评估策略时是否强制执行范围。如果为 True,则请求中使用的令牌范围将与强制执行的策略的 scope_types 进行比较。如果范围不匹配,则会引发 InvalidScope 异常。如果为 False,则会记录一条信息,告知操作员使用了不匹配的范围调用策略。

policy_default_rule = default

字符串值

默认规则。未找到请求的规则时强制执行。

policy_dirs = ['policy.d']

多值

存储策略配置文件的目录。它们可以相对于 config_dir 选项定义的搜索路径中的任何目录,也可以是绝对路径。必须存在由 policy_file 定义的文件,才能搜索这些目录。缺失或空目录将被忽略。

policy_file = policy.yaml

字符串值

文件相对或绝对路径,用于将角色映射到给定服务的权限。必须根据配置文件设置此选项指定相对路径。

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 策略检查的服务器身份验证

13.1.33. 配额

下表概述了 octavia.conf 文件中的 [quotas] 组下可用的选项。

Expand
表 13.32. 配额
配置选项 = 默认值类型描述

default_health_monitor_quota = -1

整数值

默认每个项目运行状况监视器配额。

default_l7policy_quota = -1

整数值

默认每个项目 l7policy 配额。

default_l7rule_quota = -1

整数值

默认每个项目 l7rule 配额。

default_listener_quota = -1

整数值

默认按项目侦听器配额。

default_load_balancer_quota = -1

整数值

默认每个项目负载均衡器配额。

default_member_quota = -1

整数值

默认每个项目成员配额。

default_pool_quota = -1

整数值

默认每个项目池配额。

13.1.34. service_auth

下表概述了 octavia.conf 文件中的 [service_auth] 组下可用的选项。

Expand
表 13.33. service_auth
配置选项 = 默认值类型Description

auth-url = None

字符串值

身份验证 URL

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

字符串值

用户名

13.1.35. task_flow

下表概述了 octavia.conf 文件中的 [task_flow] 组下可用的选项。

Expand
表 13.34. task_flow
配置选项 = 默认值类型描述

disable_revert = False

布尔值

如果为 True,则禁用控制器 worker 任务流从恢复。这将使资源处于不一致的状态,并且只用于调试目的。

engine = parallel

字符串值

要使用的任务流引擎。

jobboard_backend_driver = redis_taskflow_driver

字符串值

监控作业状态的 Jobboard backend 驱动程序。

jobboard_backend_hosts = ['127.0.0.1']

列出值

Jobboard backend server host (s)。

jobboard_backend_namespace = octavia_jobboard

字符串值

用于存储任务流作业 ID 和声明的 Jobboard 名称。

`jobboard_backend_password = `

字符串值

Jobboard backend server password

jobboard_backend_port = 6379

端口值

Jobboard backend server port

jobboard_enabled = False

布尔值

如果为 True,启用 TaskFlow jobboard。

jobboard_expiration_time = 30

整数值

对于需要设置到期的 redis 声明作业等后端 - 应该为声明保留多少秒。

jobboard_redis_backend_ssl_options = {'ssl': False, 'ssl_ca_certs': None, 'ssl_cert_reqs': 'required', 'ssl_certfile': None, 'ssl_keyfile': None}

字典值

Redis jobboard backend ssl 配置选项。

jobboard_redis_sentinel = None

字符串值

Sentinel 名称(如果用于 Redis )。

jobboard_save_logbook = False

布尔值

如果需要分析所需的保存日志手册信息,则将此参数设置为 True。默认情况下,在作业完成时,从持久性后端中删除 logbook。

jobboard_zookeeper_ssl_options = {'certfile': None, 'keyfile': None, 'keyfile_password': None, 'use_ssl': False, 'verify_certs': True}

字典值

ZooKeeper jobboard backend ssl 配置选项。

max_workers = 5

整数值

worker 的最大数量

persistence_connection = sqlite://

字符串值

持久性数据库,它将用于存储任务状态。使用 db 名称的数据库连接 url

13.1.36. Vault

下表概述了 octavia.conf 文件中的 [vault] 组下可用的选项。

Expand
表 13.35. Vault
配置选项 = 默认值类型Description

approle_role_id = None

字符串值

Approle role_id 用于使用 vault 进行身份验证

approle_secret_id = None

字符串值

Approle secret_id 用于使用 vault 进行身份验证

kv_mountpoint = secret

字符串值

Vault 中要使用的 KV 存储的挂载点,例如:secret

kv_version = 2

整数值

要使用的 Vault 中的 KV 存储版本,例如:2

namespace = None

字符串值

用于 Vault 的所有请求的 vault 命名空间。Vault 命名空间功能仅适用于 Vault Enterprise

root_token_id = None

字符串值

vault 的 root 令牌

ssl_ca_crt_file = None

字符串值

ca 证书文件的绝对路径

use_ssl = False

布尔值

SSL Enabled/Disabled

vault_url = http://127.0.0.1:8200

字符串值

使用此端点连接到 Vault,例如:"http://127.0.0.1:8200"

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat