第 3 章 Glance


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

3.1. glance-api.conf

本节包含 /etc/glance/glance-api.conf 文件的选项。

3.1.1. DEFAULT

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

.

配置选项 = 默认值类型Description

allow_additional_image_properties = True

布尔值

允许用户向镜像添加额外的/自定义属性。

Glance 定义一组标准的属性(在其架构中),它们出现在每个镜像上。这些属性也称为基本属性。除了这些属性外,Glance 还允许用户添加自定义属性到镜像。它们称为 其他属性

默认情况下,此配置选项设置为 True,用户可以添加额外的属性。可添加到镜像的额外属性数量可以通过 image_property_quota 配置选项来控制。

可能的值:

  • True
  • False

相关选项:

  • image_property_quota

弃用自:U ssuri

原因: 此选项冗余。通过 image_property_quota 配置选项控制自定义镜像属性使用。这个选项计划在 Victoria 开发周期中删除。

allow_anonymous_access = False

布尔值

允许对未经身份验证的用户进行有限访问。

分配一个布尔值来确定未经身份验证的用户的 API 访问权限。当设置为 False 时,未经身份验证的用户可以访问 API。当设置为 True 时,未经身份验证的用户可以访问具有只读权限的 API。但是,只有在使用 ContextMiddleware 时才适用。

可能的值:

  • True
  • False

相关选项:

  • None

api_limit_max = 1000

整数值

请求可返回的最大结果数。

limit_param_default 的帮助文本中所述,一些请求可能会返回多个结果。要返回的结果数量由请求中的 limit 参数或 limit_param_default 配置选项管理。在这两种情况下,的值都不能大于此配置选项定义的绝对最大值。大于这个值的任何内容都会舍入到此处定义的最大值。

注意

把它设置为非常大的值可能会减慢数据库查询并增加响应时间。把它设置为非常低的值可能会导致用户体验不佳。

可能的值:

  • 任何正整数

相关选项:

  • limit_param_default

backlog = 4096

整数值

设置传入连接请求的数量。

提供正整数值来限制积压队列中的请求数。默认队列大小为 4096。

在与服务器建立连接前,会排队到 TCP 侦听器套接字的传入连接。为 TCP 套接字设置积压可确保传入流量的有限队列大小。

可能的值:

  • 正整数

相关选项:

  • None

bind_host = 0.0.0.0

主机地址值

将 glance 服务器绑定到的 IP 地址。

提供将 glance 服务器绑定到的 IP 地址。默认值为 0.0.0.0

编辑这个选项,使服务器能够侦听网卡中的一个特定的 IP 地址。这有助于为服务器选择特定的网络接口。

可能的值:

  • 有效的 IPv4 地址
  • 有效的 IPv6 地址

相关选项:

  • None

bind_port = None

端口值

服务器将侦听的端口号。

提供将服务器套接字绑定到的有效端口号。然后,此端口设置为识别进程并转发到达服务器的网络数据包。API 服务器的默认 bind_port 值为 9292,registry 服务器的默认 bind_port 值为 9191。

可能的值:

  • 有效端口号(0 到 65535)

相关选项:

  • None

client_socket_timeout = 900

整数值

客户端连接套接字操作的超时。

提供有效的整数值,代表在进入连接关闭前等待的时间(以秒为单位)。默认值为 900 秒。

值为零表示等待。

可能的值:

  • 正整数

相关选项:

  • None

conn_pool_min_size = 2

整数值

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

conn_pool_ttl = 1200

整数值

池中闲置连接的生存时间

control_exchange = openstack

字符串值

主题范围的默认交换。可以被 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,则忽略这个选项。

default_publisher_id = image.localhost

字符串值

用于传出 Glance 通知的默认 publisher_id。

这是通知驱动程序将用于识别源自 Glance 服务的事件的消息的值。通常,这是生成消息的实例的主机名。

可能的值:

  • 任何合理的实例标识符,例如:image.host1

相关选项:

  • None

delayed_delete = False

布尔值

打开/关闭延迟删除。

通常,当镜像被删除时,glance-api 服务会将镜像置于 已删除 状态,并同时删除其数据。延迟删除是 Glance 中的一项功能,可延迟实际删除镜像数据直到后续时间(根据配置选项 scrub_time决定)。打开延迟删除时,glance-api 服务会在删除时将镜像放入 pending_delete 状态,并将镜像数据保留在存储后端中,以便稍后删除。在成功删除镜像数据时,镜像清理 网络会将镜像移至已删除 状态。

注意

打开延迟删除时,镜像清理网络 MUST 将作为定期运行,以防止后端存储使用不必要的使用量。

可能的值:

  • True
  • False

相关选项:

  • scrub_time
  • wakeup_time
  • scrub_pool_size

digest_algorithm = sha256

字符串值

用于数字签名的摘要算法。

提供字符串值,代表用于生成数字签名的摘要算法。默认情况下使用 sha256

要获取平台上 OpenSSL 版本支持的可用算法列表,请运行命令: openssl list-message-digest-algorithms。示例是 sha1sha256sha512

注意

digest_algorithm 与 Glance 的镜像签名和验证无关。它仅用于将通用唯一标识符(UUID)作为证书文件验证的一部分签名。

可能的值:

  • OpenSSL 消息摘要算法标识符

关系选项:

  • None

disabled_notifications = []

列出值

要禁用的通知列表。

指定不应发出的通知列表。可将通知类型指定为禁用单个事件通知,或者作为通知组前缀,以禁用组内的所有事件通知。

可能的值:要禁用的独立通知类型或通知组的逗号分隔列表。目前支持的组:

  • image
  • image.member
  • task
  • metadef_namespace
  • metadef_object
  • metadef_property
  • metadef_resource_type
  • metadef_tag

    For a complete listing and description of each event refer to:
    https://docs.openstack.org/glance/latest/admin/notifications.html
    The values must be specified as: <group_name>.<event_name>
    For example: image.create,task.success,metadef_tag

相关选项:

  • None

enabled_backends = None

字典值

Key:Value 对存储标识符和存储类型。如果有多个后端,则应使用逗号分隔。

enabled_import_methods = ['glance-direct', 'web-download', 'copy-image']

列出值

启用的镜像导入方法列表

'glance-direct', 'copy-image' and 'web-download' are enabled by default.
'glance-download' is available, but requires federated deployments.
    Related options:
** [DEFAULT]/node_staging_uri

executor_thread_pool_size = 64

整数值

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

fatal_deprecations = False

布尔值

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

hashing_algorithm = sha512

字符串值

用于计算 os_hash_value 属性的安全哈希算法。

此选项配置 Glance"multihash",它由两个镜像属性组成: os_hash_algoos_hash_valueos_hash_algo 将由此配置选项的值填充,在算法应用到上传或导入的镜像数据时,os_hash_value 将由 hexdigest 填充。

该值必须是由 python hashlib 库识别的有效安全哈希算法名称。您可以通过检查 Glance 安装中使用的库版本的 hashlib.algorithms_available 数据成员来确定它们。然而,为了实现互操作性,我们建议您使用由 hashlib.algorithms_guaranteed 数据成员提供的安全散列名称集,因为所有平台上的 hashlib 库都可以保证支持这些算法。因此,在本地使用 hashlib 的任何镜像使用者都应该能够验证镜像的 os_hash_value

sha512 的默认值是一个性能安全哈希算法。

如果此选项配置错误,则任何存储镜像数据的尝试都将失败。因此,我们建议使用默认值。

可能的值:

  • Python hashlib 库识别的任何安全哈希算法名称

相关选项:

  • None

http_keepalive = True

布尔值

为 HTTP over TCP 设置 keep alive 选项。

提供布尔值来确定保留数据包的发送。如果设置为 False,服务器会返回标头 "Connection: close"。如果设置为 True,服务器在其响应中返回一个"Connection: Keep-Alive"。这可为 HTTP 对话保留相同的 TCP 连接,而不是为每个新请求打开新连接。

如果需要在收到响应后明确关闭客户端套接字连接,并且客户端成功读取,则必须将此选项设置为 False

可能的值:

  • True
  • False

相关选项:

  • None

image_cache_dir = None

字符串值

镜像缓存的基础目录。

这是缓存镜像数据并从其中提供的位置。所有缓存的镜像都直接存储在此目录下。此目录还包含三个子目录,即 不完整无效 和队列

incomplete 子目录是下载镜像的暂存区域。镜像首先下载到此目录。镜像下载成功后,它会被移到基础目录中。但是,如果下载失败,部分下载的镜像文件将移到 无效的 子目录中。

queue 的子目录用于排队镜像以进行下载。这主要由 cache-prefetcher 使用,它可以作为定期任务(如 cache-pruner 和 cache-cleaner)来缓存其使用前的镜像。在收到缓存镜像的请求时,Glance 将镜像 id 作为文件名位于 'queue 目录中。在运行时,cache-prefetcher 会轮询 队列 目录中的文件,并根据创建的顺序开始下载它们。下载成功后,将从 队列 目录中删除零大小文件。如果下载失败,零大小的文件将保留,它会在下次缓存前运行。

可能的值:

  • 有效路径

相关选项:

  • image_cache_sqlite_db

image_cache_driver = sqlite

字符串值

用于镜像缓存管理的驱动程序。

此配置选项提供在不同的镜像缓存驱动程序之间选择的灵活性。镜像缓存驱动程序负责提供镜像缓存的基本功能,如从缓存中写入/读取镜像、跟踪缓存时间和使用缓存的镜像、提供缓存镜像列表、获取缓存的大小、用于缓存和清理缓存等。

驱动程序的基本功能在基础类 glance.image_cache.drivers.base.Driver 中定义。所有 image-cache 驱动程序(存在和潜在)必须实施此接口。目前可用的驱动程序是 sqlitexattr。这些驱动程序主要有所不同,它们存储有关缓存的镜像的信息:

  • sqlite 驱动程序使用 sqlite 数据库(位于本地每个 glance 节点上)来跟踪缓存镜像的使用。
  • xattr 驱动程序使用文件的扩展属性来存储此信息。它还需要一个文件系统,以便在 访问时 对文件设置时间。

可能的值:

  • SQLite
  • xattr

相关选项:

  • None

image_cache_max_size = 10737418240

整数值

缓存大小上限(以字节为单位),这会清理镜像缓存。

注意

这只是要操作的 cache-pruner 的阈值。它不是镜像缓存永远不会增长的硬限制。实际上,根据 cache-pruner 运行的频率以及缓存填充的速度,镜像缓存可能会超过此处指定的大小。因此,必须小心地调度 cache-pruner 并设置这个限制。

Glance 在下载镜像时缓存镜像。因此,当下载数量增加时,镜像缓存的大小会随时间增长。要让缓存大小变得无法管理,建议作为定期任务运行 cache-pruner。当缓存修剪器启动时,它会比较当前镜像缓存的大小,并在镜像缓存增长超过此处指定的大小时触发清理。清理后,缓存的大小应小于或等于此处指定的大小。

可能的值:

  • 任何非负整数

相关选项:

  • None

image_cache_sqlite_db = cache.db

字符串值

用于镜像缓存管理的 sqlite 文件的相对路径。

这是对 sqlite 文件数据库的相对路径,用于跟踪镜像缓存的年龄和用量统计。该路径相对于镜像缓存基础目录,由配置选项 image_cache_dir 指定。

这是仅包含一个表的轻量级数据库。

可能的值:

  • sqlite 文件数据库的有效相对路径

相关选项:

  • image_cache_dir

image_cache_stall_time = 86400

整数值

不完整的镜像保留在缓存中的时间(以秒为单位)。

不完整的镜像是下载正在进行的镜像。详情请查看配置选项 image_cache_dir 描述。有时,由于各种原因,下载可能会挂起,并不完整下载的镜像保留在 不完整的 目录中。此配置选项针对不完整的镜像在清理前应保留在 不完整的 时间内设置一个时间限制。当不完整的镜像花费的时间超过此处指定的时间后,将在下次运行时通过 cache-cleaner 删除。

建议您在 Glance API 节点上运行 cache-cleaner 作为定期任务,以便从占用磁盘空间时保留不完整的镜像。

可能的值:

  • 任何非负整数

相关选项:

  • None

image_location_quota = 10

整数值

镜像允许的最大位置数。

任何负值都解释为无限。

相关选项:

  • None

image_member_quota = 128

整数值

每个镜像的最大镜像成员数量。

这限制了镜像可以被共享的最大用户。任何负值都解释为无限。

相关选项:

  • None

image_property_quota = 128

整数值

镜像允许的最大属性数。

这对镜像可以具有的额外属性数量强制实施上限。任何负值都解释为无限。

注意

如果禁用附加属性,则这不会影响。请参阅 allow_additional_image_properties

相关选项:

  • allow_additional_image_properties

image_size_cap = 1099511627776

整数值

用户可以上传的镜像的最大大小(以字节为单位)。

镜像上传大于此处提到的大小,会导致镜像创建失败。此配置选项默认为 1099511627776 字节(1 TiB)。

备注:

  • 这个值只有在仔细考虑后才会增加,且必须设置小于或等于 8 EiB (9223372036854775808)。
  • 此值必须在仔细考虑后端存储容量时设置。把它设置为非常低的值可能会导致大量镜像失败。另外,将其设置为非常大的值可能会导致存储更快地消耗。因此,这必须根据所创建和存储容量的性质来设置。

可能的值:

  • 任何小于或等于 9223372036854775808 的正数

image_tag_quota = 128

整数值

镜像上允许的最大标签数。

任何负值都解释为无限。

相关选项:

  • None

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

字符串值

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

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

字符串值

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

limit_param_default = 25

整数值

返回请求的默认结果数。

对某些 API 请求(如列表镜像)的响应可能会返回多个项目。通过在 API 请求中指定 limit 参数,可以明确控制返回的结果数量。但是,如果没有指定 limit 参数,此配置值将用作任何 API 请求返回的默认结果数。

备注:

  • 此配置选项的值可能不大于 api_limit_max 指定的值。
  • 把它设置为非常大的值可能会减慢数据库查询并增加响应时间。把它设置为非常低的值可能会导致用户体验不佳。

可能的值:

  • 任何正整数

相关选项:

  • api_limit_max

location_strategy = location_order

字符串值

确定镜像位置首选项顺序的策略。

此配置选项指示决定镜像位置必须访问为镜像数据提供顺序的策略。然后,Glance 从此列表中找到的第一个响应活跃位置检索镜像数据。

这个选项使用两个可能的值 location_orderstore_type 之一。默认值为 location_order,这表示镜像数据由使用位置按它们存储在 Glance 中的顺序提供。store_type 值根据存储后端列出为配置选项 store_type_preference 的顺序设置镜像位置首选项。

