openstack.cloud.image 模块 – 管理 OpenStack 镜像 (Glance) 服务的镜像。

注意

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

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

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

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

概要

  • 在 OpenStack 镜像 (Glance) 服务中创建或删除镜像。

要求

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

  • python >= 3.6

  • openstacksdk >= 1.0.0

参数

参数

注释

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

字符串

可用于验证 SSL API 请求的 CA 证书捆绑包的路径。

checksum

字符串

镜像的校验和。

client_cert

别名:cert

字符串

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

client_key

别名:key

字符串

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

cloud

任意

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

container_format

字符串

容器的格式。

此镜像属性无法更改。

示例有 amiakiaribareovfovadocker

默认值: "bare"

disk_format

字符串

正在上传的磁盘的格式。

此镜像属性无法更改。

示例有 amiariakivhdvmdkrawqcow2vdi、c(iso)、vhdxploop

默认值: "qcow2"

filename

字符串

必须上传的文件的路径。

此镜像属性无法更改。

id

字符串

上传镜像时的镜像 ID。

此镜像属性无法更改。

interface

别名:endpoint_type

字符串

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

选项

  • "admin"

  • "internal"

  • "public" ← (默认)

is_protected

别名:protected

布尔值

防止镜像被删除。

选项

  • false

  • true

is_public

布尔值

镜像是否可以公开访问。

将 *is_public* 设置为 true 默认情况下需要管理员角色。

*is_public* 已弃用。使用 *visibility* 代替 *is_public*。

选项

  • false ← (默认)

  • true

kernel

字符串

将与此镜像关联的现有内核镜像的名称。

min_disk

整数

启动此镜像所需的最小磁盘空间(以 GB 为单位)。

min_ram

整数

启动此镜像所需的最小内存(以 MB 为单位)。

name

字符串 / 必填

上传时的镜像名称 - 或删除时的镜像名称/ID。

如果提供 ID,则可用于更改现有图像的名称。

owner

别名:project

字符串

拥有该图像的项目名称或 ID。

owner_domain

别名:project_domain

字符串

拥有该图像的项目所属的域的名称或 ID。

当为项目参数提供名称且存在多个具有此名称的项目时,可用于标识唯一项目。

属性

字典

与该图像关联的其他属性。

默认值: {}

ramdisk

字符串

将与该图像关联的现有 ramdisk 图像的名称。

region_name

字符串

区域名称。

sdk_log_level

字符串

OpenStackSDK 的日志级别

选项

  • "INFO" ← (默认)

  • "DEBUG"

sdk_log_path

字符串

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

state

字符串

资源应处于存在、不存在或非活动状态。

选项

  • "present" ← (默认)

  • "absent"

  • "inactive"

tags

列表 / 元素=字符串

要应用于图像的标签列表。

默认值: []

timeout

整数

Ansible 应等待请求资源的时间。

默认值: 180

use_import

布尔值

使用可互操作图像导入机制的“glance-direct”方法。

仅在需要时使用,例如,当用户需要云转换图像格式时。

选项

  • false

  • true

validate_certs

别名:verify

布尔值

是否应验证 SSL API 请求。

在 Ansible 2.3 之前,默认为 true

选项

  • false

  • true

visibility

字符串

图像可见性。

选项

  • "public"

  • "private"

  • "shared"

  • "community"

volume

字符串

要从中创建图像的卷的 ID。

卷必须处于 AVAILABLE 状态。

volume 已弃用。请改用模块 openstack.cloud.volume

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: Upload an image from a local file named cirros-0.3.0-x86_64-disk.img
  openstack.cloud.image:
    cloud: devstack-admin
    name: cirros
    container_format: bare
    disk_format: qcow2
    state: present
    filename: cirros-0.3.0-x86_64-disk.img
    kernel: cirros-vmlinuz
    ramdisk: cirros-initrd
    tags:
      - custom
    properties:
      cpu_arch: x86_64
      distro: ubuntu

返回值

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

描述

image

字典

描述 Glance 图像的字典。

返回:statepresentinactive 时成功。

architecture

字符串

虚拟机监控程序必须支持的 CPU 架构。

返回:成功

checksum

字符串

图像的校验和。

返回:成功

container_format

字符串

图像的容器格式。

返回:成功

created_at

字符串

图像创建时间戳。

返回:成功

direct_url

字符串

访问保存在外部存储中的图像文件的 URL。

返回:成功

disk_format

字符串

图像的磁盘格式。

返回:成功

file

字符串

虚拟机图像文件的 URL。

返回:成功

filters

字典

与图像关联的其他属性。

返回:成功

has_auto_disk_config

布尔值

如果在实例启动之前自动调整磁盘上的根分区大小。

返回:成功

hash_algo

字符串

用于计算图像数据的安全哈希的算法。

返回:成功

hash_value

字符串

