azure.azcollection.azure_rm_galleryimage 模块 – 管理 Azure SIG 镜像实例

注意

此模块是 azure.azcollection 集合(版本 3.1.0)的一部分。

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

要安装它,请使用: ansible-galaxy collection install azure.azcollection。 您需要进一步的要求才能使用此模块,请参阅 要求 了解详细信息。

要在 playbook 中使用它,请指定: azure.azcollection.azure_rm_galleryimage

azure.azcollection 0.1.2 中的新功能

概要

  • 创建、更新和删除 Azure SIG 镜像的实例。

要求

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

  • python >= 2.7

  • 执行此模块的主机必须通过 galaxy 安装 azure.azcollection 集合

  • 必须通过 pip 在执行来自 azure.azcollection 的模块的主机上安装集合的 requirements.txt 中列出的所有 python 包

  • 完整的安装说明可以在 https://galaxy.ansible.com/azure/azcollection 找到

参数

参数

注释

ad_user

字符串

Active Directory 用户名。当使用 Active Directory 用户而不是服务主体进行身份验证时使用。

adfs_authority_url

字符串

在 azure.azcollection 0.0.1 中添加

Azure AD 授权 URL。当使用用户名/密码进行身份验证时,并且具有您自己的 ADFS 授权时使用。

api_profile

字符串

在 azure.azcollection 0.0.1 中添加

选择在与 Azure 服务通信时要使用的 API 配置文件。 默认值 latest 适用于公共云;未来的值将允许与 Azure Stack 一起使用。

默认: "latest"

append_tags

布尔值

用于控制 tags 字段是规范的还是仅附加到现有 tags。

当为规范时,在 tags 参数中未找到的任何标签将从对象的元数据中删除。

选项

  • false

  • true ← (默认)

architecture

字符串

此属性允许您指定虚拟机的硬件架构。

Arm64 仅支持 Hyper V 版本 2。

选项

  • "Arm64"

  • "x64"

auth_source

字符串

在 azure.azcollection 0.0.1 中添加

控制用于身份验证的凭据的来源。

也可以通过 ANSIBLE_AZURE_AUTH_SOURCE 环境变量设置。

当设置为 auto(默认值)时,优先级为:模块参数 -> env -> credential_file -> cli

当设置为 env 时,凭据将从环境变量中读取

当设置为 credential_file 时,它将从 ~/.azure/credentials 读取配置文件。

当设置为 cli 时,凭据将从 Azure CLI 配置文件中获取。如果存在多个订阅 ID,则可以使用 subscription_id 或环境变量 AZURE_SUBSCRIPTION_ID 来标识订阅 ID,否则将使用默认的 az cli 订阅。

当设置为 msi 时,主机必须是具有启用 MSI 扩展的 azure 资源。 如果资源被授予对多个订阅的访问权限,则可以使用 subscription_id 或环境变量 AZURE_SUBSCRIPTION_ID 来标识订阅 ID,否则将选择第一个订阅。

msi 在 Ansible 2.6 中添加。

选项

  • "auto" ← (默认)

  • "cli"

  • "credential_file"

  • "env"

  • "msi"

cert_validation_mode

字符串

在 azure.azcollection 0.0.1 中添加

控制 Azure 端点的证书验证行为。默认情况下,所有模块都会验证服务器证书,但是当使用 HTTPS 代理时,或者针对 Azure Stack 时,可能需要通过传递 ignore 来禁用此行为。也可以通过凭据文件配置文件或 AZURE_CERT_VALIDATION 环境变量设置。

选项

  • "ignore"

  • "validate"

client_id

字符串

Azure 客户端 ID。当使用服务主体或托管标识 (msi) 进行身份验证时使用。

也可以通过 AZURE_CLIENT_ID 环境变量设置。

cloud_environment

字符串

在 azure.azcollection 0.0.1 中添加

对于美国公共云以外的云环境,环境名称(由 Azure Python SDK 定义,例如, AzureChinaCloudAzureUSGovernment),或元数据发现端点 URL(Azure Stack 所需)。 也可以通过凭据文件配置文件或 AZURE_CLOUD_ENVIRONMENT 环境变量设置。

默认: "AzureCloud"

description

字符串

此图库镜像定义资源的描述。此属性是可更新的。

disable_instance_discovery

布尔值

在 azure.azcollection 2.3.0 中添加

确定在尝试进行身份验证时是否执行实例发现。 将其设置为 true 将完全禁用实例发现和授权验证。 此功能旨在用于无法访问元数据端点的情况,例如在私有云或 Azure Stack 中。 实例发现的过程需要从 https://login.microsoft.com/ 检索授权元数据以验证授权。 通过将其设置为 **True**,将禁用对授权的验证。 因此,至关重要的是要确保配置的授权主机是有效且可信的。

通过凭据文件配置文件或 AZURE_DISABLE_INSTANCE_DISCOVERY 环境变量设置。

选项

  • false ← (默认)

  • true

disallowed

字典

禁止的参数值。

disk_types

列表 / 元素=字符串

一个不允许使用的磁盘类型列表。

end_of_life_date

字符串