可能的值:

  • location_order
  • store_type

相关选项:

  • store_type_preference

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_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_header_line = 16384

整数值

消息标头的最大行大小。

提供一个整数值,代表一个长度来限制消息标头的大小。默认值为 16384。

注意

使用大型令牌时,可能需要增加 max_header_line (通常是由 Keystone v3 API 使用大型服务目录生成的)。但是,要记住,max_header_line 的更大值会大量日志。

max_header_line 设置为 0,为消息标头的行大小设置没有限制。

可能的值:

  • 0
  • 正整数

相关选项:

  • None

max_logfile_count = 30

整数值

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

max_logfile_size_mb = 200

整数值

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

max_request_id_length = 64

整数值

限制请求 ID 长度。

提供一个整数值,将请求 ID 的长度限制为指定长度。默认值为 64。用户可以将其改为 0 到 16384 之间的任意 ineteger 值,但要注意,较大的值可能会造成日志。

可能的值:

  • 0 到 16384 之间的整数值

相关选项:

  • None

metadata_encryption_key = None

字符串值

用于加密存储位置元数据的 AES 密钥。

提供代表用于加密 Glance 存储元数据的 AES 密码的字符串值。

注意

要使用的 AES 密钥必须设置为长度为 16、24 或 32 字节的随机字符串。

可能的值:

  • 代表有效 AES 键的字符串值

相关选项:

  • None

node_staging_uri = file:///tmp/staging/

字符串值

URL 提供存储临时数据的位置

此选项仅供 Glance 内部使用。Glance 将在镜像导入过程中将用户上传的镜像数据保存到 暂存 端点。

此选项不会以任何方式更改 暂存 API 端点。

注意

不建议使用与 [task]/work_dir 相同的路径

注意

file://<absolute-directory-path > 是唯一支持 api_image_import 流的选项。

注意

暂存路径必须位于所有 Glance API 节点可用的共享文件系统上。

可能的值:

  • file:// 开头加绝对 FS 路径的字符串

相关选项:

  • [task]/work_dir

pipe-handle = None

字符串值

此参数在 Windows 上内部使用。Glance 将管道句柄传递给子进程,然后用于进程间通信。

property_protection_file = None

字符串值

属性保护文件的位置。

为属性保护文件提供有效的路径,其中包含属性保护规则以及与其关联的 roles/policies。

属性保护文件 (当设置)限制由角色或策略标识的一组特定用户创建、读取、更新和/或删除 Glance 镜像属性。如果没有设置此配置选项,则默认不会强制实施属性保护。如果指定了值并且未找到文件,则 glance-api 服务将无法启动。有关属性保护的更多信息,请访问 :https://docs.openstack.org/glance/latest/admin/property-protections.html

可能的值:

  • 空字符串
  • 属性保护配置文件的有效路径

相关选项:

  • property_protection_rule_format

property_protection_rule_format = roles

字符串值

属性保护的规则格式。

提供设置 Glance 镜像属性属性保护所需的方法。两个允许的值为 角色和策略 。默认值为 roles

如果值为 roles,则属性保护文件必须包含以逗号分隔的用户角色列表,指示要保护的每个属性上的每个 CRUD 操作的权限。如果设置为 policies,则使用 policy.yaml 中定义的策略来表达每个 CRUD 操作的属性保护。根据 角色或 策略实施 属性保护的示例,请访问 :https://docs.openstack.org/glance/latest/admin/property-protections.html#examples

可能的值:

  • roles
  • policies

相关选项:

  • property_protection_file

public_endpoint = None

字符串值

用于 Glance 版本响应的公共 url 端点。

这是显示在 Glance"版本"响应中的公共 url 端点。如果没有指定值,则版本响应中显示的端点是运行 API 服务的主机。如果 API 服务在代理后面运行,请将端点更改为代表代理 URL。如果服务在负载均衡器后面运行,请为这个值添加负载均衡器的 URL。

可能的值:

  • None
  • 代理 URL
  • 负载均衡器 URL

相关选项:

  • None

publish_errors = False

布尔值

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

pydev_worker_debug_host = None

主机地址值

pydev 服务器的主机地址。

提供字符串值,代表用于调试的 pydev 服务器的主机名或 IP。pydev 服务器侦听此地址上的调试连接,有助于在 Glance 中进行远程调试。

可能的值:

  • 有效主机名
  • 有效的 IP 地址

相关选项:

  • None

pydev_worker_debug_port = 5678

端口值

pydev 服务器将侦听的端口号。

提供将 pydev 服务器绑定到的端口号。pydev 进程接受此端口上的调试连接,并在 Glance 中实现远程调试。

可能的值:

  • 有效端口号

相关选项:

  • None

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

整数值

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

scrub_pool_size = 1

整数值

用于清理镜像的线程池大小。

当需要清理大量镜像时,清理镜像会有助于并行清理镜像,以便清理队列可以保持控制,并且后端存储会及时回收。此配置选项表示并行清理的最大镜像数。默认值为 one,它表示串行清理。上述任何值都表示并行清理。

可能的值:

  • 任何非零正整数

相关选项:

  • delayed_delete

scrub_time = 0

整数值

延迟镜像清理的时间(以秒为单位)。

打开延迟删除后,镜像会在删除时放入 pending_delete 状态,直到清理网络删除其镜像数据。通常,在镜像放入 pending_delete 状态后,镜像可以被清理。但是,清理过程可能会延迟到之后使用这个配置选项。此选项表示镜像在可用于清理前处于 pending_delete 状态的时间段。

这一点很重要,这对存储有影响。scrub_time 越大,从已删除的镜像回收后端存储的时间越长。

可能的值:

  • 任何非负整数

相关选项:

  • delayed_delete

show_image_direct_url = False

布尔值

在返回镜像时显示直接镜像位置。

此配置选项指示在将镜像详情返回给用户时是否显示直接镜像位置。直接镜像位置是镜像数据存储在后端存储中。此镜像位置显示在 image 属性 direct_url 下。

当镜像存在多个镜像位置时,会根据配置选项 location_strategy 所示的位置显示最佳位置。

备注:

  • 显示镜像位置可能会显示 GRAVE SECURITY RISK,因为镜像位置有时可以包含凭证。因此,默认设置为 False。把它设置为 True,使用 EXTREME CAUTION,仅限 IF 您知道您的操作!
  • 如果操作员希望避免向用户显示任何镜像位置,则此选项和 show_multiple_locations 必须设为 False

可能的值:

  • True
  • False

相关选项:

  • show_multiple_locations
  • location_strategy

show_multiple_locations = False

布尔值

在返回镜像时显示所有镜像位置。

此配置选项指示在将镜像详细信息返回给用户时是否显示所有镜像位置。当镜像存在多个镜像位置时,位置会根据配置 opt location_strategy 所指示的位置策略进行排序。镜像位置显示在镜像属性 位置 下。

备注:

  • 显示镜像位置可能会显示 GRAVE SECURITY RISK,因为镜像位置有时可以包含凭证。因此,默认设置为 False。把它设置为 True,使用 EXTREME CAUTION,仅限 IF 您知道您的操作!
  • 如需更多信息,请参阅 https://wiki.openstack.org/wiki/OSSN/OSSN-0065
  • 如果操作员希望避免向用户显示任何镜像位置,则此选项和 show_image_direct_url 必须设为 False

可能的值:

  • True
  • False

相关选项:

  • show_image_direct_url
  • location_strategy

弃用自: Newton

*reason:*Use of this option (自 Newton 起已弃用)是一个安全风险,并在我们找出一个满足当前需要它的用例时删除。较早的公告,使用策略可以以更大的粒度来实现相同的功能。您目前无法通过策略配置来临时解决这个选项,但我们认为修复将采取方向。请留意 Glance 发行注记,以继续解决此问题。

syslog-log-facility = LOG_USER

字符串值

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

tcp_keepidle = 600

整数值

在连接重新检查前设置等待时间。

提供一个正整数值,代表时间(以秒为单位),该值设置为空闲等待时间,然后再将 TCP 保留数据包发送到主机。默认值为 600 秒。

设置 tcp_keepidle 有助于定期验证连接是否完好,并防止出现频繁的 TCP 连接重新建立。

可能的值:

  • 代表时间的正整数值(以秒为单位)

相关选项:

  • None

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

布尔值

利用 Keystone 中注册的每租户资源限制。

启用此功能将导致 Glance 检索 keystone 中针对资源消耗设置的限制,并针对 API 用户实施它们。在打开此操作之前,需要将限值注册在 Keystone 中,否则所有配额都将被视为零,从而拒绝所有新的资源请求。

这些每租户资源限制与这个配置文件中配置的静态全局全局限制无关。如果启用了,则会忽略相关的静态全局限制。

use_stderr = False

布尔值

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

user_storage_quota = 0

字符串值

每个租户的最大镜像存储量。

这对所有存储中的所有租户使用的总存储实施上限。这是按租户的限制。

此配置选项的默认单位是字节。但是,可以使用区分大小写的文字 BKBMBGBTB 指定存储单元,分别代表 Bytes、KiloBytes、MegaBytes 和 TeraBytes。请注意,值和单元之间不应有任何空格。值 0 表示没有配额强制。负值无效,并导致错误。

如果启用了 use_keystone_limits,这将无效。

可能的值:

  • 字符串是代表存储值的非负整数的有效连接,以及代表上述存储单元的可选字符串字面量。

相关选项:

  • use_keystone_limits

watch-log-file = False

布尔值

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

worker_self_reference_url = None

字符串值

此 worker 的 URL。

如果设置此项,其他 glance worker 将知道如何直接联系该工作者(如果需要)。对于镜像导入,单个 worker 阶段镜像和其他 worker 需要能够将导入请求代理到右侧。

如果未设置,则这被视为 public_endpoint,这通常会被设置为所有 worker 上的相同值,从而有效地禁用代理行为。

可能的值:

  • 此 worker 可以从其他 worker 访问的 URL

相关选项:

  • public_endpoint

Worker = None

整数值

要启动的 Glance 工作程序进程数量。

提供非负整数值,将子进程 worker 的数量设置为服务请求。默认情况下,可用的 CPU 数量被设置为 worker 的值限制为 8。例如,如果处理器计数为 6,将使用 6 个 worker,如果处理器计数为 24,则使用 8 个 worker。如果配置了 24 个 worker,则使用限制将应用到默认值。

发出每个 worker 进程侦听配置文件中设置的端口,并包含一个大小为 1000 的 greenthread 池。

注意

将 worker 数量设置为零,会触发一个 API 进程,其 greenthread 池大小为 1000。

可能的值:

  • 0
  • 正整数值(通常等于 CPU 数量)

相关选项:

  • None

3.1.2. barbican

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

表 3.1. 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,这会被忽略。

3.1.3. barbican_service_user

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

表 3.2. 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 请求的超时值

3.1.4. cinder

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

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

cinder_api_insecure = False

布尔值

允许对 cinder 执行不安全的 SSL 请求。

如果此选项被设置为 True,则使用 cinder_ca_certificates_file 选项指定的 CA 证书文件验证 HTTPS 端点连接。

可能的值:

  • True
  • False

相关选项:

  • cinder_ca_certificates_file

cinder_ca_certificates_file = None

字符串值

用于 cinder 客户端请求的 CA 证书文件的位置。

如果设置,则使用指定的 CA 证书文件通过 HTTPS 端点验证 cinder 连接。如果端点是 HTTP,则忽略这个值。cinder_api_insecure 必须设为 True 才能启用验证。

可能的值:

  • ca 证书文件的路径

相关选项:

  • cinder_api_insecure

cinder_catalog_info = volumev3::publicURL

字符串值

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

如果没有设置 cinder_endpoint_template,并且任何 cinder_store_auth_address, cinder_store_user_name, cinder_store_project_name, cinder_store_password 没有设置,cinder 存储将使用此信息从当前上下文中的服务目录中查找 Cinder 端点。如果设置,则考虑 cinder_os_region_name 来获取适当的端点。

服务目录可以通过 openstack catalog list 命令列出。

可能的值:

  • 应指定以下格式的字符串: < service_type>:<service_name>:<interface > At least service_typeinterfaceservice_name 可以省略。

相关选项:

  • cinder_os_region_name
  • cinder_endpoint_template
  • cinder_store_auth_address
  • cinder_store_user_name
  • cinder_store_project_name
  • cinder_store_password
  • cinder_store_project_domain_name
  • cinder_store_user_domain_name

cinder_do_extend_attached = False

布尔值

如果设为 True,则 glance 将对连接的卷执行扩展操作。只有 cinder 后端驱动程序支持在线(使用)卷的功能时,才启用这个选项。从 cinder microversion 3.42 和 onwards 支持。默认情况下,它被设置为 False。

可能的值:

  • True 或 False

cinder_endpoint_template = None

字符串值

使用 cinder 端点的模板覆盖服务目录查找。

设置此选项时,会使用这个值来生成 cinder 端点,而不是从服务目录中查找。如果指定了 cinder_store_auth_addresscinder_store_user_namecinder_store_project_namecinder_store_password,则忽略这个值。

如果设置了此配置选项,则忽略 cinder_catalog_info

可能的值:

  • cinder 端点的 URL 模板字符串,其中 %%(tenant) s 替换为当前的租户(项目)名称。例如: http://cinder.openstack.example.org/v2/%%(tenant)s

相关选项:

  • cinder_store_auth_address
  • cinder_store_user_name
  • cinder_store_project_name
  • cinder_store_password
  • cinder_store_project_domain_name
  • cinder_store_user_domain_name
  • cinder_catalog_info

cinder_enforce_multipath = False

布尔值

如果设为 True,则当 multipathd 未运行时,镜像传输的附加卷将中止。否则,它将回退到单一路径。

可能的值:

  • True 或 False

相关选项:

  • cinder_use_multipath

cinder_http_retries = 3

整数值

失败 http 调用的 cinderclient 重试次数。

当调用被任何错误失败时,cinderclient 将在休眠几秒钟后重试调用最多指定时间。

可能的值:

  • 正整数

相关选项:

  • None

cinder_mount_point_base = /var/lib/glance/mnt

字符串值

NFS 卷在 glance 节点上挂载的目录。

可能的值:

  • 代表挂载点的绝对路径的字符串。

cinder_os_region_name = None

字符串值

从服务目录查找 cinder 服务的区域名称。

这仅在使用 cinder_catalog_info 确定端点时使用。如果设置,此节点的 cinder 端点的查找将过滤到指定的区域。当目录中列出多个区域时,这非常有用。如果没有设置,则从每个区域查找端点。

