配置参考¶
以下是 Mistral 中所有可用配置选项的概述。
有关示例配置文件,请参阅 mistral.conf。
默认值¶
- log_options¶
- 类型:
布尔值
- 默认值:
True- 可变:
此选项可以在不重启的情况下更改。
启用或禁用在服务启动时(DEBUG 级别)记录所有已注册选项的值。
- graceful_shutdown_timeout¶
- 类型:
整数
- 默认值:
60- 可变:
此选项可以在不重启的情况下更改。
指定优雅关闭服务器在退出之前等待的超时时间。值为零表示无限期等待。
- executor_thread_pool_size¶
- 类型:
整数
- 默认值:
64
当 executor 是 threading 或 eventlet 时,executor 线程池的大小。
已弃用的变体¶ Group
名称
DEFAULT
rpc_thread_pool_size
- rpc_response_timeout¶
- 类型:
整数
- 默认值:
60
等待调用响应的秒数。
- 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/2025.2/reference/transport.html
- control_exchange¶
- 类型:
字符串
- 默认值:
openstack
主题的作用域所在的默认交换机。可以通过 transport_url 选项中指定的交换机名称覆盖。
- rpc_ping_enabled¶
- 类型:
布尔值
- 默认值:
False
添加一个端点来响应 ping 调用。端点命名为 oslo_rpc_server_ping
- debug¶
- 类型:
布尔值
- 默认值:
False- 可变:
此选项可以在不重启的情况下更改。
如果设置为 true,日志级别将被设置为 DEBUG,而不是默认的 INFO 级别。
- log_config_append¶
- 类型:
字符串
- 默认值:
<None>- 可变:
此选项可以在不重启的情况下更改。
日志配置文件的名称。此文件将附加到任何现有的日志配置文件。有关日志配置文件的详细信息,请参阅 Python 日志模块文档。请注意,当使用日志配置文件时,所有日志配置都设置在配置文件中,并且其他日志配置选项将被忽略(例如,log-date-format)。
已弃用的变体¶ Group
名称
DEFAULT
log-config
DEFAULT
log_config
- log_date_format¶
- 类型:
字符串
- 默认值:
%Y-%m-%d %H:%M:%S
定义日志记录中的 %(asctime)s 的格式字符串。默认值:上述值。如果设置了 log_config_append,则此选项将被忽略。
- log_file¶
- 类型:
字符串
- 默认值:
<None>
(可选) 将日志输出发送到的日志文件名。如果没有设置默认值,日志将输出到 stderr,如 use_stderr 中定义的那样。如果设置了 log_config_append,则此选项将被忽略。
已弃用的变体¶ Group
名称
DEFAULT
logfile
- log_dir¶
- 类型:
字符串
- 默认值:
<None>
(可选) 用于相对 log_file 路径的基本目录。如果设置了 log_config_append,则此选项将被忽略。
已弃用的变体¶ Group
名称
DEFAULT
logdir
- watch_log_file¶
- 类型:
布尔值
- 默认值:
False
使用设计为监视文件系统的日志记录处理程序。当日志文件被移动或删除时,此处理程序将立即使用指定的路径打开新的日志文件。只有在指定了 log_file 选项并且使用 Linux 平台时才有意义。如果设置了 log_config_append,则此选项将被忽略。
警告
此选项已弃用,将来可能会被静默忽略。
- 原因:
已知此功能长期存在问题,并且依赖于未维护的库
- use_syslog¶
- 类型:
布尔值
- 默认值:
False
使用 syslog 进行日志记录。现有的 syslog 格式已弃用,以后将更改为符合 RFC5424。如果设置了 log_config_append,则此选项将被忽略。
- use_journal¶
- 类型:
布尔值
- 默认值:
False
启用 journald 进行日志记录。如果正在 systemd 环境中运行,您可能希望启用 journal 支持。这样做将使用 journal 本机协议,其中包括结构化元数据以及日志消息。如果设置了 log_config_append,则此选项将被忽略。
- syslog_log_facility¶
- 类型:
字符串
- 默认值:
LOG_USER
接收日志行的 syslog facility。如果设置了 log_config_append,则此选项将被忽略。
- use_json¶
- 类型:
布尔值
- 默认值:
False
使用 JSON 格式进行日志记录。如果设置了 log_config_append,则此选项将被忽略。
- use_stderr¶
- 类型:
布尔值
- 默认值:
False
将日志输出记录到标准错误。如果设置了 log_config_append,则此选项将被忽略。
- log_color¶
- 类型:
布尔值
- 默认值:
False
(可选) 根据日志级别设置“color”键。此选项仅在将日志记录到 stderr 或 stdout 时生效。如果设置了 log_config_append,则此选项将被忽略。
- log_rotate_interval¶
- 类型:
整数
- 默认值:
1
日志文件轮换前的时间量。如果未设置 log_rotation_type 为“interval”,则此选项将被忽略。
- log_rotate_interval_type¶
- 类型:
字符串
- 默认值:
days- 有效值:
秒、分钟、小时、天、星期几、午夜
轮换间隔类型。在安排下一次轮换时,使用上次文件更改时间(或服务启动时间)。
- max_logfile_count¶
- 类型:
整数
- 默认值:
30
最大轮换日志文件数。
- max_logfile_size_mb¶
- 类型:
整数
- 默认值:
200
日志文件最大大小(MB)。如果“log_rotation_type”未设置为“size”,则此选项将被忽略。
- log_rotation_type¶
- 类型:
字符串
- 默认值:
none- 有效值:
interval, size, none
日志轮换类型。
可能的值
- interval
以预定义的时间间隔轮换日志。
- size
当日志达到预定义的大小后轮换日志。
- 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_default_format_string¶
- 类型:
字符串
- 默认值:
%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)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_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 %(domain)s %(system_scope)s %(user_domain)s %(project_domain)s
定义 logging_context_format_string 中使用的 %(user_identity)s 的格式字符串。由 oslo_log.formatters.ContextFormatter 使用
- 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,则此选项将被忽略。
- publish_errors¶
- 类型:
布尔值
- 默认值:
False
启用或禁用错误事件的发布。
- instance_format¶
- 类型:
字符串
- 默认值:
"[instance: %(uuid)s] "
与日志消息一起传递的实例的格式。
- instance_uuid_format¶
- 类型:
字符串
- 默认值:
"[instance: %(uuid)s] "
与日志消息一起传递的实例 UUID 的格式。
- rate_limit_interval¶
- 类型:
整数
- 默认值:
0
日志速率限制的间隔,秒数。
- rate_limit_burst¶
- 类型:
整数
- 默认值:
0
每 rate_limit_interval 允许记录的最大消息数。
- rate_limit_except_level¶
- 类型:
字符串
- 默认值:
CRITICAL- 有效值:
CRITICAL, ERROR, INFO, WARNING, DEBUG, ‘’
速率限制使用的日志级别。日志级别大于或等于 rate_limit_except_level 的日志不会被过滤。空字符串表示所有级别都不会被过滤。
- fatal_deprecations¶
- 类型:
布尔值
- 默认值:
False
启用或禁用弃用信息的致命状态。
- server¶
- 类型:
列表
- 默认值:
['all']
指定启动脚本启动哪个 Mistral 服务器。
- workflow_trace_log_name¶
- 类型:
字符串
- 默认值:
workflow_trace
用于美观工作流跟踪输出的日志记录器名称。
- auth_type¶
- 类型:
字符串
- 默认值:
keystone
身份验证类型(有效选项:keystone, keycloak-oidc)
- scheduler_type¶
- 类型:
字符串
- 默认值:
legacy- 有效值:
legacy, default
系统中使用的调度器实现名称。
- js_implementation¶
- 类型:
字符串
- 默认值:
pyv8- 有效值:
pyv8, v8eval, py_mini_racer
用于评估脚本的 std.javascript 操作使用的 JavaScript 实现。
- expiration_token_duration¶
- 类型:
整数
- 默认值:
30
确定给定令牌是否即将到期的秒数窗口。
action_heartbeat
- max_missed_heartbeats¶
- 类型:
整数
- 默认值:
15- 最小值:
0
允许的最大未收到心跳数。如果设置为 0,则禁用此功能。有关更多详细信息,请参阅 check_interval。
- check_interval¶
- 类型:
整数
- 默认值:
20- 最小值:
0
检查操作执行的频率(以秒为单位)。例如,如果 check_interval 为 10,则每 10 秒检查一次操作执行。当检查器运行时,如果最后收到的心跳时间早于 10 * max_missed_heartbeats 秒,则会将所有正在运行的操作执行转换为错误状态。如果设置为 0,则禁用此功能。
- batch_size¶
- 类型:
整数
- 默认值:
10- 最小值:
0
操作执行心跳检查器的一次迭代中处理的最大操作执行数。如果设置为 0,则没有限制。
- first_heartbeat_timeout¶
- 类型:
整数
- 默认值:
3600- 最小值:
0
第一个心跳的处理方式不同,以便为没有可用的执行器来处理操作执行的情况提供缓冲期。例如,如果 first_heartbeat_timeout = 3600,则在关闭从未收到心跳的操作执行之前等待 3600 秒。
action_logging
- hide_response_body¶
- 类型:
布尔值
- 默认值:
False
如果此值为 True,则 HTTP 操作响应主体将在日志中隐藏。
- hide_request_body¶
- 类型:
布尔值
- 默认值:
False
如果此值为 True,则 HTTP 操作请求主体将在日志中隐藏。
- sensitive_headers¶
- 类型:
列表
- 默认值:
[]
应在日志中隐藏的敏感标头列表。
action_providers
- allowlist¶
- 类型:
列表
- 默认值:
[]
允许从入口点“mistral.action.providers”加载的操作提供程序白名单。如果为空,则除非设置了黑名单,否则将允许所有操作提供程序。
- denylist¶
- 类型:
列表
- 默认值:
[]
不允许从入口点“mistral.action.providers”加载的操作提供程序黑名单。白名单优先,如果为空,则允许所有操作提供程序。
api¶
- host¶
- 类型:
主机地址
- 默认值:
0.0.0.0
Mistral API 服务器主机
- port¶
- 类型:
端口号
- 默认值:
8989- 最小值:
0
- 最大值:
65535
Mistral API 服务器端口
- allow_action_execution_deletion¶
- 类型:
布尔值
- 默认值:
False
启用删除与工作流没有关系的操作执行的能力。
- enable_ssl_api¶
- 类型:
布尔值
- 默认值:
False
启用集成的独立 API 以通过 HTTPS 而不是 HTTP 提供请求。
- api_workers¶
- 类型:
整数
- 默认值:
<None>
Mistral API 服务的 worker 数量,默认等于可用 CPU 的数量(如果可以确定),否则返回默认 worker 数量 1。
警告
此选项已弃用,将来可能会被静默忽略。
- 原因:
此选项已变得无用,mistral-api 现在只会启动一个 worker。如果您需要更多 worker,请考虑使用 wsgi 服务器启动 mistral-wsgi-api。
- validation_mode¶
- 类型:
字符串
- 默认值:
mandatory- 有效值:
enabled, mandatory, disabled
定义 Mistral 将在什么情况下验证工作流 YAML 定义的语法。如果设置为“enabled”,则服务将验证语法,但仅当 API 请求中未显式关闭验证时。 “disabled” 禁用所有 API 请求的验证。 “mandatory” 为所有 API 请求启用验证。
- enable_info_endpoint¶
- 类型:
布尔值
- 默认值:
False
启用 API 以暴露有关当前 Mistral 构建的信息 json。
- info_json_file_path¶
- 类型:
字符串
- 默认值:
info.json
指定将通过 /info 端点公开的 info json 文件的路径。
context_versioning
- enabled¶
- 类型:
布尔值
- 默认值:
True
如果此值为 True,则 Mistral 将使用上下文版本控制以提高上下文合并的结果。此功能修复了一些上下文合并错误,但也会降低 Mistral 的性能。
- hash_version_keys¶
- 类型:
布尔值
- 默认值:
True
如果此值为 True,则 Mistral 将使用 md5 散列来处理版本密钥,以确保这些密钥的大小相同。禁用散列对于调试目的可能很有用,但请避免在生产中使用它,因为它会导致内存消耗过大。
cors¶
- allowed_origin¶
- 类型:
列表
- 默认值:
<None>
指示是否允许与请求“origin”标头中接收到的域共享此资源。格式:“<protocol>://<host>[:<port>]”,不带尾部斜杠。示例:https://horizon.example.com
- allow_credentials¶
- 类型:
布尔值
- 默认值:
True
指示实际请求是否可以包含用户凭据
- expose_headers¶
- 类型:
列表
- 默认值:
['X-Auth-Token', 'X-Subject-Token', 'X-Service-Token', 'X-Project-Id', 'X-User-Name', 'X-Project-Name']
指示哪些标头可以安全地暴露给 API。默认值为 HTTP 简单标头。
- max_age¶
- 类型:
整数
- 默认值:
3600
CORS 预检请求的最大缓存时间。
- allow_methods¶
- 类型:
列表
- 默认值:
['GET', 'PUT', 'POST', 'DELETE', 'PATCH']
指示实际请求期间可以使用哪些方法。
- allow_headers¶
- 类型:
列表
- 默认值:
['X-Auth-Token', 'X-Identity-Status', 'X-Roles', 'X-Service-Catalog', 'X-User-Id', 'X-Tenant-Id', 'X-Project-Id', 'X-User-Name', 'X-Project-Name']
指示实际请求期间可以使用哪些标头字段名称。
cron_trigger
- enabled¶
- 类型:
布尔值
- 默认值:
True
如果此值为 False,则 cron 触发器的子系统将被禁用。禁用 cron 触发器会提高系统性能。
- execution_interval¶
- 类型:
整数
- 默认值:
1- 最小值:
1
此设置定义 Mistral 检查需要执行的 cron 触发器的频率。默认情况下,这是每秒一次,这可能会导致系统负载过高。增加数字会降低负载,但也会限制最小频率。例如,可以配置 cron 触发器每秒运行一次,但如果 execution_interval 设置为 60,则它只会每分钟运行一次。
database¶
- sqlite_synchronous¶
- 类型:
布尔值
- 默认值:
True
如果为 True,SQLite 使用同步模式。
- backend¶
- 类型:
字符串
- 默认值:
sqlalchemy
用于数据库的后端。
- connection¶
- 类型:
字符串
- 默认值:
<None>
用于连接到数据库的 SQLAlchemy 连接字符串。
- slave_connection¶
- 类型:
字符串
- 默认值:
<None>
用于连接到从数据库的 SQLAlchemy 连接字符串。
- asyncio_connection¶
- 类型:
字符串
- 默认值:
<None>
用于连接到数据库的 SQLAlchemy asyncio 连接字符串。
- asyncio_slave_connection¶
- 类型:
字符串
- 默认值:
<None>
用于连接到从数据库的 SQLAlchemy asyncio 连接字符串。
- mysql_sql_mode¶
- 类型:
字符串
- 默认值:
TRADITIONAL
为 MySQL 会话使用的 SQL 模式。此选项(包括默认值)会覆盖服务器设置的任何 SQL 模式。要使用服务器配置设置的任何 SQL 模式,请将其设置为无值。示例:mysql_sql_mode=
- mysql_wsrep_sync_wait¶
- 类型:
整数
- 默认值:
<None>
仅适用于 Galera,配置新连接上的 wsrep_sync_wait 因果关系检查。默认值为 None,表示不配置任何设置。
- connection_recycle_time¶
- 类型:
整数
- 默认值:
3600
连接在连接池中存在的时间超过此秒数后,将在下次从池中检出时替换为新的连接。
- max_pool_size¶
- 类型:
整数
- 默认值:
5
保持在池中打开的 SQL 连接的最大数量。将值设置为 0 表示没有限制。
- max_retries¶
- 类型:
整数
- 默认值:
10
启动期间打开数据库连接的最大重试次数。设置为 -1 表示无限重试次数。
- retry_interval¶
- 类型:
整数
- 默认值:
10
重试打开 SQL 连接的间隔时间。
- max_overflow¶
- 类型:
整数
- 默认值:
50
如果设置,则使用此值作为 SQLAlchemy 的 max_overflow。
- connection_debug¶
- 类型:
整数
- 默认值:
0- 最小值:
0
- 最大值:
100
SQL 调试信息的详细程度:0=无,100=全部。
- connection_trace¶
- 类型:
布尔值
- 默认值:
False
将 Python 堆栈跟踪作为注释字符串添加到 SQL。
- pool_timeout¶
- 类型:
整数
- 默认值:
<None>
如果设置,则使用此值作为 SQLAlchemy 的 pool_timeout。
- use_db_reconnect¶
- 类型:
布尔值
- 默认值:
False
启用实验性的数据库重新连接功能,在连接丢失时使用。
- db_retry_interval¶
- 类型:
整数
- 默认值:
1
数据库事务重试之间的秒数。
- db_inc_retry_interval¶
- 类型:
布尔值
- 默认值:
True
如果为 True,则增加数据库操作重试之间的间隔,直到达到 db_max_retry_interval。
- db_max_retry_interval¶
- 类型:
整数
- 默认值:
10
如果设置了 db_inc_retry_interval,则数据库操作重试之间的最大秒数。
- db_max_retries¶
- 类型:
整数
- 默认值:
20
在出现连接错误或死锁错误之前,数据库重试的最大次数。设置为 -1 表示无限重试次数。
- connection_parameters¶
- 类型:
字符串
- 默认值:
''
可选的 URL 参数,用于在连接时附加到连接 URL,格式为 param1=value1¶m2=value2&…
engine
- engine¶
- 类型:
字符串
- 默认值:
default
Mistral 引擎插件
- host¶
- 类型:
主机地址
- 默认值:
0.0.0.0
引擎节点的名称。这可以是不透明的标识符。它不一定是主机名、FQDN 或 IP 地址。
- topic¶
- 类型:
字符串
- 默认值:
mistral_engine
引擎侦听的消息主题。
- version¶
- 类型:
字符串
- 默认值:
1.0
引擎的版本。
- execution_field_size_limit_kb¶
- 类型:
整数
- 默认值:
1024
运行时执行对象中大型文本字段的默认最大大小(以 KB 为单位)。使用 -1 表示无限制。
- execution_integrity_check_delay¶
- 类型:
整数
- 默认值:
20
自任务执行上次更新为 RUNNING 状态以来经过的秒数,在此之后 Mistral 将开始检查其完整性,这意味着如果所有关联的操作/工作流都已完成,其状态将自动恢复。如果此属性设置为负值,Mistral 将永远不会执行此检查。
- execution_integrity_check_batch_size¶
- 类型:
整数
- 默认值:
5- 最小值:
1
执行完整性检查器在单个迭代中可以处理的 RUNNING 状态的任务执行数。
- action_definition_cache_time¶
- 类型:
整数
- 默认值:
60
操作定义应存储在本地缓存中的秒数。
- start_subworkflows_via_rpc¶
- 类型:
布尔值
- 默认值:
False
启用通过 RPC 启动子工作流。使用“False”在同一个引擎实例中启动子工作流。使用“True”通过 RPC 启动子工作流,以在多个引擎实例的情况下改善负载均衡。
- merge_strategy¶
- 类型:
字符串
- 默认值:
replace- 有效值:
replace, merge
工作流执行中数据的合并策略。(replace, merge)
event_engine
- host¶
- 类型:
主机地址
- 默认值:
0.0.0.0
事件引擎节点的名称。这可以是不透明的标识符。它不一定是主机名、FQDN 或 IP 地址。
- listener_pool_name¶
- 类型:
主机地址
- 默认值:
events
事件引擎的侦听器池的名称。这可以是不透明的标识符。它用于在 oslo.messaging 中标识事件引擎侦听器组。
- topic¶
- 类型:
字符串
- 默认值:
mistral_event_engine
事件引擎侦听的消息主题。
- event_definitions_cfg_file¶
- 类型:
字符串
- 默认值:
/etc/mistral/event_definitions.yaml
事件定义配置文件。
execution_expiration_policy
- evaluation_interval¶
- 类型:
整数
- 默认值:
<None>
执行将被评估的频率(以分钟为单位)。例如,对于值 120,间隔为 2 小时(每 2 小时)。请注意,只有最终状态的执行将被删除:(SUCCESS / ERROR / CANCELLED)。
- older_than¶
- 类型:
整数
- 默认值:
<None>
从哪个时间开始删除已完成的执行(以分钟为单位)。例如,如果 older_than = 60,则删除所有在 60 分钟前或更长时间完成的执行。最小值为 1。
- max_finished_executions¶
- 类型:
整数
- 默认值:
0
要存储的最大已完成工作流执行数。例如,如果 max_finished_executions = 100,则仅保留最新的 100 个已完成的执行。这意味着即使未过期的执行也有资格被删除,以减少数据库中的执行数量。默认值为 0。如果设置为 0,则不会应用此约束。
- batch_size¶
- 类型:
整数
- 默认值:
0
要删除的已过期执行的批处理大小。默认值为 0。如果设置为 0,则批处理大小为将要删除的所有已过期执行的总数。
- ignored_states¶
- 类型:
列表
- 默认值:
[]
到期策略将过滤掉并且不会删除的状态。有效值为 [[‘CANCELLED’, ‘ERROR’, ‘SUCCESS’]]
executor
- type¶
- 类型:
字符串
- 默认值:
remote- 有效值:
local, remote
执行器类型。使用 local 在引擎服务器内运行执行器。如果执行器作为单独的服务器启动以运行操作执行,请使用 remote。
- host¶
- 类型:
主机地址
- 默认值:
0.0.0.0
执行器节点的名称。它可以是任何字符串名称/标识符。它不一定是主机名、FQDN 或 IP 地址。它也与工作流文本中定义的任务的“target”属性相关。如果为任务定义了“target”,则该任务的操作将发送到“host”属性具有相同值的执行器之一。
- topic¶
- 类型:
字符串
- 默认值:
mistral_executor
执行器侦听的消息主题。
- version¶
- 类型:
字符串
- 默认值:
1.0
执行器的版本。
healthcheck¶
- path¶
- 类型:
字符串
- 默认值:
/healthcheck
响应 healthcheck 请求的路径。
警告
此选项已弃用,将来可能会被静默忽略。
- detailed¶
- 类型:
布尔值
- 默认值:
False
在响应中显示更多详细信息。安全说明:启用此选项可能会暴露有关正在监视的服务敏感详细信息。请确保验证它不会违反您的安全策略。
- backends¶
- 类型:
列表
- 默认值:
[]
可以执行 healthcheck 并将该信息作为请求的一部分返回的其他后端。
- allowed_source_ranges¶
- 类型:
列表
- 默认值:
[]
用于限制允许访问 healthcheck 信息的源 IP 的网络地址列表。来自这些网络地址之外的任何请求将被忽略。
- ignore_proxied_requests¶
- 类型:
布尔值
- 默认值:
False
忽略带有代理标头的请求。
- disable_by_file_path¶
- 类型:
字符串
- 默认值:
<None>
检查文件的存在情况,以确定应用程序是否正在端口上运行。由 DisableByFileHealthcheck 插件使用。
- disable_by_file_paths¶
- 类型:
列表
- 默认值:
[]
检查基于端口的文件是否存在情况,以确定应用程序是否正在端口上运行。期望一个“port:path”字符串列表。由 DisableByFilesPortsHealthcheck 插件使用。
- enable_by_file_paths¶
- 类型:
列表
- 默认值:
[]
检查文件的存在情况。由 EnableByFilesHealthcheck 插件使用。
- enabled¶
- 类型:
布尔值
- 默认值:
False
启用 /healthcheck 处的健康检查端点。请注意,此端点未经过身份验证。有关更多信息,请参见 https://docs.openstack.org/oslo.middleware/2025.2/reference/healthcheck_plugins.html。
keycloak_oidc¶
- auth_url¶
- 类型:
字符串
- 默认值:
<None>
Keycloak 基础 URL(例如 https://my.keycloak:8443/auth)
- certfile¶
- 类型:
字符串
- 默认值:
<None>
如果身份服务器需要客户端证书,则需要
- keyfile¶
- 类型:
字符串
- 默认值:
<None>
如果身份服务器需要客户端证书,则需要
- cafile¶
- 类型:
字符串
- 默认值:
<None>
在验证 HTTPS 连接时使用的 PEM 编码的证书颁发机构。默认值为系统 CA。
- insecure¶
- 类型:
布尔值
- 默认值:
False
如果为 True,则禁用 SSL/TLS 证书验证
- user_info_endpoint_url¶
- 类型:
字符串
- 默认值:
/realms/%s/protocol/openid-connect/userinfo
执行授权的端点
- public_cert_url¶
- 类型:
字符串
- 默认值:
/realms/%s/protocol/openid-connect/certs
获取特定领域公钥的 URL
- keycloak_iss¶
- 类型:
字符串
- 默认值:
<None>
Keycloak issuer(iss) URL。示例:https://ip_add:port/auth/realms/{‘default’: ‘the value above’}
keystone_authtoken¶
- www_authenticate_uri¶
- 类型:
字符串
- 默认值:
<None>
完整的“公共”身份 API 端点。此端点不应是“admin”端点,因为它应可供所有最终用户访问。未经身份验证的客户端将被重定向到此端点以进行身份验证。虽然此端点理想情况下应该是未版本化的,但实际客户端支持各不相同。如果您在此处使用版本化的 v2 端点,则不应与服务用户用于验证令牌的端点相同,因为普通最终用户可能无法访问该端点。
已弃用的变体¶ Group
名称
keystone_authtoken
auth_uri
- auth_uri¶
- 类型:
字符串
- 默认值:
<None>
完整的“公共”身份 API 端点。此端点不应是“admin”端点,因为它应可供所有最终用户访问。未经身份验证的客户端将被重定向到此端点以进行身份验证。虽然此端点理想情况下应该是未版本化的,但实际客户端支持各不相同。如果您在此处使用版本化的 v2 端点,则不应与服务用户用于验证令牌的端点相同,因为普通最终用户可能无法访问该端点。此选项已被弃用,以支持 www_authenticate_uri,并且将在 S 版本中删除。
警告
此选项已弃用以供删除,自 Queens 以来。其值将来可能会被默默地忽略。
- 原因:
auth_uri 选项已被弃用,以支持 www_authenticate_uri,并且将在 S 版本中删除。
- auth_version¶
- 类型:
字符串
- 默认值:
<None>
身份 API 端点的 API 版本。
- interface¶
- 类型:
字符串
- 默认值:
internal
用于身份 API 端点的接口。有效值为“public”、“internal”(默认)或“admin”。
- delay_auth_decision¶
- 类型:
布尔值
- 默认值:
False
不在中间件中处理授权请求,而是将授权决策委托给下游 WSGI 组件。
- http_connect_timeout¶
- 类型:
整数
- 默认值:
<None>
与 Identity API 服务器通信的请求超时值。
- http_request_max_retries¶
- 类型:
整数
- 默认值:
3
与 Identity API 服务器通信时,我们尝试重新连接多少次。
- cache¶
- 类型:
字符串
- 默认值:
<None>
请求环境键,其中存储了 Swift 缓存对象。当 auth_token 中间件与 Swift 缓存一起部署时,使用此选项与 swift 共享缓存后端。否则,请改用
memcached_servers选项。
- certfile¶
- 类型:
字符串
- 默认值:
<None>
如果身份服务器需要客户端证书,则需要
- keyfile¶
- 类型:
字符串
- 默认值:
<None>
如果身份服务器需要客户端证书,则需要
- cafile¶
- 类型:
字符串
- 默认值:
<None>
在验证 HTTPS 连接时使用的 PEM 编码的证书颁发机构。默认值为系统 CA。
- insecure¶
- 类型:
布尔值
- 默认值:
False
验证 HTTPS 连接。
- region_name¶
- 类型:
字符串
- 默认值:
<None>
可以找到身份服务器的区域。
- memcached_servers¶
- 类型:
列表
- 默认值:
<None>
可选地指定要用于缓存的 memcached 服务器列表。如果未定义,则令牌将改为在进程内缓存。
已弃用的变体¶ Group
名称
keystone_authtoken
memcache_servers
- token_cache_time¶
- 类型:
整数
- 默认值:
300
为了防止花费过多的精力来验证令牌,中间件将先前看到的令牌缓存配置的时间(以秒为单位)。设置为 -1 以完全禁用缓存。
- memcache_security_strategy¶
- 类型:
字符串
- 默认值:
无- 有效值:
None, MAC, ENCRYPT
(可选) 如果定义,指示是否应对缓存中的令牌数据进行身份验证或进行身份验证和加密。如果为 MAC,则令牌数据在缓存中进行身份验证(使用 HMAC)。如果为 ENCRYPT,则令牌数据在缓存中进行加密和身份验证。如果该值不是这些选项之一或为空,auth_token 将在初始化时引发异常。
- memcache_secret_key¶
- 类型:
字符串
- 默认值:
<None>
(可选,如果定义了 memcache_security_strategy 则为必需) 此字符串用于密钥派生。
- memcache_tls_enabled¶
- 类型:
布尔值
- 默认值:
False
(可选) 与缓存服务器通信时 TLS 使用的全局切换。
- memcache_tls_cafile¶
- 类型:
字符串
- 默认值:
<None>
(可选) 建立缓存服务器身份所需的 PEM 格式的串联 CA 证书的文件路径。如果 tls_enabled 为 False,则忽略此选项。
- memcache_tls_certfile¶
- 类型:
字符串
- 默认值:
<None>
(可选) 包含客户端证书以及建立证书身份所需的任何数量的 CA 证书的单个 PEM 格式的文件路径。仅当需要客户端身份验证时才需要此文件。如果 tls_enabled 为 False,则忽略此选项。
- memcache_tls_keyfile¶
- 类型:
字符串
- 默认值:
<None>
(可选) 包含客户端私钥的单个文件。否则,私钥将从 tls_certfile 中指定的 文件中获取。如果 tls_enabled 为 False,则忽略此选项。
- memcache_tls_allowed_ciphers¶
- 类型:
字符串
- 默认值:
<None>
(可选) 设置使用 TLS 上下文创建的套接字的可用密码。它应该是 OpenSSL 密码列表格式的字符串。如果未指定,将启用所有 OpenSSL 密码。
- memcache_pool_dead_retry¶
- 类型:
整数
- 默认值:
300
(可选) memcached 服务器被认为已死并在重试之前的时间(以秒为单位)。
- memcache_pool_maxsize¶
- 类型:
整数
- 默认值:
10
(可选) 到每个 memcached 服务器的最大打开连接数。
- memcache_pool_socket_timeout¶
- 类型:
整数
- 默认值:
3
(可选) 与 memcached 服务器通信的套接字超时时间(以秒为单位)。
- memcache_pool_unused_timeout¶
- 类型:
整数
- 默认值:
60
(可选) 连接在池中未使用的时间(以秒为单位),然后将其关闭。
- memcache_pool_conn_get_timeout¶
- 类型:
整数
- 默认值:
10
(可选) 操作等待从池中获取 memcached 客户端连接的时间(以秒为单位)。
- memcache_use_advanced_pool¶
- 类型:
布尔值
- 默认值:
True
(可选) 使用高级(eventlet 安全)memcached 客户端池。
- include_service_catalog¶
- 类型:
布尔值
- 默认值:
True
(可选) 指示是否设置 X-Service-Catalog 标头。如果为 False,中间件不会要求在令牌验证时获取服务目录,也不会设置 X-Service-Catalog 标头。
- enforce_token_bind¶
- 类型:
字符串
- 默认值:
permissive
用于控制令牌绑定使用和类型。可以设置为:“disabled”以不检查令牌绑定。“permissive”(默认)如果绑定类型是服务器已知的一种形式,则验证绑定信息,如果不是则忽略它。“strict”类似于“permissive”,但如果绑定类型未知,则拒绝该令牌。“required”需要任何形式的令牌绑定才能被允许。最后,是必须出现在令牌中的绑定方法的名称。
- service_token_roles¶
- 类型:
列表
- 默认值:
['service']
服务令牌中必须存在的一组角色选择。服务令牌允许请求可以使用过期的令牌,因此此检查应严格控制只有实际的服务才能发送此令牌。此处的角色作为 ANY 检查应用,因此列表中任何角色都必须存在。出于向后兼容的原因,这目前仅影响 allow_expired 检查。
- service_token_roles_required¶
- 类型:
布尔值
- 默认值:
False
出于向后兼容的原因,我们必须允许通过 service_token_roles 检查但未通过有效服务令牌。将此设置为 true 将在未来的版本中成为默认设置,如果可能,应启用它。
- service_type¶
- 类型:
字符串
- 默认值:
<None>
服务目录中出现的服务的名称或类型。这用于验证具有受限访问规则的令牌。
- memcache_sasl_enabled¶
- 类型:
布尔值
- 默认值:
False
如果 SASL_enable 为 true,则启用 SASL(简单身份验证和安全层),否则禁用。
- memcache_username¶
- 类型:
字符串
- 默认值:
''
SASL 的用户名
- memcache_password¶
- 类型:
字符串
- 默认值:
''
SASL 的用户名密码
- auth_section¶
- 类型:
未知类型
- 默认值:
<None>
从中加载插件特定选项的配置节
legacy_action_provider¶
- load_action_plugins¶
- 类型:
布尔值
- 默认值:
True
如果为 True,则启用加载在入口点“mistral.actions”中配置的操作。
- load_action_generators¶
- 类型:
布尔值
- 默认值:
True
如果为 True,则启用从在入口点“mistral.generators”中配置的操作生成器加载操作。
- only_builtin_actions¶
- 类型:
布尔值
- 默认值:
False
如果为 True,则旧版操作提供程序仅加载通过入口点“mistral.actions”提供的 Mistral 项目开箱即用的操作。此属性主要用于测试。
- allowlist¶
- 类型:
列表
- 默认值:
[]
允许从入口点“mistral.actions”加载的操作的白名单,如果为空,则允许所有操作。
- denylist¶
- 类型:
列表
- 默认值:
[]
禁止从入口点“mistral.actions”加载的操作的黑名单,白名单优先,如果为空,则允许所有操作。
notifier¶
- type¶
- 类型:
字符串
- 默认值:
remote- 有效值:
local, remote
通知器的类型。使用 local 在引擎服务器内运行通知器。如果通知器作为单独的服务器启动以处理事件,请使用 remote。
- host¶
- 类型:
字符串
- 默认值:
0.0.0.0
通知器节点的名称。它可以是任何不透明的标识符。它不一定是主机名、FQDN 或 IP 地址。
- topic¶
- 类型:
字符串
- 默认值:
mistral_notifier
通知器服务器侦听的消息主题。
- notify¶
- 类型:
列表
- 默认值:
<None>
发布通知的发布者列表。
oslo_messaging_kafka¶
- kafka_max_fetch_bytes¶
- 类型:
整数
- 默认值:
1048576
Kafka 消费者最大获取字节数
- kafka_consumer_timeout¶
- 类型:
浮点数
- 默认值:
1.0
Kafka 消费者的默认超时时间(秒)
- consumer_group¶
- 类型:
字符串
- 默认值:
oslo_messaging_consumer
Kafka 消费者的组 ID。同一组中的消费者将协调消息消费
- producer_batch_timeout¶
- 类型:
浮点数
- 默认值:
0.0
KafkaProducer 批量处理延迟的上限(秒)
- producer_batch_size¶
- 类型:
整数
- 默认值:
16384
生产者异步发送的批处理大小
- compression_codec¶
- 类型:
字符串
- 默认值:
none- 有效值:
none, gzip, snappy, lz4, zstd
生产者生成的所有数据的压缩编解码器。如果未设置,则不使用压缩。请注意,允许的值取决于 kafka 版本
- enable_auto_commit¶
- 类型:
布尔值
- 默认值:
False
启用异步消费者提交
- max_poll_records¶
- 类型:
整数
- 默认值:
500
在轮询调用中返回的最大记录数
- security_protocol¶
- 类型:
字符串
- 默认值:
PLAINTEXT- 有效值:
PLAINTEXT, SASL_PLAINTEXT, SSL, SASL_SSL
用于与代理通信的协议
- sasl_mechanism¶
- 类型:
字符串
- 默认值:
PLAIN
安全协议为 SASL 时的机制
- ssl_cafile¶
- 类型:
字符串
- 默认值:
''
用于验证服务器证书的 CA 证书 PEM 文件
- ssl_client_cert_file¶
- 类型:
字符串
- 默认值:
''
用于身份验证的客户端证书 PEM 文件。
- ssl_client_key_file¶
- 类型:
字符串
- 默认值:
''
用于身份验证的客户端密钥 PEM 文件。
- ssl_client_key_password¶
- 类型:
字符串
- 默认值:
''
用于身份验证的客户端密钥密码文件。
oslo_messaging_notifications¶
- driver¶
- 类型:
多值
- 默认值:
''
处理发送通知的驱动程序。可能的值是 messaging、messagingv2、routing、log、test、noop
- transport_url¶
- 类型:
字符串
- 默认值:
<None>
用于通知的消息驱动程序的 URL。如果未设置,我们将回退到用于 RPC 的相同配置。
- topics¶
- 类型:
列表
- 默认值:
['notifications']
用于 OpenStack 通知 AMQP 主题。
- retry¶
- 类型:
整数
- 默认值:
-1
由于可恢复错误而未能传递的通知消息重试的最大次数。0 - 不重试,-1 - 无限
oslo_messaging_rabbit¶
- amqp_durable_queues¶
- 类型:
布尔值
- 默认值:
False
在 AMQP 中使用持久队列。如果启用了 rabbit_quorum_queue,则队列将是持久的,并且此值将被忽略。
- amqp_auto_delete¶
- 类型:
布尔值
- 默认值:
False
在 AMQP 中自动删除队列。
- rpc_conn_pool_size¶
- 类型:
整数
- 默认值:
30- 最小值:
1
RPC 连接池的大小。
- conn_pool_min_size¶
- 类型:
整数
- 默认值:
2
连接过期策略的池大小限制
- conn_pool_ttl¶
- 类型:
整数
- 默认值:
1200
池中空闲连接的生存时间(秒)
- ssl¶
- 类型:
布尔值
- 默认值:
False
通过 SSL 连接。
- ssl_version¶
- 类型:
字符串
- 默认值:
''
要使用的 SSL 版本(仅在启用 SSL 时有效)。有效值为 TLSv1 和 SSLv23。某些发行版上可能可用 SSLv2、SSLv3、TLSv1_1 和 TLSv1_2。
- ssl_key_file¶
- 类型:
字符串
- 默认值:
''
SSL 密钥文件(仅在启用 SSL 时有效)。
- ssl_cert_file¶
- 类型:
字符串
- 默认值:
''
SSL 证书文件(仅在启用 SSL 时有效)。
- ssl_ca_file¶
- 类型:
字符串
- 默认值:
''
用于验证服务器证书的 SSL 证书颁发机构文件(仅在启用 SSL 时有效)。
- ssl_enforce_fips_mode¶
- 类型:
布尔值
- 默认值:
False
全局切换以强制执行 OpenSSL FIPS 模式。此功能需要 Python 支持。这在所有环境中的 Python 3.9 中可用,并且可能已回溯到旧版本的 Python。如果使用的 Python 可执行文件不支持 OpenSSL FIPS 模式,将引发异常。
- heartbeat_in_pthread¶
- 类型:
布尔值
- 默认值:
False
(已弃用) 建议不再使用此选项。默认情况下,通过本机 python 线程运行健康检查心跳线程。如果此选项等于 False,则心跳将继承父进程的执行模型。例如,如果父进程通过使用 eventlet/greenlet 猴子补丁了 stdlib,则心跳将通过绿色线程运行。仅当使用 eventlet 作为核心服务框架的服务时,才应将此选项设置为 True。
警告
此选项已弃用,将来可能会被静默忽略。
- 原因:
该选项与即将删除的 Eventlet 相关。此外,这从未像预期那样与使用 eventlet 作为核心服务框架的服务一起工作。
- kombu_reconnect_delay¶
- 类型:
浮点数
- 默认值:
1.0- 最小值:
0.0
- 最大值:
4.5
响应 AMQP 消费者取消通知后重新连接的等待时间(秒)。
- kombu_reconnect_splay¶
- 类型:
浮点数
- 默认值:
0.0- 最小值:
0.0
响应 AMQP 消费者取消通知后重新连接时随机等待时间。
- kombu_compression¶
- 类型:
字符串
- 默认值:
<None>
实验性:可能的值是:gzip、bz2。如果未设置,则不使用压缩。此选项可能在未来版本中不可用。
- kombu_missing_consumer_retry_timeout¶
- 类型:
整数
- 默认值:
60
在放弃向其发送回复之前等待缺失客户端的时间。此值不应大于 rpc_response_timeout。
已弃用的变体¶ Group
名称
oslo_messaging_rabbit
kombu_reconnect_timeout
- kombu_failover_strategy¶
- 类型:
字符串
- 默认值:
round-robin- 有效值:
round-robin, shuffle
确定在当前连接的 RabbitMQ 节点不可用时如何选择下一个 RabbitMQ 节点。仅当配置中提供多个 RabbitMQ 节点时才生效。
- rabbit_login_method¶
- 类型:
字符串
- 默认值:
AMQPLAIN- 有效值:
PLAIN, AMQPLAIN, EXTERNAL, RABBIT-CR-DEMO
RabbitMQ 登录方法。
- rabbit_retry_interval¶
- 类型:
整数
- 默认值:
1- 最小值:
1
与 RabbitMQ 重新连接的频率。
- rabbit_retry_backoff¶
- 类型:
整数
- 默认值:
2- 最小值:
0
在连接到 RabbitMQ 时重试之间的回退时间。
- rabbit_interval_max¶
- 类型:
整数
- 默认值:
30- 最小值:
1
RabbitMQ 连接重试的最大间隔。
- rabbit_ha_queues¶
- 类型:
布尔值
- 默认值:
False
尝试在 RabbitMQ 中使用 HA 队列(x-ha-policy:all)。如果您更改此选项,则必须擦除 RabbitMQ 数据库。在 RabbitMQ 3.0 中,队列镜像不再由声明队列时的 x-ha-policy 参数控制。如果您只想确保所有队列(不包括具有自动生成名称的队列)在所有节点上镜像,请运行:“rabbitmqctl set_policy HA ‘^(?!amq.).*’ ‘{“ha-mode”: “all”}’ “
- rabbit_quorum_queue¶
- 类型:
布尔值
- 默认值:
False
在 RabbitMQ 中使用 quorum 队列(x-queue-type:quorum)。quorum 队列是 RabbitMQ 的一种现代队列类型,它实现了一个基于 Raft 共识算法的持久、复制的 FIFO 队列。它从 RabbitMQ 3.8.0 开始可用。如果设置此选项,它将与 HA 队列(
rabbit_ha_queues)即镜像队列冲突,换句话说,应禁用 HA 队列。Quorum 队列默认情况下也是持久的,因此启用此选项时会忽略 amqp_durable_queues 选项。
- rabbit_transient_quorum_queue¶
- 类型:
布尔值
- 默认值:
False
在 RabbitMQ 中为瞬态队列使用 quorum 队列。启用此选项将确保这些队列也使用 quorum 类型的 rabbit 队列,这些队列默认情况下是 HA。
- rabbit_quorum_delivery_limit¶
- 类型:
整数
- 默认值:
0
每次将消息重新传递给消费者时,都会递增计数器。一旦重新传递计数超过传递限制,该消息将被丢弃或死信(如果配置了 DLX 交换机)。仅当启用 rabbit_quorum_queue 时使用,默认值为 0,表示不设置限制。
- rabbit_quorum_max_memory_length¶
- 类型:
整数
- 默认值:
0
默认情况下,所有消息都保存在内存中。如果 quorum 队列增长,可能会给集群带来内存压力。此选项可以限制 quorum 队列中的消息数量。仅当启用 rabbit_quorum_queue 时使用,默认值为 0,表示不设置限制。
- rabbit_quorum_max_memory_bytes¶
- 类型:
整数
- 默认值:
0
默认情况下,所有消息都保存在内存中。如果 quorum 队列增长,可能会给集群带来内存压力。此选项可以限制 quorum 队列使用的内存字节数。仅在启用 rabbit_quorum_queue 时使用,默认值为 0,表示不设置限制。
- rabbit_transient_queues_ttl¶
- 类型:
整数
- 默认值:
1800- 最小值:
0
表示队列 TTL(x-expires)的秒数(正整数)。对于达到 TTL 持续时间的未使用的队列,将自动删除。该参数仅影响回复和扇出队列。将值设置为 0 将禁用 x-expires。如果这样做,请确保您拥有一个 rabbitmq 策略来删除队列,否则您的部署会随着时间的推移创建无限数量的队列。如果将 rabbit_stream_fanout 设置为 True,此选项将控制扇出队列中消息的数据保留策略(x-max-age),而不是队列持续时间本身。因此,一旦达到 TTL,流队列中最旧的数据将被丢弃。将设置为 0 将禁用流的 x-max-age,从而使流无限增长并填满磁盘空间
- rabbit_qos_prefetch_count¶
- 类型:
整数
- 默认值:
0
指定要预取的消息数量。设置为零允许无限数量的消息。
- heartbeat_timeout_threshold¶
- 类型:
整数
- 默认值:
60
如果心跳的 keep-alive 失败,则 Rabbit broker 被认为已关闭的时间(秒)。(0 禁用心跳)。
- heartbeat_rate¶
- 类型:
整数
- 默认值:
3
在 heartbeat_timeout_threshold 期间检查心跳的频率。
- direct_mandatory_flag¶
- 类型:
布尔值
- 默认值:
True
(已弃用)启用/禁用直接发送的 RabbitMQ mandatory 标志。直接发送用作回复,因此如果客户端队列不存在,则会引发 MessageUndeliverable 异常。MessageUndeliverable 异常将用于超时循环,以便让发送者有机会恢复。此标志已弃用,并且不再可以禁用此功能
警告
此选项已弃用,将来可能会被静默忽略。
- 原因:
Mandatory 标志不再可以禁用。
- enable_cancel_on_failover¶
- 类型:
布尔值
- 默认值:
False
启用 x-cancel-on-ha-failover 标志,以便 rabbitmq 服务器在队列关闭时取消并通知消费者
- use_queue_manager¶
- 类型:
布尔值
- 默认值:
False
我们应该使用一致的队列名称还是随机名称
- hostname¶
- 类型:
字符串
- 默认值:
node1.example.com
此选项有一个示例默认值,这意味着其实际默认值可能与上述文档值不同。
队列管理器使用的主机名。默认值为 socket.gethostname() 返回的值。
- processname¶
- 类型:
字符串
- 默认值:
nova-api
此选项有一个示例默认值,这意味着其实际默认值可能与上述文档值不同。
队列管理器使用的进程名称
- rabbit_stream_fanout¶
- 类型:
布尔值
- 默认值:
False
在 RabbitMQ 中使用流队列(x-queue-type: stream)。流是 RabbitMQ 3.9.0 及更高版本中一种新的持久化和复制的数据结构(“队列类型”),它模拟了一个仅追加日志,具有非破坏性消费者语义。如果设置此选项,将用单个流队列替换所有扇出队列。
oslo_middleware¶
- enable_proxy_headers_parsing¶
- 类型:
布尔值
- 默认值:
False
应用程序是否位于代理之后。这决定了中间件是否应该解析标头。
oslo_policy¶
- enforce_scope¶
- 类型:
布尔值
- 默认值:
True
此选项控制在评估策略时是否强制执行范围。如果为
True,则将请求中使用的令牌的范围与正在强制执行的策略的scope_types进行比较。如果范围不匹配,将引发InvalidScope异常。如果为False,将记录一条消息,告知操作员策略正在使用不匹配的范围调用。警告
此选项已弃用,将来可能会被静默忽略。
- 原因:
此配置是临时添加的,旨在促进顺利过渡到新的 RBAC。OpenStack 将始终强制执行范围检查。此配置选项已被弃用,将在 2025.2 版本周期中删除。
- enforce_new_defaults¶
- 类型:
布尔值
- 默认值:
True
此选项控制在评估策略时是否使用旧的弃用默认值。如果为
True,则不会评估旧的弃用默认值。这意味着,如果任何现有的令牌允许使用旧的默认值,但对于新的默认值不允许,则将被禁止。鼓励启用此标志以及enforce_scope标志,以便同时获得新默认值和scope_type的好处。如果为False,则逻辑上将弃用策略检查字符串与新的策略检查字符串进行 OR 运算,从而允许在具有新策略的发布版本之间实现平滑的升级体验,这是默认行为。
- policy_file¶
- 类型:
字符串
- 默认值:
policy.yaml
将角色映射到给定服务权限的文件的相对或绝对路径。相对路径必须相对于设置此选项的配置文件指定。
- policy_default_rule¶
- 类型:
字符串
- 默认值:
default
默认规则。在找不到请求的规则时强制执行。
- policy_dirs¶
- 类型:
多值
- 默认值:
policy.d
存储策略配置文件目录。它们可以相对于 config_dir 选项定义的搜索路径中的任何目录,也可以是绝对路径。要搜索这些目录,必须存在 policy_file 中定义的的文件。忽略丢失或空的目录。
- remote_content_type¶
- 类型:
字符串
- 默认值:
application/x-www-form-urlencoded- 有效值:
application/x-www-form-urlencoded, application/json
用于基于 REST 的策略检查发送和接收数据的 Content Type
- remote_ssl_verify_server_crt¶
- 类型:
布尔值
- 默认值:
False
基于 REST 的策略检查的服务器身份验证
- remote_ssl_ca_crt_file¶
- 类型:
字符串
- 默认值:
<None>
基于 REST 的策略检查的 ca 证书文件的绝对路径
- remote_ssl_client_crt_file¶
- 类型:
字符串
- 默认值:
<None>
基于 REST 的策略检查的客户端证书的绝对路径
- remote_ssl_client_key_file¶
- 类型:
字符串
- 默认值:
<None>
基于 REST 的策略检查的客户端密钥文件的绝对路径
- remote_timeout¶
- 类型:
浮点数
- 默认值:
60- 最小值:
0
基于 REST 的策略检查的超时时间(秒)
pecan¶
- root¶
- 类型:
字符串
- 默认值:
mistral.api.controllers.root.RootController
Pecan 根控制器
- modules¶
- 类型:
列表
- 默认值:
['mistral.api']
Pecan 在其中搜索应用程序的模块列表。
- debug¶
- 类型:
布尔值
- 默认值:
False
启用在浏览器中显示回溯并在开发期间交互式调试的能力。
- auth_enable¶
- 类型:
布尔值
- 默认值:
True
启用 Pecan 中的用户身份验证。
profiler¶
- enabled¶
- 类型:
布尔值
- 默认值:
False
启用此节点上所有服务的分析。
默认值为 False(完全禁用分析功能)。
可能的值
True:启用该功能
False:禁用该功能。无法通过此项目操作启动分析。如果分析由另一个项目触发,则此项目部分将为空。
已弃用的变体¶ Group
名称
profiler
profiler_enabled
- trace_sqlalchemy¶
- 类型:
布尔值
- 默认值:
False
在服务中启用 SQL 请求分析。
默认值为 False(SQL 请求不会被跟踪)。
可能的值
True:启用 SQL 请求分析。每个 SQL 查询都将成为跟踪的一部分,并可以分析花费的时间。
False:禁用 SQL 请求分析。花费的时间仅在较高层次的操作上显示。无法以这种方式分析单个 SQL 查询。
- trace_requests¶
- 类型:
布尔值
- 默认值:
False
启用 python requests 包分析。
支持的驱动程序:jaeger+otlp
默认值为 False。
可能的值
True:启用请求分析。
False:禁用请求分析。
- hmac_keys¶
- 类型:
字符串
- 默认值:
SECRET_KEY
用于加密性能分析上下文数据的密钥。
此字符串值应具有以下格式:<key1>[,<key2>,…<keyn>],其中每个密钥都是一些随机字符串。通过 REST API 触发分析的用户必须在 REST API 调用中设置这些密钥之一,才能将此节点的分析结果包含到该特定项目中。
应设置“enabled”标志和“hmac_keys”配置选项才能启用分析。此外,为了生成所有服务之间的正确分析信息,至少有一个密钥需要在 OpenStack 项目之间保持一致。这确保了客户端可以使用它来生成包含所有可能资源的跟踪。
- connection_string¶
- 类型:
字符串
- 默认值:
messaging://
通知后端连接字符串。
默认值为
messaging://,它将通知程序设置为 oslo_messaging。可能的示例值
messaging://- 使用 oslo_messaging 驱动程序发送跨度。redis://127.0.0.1:6379- 使用 redis 驱动程序发送跨度。mongodb://127.0.0.1:27017- 使用 mongodb 驱动程序发送跨度。elasticsearch://127.0.0.1:9200- 使用 elasticsearch 驱动程序发送跨度。jaeger://127.0.0.1:6831- 使用 jaeger 跟踪作为驱动程序发送跨度。
- es_doc_type¶
- 类型:
字符串
- 默认值:
notification
在 elasticsearch 中进行通知索引的文档类型。
- es_scroll_time¶
- 类型:
字符串
- 默认值:
2m
此参数是一个时间值参数(例如:es_scroll_time=2m),指示参与搜索的节点将保持相关资源多长时间,以便继续并支持它。
- es_scroll_size¶
- 类型:
整数
- 默认值:
10000
Elasticsearch 将大型请求拆分为批处理。此参数定义每个批处理的最大大小(例如:es_scroll_size=10000)。
- socket_timeout¶
- 类型:
浮点数
- 默认值:
0.1
Redissentinel 在连接上提供超时选项。此参数定义该超时(例如:socket_timeout=0.1)。
- sentinel_service_name¶
- 类型:
字符串
- 默认值:
mymaster
Redissentinel 使用服务名称来标识主 redis 服务。此参数定义该名称(例如:
sentinal_service_name=mymaster)。
- filter_error_trace¶
- 类型:
布尔值
- 默认值:
False
启用将包含错误/异常的跟踪过滤到单独的位置。
默认值为 False。
可能的值
True:启用过滤包含错误/异常的跟踪。
False:禁用过滤器。
- profiler_log_name¶
- 类型:
字符串
- 默认值:
profiler_trace
用于 osprofiler 跟踪输出的日志记录器名称。
scheduler¶
- fixed_delay¶
- 类型:
浮点数
- 默认值:
1- 最小值:
0.1
调度器迭代之间延迟的固定部分,以秒为单位。总延迟定义为“fixed_delay”和受“random_delay”限制的随机延迟之和。
- random_delay¶
- 类型:
浮点数
- 默认值:
0- 最小值:
0
调度器迭代之间随机部分的延迟的最大值,以秒为单位。总延迟定义为“fixed_delay”和受此属性限制的随机延迟之和。
- batch_size¶
- 类型:
整数
- 默认值:
<None>- 最小值:
1
在调度器迭代期间将选择的延迟调用的最大数量。如果此属性等于 None,则对选择没有限制。
- captured_job_timeout¶
- 类型:
浮点数
- 默认值:
30- 最小值:
1
定义捕获用于处理的计划作业在其他调度器再次捕获它之前的时间(以秒为单位)。此选项是为了防止调度器实例捕获作业并在处理失败时,导致该作业永远无法再次处理,因为它被标记为已捕获的情况。
- pickup_job_after¶
- 类型:
浮点数
- 默认值:
60- 最小值:
1
调度器在其他调度器实例处理计划作业之前本地处理计划作业所给的时间段。例如,作业需要在 12:00:00 运行。当调度器开始处理它时,它有 60 秒(或其他配置值)来完成作业。如果调度器在此期间内未完成作业,则很可能调度器进程崩溃了。在这种情况下,另一个调度器实例将从作业存储中获取它,但不会早于 12:01:00 并尝试处理它。
ssl¶
- ca_file¶
- 类型:
字符串
- 默认值:
<None>
用于验证连接客户端的 CA 证书文件。
警告
此选项已弃用,将来可能会被静默忽略。
- 原因:
‘ca_file’ 选项已弃用,将在未来的版本中删除。
- cert_file¶
- 类型:
字符串
- 默认值:
<None>
在安全启动服务器时使用的证书文件。
警告
此选项已弃用,将来可能会被静默忽略。
- 原因:
‘cert_file’ 选项已弃用,将在未来的版本中删除。
- key_file¶
- 类型:
字符串
- 默认值:
<None>
在安全启动服务器时使用的私钥文件。
警告
此选项已弃用,将来可能会被静默忽略。
- 原因:
‘key_file’ 选项已弃用,将在未来的版本中删除。
- version¶
- 类型:
字符串
- 默认值:
<None>
要使用的 SSL 版本(仅在启用 SSL 时有效)。有效值为 TLSv1 和 SSLv23。某些发行版上可能可用 SSLv2、SSLv3、TLSv1_1 和 TLSv1_2。
警告
此选项已弃用,将来可能会被静默忽略。
- 原因:
‘version’ 选项已弃用,将在未来的版本中删除。
- ciphers¶
- 类型:
字符串
- 默认值:
<None>
设置可用的密码列表。该值应为 OpenSSL 密码列表格式的字符串。
警告
此选项已弃用,将来可能会被静默忽略。
- 原因:
‘ciphers’ 选项已弃用,将在未来的版本中删除。
yaql¶
- limit_iterators¶
- 类型:
整数
- 默认值:
-1- 最小值:
-1
将迭代器限制为给定的元素数量。如果设置,则每次函数声明其参数为迭代器时,都会修改该迭代器以不超过给定的项目数量。如果未设置(或设置为 -1),则结果数据允许包含无限迭代器,如果结果要被序列化,则会导致错误。
- memory_quota¶
- 类型:
整数
- 默认值:
-1- 最小值:
-1
表达式(或其任何部分)生成的所有数据使用的内存配额(以字节为单位)。-1 表示没有限制。
- convert_input_data¶
- 类型:
布尔值
- 默认值:
True
启用 YAQL 表达式的输入数据转换。如果设置为 True,YAQL 将可变数据结构(列表、字典、集合)转换为其不可变版本。这将允许它们与需要可哈希类型的一些构造一起工作,即使元素不可哈希。例如,可以将字典放入集合。虽然这与此类集合的基本原则相冲突(例如,我们不能仅仅因为否则它将无法正常工作而将不可哈希的类型放入集合中),但 YAQL 库本身允许这样做。禁用输入数据转换如果表达式的输入数据很大,可以显着提高性能。
- convert_output_data¶
- 类型:
布尔值
- 默认值:
True
启用 YAQL 表达式的输出数据转换。如果设置为 False,则 YAQL 可能会生成不可 JSON 序列化的输出。例如,如果表达式在末尾包含“.toSet()”将列表转换为集合。但这并不意味着不能使用这些函数,它们仍然可以在表达式中使用,但用户必须记住结果的类型是什么,而如果此属性的值为 True,YAQL 将结果转换为与 JSON 兼容的类型。
- convert_tuples_to_lists¶
- 类型:
布尔值
- 默认值:
True
如果设置为 True,yaql 将表达式结果中的所有元组转换为列表。它仅在“convert_output_data”设置为 True 时有效。
- convert_sets_to_lists¶
- 类型:
布尔值
- 默认值:
False
如果设置为 True,yaql 将表达式结果中的所有集合转换为列表。否则,生成的输出可能包含不可 JSON 序列化的集合。它仅在“convert_output_data”设置为 True 时有效。
- iterable_dicts¶
- 类型:
布尔值
- 默认值:
False
如果设置为 True,则认为字典是可迭代的,并且对字典进行迭代会产生它们的键(如 Python 和 yaql 0.2 中)。
- keyword_operator¶
- 类型:
字符串
- 默认值:
=>
允许配置关键字/映射符号。如果提供空字符串,则可以完全禁用传递命名参数的能力。
- allow_delegates¶
- 类型:
布尔值
- 默认值:
False
启用或禁用委托表达式解析。