图库映像定义的生命周期结束日期。

此属性可用于停用目的。

此属性可更新。

格式应符合 ISO-8601 标准,例如 “2019-06-26”。

eula

字符串

图库映像定义的 Eula 协议。

features

列表 / 元素=字典

图库映像功能列表。

name

字符串 / 必需

图库映像功能的名称。

value

字符串 / 必需

图库映像功能的值。

字符串 / 必需

要在其中创建映像定义的共享映像库的名称。

hypervgeneration

字符串

此属性允许您指定虚拟机的 Hyper V 版本。

选项

  • "V1"

  • "V2"

identifier

字典

映像标识符。

创建时必需。

offer

字符串 / 必需

图库映像定义产品的名称。

publisher

字符串 / 必需

图库映像定义发布者的名称。

sku

字符串 / 必需

图库映像定义 SKU 的名称。

location

字符串

资源位置。

log_mode

字符串

父参数。

log_path

字符串

父参数。

name

字符串 / 必需

要创建或更新的图库映像定义的名称。

允许的字符是字母和数字,中间允许使用点号、短划线和句点。

最大长度为 80 个字符。

os_state

字符串

OS 状态的允许值是 generalized

创建时必需。

选项

  • "generalized"

  • "specialized"

os_type

字符串

此属性允许您指定从托管映像创建虚拟机时磁盘中包含的操作系统类型。

创建时必需。

选项

  • "windows"

  • "linux"

password

字符串

Active Directory 用户密码。当使用 Active Directory 用户而不是服务主体进行身份验证时使用。

privacy_statement_uri

字符串

隐私声明 URI。

profile

字符串

在 ~/.azure/credentials 文件中找到的安全配置文件。

purchase_plan

字典

购买计划。

name

字符串

计划 ID。

product

字符串

产品 ID。

publisher

字符串

发布者 ID。

字典

建议的参数值。

字典

内存。

整数

资源的最大数量。

整数

资源的最小数量。

字典

虚拟 CPU 的数量。

整数

资源的最大数量。

整数

资源的最小数量。

release_note_uri

字符串

发行说明 URI。

resource_group

字符串 / 必需

资源组的名称。

secret

字符串

Azure 客户端密钥。当使用服务主体进行身份验证时使用。

state

字符串

断言 GalleryImage 的状态。

使用 present 创建或更新 GalleryImage,使用 absent 删除它。

选项

  • "absent"

  • "present" ←(默认)

subscription_id

字符串

您的 Azure 订阅 ID。

tags

字典

要作为元数据分配给对象的字符串:字符串对的字典。

对象上的元数据标记将使用任何提供的值进行更新。

要删除标记,请将 append_tags 选项设置为 false。

目前,Azure DNS 区域和流量管理器服务也不允许在标记中使用空格。

Azure Front Door 不支持使用

Azure Automation 和 Azure CDN 仅支持资源上的 15 个标记。

tenant

字符串

Azure 租户 ID。当使用服务主体进行身份验证时使用。

thumbprint

字符串

在 azure.azcollection 1.14.0 中添加

x509_certificate_path 中指定的私钥的指纹。

当使用服务主体进行身份验证时使用。

如果定义了 x509_certificate_path,则为必需。

x509_certificate_path

路径

在 azure.azcollection 1.14.0 中添加

用于以 PEM 格式创建服务主体的 X509 证书的路径。

证书必须附加到私钥。

当使用服务主体进行身份验证时使用。

备注

注意

  • 对于使用 Azure 进行身份验证,您可以传递参数,设置环境变量,使用存储在 ~/.azure/credentials 中的配置文件,或者在您使用 az login 运行任务或剧本之前登录。

  • 也可以使用服务主体或 Active Directory 用户进行身份验证。

  • 要通过服务主体进行身份验证,请传递 subscription_id、client_id、secret 和 tenant,或设置环境变量 AZURE_SUBSCRIPTION_ID、AZURE_CLIENT_ID、AZURE_SECRET 和 AZURE_TENANT。

  • 要通过 Active Directory 用户进行身份验证,请传递 ad_user 和 password,或在环境中设置 AZURE_AD_USER 和 AZURE_PASSWORD。

  • 或者,凭据可以存储在 ~/.azure/credentials 中。这是一个包含 [default] 部分和以下键的 ini 文件:subscription_id、client_id、secret 和 tenant 或 subscription_id、ad_user 和 password。也可以添加其他配置文件。通过传递 profile 或在环境中设置 AZURE_PROFILE 来指定配置文件。

另请参阅

另请参阅

使用 Azure CLI 登录

如何使用 az login 命令进行身份验证。

示例

- name: Create or update gallery image
  azure_rm_galleryimage:
    resource_group: myResourceGroup
    gallery_name: myGallery1283
    name: myImage
    location: West US
    os_type: linux
    os_state: generalized
    identifier:
      publisher: myPublisherName
      offer: myOfferName
      sku: mySkuName

返回值

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

描述

id

字符串

资源 ID。

返回:总是

示例:"/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalle ry1283/images/myImage"

作者

  • Zim Kalinowski (@zikalino)