可能的值:

  • 是有效区域名称的字符串。

相关选项:

  • cinder_catalog_info

cinder_state_transition_timeout = 300

整数值

等待 cinder 卷过渡到 complete 的时间(以秒为单位)。

当 cinder 卷创建、删除或附加到 glance 节点以读/写卷数据时,卷的状态将改变。例如,在创建过程完成后,新创建的卷状态会从 creating 变为 available。这指定了等待状态更改的最长时间。如果在等待时发生超时,或者状态更改为意外值(如 错误),则镜像创建会失败。

可能的值:

  • 正整数

相关选项:

  • None

cinder_store_auth_address = None

字符串值

cinder 身份验证服务正在侦听的地址。

当指定所有 cinder_store_auth_addresscinder_store_user_namecinder_store_project_namecinder_store_password 选项时,指定的值始终用于身份验证。这非常有用,通过将镜像卷存储在特定于镜像服务的项目/租户中来隐藏用户。它还允许用户在 glance 的 ACL 控制下的其他项目之间共享镜像卷。

如果没有设置其中任何一个选项,则使用 cinder 端点从服务目录中查找,并使用当前上下文的用户和项目。

可能的值:

  • 有效的身份验证服务地址,例如: http://openstack.example.org/identity/v2.0

相关选项:

  • cinder_store_user_name
  • cinder_store_password
  • cinder_store_project_name
  • cinder_store_project_domain_name
  • cinder_store_user_domain_name

cinder_store_password = None

字符串值

针对 cinder 进行身份验证的用户的密码。

这必须与以下所有相关选项一起使用。如果没有指定,则使用与域相关的选项,则使用当前上下文的用户。

可能的值:

  • cinder_store_user_name指定的用户的有效密码

相关选项:

  • cinder_store_auth_address
  • cinder_store_user_name
  • cinder_store_project_name
  • cinder_store_project_domain_name
  • cinder_store_user_domain_name

cinder_store_project_domain_name = Default

字符串值

镜像卷存储在 cinder 中的项目域。

可能的值:

  • cinder_store_project_name指定的项目的有效域名

相关选项:

  • cinder_store_auth_address
  • cinder_store_user_name
  • cinder_store_password
  • cinder_store_project_domain_name
  • cinder_store_user_domain_name

cinder_store_project_name = None

字符串值

镜像卷存储在 cinder 中的项目名称。

如果没有设置此配置选项,则使用当前上下文中的项目。

这必须与以下所有相关选项一起使用。如果没有指定,则使用与域相关的选项,则使用当前上下文的用户。

可能的值:

  • 有效的项目名称

相关选项:

  • cinder_store_auth_address
  • cinder_store_user_name
  • cinder_store_password
  • cinder_store_project_domain_name
  • cinder_store_user_domain_name

cinder_store_user_domain_name = Default

字符串值

要针对 cinder 进行身份验证的用户的域。

可能的值:

  • cinder_store_user_name指定的用户的有效域名

相关选项:

  • cinder_store_auth_address
  • cinder_store_password
  • cinder_store_project_name
  • cinder_store_project_domain_name
  • cinder_store_user_name

cinder_store_user_name = None

字符串值

要针对 cinder 进行身份验证的用户名。

这必须与以下所有非域相关选项一起使用。如果没有指定,则使用与域相关的选项,则使用当前上下文的用户。

可能的值:

  • 有效的用户名

相关选项:

  • cinder_store_auth_address
  • cinder_store_password
  • cinder_store_project_name
  • cinder_store_project_domain_name
  • cinder_store_user_domain_name

cinder_use_multipath = False

布尔值

用于标识多路径的标记在部署中被支持或不支持。

如果不支持多路径,则将其设置为 False。

可能的值:

  • True 或 False

相关选项:

  • cinder_enforce_multipath

cinder_volume_type = None

字符串值

用于在 cinder 中创建卷的卷类型。

有些 Cinder 后端可以有多个卷类型来优化存储使用。添加此选项可让操作员在 Cinder 中选择可为镜像优化的特定卷类型。

如果没有设置,则将使用 cinder 配置中指定的默认卷类型来创建卷。

可能的值:

  • 来自 cinder 的有效卷类型

相关选项:

注意

您不能使用与 NFS 后端关联的加密 volume_type。当 glance_store 尝试写入或访问该卷中存储的镜像数据时,存储在 NFS 后端上的加密卷都会引发异常。请咨询您的 Cinder 管理员来确定适当的 volume_type。

rootwrap_config = /etc/glance/rootwrap.conf

字符串值

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

cinder 存储需要 root 特权才能运行镜像卷(用于连接到 iSCSI/FC 卷并读取/写入卷数据等)。该配置文件应允许 cinder store 和 os-brick 库所需的命令。

可能的值:

  • rootwrap 配置文件的路径

相关选项:

  • None

3.1.5. CORS

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

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

allow_credentials = True

布尔值

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

allow_headers = ['Content-MD5', 'X-Image-Meta-Checksum', 'X-Storage-Token', 'Accept-Encoding', 'X-Auth-Token', 'X-Identity-Status', 'X-Roles', 'X-Service-Catalog', 'X-User-Id', 'X-Tenant-Id', 'X-OpenStack-Request-Request-ID']

列出值

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

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

列出值

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

allowed_origin = None

列出值

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

expose_headers = ['X-Image-Meta-Checksum', 'X-Auth-Token', 'X-Subject-Token', 'X-Service-Token', 'X-OpenStack-Request-ID']

列出值

指明向 API 公开哪些标头是安全的。默认为 HTTP Simple Headers。

max_age = 3600

整数值

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

3.1.6. database

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

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

布尔值

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

3.1.7. file

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

表 3.6. file
配置选项 = 默认值类型Description

filesystem_store_chunk_size = 65536

整数值

块大小,以字节为单位。

读取或写入镜像文件时使用的块大小。增加这个值可能会提高吞吐量,但在处理大量请求时可能会稍微增加内存用量。

可能的值:

  • 任何正整数值

相关选项:

  • None

filesystem_store_datadir = /var/lib/glance/images

字符串值

文件系统后端存储将镜像写入的目录。

启动后,Glance 将创建该目录(如果该目录尚不存在),并验证对其运行 glance-api 的用户的写入访问权限。如果写入访问不可用,则会引发 BadStoreConfiguration 异常,文件系统存储可能无法添加新镜像。

注意

只有在将文件系统存储用作存储后端时才使用此目录。filesystem_store_datadirfilesystem_store_datadirs 选项必须在 glance-api.conf 中指定。如果指定了这两个选项,则会引发 BadStoreConfiguration,文件系统存储可能无法添加新镜像。

可能的值:

  • 到目录的有效路径

相关选项:

  • filesystem_store_datadirs
  • filesystem_store_file_perm

filesystem_store_datadirs = None

多值

文件系统后端存储写入镜像的目录及其优先级列表。

文件系统存储可以配置为将镜像存储在多个目录中,而不是使用由 filesystem_store_datadir 配置选项指定的单个目录。使用多个目录时,可以赋予每个目录一个可选的优先级,以指定应使用它们的优先顺序。priority 是一个与目录路径连接在一起的整数,一个冒号表示更高的优先级。当两个目录具有相同的优先级时,会使用具有最多可用空间的目录。如果没有指定优先级,则默认为零。

有关使用多个存储目录配置文件系统存储的更多信息,请访问 https://docs.openstack.org/glance/latest/configuration/configuring.html

注意

只有在将文件系统存储用作存储后端时才使用此目录。filesystem_store_datadirfilesystem_store_datadirs 选项必须在 glance-api.conf 中指定。如果指定了这两个选项,则会引发 BadStoreConfiguration,文件系统存储可能无法添加新镜像。

可能的值:

  • 以下格式的字符串列表:

    • <a valid directory path>:<optional integer priority>

相关选项:

  • filesystem_store_datadir
  • filesystem_store_file_perm

filesystem_store_file_perm = 0

整数值

镜像文件的文件访问权限。

为镜像数据设置所需的文件访问权限。这提供了启用其他服务(如 Nova)的方法,以直接从文件系统存储使用镜像。运行要授予访问权限的服务的用户可能成为拥有创建文件的组的成员。为这个配置选项分配一个小于或等于 0 的值表示没有对默认权限进行任何更改。这个值将被解码为八进制数字。

如需更多信息,请参阅文档 https://docs.openstack.org/glance/latest/configuration/configuring.html

可能的值:

  • 有效文件访问权限
  • 任何负整数

相关选项:

  • None

filesystem_store_metadata_file = None

字符串值

文件系统存储元数据文件。

到包含与文件系统存储关联的任何位置返回的元数据的路径。设置此选项后,它将仅用于创建之后创建的新映像 - 之前存在的镜像不会受到影响。

该文件必须包含有效的 JSON 对象。该对象应包含键 idmountpoint。这两个键的值应当是字符串。

可能的值:

  • 存储元数据文件的有效路径

相关选项:

filesystem_thin_provisioning = False

布尔值

在此后端中启用或未进行精简配置。

此配置选项启用在文件系统中不实际写入 null 字节序列的功能,显示的漏洞将自动被文件系统解释为 null 字节,且不实际消耗您的存储。除了在后端保存空间外,启用此功能还将加快镜像上传并保存网络流量,因为不通过网络发送 null 字节序列。

可能的值:

  • True
  • False

相关选项:

  • None

3.1.8. glance.store.http.store

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

表 3.7. glance.store.http.store
配置选项 = 默认值类型Description

http_proxy_information = {}

字典值

用于连接到远程服务器的 http/https 代理信息。

此配置选项指定应该用来连接到远程服务器的 http/https 代理信息。代理信息应该是 scheme 和 proxy 的键值对,如 http:10.0.0.1:3128。您还可以通过使用逗号分隔键值对来指定多个方案来指定代理,例如 http:10.0.0.1:3128, https:10.0.0.1:1080。

可能的值:

  • 以逗号分隔的 scheme:proxy 对列表,如上所述

相关选项:

  • None

https_ca_certificates_file = None

字符串值

CA 捆绑包文件的路径。

此配置选项可让操作员使用自定义证书颁发机构文件来验证远程服务器证书。如果设置了这个选项,则忽略 https_insecure 选项,并且指定的 CA 文件将用于验证服务器证书并建立与服务器的安全连接。

可能的值:

  • CA 文件的有效路径

相关选项:

  • https_insecure

https_insecure = True

布尔值

设置远程服务器证书验证。

此配置选项取在布尔值中,以确定是否验证远程服务器证书。如果设置为 True,则不会验证远程服务器证书。如果选项设为 False,则使用默认 CA 信任存储进行验证。

如果设置了 https_ca_certificates_file,则忽略这个选项。然后,使用 https_ca_certificates_file 选项指定的文件验证远程服务器证书。

可能的值:

  • True
  • False

相关选项:

  • https_ca_certificates_file

3.1.9. glance.store.rbd.store

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

表 3.8. glance.store.rbd.store
配置选项 = 默认值类型Description

rados_connect_timeout = 0

整数值

连接到 Ceph 集群的超时值。

此配置选项在连接到 Ceph 集群时使用的超时值(以秒为单位)内设置在关闭连接前等待 glance-api 的时间。这可防止在连接到 RBD 时出现 glance-api 挂起。如果此选项的值设为小于或等于 0,则不设置超时,并且使用默认的 librados 值。

可能的值:

  • 任何整数值

相关选项:

  • None

弃用自: Zed

原因: 此选项在年内没有任何影响。用户要用于连接 Ceph 集群的超时应在 Ceph 配置文件中使用 client_mount_timeout

`rbd_store_ceph_conf = `

字符串值

Ceph 配置文件路径.

此配置选项指定要使用的 Ceph 配置文件的路径。如果用户未设置此选项的值,或者设置为空字符串,librados 将按顺序搜索默认的 Ceph 配置文件位置来读取标准 ceph.conf 文件。详情请参阅 Ceph 文档。

注意

如果使用 Cephx 身份验证,这个文件应该在 client.<USER> 部分中包含对正确的密钥环的引用

注意 2:如果将此选项留空(默认),则使用的实际 Ceph 配置文件可能会根据所使用的 librados 版本而改变。如果您准确了解哪个配置文件生效,您可以使用此选项在此处指定该文件。

可能的值:

  • 配置文件的有效路径

相关选项:

  • rbd_store_user

rbd_store_chunk_size = 8

整数值

将 RADOS 镜像分解到其中的大小(以 MB 为单位)。

提供一个整数值,以 MB 为单位代表 Glance 映像的块。默认块大小为 8MB。为获得最佳性能,该值应该是 2 的指数。

当 Ceph 的 RBD 对象存储系统用作存储 Glance 镜像的存储后端时,镜像将区块化为使用此选项设置的大小对象。然后,这些区块对象存储在分布式块数据存储中,以用于 Glance。

可能的值:

  • 任何正整数值

相关选项:

  • None

rbd_store_pool = images

字符串值

存储镜像的 RADOS 池。

当 RBD 用作存储 Glance 镜像的存储后端时,镜像通过对对象(镜像区块)的逻辑分组存储到 池中。每个池都通过它可以包含的放置组数量来定义。使用的默认池是 images

有关 RBD 存储后端的更多信息,请访问 :http://ceph.com/planet/how-data-is-stored-in-ceph-cluster/

可能的值:

  • 有效的池名称

相关选项:

  • None

rbd_store_user = None

字符串值

要进行身份验证的 RADOS 用户。

此配置选项在 RADOS 用户中进行身份验证。这只在启用 RADOS 身份验证时才需要,且仅在用户使用 Cephx 身份验证时才适用。如果用户未设置此选项的值,或设置为 None,则会选择默认值,它将基于 rbd_store_ceph_conf 中的 client. 部分。

可能的值:

  • 有效的 RADOS 用户

相关选项:

  • rbd_store_ceph_conf

rbd_thin_provisioning = False

布尔值

在此后端中启用或未进行精简配置。

此配置选项启用 RBD 后端上不实际写入 null 字节序列的功能,可能出现的漏洞由 Ceph 自动解释为 null 字节,且不会真正使用您的存储。除了在后端保存空间外,启用此功能还将加快镜像上传并保存网络流量,因为不通过网络发送 null 字节序列。

可能的值:

  • True
  • False

相关选项:

  • None

3.1.10. glance.store.s3.store

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

表 3.9. glance.store.s3.store
配置选项 = 默认值类型描述

s3_store_access_key = None

字符串值

S3 查询令牌访问密钥。

