openstack.cloud.server_info 模块 – 获取一个或多个计算实例的信息

注意

此模块是 openstack.cloud 集合 (版本 2.3.0) 的一部分。

如果您使用的是 ansible 包,则可能已经安装了此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install openstack.cloud。您需要其他需求才能使用此模块,请参阅 需求 获取详细信息。

要在 playbook 中使用它,请指定:openstack.cloud.server_info

概要

  • 从 OpenStack 获取服务器实例信息。

需求

在执行此模块的主机上需要以下需求。

  • python >= 3.6

  • openstacksdk >= 1.0.0

参数

参数

注释

all_projects

布尔值

是否列出所有项目中的服务器,还是仅列出当前授权范围内的项目中的服务器。

选项

  • false ← (默认)

  • true

api_timeout

整数

套接字层在 API 调用超时之前应等待多长时间。如果省略此参数,则不会将任何内容传递给 requests 库。

auth

字典

包含云的认证插件策略所需的认证信息字典。对于默认的 *password* 插件,这将包含 *auth_url*、*username*、*password*、*project_name* 以及任何关于域的信息(例如,*user_domain_name* 或 *project_domain_name*),如果云支持它们的话。对于其他插件,此参数需要包含该认证插件所需的任何参数。如果提供了命名云或存在 OpenStack OS_* 环境变量,则不需要此参数。

auth_type

字符串

要使用的认证插件的名称。如果云使用密码认证以外的其他认证方式,则应在此处指明插件的名称,并相应地更新 *auth* 参数的内容。

ca_cert

别名:cacert

字符串

CA 证书包的路径,可用作验证 SSL API 请求的一部分。

client_cert

别名:cert

字符串

客户端证书的路径,用作 SSL 事务的一部分。

client_key

别名:key

字符串

客户端密钥的路径,用作 SSL 事务的一部分。

cloud

任意类型

要操作的命名云或云配置。如果 *cloud* 是字符串,则它引用在 OpenStack clouds.yaml 文件中定义的命名云配置。为 *auth* 和 *auth_type* 提供默认值。如果提供了 *auth* 或存在 OpenStack OS_* 环境变量,则不需要此参数。如果 *cloud* 是字典,则它包含完整的云配置,就像 clouds.yaml 的一部分一样。

detailed

布尔值

如果为 true,则以额外 API 调用的代价返回有关服务器的更多详细信息。

选项

  • false ← (默认)

  • true

filters

字典

用于进一步过滤结果。可以是包含 JMESPath 表达式的字符串,也可以是元数据的字典。后者的元素本身也可能是字典。

interface

别名:endpoint_type

字符串

从服务目录中获取的端点 URL 类型。

选项

  • "admin"

  • "internal"

  • "public" ← (默认)

name

别名:server

字符串

将结果限制为名称或 UUID 与此 glob 表达式(例如 web*)匹配的服务器。

region_name

字符串

区域名称。

sdk_log_level

字符串

OpenStackSDK 的日志级别

选项

  • "INFO" ← (默认)

  • "DEBUG"

sdk_log_path

字符串

OpenStackSDK 日志文件的路径。如果为空,则不写入日志

timeout

整数

Ansible 应等待请求资源多长时间。

默认值: 180

validate_certs

别名:verify

布尔值

是否应验证 SSL API 请求。

在 Ansible 2.3 之前,默认为 true

选项

  • false

  • true

wait

布尔值

Ansible 是否应等到请求的资源完成。

选项

  • false

  • true ← (默认)

注释

注意

  • 结果包含服务器列表。

  • 可以使用标准的 OpenStack 环境变量(例如 OS_USERNAME),而不是提供显式值。

  • 认证信息由 openstacksdk 驱动,这意味着值可以来自 /etc/ansible/openstack.yaml、/etc/openstack/clouds.yaml 或 ~/.config/openstack/clouds.yaml 中的 yaml 配置文件,然后来自标准环境变量,最后来自 playbook 中的显式参数。更多信息可以在 https://docs.openstack.org/openstacksdk/ 找到。

示例

- name: Gather information about all 'web*' servers in active state
  openstack.cloud.server_info:
    cloud: devstack
    name: web*
    filters:
      vm_state: active

- name: Filter servers with nested dictionaries
  openstack.cloud.server_info:
    cloud: devstack
    filters:
      metadata:
        key1: value1
        key2: value2

返回值

常见的返回值已在 此处 记录,以下是此模块特有的字段

描述

servers

列表 / 元素=字典

匹配过滤器的服务器列表

返回值:始终

access_ipv4

字符串

用于访问此服务器的IPv4地址。可能由提供商自动设置。

返回:成功

access_ipv6

字符串

用于访问此服务器的IPv6地址。可能由提供商自动设置。

返回:成功

addresses

字典

此服务器可通过的地址字典。字典包含诸如“private”和“public”之类的键,每个键都包含一个地址列表字典。地址包含在字典中,键为“addr”和“version”,根据IP地址的协议,值为4或6。

返回:成功

admin_password

字符串

首次创建服务器时,它会提供管理员密码。

返回:成功

attached_volumes

列表 / 元素=字符串

已附加卷的列表。列表中的每个项目至少包含一个“id”键来标识特定的卷。