使用名称为 os_hash_algo 属性值的算法计算的图像数据的安全哈希的十六进制摘要。

返回:成功

hw_cpu_cores

字符串

用于将实例的虚拟 CPU (vCPU) 固定到主机的物理 CPU 内核 (pCPU)。

返回:成功

hw_cpu_policy

字符串

图像数据的安全哈希的十六进制摘要。

返回:成功

hw_cpu_sockets

字符串

首选向客户机公开的套接字数量。

返回:成功

hw_cpu_thread_policy

字符串

定义如何在基于同时多线程 (SMT) 架构的硬件 CPU 线程中使用。

返回:成功

hw_cpu_threads

字符串

首选向客户机公开的线程数量。

返回:成功

hw_disk_bus

字符串

指定将磁盘设备连接到的磁盘控制器类型。

返回:成功

hw_machine_type

字符串

使用指定的机器类型启动 ARM 系统。

返回:成功

hw_qemu_guest_agent

字符串

字符串布尔值,如果为“true”,则 QEMU 客户机代理将公开给实例。

返回:成功

hw_rng_model

字符串

向图像的实例添加随机数生成器设备。

返回:成功

hw_scsi_model

字符串

启用使用 VirtIO SCSI (virtio-scsi) 为计算实例提供块设备访问。

返回:成功

hw_video_model

字符串

使用的视频图像驱动程序。

返回:成功

hw_video_ram

字符串

视频图像的最大 RAM。

返回:成功

hw_vif_model

字符串

指定要使用的虚拟网络接口设备的型号。

返回:成功

hw_watchdog_action

字符串

启用虚拟硬件看门狗设备,如果服务器挂起,则执行指定的动作。

返回:成功

hypervisor_type

字符串

虚拟机监控程序类型。

返回:成功

id

字符串

唯一 UUID。

返回:成功

instance_type_rxtx_factor

字符串

可选属性允许创建的服务器具有与连接到的网络中定义的不同的带宽上限。

返回:成功

instance_uuid

字符串

对于快照图像,这是用于创建此图像的服务器的 UUID。

返回:成功

is_hidden

布尔值

控制图像是否显示在默认图像列表响应中。

返回:成功

is_hw_boot_menu_enabled

布尔值

启用 BIOS 启动菜单。

返回:成功

is_hw_vif_multiqueue_enabled

布尔值

启用 virtio-net 多队列功能。

返回:成功

is_protected

布尔值

图像保护标志。

返回:成功

kernel_id

字符串

存储在图像服务中且应在启动 AMI 样式图像时用作内核的图像的 ID。

返回:成功

locations

字符串

访问外部存储中图像文件的 URL 列表。

返回:成功

metadata

字符串

位置元数据。

返回:成功

min_disk

整数

此图像所需的最小磁盘空间量。

返回:成功

min_ram

整数

此图像所需的最小 RAM 量。

返回:成功

name

字符串

赋予图像的名称。

返回:成功

needs_config_drive

布尔值

指定图像是否需要配置驱动器。

返回:成功

needs_secure_boot

布尔值

是否需要安全启动。

返回:成功

os_admin_user

字符串

操作系统管理员用户名。

返回:成功

os_command_line

字符串

libvirt 驱动程序要使用的内核命令行。

返回:成功

os_distro

字符串

操作系统的常用名称(小写)。

返回:成功

os_require_quiesce

字符串

如果为 true,则通过 QEMU 客户机代理在快照上需要静默。

返回:成功

os_shutdown_timeout

字符串

优雅关机的时间。

返回:成功

os_type

字符串

安装在图像上的操作系统。

返回:成功

os_version

字符串

发行版指定的操作系统版本。

返回:成功

owner

字符串

图像的所有者。

返回:成功

owner_id

字符串

图像所有者或项目的 ID。

返回:成功

ramdisk_id

字符串

存储在图像服务中且应在启动 AMI 样式图像时用作 ramdisk 的图像的 ID。

返回:成功

schema

字符串

描述虚拟机图像的架构的 URL。

返回:成功

size

整数

图像大小。

返回:成功

status

字符串

图像状态。

返回:成功

store

字符串

Glance 将尝试将磁盘映像数据存储在标题值指示的后端存储中。

返回:成功

tags

列表 / 元素=字符串

分配给图像的标签列表

返回:成功

updated_at

字符串

图像更新时间戳。

返回:成功

url

字符串

访问保存在外部存储中的图像文件的 URL。

返回:成功

virtual_size

字符串

图像的虚拟大小。

返回:成功

visibility

字符串

指示谁有权访问该图像。

返回:成功

vm_mode

字符串

虚拟机模式。

返回:成功

vmware_adaptertype

字符串

虚拟机监控程序使用的虚拟 SCSI 或 IDE 控制器。

返回:成功

vmware_ostype

字符串

安装在图像中的操作系统。

返回:成功

作者

  • OpenStack Ansible SIG