此配置选项使用访问密钥来使用 Amazon S3 或 S3 兼容存储服务器进行身份验证。使用 S3 存储后端时需要这个选项。

可能的值:

  • 任何字符串值,这是具有适当权限的用户的访问密钥

相关选项:

  • s3_store_host
  • s3_store_secret_key

s3_store_bucket = None

字符串值

用于存储 Glance 数据的 S3 存储桶。

此配置选项指定 glance 镜像在 S3 中存储的位置。如果 s3_store_create_bucket_on_put 设为 true,它将自动创建,即使存储桶不存在。

可能的值:

  • 任何字符串值

相关选项:

  • s3_store_create_bucket_on_put
  • s3_store_bucket_url_format

s3_store_bucket_url_format = auto

字符串值

用于确定对象的 S3 调用格式。

此配置选项使用访问模型来指定 S3 存储桶中对象地址。

注意:在 路径样式中,对象的端点类似于 https://s3.amazonaws.com/bucket/example.img在虚拟样式中,对象的端点类似于 https://bucket.s3.amazonaws.com/example.img。如果您不遵循存储桶名称中的 DNS 命名约定,您可以以路径样式获取对象,但不能以虚拟样式获取对象。

可能的值:

  • 自动、虚拟path的任何字符串值

相关选项:

  • s3_store_bucket

`s3_store_cacert = `

字符串值

要使用的 CA 证书捆绑包的路径。默认值(空字符串)强制使用 botocore 使用的默认 CA 证书捆绑包。

可能的值:

  • 要使用的 CA 证书捆绑包的路径
  • 使用 botocore 使用的默认 CA 证书捆绑包的空字符串

s3_store_create_bucket_on_put = False

布尔值

确定 S3 是否要创建新 bucket。

此配置选项使用布尔值来指示 Glance 是否应该创建新存储桶到 S3 (如果它不存在)。

可能的值:

  • 任何布尔值

相关选项:

  • None

s3_store_host = None

字符串值

S3 服务器正在侦听的主机。

此配置选项设置 S3 或 S3 兼容存储服务器的主机。使用 S3 存储后端时需要这个选项。主机可以包含 DNS 名称(如 s3.amazonaws.com、my-object-storage.com)或 IP 地址(127.0.0.1)。

可能的值:

  • 有效的 DNS 名称
  • 有效的 IPv4 地址

相关选项:

  • s3_store_access_key
  • s3_store_secret_key

s3_store_large_object_chunk_size = 10

整数值

在上传部分时,多部分上传部分的大小(以 MB 为单位)应该使用 S3。

此配置选项使用镜像分割大小(以 MB 为单位)用于 Multipart Upload。

注: 您只能分割最多 10,000 个镜像。

可能的值:

  • 任何正整数值(必须大于或等于 5M)

相关选项:

  • s3_store_large_object_size
  • s3_store_thread_pools

s3_store_large_object_size = 100

整数值

S3 开始块镜像文件以及在 S3 中进行多部分上传的大小(以 MB 为单位)。

此配置选项使用以 MB 为单位的阈值,以确定是否将镜像上传到 S3,还是按原样分割(多部分上传)。

注: 您只能分割最多 10,000 个镜像。

可能的值:

  • 任何正整数值

相关选项:

  • s3_store_large_object_chunk_size
  • s3_store_thread_pools

`s3_store_region_name = `

字符串值

S3 区域名称。

此参数将设置 boto 使用的 region_name。如果没有设置此参数,我们将尝试从 s3_store_host 中计算它。

可能的值:

  • 有效的区域名称

相关选项:

  • s3_store_host

s3_store_secret_key = None

字符串值

S3 查询令牌 secret 密钥。

此配置选项使用 secret 密钥与 Amazon S3 或 S3 兼容存储服务器进行身份验证。使用 S3 存储后端时需要这个选项。

可能的值:

  • 任何字符串值,这是与使用 s3_store_host 选项指定的访问密钥对应的 secret 键。

相关选项:

  • s3_store_host
  • s3_store_access_key

s3_store_thread_pools = 10

整数值

在 S3 中执行多部分上传的线程池数量。

此配置选项在执行多部分上传时采用线程池数量。

可能的值:

  • 任何正整数值

相关选项:

  • s3_store_large_object_size
  • s3_store_large_object_chunk_size

3.1.11. glance.store.swift.store

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

表 3.10. glance.store.swift.store
配置选项 = 默认值类型Description

default_swift_reference = ref1

字符串值

引用默认 Swift 帐户/后端存储参数。

提供字符串值,代表对使用 swift 帐户/后端存储进行镜像存储所需的默认参数集的引用。此配置选项的默认引用值为 ref1。此配置选项会解引用参数,并在每次添加新镜像时方便 Swift 存储后端中的镜像存储。

可能的值:

  • 有效字符串值

相关选项:

  • None

swift_buffer_on_upload = False

布尔值

在上传到 Swift 前缓冲镜像片段。

提供布尔值以指示 Glance 在上传到 swift 时是否应将镜像数据缓冲到磁盘。这可让 Glance 恢复上传到错误。

注意:在启用这个选项时,当启用这个选项时,当这个 API 节点上的磁盘用量增加时,应该非常谨慎。请注意,根据文件系统的配置方式,用于缓冲的磁盘空间可能会减少 glance 镜像缓存的可用磁盘空间。磁盘利用率将根据以下 equation 的上限:(swift_store_large_object_chunk_size * worker * 1000)

可能的值:

  • True
  • False

相关选项:

  • swift_upload_buffer_dir

swift_store_admin_tenants = []

列出值

将被授予 admin 访问权限的租户列表。

这是租户的列表,将被授予由 Glance 在多租户模式下由 Glance 创建的所有 Swift 容器的读/写访问权限。默认值为空列表。

可能的值:

  • 以逗号分隔的字符串列表,代表 Keystone 项目/租户的 UUID

相关选项:

  • None

swift_store_auth_address = None

字符串值

Swift 身份验证服务侦听的端口。

swift_store_auth_insecure = False

布尔值

设置服务器证书验证。

此布尔值决定是否验证服务器证书。如果此选项设为 True,则 swiftclient 在验证时不会检查有效的 SSL 证书。如果选项设为 False,则使用默认 CA 信任存储进行验证。

可能的值:

  • True
  • False

相关选项:

  • swift_store_cacert

swift_store_auth_version = 2

字符串值

要使用的身份验证服务版本。对于 keystone 有效版本是 2 和 3,对于 swauth 和 rackspace 为 1(已弃用) 。

swift_store_cacert = None

字符串值

CA 捆绑包文件的路径。

此配置选项可让操作员在连接到 Swift 时指定自定义证书颁发机构文件的路径,以进行 SSL 验证。

可能的值:

  • CA 文件的有效路径

相关选项:

  • swift_store_auth_insecure

swift_store_config_file = None

字符串值

包含 swift 帐户的文件的绝对路径。

包括一个字符串值,代表配置的每个 Swift 帐户/后向存储具有引用的配置的路径。默认情况下,未指定文件路径并禁用自定义 Swift 引用。强烈建议在将镜像存储中使用 Swift 存储后端来配置此选项,因为它可避免在数据库中存储凭证。

注意

如果将 swift_store_multi_tenant 设置为 True,请不要配置这个选项。

可能的值:

  • 代表 glance-api 节点上的绝对路径的字符串值

相关选项:

  • swift_store_multi_tenant

swift_store_container = glance

字符串值

为多个容器存储 images/name 前缀的单个容器名称

当单个容器用于存储镜像时,此配置选项指示 Glance 帐户中的容器用于存储所有镜像。当多个容器用于存储镜像时,这将是所有容器的名称前缀。可以使用配置选项 swift_store_multiple_containers_seed 控制单个/多个容器的使用。

使用多个容器时,容器将按照为此配置选项设置的值加上镜像 UUID 的前 N 个字符,作为由下划线分隔的后缀(其中 N 由 swift_store_multiple_containers_seed指定)。

示例:如果 seed 设为 3,swift_store_container = glance,则带有 UUID fdae39a1-bac5-4238-aba4-69bcc726e848 的一个镜像将被放入容器 glance_fda。在创建容器名称时包括在 UUID 中的横线不会计算在字符长度的限制中,因此,当 N= 10 时,容器名称可以为 glance_fdae39a1-ba.

可能的值:

  • 如果使用单个容器,则此配置选项可以是 Glance 的 Swift 帐户中有效的 swift 容器名称的任何字符串
  • 如果使用多个容器,则此配置选项可以是任意字符串,只要它满足 Swift 强制的容器命名规则。还应考虑 swift_store_multiple_containers_seed 的值。

相关选项:

  • swift_store_multiple_containers_seed
  • swift_store_multi_tenant
  • swift_store_create_container_on_put

swift_store_create_container_on_put = False

布尔值

在上传镜像时,创建容器(如果不存在)。

在上传镜像时,如果相应的容器不存在,则会创建它,如果此配置选项被设置为 True。默认情况下,不会创建它。这个行为适用于单和多个容器模式。

可能的值:

  • True
  • False

相关选项:

  • None

swift_store_endpoint = None

字符串值

用于 Swift 后端存储的 URL 端点。

提供字符串值,代表用于将 Glance 镜像存储在 Swift 存储中的 URL 端点。默认情况下,不会设置端点,并使用 auth 返回的存储 URL。使用 swift_store_endpoint 设置端点会覆盖存储 URL,并用于 Glance 镜像存储。

注意

URL 应包括最多的路径,但不包括容器。通过将容器和对象附加到配置的 URL 来获取对象的位置。

可能的值:

  • 代表 Swift 容器的有效 URL 路径的字符串值

相关选项:

  • None

swift_store_endpoint_type = publicURL

字符串值

Swift 服务的端点类型。

此字符串值指示用于获取 Swift 端点的端点类型。端点类型决定了用户被允许执行的操作,例如,读取和写入存储。只有在 swift_store_auth_version 大于 1 时才会使用此设置。

可能的值:

  • publicURL
  • adminURL
  • internalURL

相关选项:

  • swift_store_endpoint

swift_store_expire_soon_interval = 60

整数值

定义在当前令牌到期之前请求新令牌的窗口大小(以秒为单位)。

通常,Swift 存储驱动程序在当前令牌过期时获取新令牌,以确保持续访问 Swift。但是,如果令牌实时过期,一些 Swift 事务(如上传镜像片段)可能无法正常恢复。

因此,通过在当前令牌到期前获取新令牌,我们在尝试事务前确保令牌不会过期或接近过期。默认情况下,Swift 存储驱动程序在当前令牌过期前请求新的令牌 60 秒或更短。

可能的值:

  • 正整数值

相关选项:

  • None

swift_store_key = None

字符串值

用于对 Swift 身份验证服务进行身份验证的用户的身份验证密钥。

swift_store_large_object_chunk_size = 200

整数值

镜像数据片段时段的最大大小(以 MB 为单位)。

当镜像数据被分段为上传大于 Swift 集群实施的限制的镜像时,镜像数据将分为不大于此配置选项指定大小的片段。详情请参考 swift_store_large_object_size

例如:如果 swift_store_large_object_size 为 5GB,而 swift_store_large_object_chunk_size 为 1GB,则大小为 6.2GB 的镜像将被分为 7 段,前 6 个段的大小为 1GB,第七个段的大小为 0.2GB。

可能的值:

  • 一个小于或等于 Swift 集群实施的大型对象限制的正整数。

相关选项:

  • swift_store_large_object_size

swift_store_large_object_size = 5120

整数值

Glance 将启动分段数据的大小(以 MB 为单位)。

Swift 对单个上传对象的大小具有上限。默认情况下,这是 5GB。要上传大于这个限制的对象,对象被分段为与清单文件关联的多个较小的对象。如需更多详情,请参阅 https://docs.openstack.org/swift/latest/overview_large_objects.html

此配置选项指定 Swift 驱动程序将镜像数据分段到多个较小的文件的大小阈值。目前,Swift 驱动程序只支持创建动态大对象。

注意

这应该通过考虑 Swift 集群实施的大对象限制来设置。

可能的值:

  • 一个小于或等于 Swift 集群实施的大型对象限制的正整数。

相关选项:

  • swift_store_large_object_chunk_size

swift_store_multi_tenant = False

布尔值

将镜像存储在租户的 Swift 帐户中。

这可让多租户存储模式,使 Glance 镜像存储在租户特定的 Swift 帐户中。如果禁用,Glance 会将所有镜像存储在自己的帐户中。如需多租户存储的详细信息,请访问 https://wiki.openstack.org/wiki/GlanceSwiftTenantSpecificStorage

注意

如果使用多租户 swift 存储,请确保您没有通过 swift_store_config_file 选项设置 swift 配置文件。

可能的值:

  • True
  • False

相关选项:

  • swift_store_config_file

swift_store_multiple_containers_seed = 0

整数值

seed 表示用于存储镜像的容器数量。

在使用单租户存储时,镜像可以存储在一个或多个容器中。当设置为 0 时,所有镜像都将存储在一个容器中。当设置为 1 到 32 之间的整数值时,会使用多个容器来存储镜像。此配置选项将决定创建多少个容器。将使用的容器总数等于 16^N,因此,如果此配置选项设为 2,则将使用 16^2=256 容器来存储镜像。

有关命名约定的详情,请参阅 swift_store_container。有关使用多个容器的更多详细信息,请参阅 https://specs.openstack.org/openstack/glance-specs/specs/kilo/swift-store-multiple-containers.html

注意

这仅在禁用 swift_store_multi_tenant 时使用。

可能的值:

  • 小于或等于 32 的非负整数

相关选项:

  • swift_store_container
  • swift_store_multi_tenant
  • swift_store_create_container_on_put

swift_store_region = None

字符串值

Glance 使用的 Swift 端点的区域。

提供字符串值,代表 Glance 可以为镜像存储连接的 Swift 区域。默认情况下,没有设置区域。

当 Glance 使用 Swift 作为存储后端来为具有多个端点的特定租户存储镜像时,使用 swift_store_region 设置 Swift 区域可让 Glance 在指定区域中连接 Swift,而不是单个区域连接。

此选项可以针对单租户和多租户存储进行配置。

注意

使用 swift_store_region 设置区域是特定于租户的,只有在 租户在不同区域间有多个端点时才需要。

可能的值:

  • 代表有效 Swift 区域的字符串值。

相关选项:

  • None

swift_store_retry_get_count = 0

整数值

在请求失败前重试 Swift 下载的次数。

提供一个整数值,代表在出错前必须重试镜像下载的次数。默认值为 0 (在失败的镜像下载时不重试)。当设置为正整数值时,swift_store_retry_get_count 可确保在发送错误消息前在下载失败时多次尝试下载。