返回:成功

availability_zone

字符串

此服务器所属的可用区名称。

返回:成功

block_device_mapping

字符串

启用对实例的块设备映射的细粒度控制。这通常用于从卷启动服务器。

返回:成功

compute_host

字符串

此实例运行所在的计算主机的名称。仅对管理员用户显示在响应中。

返回:成功

config_drive

字符串

指示此服务器是否使用了配置驱动器。

返回:成功

created_at

字符串

服务器创建的时间戳。

返回:成功

description

字符串

服务器的描述。在微版本 2.19 之前,这被设置为服务器名称。

返回:成功

disk_config

字符串

磁盘配置。AUTO 或 MANUAL。

返回:成功

flavor

字典

服务器返回的 flavor 属性。

返回:成功

flavor_id

字符串

此服务器使用的 flavor 的引用,可以是 ID 或完整 URL。

返回:成功

has_config_drive

字符串

指示配置驱动器是否启用元数据注入。并非所有云提供商都启用此功能。

返回:成功

host_id

字符串

表示此服务器主机的 ID。

返回:成功

host_status

字符串

主机状态。

返回:成功

hostname

字符串

服务器启动时设置的主机名。默认情况下,仅对管理员用户显示在响应中。

返回:成功

hypervisor_hostname

字符串

虚拟机监控程序主机名。仅对管理员用户显示在响应中。

返回:成功

id

字符串

服务器的 ID。

返回:成功

image

字典

服务器返回的 image 属性。

返回:成功

image_id

字符串

此服务器使用的镜像的引用,可以是 ID 或完整 URL。

返回:成功

instance_name

字符串

实例名称。计算 API 根据实例名称模板生成实例名称。仅对管理员用户显示在响应中。

返回:成功

is_locked

布尔值

服务器的锁定状态。

返回:成功

kernel_id

字符串

使用 AMI 时内核镜像的 UUID。如果不是,则为 null。默认情况下,仅对管理员用户显示在响应中。

返回:成功

key_name

字符串

关联密钥对的名称。

返回:成功

launch_index

整数

当服务器通过多个创建操作启动时,这是服务器启动的顺序。默认情况下,仅对管理员用户显示在响应中。

返回:成功

launched_at

字符串

服务器启动的时间戳。

返回:成功

字符串

包含与此服务器相关的链接的字典列表。

返回:成功

max_count

字符串

要创建的服务器的最大数量。

返回:成功

metadata

字典

标签字符串列表。

返回:成功

min_count

字符串

要创建的服务器的最小数量。

返回:成功

name

字符串

服务器名称。

返回:成功

networks

字符串

网络对象。当租户定义了多个网络时,这是必需的参数。如果不指定 networks 参数,则服务器将附加到为当前租户创建的唯一网络。

返回:成功

power_state

字符串

此服务器的电源状态。

返回:成功

progress

整数

在服务器构建过程中,此值表示完成百分比。完成后,它将为 100。

返回:成功

project_id

字符串

此服务器关联的项目的 ID。

返回:成功

ramdisk_id

字符串

使用 AMI 时 ramdisk 镜像的 UUID。如果不是,则为 null。默认情况下,仅对管理员用户显示在响应中。

返回:成功

reservation_id

字符串

服务器的预留 ID。这是一个 ID,可用于跟踪使用多个创建操作创建的服务器组,所有这些服务器都将具有相同的 reservation_id。默认情况下,仅对管理员用户显示在响应中。

返回:成功

root_device_name

字符串

实例的根设备名称。默认情况下,仅对管理员用户显示在响应中。

返回:成功

scheduler_hints

字典

要发送到调度程序的数据字典。

返回:成功

security_groups

列表 / 元素=字典

适用的安全组列表。每个组都包含以下键:description、name、id 和 rules。

返回:成功

server_groups

列表 / 元素=字符串

服务器所属的服务器组的 UUID。目前最多只能包含一个条目。

返回:成功

status

字符串

此服务器所处的状态。有效值包括“ACTIVE”、“BUILDING”、“DELETED”、“ERROR”、“HARD_REBOOT”、“PASSWORD”、“PAUSED”、“REBOOT”、“REBUILD”、“RESCUED”、“RESIZED”、“REVERT_RESIZE”、“SHUTOFF”、“SOFT_DELETED”、“STOPPED”、“SUSPENDED”、“UNKNOWN”或“VERIFY_RESIZE”。

返回:成功

tags

列表 / 元素=字符串

关联标签列表。

返回:成功

task_state

字符串

此服务器的任务状态。

返回:成功

terminated_at

字符串

服务器终止的时间戳(如果已终止)。

返回:成功

trusted_image_certificates

列表 / 元素=字符串

在镜像签名验证期间用于验证签名证书的可信证书 ID 列表。

返回:成功

updated_at

字符串

此服务器上次更新的时间戳。

返回:成功

user_data

字符串

启动时要使用的配置信息或脚本。Base64 编码。

返回:成功

user_id

字符串

此服务器所有者的 ID。

返回:成功

vm_state

字符串

此服务器的虚拟机状态。

返回:成功

volumes

列表 / 元素=字符串

与 attached_volumes 相同。

返回:成功

作者

  • OpenStack Ansible SIG