可能的值:

  • 正整数值

相关选项:

  • None

swift_store_service_type = object-store

字符串值

要使用的 Swift 服务类型。

提供字符串值,代表在使用 Swift 后端存储时用于存储镜像的服务类型。默认服务类型设置为 object-store

注意

如果 swift_store_auth_version 设为 2,则此配置选项的值需要是 object-store。如果使用较高版本的 Keystone 或不同的身份验证方案,则可以修改此选项。

可能的值:

  • 代表 Swift 存储的有效服务类型的字符串。

相关选项:

  • None

swift_store_ssl_compression = True

布尔值

HTTPS Swift 请求的 SSL 层压缩。

提供布尔值,以确定是否对 SSL 层的镜像压缩 HTTPS Swift 请求。默认情况下启用压缩。

在将 Swift 用作 Glance 镜像存储的后端存储时,可以使用此选项设置 HTTPS Swift 请求的 SSL 层压缩。如果设置为 False,则禁用 HTTPS Swift 请求的 SSL 层压缩。禁用此选项可能会提高已压缩格式(如 qcow2)的镜像的性能。

可能的值:

  • True
  • False

相关选项:

  • None

swift_store_use_trusts = True

布尔值

将信任用于多租户 Swift 存储。

此选项指示 Swift 存储在使用多租户存储时为每个 add/get 请求创建信任。使用信任可让 Swift 存储避免在上传或下载数据期间由身份验证令牌过期导致的问题。

默认情况下,swift_store_use_trusts 设置为 True(启用信任时使用)。如果设置为 False,则使用用户令牌用于 Swift 连接,从而消除信任创建开销。

注意

只有在 swift_store_multi_tenant 设为 True时,才会考虑此选项

可能的值:

  • True
  • False

相关选项:

  • swift_store_multi_tenant

swift_store_user = None

字符串值

对 Swift 身份验证服务进行身份验证的用户。

swift_upload_buffer_dir = None

字符串值

在上传到 Swift 前,用于缓冲镜像片段的目录。

提供字符串值,代表 glance 节点上的目录的绝对路径,其中镜像片段在上传到 swift 之前会短暂被缓冲。

备注:

  • 只有在配置选项 swift_buffer_on_upload 被设置为 True 时才需要。
  • 应置备该目录,以保持 swift_store_large_object_chunk_size 以及给定 glance 节点可以同时上传的最大镜像数。

可能的值:

  • 代表绝对目录路径的字符串值

相关选项:

  • swift_buffer_on_upload
  • swift_store_large_object_chunk_size

3.1.12. glance.store.vmware_datastore.store

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

表 3.11. glance.store.vmware_datastore.store
配置选项 = 默认值类型Description

vmware_api_retry_count = 10

整数值

VMware API 重试次数。

此配置选项指定在连接相关问题或服务器 API 调用超载时必须重试 VMware ESX/VC 服务器 API 的次数。无法指定 retry forever

可能的值:

  • 任何正整数值

相关选项:

  • None

vmware_ca_file = None

字符串值

CA 捆绑包文件的绝对路径。

此配置选项可让操作员使用自定义 Cerificate Authority File 来验证 ESX/vCenter 证书。

如果设置了这个选项,则会忽略"vmware_insecure"选项,并且指定的 CA 文件将用于验证 ESX/vCenter 服务器证书,并建立与服务器的安全连接。

可能的值:

  • 是 CA 文件的有效绝对路径的任何字符串

相关选项:

  • vmware_insecure

vmware_datastores = None

多值

可以存储镜像的数据存储。

此配置选项指定镜像可以存储在 VMWare 存储后端中的数据存储。这个选项可多次指定,以指定多个数据存储。数据存储名称应在其数据中心路径后指定,用":"分开。可选权重可以在数据存储名称后指定,并再次以":"分开来指定优先级。因此,所需格式将变为 <datacenter_path>:<datastore_name>:<optional_weight>。

添加镜像时,将选择具有最高权重的数据存储,除非在已知镜像大小时没有足够的可用空间。如果未指定权重,则假定为 0,目录将被视为最后选择。如果多个数据存储具有相同的权重,则会选择具有最多可用空间的权重。

可能的值:

  • 任何格式的字符串: <datacenter_path>:<datastore_name>:<optional_weight>

相关选项:* None

vmware_insecure = False

布尔值

设置 ESX/vCenter 服务器证书验证。

此配置选项使用布尔值来确定是否验证 ESX/vCenter 服务器证书。如果此选项设为 True,则不会验证 ESX/vCenter 服务器证书。如果此选项设置为 False,则使用默认 CA 信任存储进行验证。

如果设置了 "vmware_ca_file" 选项,则忽略这个选项。在这种情况下,将使用"vmware_ca_file"选项指定的文件来验证 ESX/vCenter 服务器证书。

可能的值:

  • True
  • False

相关选项:

  • vmware_ca_file

vmware_server_host = None

主机地址值

ESX/ESXi 或 vCenter Server 目标系统的地址。

此配置选项设置 ESX/ESXi 或 vCenter Server 目标系统的地址。使用 VMware 存储后端时需要这个选项。地址可以包含 IP 地址(127.0.0.1)或 DNS 名称(www.my-domain.com)。

可能的值:

  • 有效的 IPv4 或 IPv6 地址
  • 有效的 DNS 名称

相关选项:

  • vmware_server_username
  • vmware_server_password

vmware_server_password = None

字符串值

服务器密码.

此配置选项使用密码来使用 VMware ESX/ESXi 或 vCenter Server 进行身份验证。使用 VMware 存储后端时需要这个选项。

可能的值:

  • 任何字符串,这是与使用 "vmware_server_username" 选项指定的用户名对应的密码

相关选项:

  • vmware_server_host
  • vmware_server_username

vmware_server_username = None

字符串值

服务器用户名.

此配置选项使用用于使用 VMware ESX/ESXi 或 vCenter Server 进行身份验证的用户名。使用 VMware 存储后端时需要这个选项。

可能的值:

  • 任何字符串,这是具有适当权限的用户的用户名

相关选项:

  • vmware_server_host
  • vmware_server_password

vmware_store_image_dir = /openstack_glance

字符串值

glance 镜像将存储在数据存储中的目录。

此配置选项指定 glance 镜像将存储在 VMware 数据存储中的目录的路径。如果没有设置这个选项,则存储 glance 镜像的默认目录为 openstack_glance。

可能的值:

  • 是目录有效路径的任何字符串

相关选项:

  • None

vmware_task_poll_interval = 5

整数值

在 VMware ESX/VC 服务器上轮询远程任务的时间间隔(以秒为单位)。

此配置选项使用休眠时间(以秒为单位)轮询 async 任务,作为 VMWare ESX/VC 服务器 API 调用的一部分。

可能的值:

  • 任何正整数值

相关选项:

  • None

3.1.13. glance_store

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

表 3.12. glance_store
配置选项 = 默认值类型Description

cinder_api_insecure = False

布尔值

允许对 cinder 执行不安全的 SSL 请求。

如果此选项被设置为 True,则使用 cinder_ca_certificates_file 选项指定的 CA 证书文件验证 HTTPS 端点连接。

可能的值:

  • True
  • False

相关选项:

  • cinder_ca_certificates_file

cinder_ca_certificates_file = None

字符串值

用于 cinder 客户端请求的 CA 证书文件的位置。

如果设置,则使用指定的 CA 证书文件通过 HTTPS 端点验证 cinder 连接。如果端点是 HTTP,则忽略这个值。cinder_api_insecure 必须设为 True 才能启用验证。

可能的值:

  • ca 证书文件的路径

相关选项:

  • cinder_api_insecure

cinder_catalog_info = volumev3::publicURL

字符串值

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

如果没有设置 cinder_endpoint_template,并且任何 cinder_store_auth_address, cinder_store_user_name, cinder_store_project_name, cinder_store_password 没有设置,cinder 存储将使用此信息从当前上下文中的服务目录中查找 Cinder 端点。如果设置,则考虑 cinder_os_region_name 来获取适当的端点。

服务目录可以通过 openstack catalog list 命令列出。

可能的值:

  • 应指定以下格式的字符串: < service_type>:<service_name>:<interface > At least service_typeinterfaceservice_name 可以省略。

相关选项:

  • cinder_os_region_name
  • cinder_endpoint_template
  • cinder_store_auth_address
  • cinder_store_user_name
  • cinder_store_project_name
  • cinder_store_password
  • cinder_store_project_domain_name
  • cinder_store_user_domain_name

cinder_do_extend_attached = False

布尔值

如果设为 True,则 glance 将对连接的卷执行扩展操作。只有 cinder 后端驱动程序支持在线(使用)卷的功能时,才启用这个选项。从 cinder microversion 3.42 和 onwards 支持。默认情况下,它被设置为 False。

可能的值:

  • True 或 False

cinder_endpoint_template = None

字符串值

使用 cinder 端点的模板覆盖服务目录查找。

设置此选项时,会使用这个值来生成 cinder 端点,而不是从服务目录中查找。如果指定了 cinder_store_auth_addresscinder_store_user_namecinder_store_project_namecinder_store_password,则忽略这个值。

如果设置了此配置选项,则忽略 cinder_catalog_info

可能的值:

  • cinder 端点的 URL 模板字符串,其中 %%(tenant) s 替换为当前的租户(项目)名称。例如: http://cinder.openstack.example.org/v2/%%(tenant)s

相关选项:

  • cinder_store_auth_address
  • cinder_store_user_name
  • cinder_store_project_name
  • cinder_store_password
  • cinder_store_project_domain_name
  • cinder_store_user_domain_name
  • cinder_catalog_info

cinder_enforce_multipath = False

布尔值

如果设为 True,则当 multipathd 未运行时,镜像传输的附加卷将中止。否则,它将回退到单一路径。

可能的值:

  • True 或 False

相关选项:

  • cinder_use_multipath

cinder_http_retries = 3

整数值

失败 http 调用的 cinderclient 重试次数。

当调用被任何错误失败时,cinderclient 将在休眠几秒钟后重试调用最多指定时间。

可能的值:

  • 正整数

相关选项:

  • None

cinder_mount_point_base = /var/lib/glance/mnt

字符串值

NFS 卷在 glance 节点上挂载的目录。

可能的值:

  • 代表挂载点的绝对路径的字符串。

cinder_os_region_name = None

字符串值

从服务目录查找 cinder 服务的区域名称。

这仅在使用 cinder_catalog_info 确定端点时使用。如果设置,此节点的 cinder 端点的查找将过滤到指定的区域。当目录中列出多个区域时,这非常有用。如果没有设置,则从每个区域查找端点。

可能的值:

  • 是有效区域名称的字符串。

相关选项:

  • cinder_catalog_info

cinder_state_transition_timeout = 300

整数值

等待 cinder 卷过渡到 complete 的时间(以秒为单位)。

当 cinder 卷创建、删除或附加到 glance 节点以读/写卷数据时,卷的状态将改变。例如,在创建过程完成后,新创建的卷状态会从 creating 变为 available。这指定了等待状态更改的最长时间。如果在等待时发生超时,或者状态更改为意外值(如 错误),则镜像创建会失败。

可能的值:

  • 正整数

相关选项:

  • None

cinder_store_auth_address = None

字符串值

cinder 身份验证服务正在侦听的地址。

当指定所有 cinder_store_auth_addresscinder_store_user_namecinder_store_project_namecinder_store_password 选项时,指定的值始终用于身份验证。这非常有用,通过将镜像卷存储在特定于镜像服务的项目/租户中来隐藏用户。它还允许用户在 glance 的 ACL 控制下的其他项目之间共享镜像卷。

如果没有设置其中任何一个选项,则使用 cinder 端点从服务目录中查找,并使用当前上下文的用户和项目。

可能的值:

  • 有效的身份验证服务地址,例如: http://openstack.example.org/identity/v2.0

相关选项:

  • cinder_store_user_name
  • cinder_store_password
  • cinder_store_project_name
  • cinder_store_project_domain_name
  • cinder_store_user_domain_name

cinder_store_password = None

字符串值

针对 cinder 进行身份验证的用户的密码。

这必须与以下所有相关选项一起使用。如果没有指定,则使用与域相关的选项,则使用当前上下文的用户。

可能的值:

  • cinder_store_user_name指定的用户的有效密码

相关选项:

  • cinder_store_auth_address
  • cinder_store_user_name
  • cinder_store_project_name
  • cinder_store_project_domain_name
  • cinder_store_user_domain_name

cinder_store_project_domain_name = Default

字符串值

镜像卷存储在 cinder 中的项目域。

可能的值:

  • cinder_store_project_name指定的项目的有效域名

相关选项:

  • cinder_store_auth_address
  • cinder_store_user_name
  • cinder_store_password
  • cinder_store_project_domain_name
  • cinder_store_user_domain_name

cinder_store_project_name = None

字符串值

镜像卷存储在 cinder 中的项目名称。

如果没有设置此配置选项,则使用当前上下文中的项目。

这必须与以下所有相关选项一起使用。如果没有指定,则使用与域相关的选项,则使用当前上下文的用户。

可能的值:

  • 有效的项目名称

相关选项:

  • cinder_store_auth_address
  • cinder_store_user_name
  • cinder_store_password
  • cinder_store_project_domain_name
  • cinder_store_user_domain_name

cinder_store_user_domain_name = Default

字符串值

要针对 cinder 进行身份验证的用户的域。

可能的值:

  • cinder_store_user_name指定的用户的有效域名

相关选项:

  • cinder_store_auth_address
  • cinder_store_password
  • cinder_store_project_name
  • cinder_store_project_domain_name
  • cinder_store_user_name

cinder_store_user_name = None

字符串值

要针对 cinder 进行身份验证的用户名。

这必须与以下所有非域相关选项一起使用。如果没有指定,则使用与域相关的选项,则使用当前上下文的用户。

可能的值:

  • 有效的用户名

相关选项:

  • cinder_store_auth_address
  • cinder_store_password
  • cinder_store_project_name
  • cinder_store_project_domain_name
  • cinder_store_user_domain_name

cinder_use_multipath = False

布尔值

用于标识多路径的标记在部署中被支持或不支持。

如果不支持多路径,则将其设置为 False。

可能的值:

  • True 或 False

相关选项:

  • cinder_enforce_multipath

cinder_volume_type = None

字符串值

用于在 cinder 中创建卷的卷类型。

有些 Cinder 后端可以有多个卷类型来优化存储使用。添加此选项可让操作员在 Cinder 中选择可为镜像优化的特定卷类型。

如果没有设置,则将使用 cinder 配置中指定的默认卷类型来创建卷。

可能的值:

  • 来自 cinder 的有效卷类型

相关选项:

注意

您不能使用与 NFS 后端关联的加密 volume_type。当 glance_store 尝试写入或访问该卷中存储的镜像数据时,存储在 NFS 后端上的加密卷都会引发异常。请咨询您的 Cinder 管理员来确定适当的 volume_type。

default_backend = None

字符串值

存储数据要存储在的默认后端的存储标识符。

该值必须定义为 DEFAULT 配置组中 enabled_backends 配置选项定义的字典中的其中一个键。

如果没有为这个选项定义值:

  • 消耗的服务可能会拒绝启动
  • 没有指定特定后端的 store_add 调用会引发 glance_store.exceptions.UnknownScheme 异常

相关选项:

  • enabled_backends

default_store = file

字符串值

用于存储镜像的默认方案。

提供字符串值,代表用于存储镜像的默认方案。如果没有设置,Glance 使用 file 作为默认方案来使用文件存储镜像。

注意

为这个配置选项提供的值必须是使用 stores 配置选项注册的存储的有效方案。

可能的值:

  • file
  • filesystem
  • http
  • https
  • swift
  • swift+http
  • swift+https
  • swift+config
  • rbd
  • cinder
  • vsphere
  • s3

相关选项:

  • 存储

弃用自: Rocky

reason: 这个选项针对新的配置选项 ''default_backend'' 弃用,它的行为与 ''default_store' 配置选项类似。

计划在 U 开发周期中移除这个选项。

default_swift_reference = ref1

字符串值

引用默认 Swift 帐户/后端存储参数。

提供字符串值,代表对使用 swift 帐户/后端存储进行镜像存储所需的默认参数集的引用。此配置选项的默认引用值为 ref1。此配置选项会解引用参数,并在每次添加新镜像时方便 Swift 存储后端中的镜像存储。

可能的值:

  • 有效字符串值

相关选项:

  • None

filesystem_store_chunk_size = 65536

整数值

块大小,以字节为单位。

读取或写入镜像文件时使用的块大小。增加这个值可能会提高吞吐量,但在处理大量请求时可能会稍微增加内存用量。

可能的值:

  • 任何正整数值

相关选项:

  • None

filesystem_store_datadir = /var/lib/glance/images

字符串值

文件系统后端存储将镜像写入的目录。

启动后,Glance 将创建该目录(如果该目录尚不存在),并验证对其运行 glance-api 的用户的写入访问权限。如果写入访问不可用,则会引发 BadStoreConfiguration 异常,文件系统存储可能无法添加新镜像。

注意

只有在将文件系统存储用作存储后端时才使用此目录。filesystem_store_datadirfilesystem_store_datadirs 选项必须在 glance-api.conf 中指定。如果指定了这两个选项,则会引发 BadStoreConfiguration,文件系统存储可能无法添加新镜像。

可能的值:

  • 到目录的有效路径

相关选项:

  • filesystem_store_datadirs
  • filesystem_store_file_perm

filesystem_store_datadirs = None

多值

文件系统后端存储写入镜像的目录及其优先级列表。

文件系统存储可以配置为将镜像存储在多个目录中,而不是使用由 filesystem_store_datadir 配置选项指定的单个目录。使用多个目录时,可以赋予每个目录一个可选的优先级,以指定应使用它们的优先顺序。priority 是一个与目录路径连接在一起的整数,一个冒号表示更高的优先级。当两个目录具有相同的优先级时,会使用具有最多可用空间的目录。如果没有指定优先级,则默认为零。

有关使用多个存储目录配置文件系统存储的更多信息,请访问 https://docs.openstack.org/glance/latest/configuration/configuring.html

注意

只有在将文件系统存储用作存储后端时才使用此目录。filesystem_store_datadirfilesystem_store_datadirs 选项必须在 glance-api.conf 中指定。如果指定了这两个选项,则会引发 BadStoreConfiguration,文件系统存储可能无法添加新镜像。

可能的值:

  • 以下格式的字符串列表:

    • <a valid directory path>:<optional integer priority>

相关选项:

  • filesystem_store_datadir
  • filesystem_store_file_perm

filesystem_store_file_perm = 0

整数值

镜像文件的文件访问权限。

为镜像数据设置所需的文件访问权限。这提供了启用其他服务(如 Nova)的方法,以直接从文件系统存储使用镜像。运行要授予访问权限的服务的用户可能成为拥有创建文件的组的成员。为这个配置选项分配一个小于或等于 0 的值表示没有对默认权限进行任何更改。这个值将被解码为八进制数字。

如需更多信息,请参阅文档 https://docs.openstack.org/glance/latest/configuration/configuring.html

可能的值:

  • 有效文件访问权限
  • 任何负整数

相关选项:

  • None

filesystem_store_metadata_file = None

字符串值

文件系统存储元数据文件。

到包含与文件系统存储关联的任何位置返回的元数据的路径。设置此选项后,它将仅用于创建之后创建的新映像 - 之前存在的镜像不会受到影响。

该文件必须包含有效的 JSON 对象。该对象应包含键 idmountpoint。这两个键的值应当是字符串。

可能的值:

  • 存储元数据文件的有效路径

相关选项:

filesystem_thin_provisioning = False

布尔值

在此后端中启用或未进行精简配置。

此配置选项启用在文件系统中不实际写入 null 字节序列的功能,显示的漏洞将自动被文件系统解释为 null 字节,且不实际消耗您的存储。除了在后端保存空间外,启用此功能还将加快镜像上传并保存网络流量,因为不通过网络发送 null 字节序列。

可能的值:

  • True
  • False

相关选项:

  • None

http_proxy_information = {}

字典值

用于连接到远程服务器的 http/https 代理信息。

此配置选项指定应该用来连接到远程服务器的 http/https 代理信息。代理信息应该是 scheme 和 proxy 的键值对,如 http:10.0.0.1:3128。您还可以通过使用逗号分隔键值对来指定多个方案来指定代理,例如 http:10.0.0.1:3128, https:10.0.0.1:1080。

可能的值:

  • 以逗号分隔的 scheme:proxy 对列表,如上所述

相关选项:

  • None

https_ca_certificates_file = None

字符串值

CA 捆绑包文件的路径。

此配置选项可让操作员使用自定义证书颁发机构文件来验证远程服务器证书。如果设置了这个选项,则忽略 https_insecure 选项,并且指定的 CA 文件将用于验证服务器证书并建立与服务器的安全连接。

可能的值:

  • CA 文件的有效路径

相关选项:

  • https_insecure

https_insecure = True

布尔值

设置远程服务器证书验证。

此配置选项取在布尔值中,以确定是否验证远程服务器证书。如果设置为 True,则不会验证远程服务器证书。如果选项设为 False,则使用默认 CA 信任存储进行验证。

如果设置了 https_ca_certificates_file,则忽略这个选项。然后,使用 https_ca_certificates_file 选项指定的文件验证远程服务器证书。

可能的值:

  • True
  • False

相关选项:

  • https_ca_certificates_file

rados_connect_timeout = 0

整数值

连接到 Ceph 集群的超时值。

此配置选项在连接到 Ceph 集群时使用的超时值(以秒为单位)内设置在关闭连接前等待 glance-api 的时间。这可防止在连接到 RBD 时出现 glance-api 挂起。如果此选项的值设为小于或等于 0,则不设置超时,并且使用默认的 librados 值。

可能的值:

  • 任何整数值

相关选项:

  • None

弃用自: Zed

原因: 此选项在年内没有任何影响。用户要用于连接 Ceph 集群的超时应在 Ceph 配置文件中使用 client_mount_timeout

`rbd_store_ceph_conf = `

字符串值

Ceph 配置文件路径.

此配置选项指定要使用的 Ceph 配置文件的路径。如果用户未设置此选项的值,或者设置为空字符串,librados 将按顺序搜索默认的 Ceph 配置文件位置来读取标准 ceph.conf 文件。详情请参阅 Ceph 文档。

注意

如果使用 Cephx 身份验证,这个文件应该在 client.<USER> 部分中包含对正确的密钥环的引用

注意 2:如果将此选项留空(默认),则使用的实际 Ceph 配置文件可能会根据所使用的 librados 版本而改变。如果您准确了解哪个配置文件生效,您可以使用此选项在此处指定该文件。

可能的值:

  • 配置文件的有效路径

相关选项:

  • rbd_store_user

rbd_store_chunk_size = 8

整数值

将 RADOS 镜像分解到其中的大小(以 MB 为单位)。

提供一个整数值,以 MB 为单位代表 Glance 映像的块。默认块大小为 8MB。为获得最佳性能,该值应该是 2 的指数。

当 Ceph 的 RBD 对象存储系统用作存储 Glance 镜像的存储后端时,镜像将区块化为使用此选项设置的大小对象。然后,这些区块对象存储在分布式块数据存储中,以用于 Glance。

可能的值:

  • 任何正整数值

相关选项:

  • None

rbd_store_pool = images

字符串值

存储镜像的 RADOS 池。

当 RBD 用作存储 Glance 镜像的存储后端时,镜像通过对对象(镜像区块)的逻辑分组存储到 池中。每个池都通过它可以包含的放置组数量来定义。使用的默认池是 images

有关 RBD 存储后端的更多信息,请访问 :http://ceph.com/planet/how-data-is-stored-in-ceph-cluster/

可能的值:

  • 有效的池名称

相关选项:

  • None

rbd_store_user = None

字符串值

要进行身份验证的 RADOS 用户。

此配置选项在 RADOS 用户中进行身份验证。这只在启用 RADOS 身份验证时才需要,且仅在用户使用 Cephx 身份验证时才适用。如果用户未设置此选项的值,或设置为 None,则会选择默认值,它将基于 rbd_store_ceph_conf 中的 client. 部分。

可能的值:

  • 有效的 RADOS 用户

相关选项:

  • rbd_store_ceph_conf

rbd_thin_provisioning = False

布尔值

在此后端中启用或未进行精简配置。

此配置选项启用 RBD 后端上不实际写入 null 字节序列的功能,可能出现的漏洞由 Ceph 自动解释为 null 字节,且不会真正使用您的存储。除了在后端保存空间外,启用此功能还将加快镜像上传并保存网络流量,因为不通过网络发送 null 字节序列。

可能的值:

  • True
  • False

相关选项:

  • None

rootwrap_config = /etc/glance/rootwrap.conf

字符串值

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

cinder 存储需要 root 特权才能运行镜像卷(用于连接到 iSCSI/FC 卷并读取/写入卷数据等)。该配置文件应允许 cinder store 和 os-brick 库所需的命令。

可能的值:

  • rootwrap 配置文件的路径

相关选项:

  • None

s3_store_access_key = None

字符串值

S3 查询令牌访问密钥。

此配置选项使用访问密钥来使用 Amazon S3 或 S3 兼容存储服务器进行身份验证。使用 S3 存储后端时需要这个选项。

可能的值:

  • 任何字符串值,这是具有适当权限的用户的访问密钥

相关选项:

  • s3_store_host
  • s3_store_secret_key

s3_store_bucket = None

字符串值

用于存储 Glance 数据的 S3 存储桶。

此配置选项指定 glance 镜像在 S3 中存储的位置。如果 s3_store_create_bucket_on_put 设为 true,它将自动创建,即使存储桶不存在。

可能的值:

  • 任何字符串值

相关选项:

  • s3_store_create_bucket_on_put
  • s3_store_bucket_url_format

s3_store_bucket_url_format = auto

字符串值

用于确定对象的 S3 调用格式。

此配置选项使用访问模型来指定 S3 存储桶中对象地址。

注意:在 路径样式中,对象的端点类似于 https://s3.amazonaws.com/bucket/example.img在虚拟样式中,对象的端点类似于 https://bucket.s3.amazonaws.com/example.img。如果您不遵循存储桶名称中的 DNS 命名约定,您可以以路径样式获取对象,但不能以虚拟样式获取对象。

可能的值:

  • 自动、虚拟path的任何字符串值

相关选项:

  • s3_store_bucket

`s3_store_cacert = `

字符串值

要使用的 CA 证书捆绑包的路径。默认值(空字符串)强制使用 botocore 使用的默认 CA 证书捆绑包。

可能的值:

  • 要使用的 CA 证书捆绑包的路径
  • 使用 botocore 使用的默认 CA 证书捆绑包的空字符串

s3_store_create_bucket_on_put = False

布尔值

确定 S3 是否要创建新 bucket。

此配置选项使用布尔值来指示 Glance 是否应该创建新存储桶到 S3 (如果它不存在)。

可能的值:

  • 任何布尔值

相关选项:

  • None

s3_store_host = None

字符串值

S3 服务器正在侦听的主机。

此配置选项设置 S3 或 S3 兼容存储服务器的主机。使用 S3 存储后端时需要这个选项。主机可以包含 DNS 名称(如 s3.amazonaws.com、my-object-storage.com)或 IP 地址(127.0.0.1)。

可能的值:

  • 有效的 DNS 名称
  • 有效的 IPv4 地址

相关选项:

  • s3_store_access_key
  • s3_store_secret_key

s3_store_large_object_chunk_size = 10

整数值

在上传部分时,多部分上传部分的大小(以 MB 为单位)应该使用 S3。

此配置选项使用镜像分割大小(以 MB 为单位)用于 Multipart Upload。

注: 您只能分割最多 10,000 个镜像。

可能的值:

  • 任何正整数值(必须大于或等于 5M)

相关选项:

  • s3_store_large_object_size
  • s3_store_thread_pools

s3_store_large_object_size = 100

整数值

S3 开始块镜像文件以及在 S3 中进行多部分上传的大小(以 MB 为单位)。

此配置选项使用以 MB 为单位的阈值,以确定是否将镜像上传到 S3,还是按原样分割(多部分上传)。

注: 您只能分割最多 10,000 个镜像。

可能的值:

  • 任何正整数值

相关选项:

  • s3_store_large_object_chunk_size
  • s3_store_thread_pools

`s3_store_region_name = `

字符串值

S3 区域名称。

此参数将设置 boto 使用的 region_name。如果没有设置此参数,我们将尝试从 s3_store_host 中计算它。

可能的值:

  • 有效的区域名称

相关选项:

  • s3_store_host

s3_store_secret_key = None

字符串值

S3 查询令牌 secret 密钥。

此配置选项使用 secret 密钥与 Amazon S3 或 S3 兼容存储服务器进行身份验证。使用 S3 存储后端时需要这个选项。

可能的值:

  • 任何字符串值,这是与使用 s3_store_host 选项指定的访问密钥对应的 secret 键。

相关选项:

  • s3_store_host
  • s3_store_access_key

s3_store_thread_pools = 10

整数值

在 S3 中执行多部分上传的线程池数量。

此配置选项在执行多部分上传时采用线程池数量。

可能的值:

  • 任何正整数值

相关选项:

  • s3_store_large_object_size
  • s3_store_large_object_chunk_size

stores = ['file', 'http']

列出值

启用的 Glance 存储列表。

注册存储后端,以逗号分隔列表形式存储磁盘镜像。启用用于存储使用 Glance 的磁盘镜像的默认存储是 filehttp

可能的值:

  • 以逗号分隔的列表,其中包括:

    • file
    • http
    • swift
    • rbd
    • cinder
    • vmware
    • s3

相关选项:

  • default_store

弃用自: Rocky

reason: 这个选项会根据新的配置选项 ''enabled_backends'' 弃用,这有助于配置不同方案的多个后端存储。

计划在 U 开发周期中移除这个选项。

swift_buffer_on_upload = False

布尔值

在上传到 Swift 前缓冲镜像片段。

提供布尔值以指示 Glance 在上传到 swift 时是否应将镜像数据缓冲到磁盘。这可让 Glance 恢复上传到错误。

注意:在启用这个选项时,当启用这个选项时,当这个 API 节点上的磁盘用量增加时,应该非常谨慎。请注意,根据文件系统的配置方式,用于缓冲的磁盘空间可能会减少 glance 镜像缓存的可用磁盘空间。磁盘利用率将根据以下 equation 的上限:(swift_store_large_object_chunk_size * worker * 1000)

可能的值:

  • True
  • False

相关选项:

  • swift_upload_buffer_dir

swift_store_admin_tenants = []

列出值

将被授予 admin 访问权限的租户列表。

这是租户的列表,将被授予由 Glance 在多租户模式下由 Glance 创建的所有 Swift 容器的读/写访问权限。默认值为空列表。

可能的值:

  • 以逗号分隔的字符串列表,代表 Keystone 项目/租户的 UUID

相关选项:

  • None

swift_store_auth_address = None

字符串值

Swift 身份验证服务侦听的端口。

swift_store_auth_insecure = False

布尔值

设置服务器证书验证。

此布尔值决定是否验证服务器证书。如果此选项设为 True,则 swiftclient 在验证时不会检查有效的 SSL 证书。如果选项设为 False,则使用默认 CA 信任存储进行验证。

可能的值:

  • True
  • False

相关选项:

  • swift_store_cacert

swift_store_auth_version = 2

字符串值

要使用的身份验证服务版本。对于 keystone 有效版本是 2 和 3,对于 swauth 和 rackspace 为 1(已弃用) 。

swift_store_cacert = None

字符串值

CA 捆绑包文件的路径。

此配置选项可让操作员在连接到 Swift 时指定自定义证书颁发机构文件的路径,以进行 SSL 验证。

可能的值:

  • CA 文件的有效路径

相关选项:

  • swift_store_auth_insecure

swift_store_config_file = None

字符串值

包含 swift 帐户的文件的绝对路径。

包括一个字符串值,代表配置的每个 Swift 帐户/后向存储具有引用的配置的路径。默认情况下,未指定文件路径并禁用自定义 Swift 引用。强烈建议在将镜像存储中使用 Swift 存储后端来配置此选项,因为它可避免在数据库中存储凭证。

注意

如果将 swift_store_multi_tenant 设置为 True,请不要配置这个选项。

可能的值:

  • 代表 glance-api 节点上的绝对路径的字符串值

相关选项:

  • swift_store_multi_tenant

swift_store_container = glance

字符串值

为多个容器存储 images/name 前缀的单个容器名称

当单个容器用于存储镜像时,此配置选项指示 Glance 帐户中的容器用于存储所有镜像。当多个容器用于存储镜像时,这将是所有容器的名称前缀。可以使用配置选项 swift_store_multiple_containers_seed 控制单个/多个容器的使用。

使用多个容器时,容器将按照为此配置选项设置的值加上镜像 UUID 的前 N 个字符,作为由下划线分隔的后缀(其中 N 由 swift_store_multiple_containers_seed指定)。

示例:如果 seed 设为 3,swift_store_container = glance,则带有 UUID fdae39a1-bac5-4238-aba4-69bcc726e848 的一个镜像将被放入容器 glance_fda。在创建容器名称时包括在 UUID 中的横线不会计算在字符长度的限制中,因此,当 N= 10 时,容器名称可以为 glance_fdae39a1-ba.

可能的值:

  • 如果使用单个容器,则此配置选项可以是 Glance 的 Swift 帐户中有效的 swift 容器名称的任何字符串
  • 如果使用多个容器,则此配置选项可以是任意字符串,只要它满足 Swift 强制的容器命名规则。还应考虑 swift_store_multiple_containers_seed 的值。

相关选项:

  • swift_store_multiple_containers_seed
  • swift_store_multi_tenant
  • swift_store_create_container_on_put

swift_store_create_container_on_put = False

布尔值

在上传镜像时,创建容器(如果不存在)。

在上传镜像时,如果相应的容器不存在,则会创建它,如果此配置选项被设置为 True。默认情况下,不会创建它。这个行为适用于单和多个容器模式。

可能的值:

  • True
  • False

相关选项:

  • None

swift_store_endpoint = None

字符串值

用于 Swift 后端存储的 URL 端点。

提供字符串值,代表用于将 Glance 镜像存储在 Swift 存储中的 URL 端点。默认情况下,不会设置端点,并使用 auth 返回的存储 URL。使用 swift_store_endpoint 设置端点会覆盖存储 URL,并用于 Glance 镜像存储。

注意

URL 应包括最多的路径,但不包括容器。通过将容器和对象附加到配置的 URL 来获取对象的位置。

可能的值:

  • 代表 Swift 容器的有效 URL 路径的字符串值

相关选项:

  • None

swift_store_endpoint_type = publicURL

字符串值

Swift 服务的端点类型。

此字符串值指示用于获取 Swift 端点的端点类型。端点类型决定了用户被允许执行的操作,例如,读取和写入存储。只有在 swift_store_auth_version 大于 1 时才会使用此设置。

可能的值:

  • publicURL
  • adminURL
  • internalURL

相关选项:

  • swift_store_endpoint

swift_store_expire_soon_interval = 60

整数值

定义在当前令牌到期之前请求新令牌的窗口大小(以秒为单位)。

通常,Swift 存储驱动程序在当前令牌过期时获取新令牌,以确保持续访问 Swift。但是,如果令牌实时过期,一些 Swift 事务(如上传镜像片段)可能无法正常恢复。

因此,通过在当前令牌到期前获取新令牌,我们在尝试事务前确保令牌不会过期或接近过期。默认情况下,Swift 存储驱动程序在当前令牌过期前请求新的令牌 60 秒或更短。

可能的值:

  • 正整数值

相关选项:

  • None

swift_store_key = None

字符串值

用于对 Swift 身份验证服务进行身份验证的用户的身份验证密钥。

swift_store_large_object_chunk_size = 200

整数值

镜像数据片段时段的最大大小(以 MB 为单位)。

当镜像数据被分段为上传大于 Swift 集群实施的限制的镜像时,镜像数据将分为不大于此配置选项指定大小的片段。详情请参考 swift_store_large_object_size

例如:如果 swift_store_large_object_size 为 5GB,而 swift_store_large_object_chunk_size 为 1GB,则大小为 6.2GB 的镜像将被分为 7 段,前 6 个段的大小为 1GB,第七个段的大小为 0.2GB。

可能的值:

  • 一个小于或等于 Swift 集群实施的大型对象限制的正整数。

相关选项:

  • swift_store_large_object_size

swift_store_large_object_size = 5120

整数值

Glance 将启动分段数据的大小(以 MB 为单位)。

Swift 对单个上传对象的大小具有上限。默认情况下,这是 5GB。要上传大于这个限制的对象,对象被分段为与清单文件关联的多个较小的对象。如需更多详情,请参阅 https://docs.openstack.org/swift/latest/overview_large_objects.html

此配置选项指定 Swift 驱动程序将镜像数据分段到多个较小的文件的大小阈值。目前,Swift 驱动程序只支持创建动态大对象。

注意

这应该通过考虑 Swift 集群实施的大对象限制来设置。

可能的值:

  • 一个小于或等于 Swift 集群实施的大型对象限制的正整数。

相关选项:

  • swift_store_large_object_chunk_size

swift_store_multi_tenant = False

布尔值

将镜像存储在租户的 Swift 帐户中。

这可让多租户存储模式,使 Glance 镜像存储在租户特定的 Swift 帐户中。如果禁用,Glance 会将所有镜像存储在自己的帐户中。如需多租户存储的详细信息,请访问 https://wiki.openstack.org/wiki/GlanceSwiftTenantSpecificStorage

注意

如果使用多租户 swift 存储,请确保您没有通过 swift_store_config_file 选项设置 swift 配置文件。

可能的值:

  • True
  • False

相关选项:

  • swift_store_config_file

swift_store_multiple_containers_seed = 0

整数值

seed 表示用于存储镜像的容器数量。

在使用单租户存储时,镜像可以存储在一个或多个容器中。当设置为 0 时,所有镜像都将存储在一个容器中。当设置为 1 到 32 之间的整数值时,会使用多个容器来存储镜像。此配置选项将决定创建多少个容器。将使用的容器总数等于 16^N,因此,如果此配置选项设为 2,则将使用 16^2=256 容器来存储镜像。

有关命名约定的详情,请参阅 swift_store_container。有关使用多个容器的更多详细信息,请参阅 https://specs.openstack.org/openstack/glance-specs/specs/kilo/swift-store-multiple-containers.html

注意

这仅在禁用 swift_store_multi_tenant 时使用。

可能的值:

  • 小于或等于 32 的非负整数

相关选项:

  • swift_store_container
  • swift_store_multi_tenant
  • swift_store_create_container_on_put

swift_store_region = None

字符串值

Glance 使用的 Swift 端点的区域。

提供字符串值,代表 Glance 可以为镜像存储连接的 Swift 区域。默认情况下,没有设置区域。

当 Glance 使用 Swift 作为存储后端来为具有多个端点的特定租户存储镜像时,使用 swift_store_region 设置 Swift 区域可让 Glance 在指定区域中连接 Swift,而不是单个区域连接。

此选项可以针对单租户和多租户存储进行配置。

注意

使用 swift_store_region 设置区域是特定于租户的,只有在 租户在不同区域间有多个端点时才需要。

可能的值:

  • 代表有效 Swift 区域的字符串值。

相关选项:

  • None

swift_store_retry_get_count = 0

整数值

在请求失败前重试 Swift 下载的次数。

提供一个整数值,代表在出错前必须重试镜像下载的次数。默认值为 0 (在失败的镜像下载时不重试)。当设置为正整数值时,swift_store_retry_get_count 可确保在发送错误消息前在下载失败时多次尝试下载。

可能的值:

  • 正整数值

相关选项:

  • None

swift_store_service_type = object-store

字符串值

要使用的 Swift 服务类型。

提供字符串值,代表在使用 Swift 后端存储时用于存储镜像的服务类型。默认服务类型设置为 object-store

注意

如果 swift_store_auth_version 设为 2,则此配置选项的值需要是 object-store。如果使用较高版本的 Keystone 或不同的身份验证方案,则可以修改此选项。

可能的值:

  • 代表 Swift 存储的有效服务类型的字符串。

相关选项:

  • None

swift_store_ssl_compression = True

布尔值

HTTPS Swift 请求的 SSL 层压缩。

提供布尔值,以确定是否对 SSL 层的镜像压缩 HTTPS Swift 请求。默认情况下启用压缩。

在将 Swift 用作 Glance 镜像存储的后端存储时,可以使用此选项设置 HTTPS Swift 请求的 SSL 层压缩。如果设置为 False,则禁用 HTTPS Swift 请求的 SSL 层压缩。禁用此选项可能会提高已压缩格式(如 qcow2)的镜像的性能。

可能的值:

  • True
  • False

相关选项:

  • None

swift_store_use_trusts = True

布尔值

将信任用于多租户 Swift 存储。

此选项指示 Swift 存储在使用多租户存储时为每个 add/get 请求创建信任。使用信任可让 Swift 存储避免在上传或下载数据期间由身份验证令牌过期导致的问题。

默认情况下,swift_store_use_trusts 设置为 True(启用信任时使用)。如果设置为 False,则使用用户令牌用于 Swift 连接,从而消除信任创建开销。

注意

只有在 swift_store_multi_tenant 设为 True时,才会考虑此选项

可能的值:

  • True
  • False

相关选项:

  • swift_store_multi_tenant

swift_store_user = None

字符串值

对 Swift 身份验证服务进行身份验证的用户。

swift_upload_buffer_dir = None

字符串值

在上传到 Swift 前,用于缓冲镜像片段的目录。

提供字符串值,代表 glance 节点上的目录的绝对路径,其中镜像片段在上传到 swift 之前会短暂被缓冲。

备注:

  • 只有在配置选项 swift_buffer_on_upload 被设置为 True 时才需要。
  • 应置备该目录,以保持 swift_store_large_object_chunk_size 以及给定 glance 节点可以同时上传的最大镜像数。

可能的值:

  • 代表绝对目录路径的字符串值

相关选项:

  • swift_buffer_on_upload
  • swift_store_large_object_chunk_size

vmware_api_retry_count = 10

整数值

VMware API 重试次数。

此配置选项指定在连接相关问题或服务器 API 调用超载时必须重试 VMware ESX/VC 服务器 API 的次数。无法指定 retry forever

可能的值:

  • 任何正整数值

相关选项:

  • None

vmware_ca_file = None

字符串值

CA 捆绑包文件的绝对路径。

此配置选项可让操作员使用自定义 Cerificate Authority File 来验证 ESX/vCenter 证书。

如果设置了这个选项,则会忽略"vmware_insecure"选项,并且指定的 CA 文件将用于验证 ESX/vCenter 服务器证书,并建立与服务器的安全连接。

可能的值:

  • 是 CA 文件的有效绝对路径的任何字符串

相关选项:

  • vmware_insecure

vmware_datastores = None

多值

可以存储镜像的数据存储。

此配置选项指定镜像可以存储在 VMWare 存储后端中的数据存储。这个选项可多次指定,以指定多个数据存储。数据存储名称应在其数据中心路径后指定,用":"分开。可选权重可以在数据存储名称后指定,并再次以":"分开来指定优先级。因此,所需格式将变为 <datacenter_path>:<datastore_name>:<optional_weight>。

添加镜像时,将选择具有最高权重的数据存储,除非在已知镜像大小时没有足够的可用空间。如果未指定权重,则假定为 0,目录将被视为最后选择。如果多个数据存储具有相同的权重,则会选择具有最多可用空间的权重。

可能的值:

  • 任何格式的字符串: <datacenter_path>:<datastore_name>:<optional_weight>

相关选项:* None

vmware_insecure = False

布尔值

设置 ESX/vCenter 服务器证书验证。

此配置选项使用布尔值来确定是否验证 ESX/vCenter 服务器证书。如果此选项设为 True,则不会验证 ESX/vCenter 服务器证书。如果此选项设置为 False,则使用默认 CA 信任存储进行验证。

如果设置了 "vmware_ca_file" 选项,则忽略这个选项。在这种情况下,将使用"vmware_ca_file"选项指定的文件来验证 ESX/vCenter 服务器证书。

可能的值:

  • True
  • False

相关选项:

  • vmware_ca_file

vmware_server_host = None

主机地址值

ESX/ESXi 或 vCenter Server 目标系统的地址。

此配置选项设置 ESX/ESXi 或 vCenter Server 目标系统的地址。使用 VMware 存储后端时需要这个选项。地址可以包含 IP 地址(127.0.0.1)或 DNS 名称(www.my-domain.com)。

可能的值:

  • 有效的 IPv4 或 IPv6 地址
  • 有效的 DNS 名称

相关选项:

  • vmware_server_username
  • vmware_server_password

vmware_server_password = None

字符串值

服务器密码.

此配置选项使用密码来使用 VMware ESX/ESXi 或 vCenter Server 进行身份验证。使用 VMware 存储后端时需要这个选项。

可能的值:

  • 任何字符串,这是与使用 "vmware_server_username" 选项指定的用户名对应的密码

相关选项:

  • vmware_server_host
  • vmware_server_username

vmware_server_username = None

字符串值

服务器用户名.

此配置选项使用用于使用 VMware ESX/ESXi 或 vCenter Server 进行身份验证的用户名。使用 VMware 存储后端时需要这个选项。

可能的值:

  • 任何字符串,这是具有适当权限的用户的用户名

相关选项:

  • vmware_server_host
  • vmware_server_password

vmware_store_image_dir = /openstack_glance

字符串值

glance 镜像将存储在数据存储中的目录。

此配置选项指定 glance 镜像将存储在 VMware 数据存储中的目录的路径。如果没有设置这个选项,则存储 glance 镜像的默认目录为 openstack_glance。

可能的值:

  • 是目录有效路径的任何字符串

相关选项:

  • None

vmware_task_poll_interval = 5

整数值

在 VMware ESX/VC 服务器上轮询远程任务的时间间隔(以秒为单位)。

此配置选项使用休眠时间(以秒为单位)轮询 async 任务,作为 VMWare ESX/VC 服务器 API 调用的一部分。

可能的值:

  • 任何正整数值

相关选项:

  • None

3.1.14. healthcheck

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

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

backends = []

列出值

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

detailed = False

布尔值

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

disable_by_file_path = None

字符串值

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

disable_by_file_paths = []

列出值

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

path = /healthcheck

字符串值

响应 healtcheck 请求的路径。

3.1.15. image_format

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

表 3.14. image_format
配置选项 = 默认值类型Description

container_formats = ['ami', 'ari', 'aki', 'bare', 'ovf', 'ova', 'docker', 'compressed']

列出值

container_format 镜像属性支持的值

disk_formats = ['ami', 'ari', 'aki', 'vhd', 'vhdx', 'vmdk', 'raw', 'qcow2', 'vdi', 'iso', 'ploop']

列出值

disk_format 镜像属性支持的值

vmdk_allowed_types = ['streamOptimized', 'monolithicSparse']

列出值

描述允许的 VMDK create-type 子格式的字符串列表。建议您只包含 single-file-with-sparse-header 变体,以避免因为处理命名范围而导致潜在的主机文件暴露。如果此列表为空,则不允许 VDMK 镜像类型。请注意,这目前仅在镜像转换过程中检查(如果已启用),并限制我们将转换的 VMDK 镜像类型。

3.1.16. key_manager

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

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

3.1.17. keystone_authtoken

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

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

3.1.18. os_brick

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

表 3.17. os_brick
配置选项 = 默认值类型描述

lock_path = None

字符串值

用于 os-brick 锁定文件的目录。默认为 oslo_concurrency.lock_path,它是计算节点的一个可识别的默认值,但不适用于 HCI 部署或控制器,其中 Glance 将 Cinder 用作后端,因为锁定应该使用相同的目录。

wait_mpath_device_attempts = 4

整数值

多路径设备在创建后为 I/O 就绪的尝试次数。通过 multipath -C 检查就绪度。请参阅相关的 wait_mpath_device_interval 配置选项。默认值为 4。

wait_mpath_device_interval = 1

整数值

等待多路径设备准备好 I/O 的间隔值。等待_mpath_device_attempts 中设置的最大尝试数。每个重试需要等待的时间(以秒为单位)是 base ^ 尝试 * 间隔,因此 4 次尝试 3 次尝试(1 次尝试 3 次),1 秒的间隔将会产生:2、4 和 8 秒。请注意,首次尝试前没有等待。默认值为 1。

3.1.19. oslo_concurrency

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

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

disable_process_locking = False

布尔值

启用或禁用进程间的锁定。

lock_path = None

字符串值

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

3.1.20. oslo_limit

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

表 3.19. oslo_limit
配置选项 = 默认值类型Description

auth-url = None

字符串值

身份验证 URL

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

endpoint_id = None

字符串值

在 Keystone 中注册的服务端点 ID。

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

字符串值

端点 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 = None

列出值

用于端点 URL 的接口列表(按首选顺序排列)。

version = None

字符串值

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

3.1.21. oslo_messaging_amqp

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

表 3.20. 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 服务器时,附加到地址前缀中。由消息总线用来识别发送到单个目的地的消息。

3.1.22. oslo_messaging_kafka

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

表 3.21. 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 = `

字符串值

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

3.1.23. oslo_messaging_notifications

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

表 3.22. 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 的同一配置。

3.1.24. oslo_messaging_rabbit

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

表 3.23. 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。

3.1.25. oslo_middleware

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

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

enable_proxy_headers_parsing = False

布尔值

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

3.1.26. oslo_policy

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

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

enforce_new_defaults = True

布尔值

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

enforce_scope = True

布尔值

此选项控制在评估策略时是否强制执行范围。如果为 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 策略检查的服务器身份验证

3.1.27. oslo_reports

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

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

file_event_handler = None

字符串值

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

file_event_handler_interval = 1

整数值

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

log_dir = None

字符串值

创建文件的日志目录的路径

3.1.28. paste_deploy

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

表 3.27. paste_deploy
配置选项 = 默认值类型Description

config_file = None

字符串值

粘贴配置文件的名称。

提供字符串值,代表粘贴配置文件的名称,以用于为服务器应用部署配置管道。

备注:

  • 为粘贴配置文件而不是绝对路径提供相对于 glance 目录的名称或路径。
  • 在大多数情况下,不需要编辑 Glance 附带的示例粘贴配置文件,因为它附带了所有常见部署类别的现成管道。

如果没有为此选项指定值,则在已知配置目录中搜索带有相应 Glance 服务配置文件名称前缀的 paste.ini 文件。(例如,如果此选项在 glance-api.conf 中缺少或者没有设置值,则服务将查找名为 glance-api-paste.ini 的文件。)如果没有找到粘贴配置文件,服务将不会启动。

可能的值:

  • 代表粘贴配置文件的名称的字符串值。

相关选项:

  • flavor

flavor = None

字符串值

在服务器应用程序管道中使用的部署类别。

提供字符串值,代表服务器应用程序管道中使用的适当部署类型。这通常是管道在粘贴配置文件中的部分名称,并删除了服务名称。

例如,如果粘贴配置文件中的粘贴部分名称为 [pipeline:glance-api-keystone],请将 flavor 设置为 keystone

可能的值:

  • 代表部分管道名称的字符串值。

相关选项:

  • config_file

3.1.29. profiler

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

表 3.28. 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 驱动程序发送 span。
  • Elasticsearch://127.0.0.1:9200 - 使用 elasticsearch 驱动程序发送 span。
  • Jaeger://127.0.0.1:6831 - 使用 jaeger tracing 作为发送 span 的驱动程序。

enabled = False

布尔值

启用此节点上所有服务的性能分析。

默认值为 False (完全禁用性能分析功能)。

可能的值:

  • true :启用该功能
  • false :禁用该功能。该配置集无法通过此项目操作启动。如果分析由另一个项目触发,则此项目部分将为空。

es_doc_type = notification

字符串值

elasticsearch 中通知索引的文档类型。

es_scroll_size = 10000

整数值

Elasticsearch 批量分割大型请求。此参数定义每个批处理的最大大小(例如: es_scroll_size=10000)。

es_scroll_time = 2m

字符串值

此参数是一个时间值参数(例如: es_scroll_time=2m),指定参与搜索的节点将保持相关资源的时间长度,以便继续和支持它。

filter_error_trace = False

布尔值

启用包含 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 服务。此参数定义名称(例如: send inal_service_name=mymaster)。

socket_timeout = 0.1

浮点值

Redissentinel 在连接上提供了一个 timeout 选项。此参数定义该超时(例如: socket_timeout=0.1)。

trace_sqlalchemy = False

布尔值

在服务中启用 SQL 请求性能分析。

默认值为 False (SQL 请求不会被追踪)。

可能的值:

  • true :启用 SQL 请求配置集。每个 SQL 查询都将是 trace 的一部分,可以通过花费多少时间进行分析。
  • false :禁用 SQL 请求配置集。花费的时间仅显示在更高级别的操作上。无法以这种方式分析单个 SQL 查询。

3.1.30. store_type_location_strategy

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

表 3.29. store_type_location_strategy
配置选项 = 默认值类型Description

store_type_preference = []

列出值

存储后端的首选项顺序。

按照应该从存储后端检索镜像的顺序提供以逗号分隔的存储名称列表。这些存储名称必须使用 stores 配置选项注册。

注意

只有在将 store_type 选为 location_strategy 配置选项的值时,才会应用 store_type_preference 配置选项。空列表不会更改位置顺序。

可能的值:

  • 空列表
  • 以逗号分隔的注册存储名称列表。法律值包括:

    • file
    • http
    • rbd
    • swift
    • cinder
    • vmware

相关选项:

  • location_strategy
  • 存储

3.1.31. task

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

表 3.30. task
配置选项 = 默认值类型Description

task_executor = taskflow

字符串值

用于运行任务脚本的任务执行器。

提供代表用于任务执行的 executor 的字符串值。默认情况下使用 TaskFlow executor。

TaskFlow 帮助使任务执行简单、一致、可扩展且可靠。它还能够创建以声明性方式组合到流中的轻量级任务对象和/或功能。

可能的值:

  • taskflow

相关选项:

  • None

task_time_to_live = 48

整数值

任务在 之后的几小时内,可以是成功还是失败

work_dir = None

字符串值

用于异步任务操作的工作目录的绝对路径。

此处设置的目录将用于在目标存储中导入镜像之前对镜像进行操作。

注意

work_dir 提供值时,请确保提供足够的空间,以便在不用尽空间的情况下高效地运行并发任务。

可通过将 max_workers 数量乘以平均镜像大小(如 500MB)来实现粗略估算。镜像大小估算应该根据部署中的平均大小进行。请注意,根据运行的任务,您可能需要将此数量乘以某些因素,具体取决于任务的作用。例如,如果启用了镜像转换,您可能希望加倍可用的大小。所有这一切都说,请记住,它们只是估算,您应该根据最糟糕的情况完成,并准备在出现问题时采取行动。

可能的值:

  • 代表工作目录的绝对路径的字符串值

相关选项:

  • None

3.1.32. taskflow_executor

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

表 3.31. taskflow_executor
配置选项 = 默认值类型Description

conversion_format = None

字符串值

设置所需的镜像转换格式。

提供有效的镜像格式,您希望将镜像转换为 Glance 以供 Glance 使用。特定的存储后端需要适当的镜像格式转换,以便有效地处理存储基础架构的带宽和使用。

默认情况下,未设置 conversion_format,且必须在配置文件中明确设置。

此选项允许的值是 rawqcow2vmdkraw 格式是非结构化磁盘格式,应在使用 RBD 或 Ceph 存储后端进行镜像存储时选择。qcow2 由 QEMU 模拟器支持,该仿真器可以动态扩展并支持写时复制。vmdk 是许多常见虚拟机监视器(如 VMWare 工作站)支持的另一种常见磁盘格式。

可能的值:

  • qcow2
  • raw
  • vmdk

相关选项:

  • disk_formats

engine_mode = parallel

字符串值

设置 taskflow 引擎模式。

提供字符串类型值来设置 taskflow 引擎将任务调度到主机上的 worker 的模式。根据此模式,引擎在单线程或多个线程中执行任务。此配置选项的可能值为:serialparallel。当设置为 serial 时,引擎在单个线程中运行所有任务,从而对任务进行序列化执行。把它设置为 并行 会导致引擎在多个线程中运行任务。这会导致任务并行执行。

可能的值:

  • serial
  • parallel

相关选项:

  • max_workers

max_workers = 10

整数值

设置引擎可执行任务的数量。

提供整数值来限制可在主机上实例化的 worker 数量。换句话说,这个数字定义了 taskflow 引擎可以同时执行的并行任务数量。当引擎模式被设置为 parallel 时,这个值可以大于一。

可能的值:

  • 大于或等于 1 的整数值

相关选项:

  • engine_mode

3.1.33. Vault

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

表 3.32. 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"

3.1.34. wsgi

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

表 3.33. wsgi
配置选项 = 默认值类型描述

python_interpreter = None

字符串值

生成外部进程时要使用的 python 解释器的路径。如果未指定,这将是 sys.executable,它应该是运行 Glance 本身的同一解释器。然而,在某些情况下,(例如 uwsgi) sys.executable 可能实际指向 python 解释器,且必须设置替代值。

task_pool_threads = 16

整数值

池中用于处理异步任务的线程数(每个 worker 进程)。这会控制每个 worker 可以同时运行多少个异步任务(例如,镜像互操作性导入)。如果这太大,则每个 worker 和/或者可能会增加内存占用量,比如磁盘或出站网络带宽。如果这太小,则镜像导入请求将必须等待线程可用于开始处理。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.