azure.azcollection.azure_rm_openshiftmanagedcluster 模块 – 管理 Azure Red Hat OpenShift 托管集群实例
注意
此模块是 azure.azcollection 集合 (版本 3.1.0) 的一部分。
如果您使用的是 ansible 包,则可能已安装此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list。
要安装它,请使用: ansible-galaxy collection install azure.azcollection。您需要其他要求才能使用此模块,有关详细信息,请参见 要求。
要在 playbook 中使用它,请指定: azure.azcollection.azure_rm_openshiftmanagedcluster。
azure.azcollection 1.2.0 中的新增功能
概要
- 创建、更新和删除 Azure Red Hat OpenShift 托管集群实例。 
要求
执行此模块的主机需要以下要求。
- python >= 2.7 
- 执行此模块的主机必须通过 galaxy 安装 azure.azcollection 集合 
- 集合的 requirements.txt 中列出的所有 python 包都必须通过 pip 安装在执行 azure.azcollection 集合中模块的主机上 
- 完整的安装说明可在 https://galaxy.ansible.com/azure/azcollection 找到 
参数
| 参数 | 注释 | 
|---|---|
| Active Directory 用户名。使用 Active Directory 用户而不是服务主体进行身份验证时使用。 | |
| Azure AD 授权 URL。使用用户名/密码进行身份验证时使用,并具有您自己的 ADFS 授权。 | |
| 选择与 Azure 服务通信时要使用的 API 配置文件。  默认值:  | |
| API 服务器配置。 | |
| api 服务器的 IP 地址(不可变),仅出现在响应中。 | |
| api 服务器的 URL(不可变),仅出现在响应中。 | |
| API 服务器可见性。 选项 
 | |
| 用于控制标签字段是规范的还是只追加到现有标签。 当规范时,在 tags 参数中找不到的任何标签都将从对象的元数据中删除。 选项 
 | |
| 控制用于身份验证的凭据来源。 也可以通过  设置为  设置为  设置为  设置为  设置为  Ansible 2.6 中添加了  选项 
 | |
| 控制 Azure 端点的证书验证行为。默认情况下,所有模块都将验证服务器证书,但在使用 HTTPS 代理或针对 Azure Stack 时,可能需要通过传递  选项 
 | |
| Azure 客户端 ID。使用服务主体或托管标识 (msi) 进行身份验证时使用。 也可以通过环境变量  | |
| 对于除美国公共云以外的云环境,环境名称(由 Azure Python SDK 定义,例如  默认值:  | |
| OpenShift 集群配置。 默认值:  | |
| 集群资源组的 ID(不可变)。 | |
| 集群的域名(不可变)。 | |
| 是否使用 FIPS 验证的加密模块 选项 
 | |
| 集群的拉取密钥(不可变)。 | |
| OpenShift 版本(不可变)。 | |
| 确定在尝试进行身份验证时是否执行实例发现。将其设置为 true 将完全禁用实例发现和权限验证。此功能旨在用于无法访问元数据端点的场景,例如私有云或 Azure Stack。实例发现过程需要从 https://login.microsoft.com/ 检索权限元数据以验证权限。通过将其设置为 **True**,将禁用权限的验证。因此,务必确保配置的权限主机有效且值得信赖。 通过凭据文件配置文件或环境变量  选项 
 | |
| 入口配置文件配置。当前 API 版本仅支持一个配置文件。 | |
| 入口的 IP 地址(不可变),仅出现在响应中。 | |
| 入口的名称(不可变)。 选项 
 | |
| 入口可见性。 选项 
 | |
| 资源位置。 | |
| 父参数。 | |
| 父参数。 | |
| OpenShift 主节点 VM 配置。 | |
| 相关 DiskEncryptionSet 的资源 ID(如果适用)。 | |
| 主虚拟机是否在主机上加密。 选项 
 | |
| 主子网的 Azure 资源 ID(不可变)。 | |
| 代理 VM 的大小(不可变)。 | |
| 资源名称。 | |
| OpenShift 网络配置(不可变)。 默认值:  | |
| 用于出站流量的 OutboundType。 选项 
 | |
| OpenShift Pod 的 CIDR(不可变)。 | |
| 指定子网是否预先附加了 NSG 选项 
 | |
| OpenShift 服务的 CIDR(不可变)。 | |
| Active Directory 用户密码。使用 Active Directory 用户而不是服务主体进行身份验证时使用。 | |
| 在 ~/.azure/credentials 文件中找到的安全配置文件。 | |
| 当前部署或配置状态,仅出现在响应中。 | |
| 资源组的名称。 | |
| Azure 客户端密钥。使用服务主体进行身份验证时使用。 | |
| 服务主体。 | |
| 服务主体的客户端 ID(不可变)。 | |
| 服务主体的客户端密钥(不可变)。 | |
| 声明 OpenShiftManagedCluster 的状态。 使用  选项 
 | |
| 您的 Azure 订阅 ID。 | |
| 字符串:字符串对的字典,作为元数据分配给对象。 对象上的元数据标签将使用任何提供的数值进行更新。 要移除标签,请将 append_tags 选项设置为 false。 目前,Azure DNS 区域和流量管理器服务也不允许在标签中使用空格。 Azure 前端门户不支持使用 Azure 自动化和 Azure CDN 仅支持资源上的 15 个标签。 | |
| Azure 租户 ID。使用服务主体进行身份验证时使用。 | |
| 在 *x509_certificate_path* 中指定的私钥的指纹。 使用服务主体进行身份验证时使用。 如果定义了 *x509_certificate_path*,则需要。 | |
| OpenShift 工作节点 VM 配置。 | |
| 工作节点 VM 的数量。必须在 3 到 20 之间(不可变)。 | |
| 相关 DiskEncryptionSet 的资源 ID(如果适用)。 | |
| 工作节点 VM 的磁盘大小(以 GB 为单位)。必须大于或等于 128(不可变)。 | |
| 工作虚拟机是否在主机上加密。 选项 
 | |
| 工作程序配置文件的名称(不可变)。 选项 
 | |
| 工作子网的 Azure 资源 ID(不可变)。 | |
| 工作节点 VM 的大小(不可变)。 | |
| 用于创建 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 openshift cluster
  azure_rm_openshiftmanagedcluster:
    resource_group: "myResourceGroup"
    name: "myCluster"
    location: "eastus"
    cluster_profile:
      cluster_resource_group_id: "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/clusterResourceGroup"
      domain: "mydomain"
    service_principal_profile:
      client_id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
      client_secret: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
    network_profile:
      pod_cidr: "10.128.0.0/14"
      service_cidr: "172.30.0.0/16"
    worker_profiles:
      - name: worker
        vm_size: "Standard_D4s_v3"
        subnet_id: "/subscriptions/xx-xx-xx-xx-xx/resourceGroups/myResourceGroup/Microsoft.Network/virtualNetworks/myVnet/subnets/worker"
        disk_size: 128
        count: 3
    master_profile:
      vm_size: "Standard_D8s_v3"
      subnet_id: "/subscriptions/xx-xx-xx-xx-xx/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/master"
- name: Create openshift cluster with multi parameters
  azure_rm_openshiftmanagedcluster:
    resource_group: "myResourceGroup"
    name: "myCluster"
    location: "eastus"
    cluster_profile:
      cluster_resource_group_id: "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/clusterResourceGroup"
      domain: "mydomain"
      fips_validated_modules: Enabled
    service_principal_profile:
      client_id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
      client_secret: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
    network_profile:
      pod_cidr: "10.128.0.0/14"
      service_cidr: "172.30.0.0/16"
      outbound_type: Loadbalancer
      preconfigured_nsg: Disabled
    worker_profiles:
      - name: worker
        vm_size: "Standard_D4s_v3"
        subnet_id: "/subscriptions/xx-xx-xx-xx-xx/resourceGroups/myResourceGroup/Microsoft.Network/virtualNetworks/myVnet/subnets/worker"
        disk_size: 128
        count: 3
        encryption_at_host: Disabled
    master_profile:
      vm_size: "Standard_D8s_v3"
      subnet_id: "/subscriptions/xx-xx-xx-xx-xx/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/master"
      encryption_at_host: Disabled
- name: Delete OpenShift Managed Cluster
  azure_rm_openshiftmanagedcluster:
    resource_group: myResourceGroup
    name: myCluster
    location: eastus
    state: absent
返回值
常见的返回值已在 此处 记录,以下是此模块独有的字段
| 键 | 描述 | 
|---|---|
| 资源 ID。 返回: 始终 示例:  | |
| 资源位置。 返回: 始终 示例:  | |
| 资源名称。 返回: 始终 示例:  | |
| OpenShift 托管集群的属性。 返回: 始终 | |
| API 服务器配置。 返回: 始终 | |
| API 服务器可见性。 返回: 始终 示例:  | |
| Openshift 集群配置。 返回: 始终 | |
| 集群的域名。 返回: 始终 示例:  | |
| 是否使用 FIPS 验证的加密模块 返回: 始终 示例:  | |
| 集群资源组的 ID。 返回: 始终 示例:  | |
| Openshift 版本。 返回: 始终 示例:  | |
| 入口配置。 返回: 始终 示例:  | |
| OpenShift 主节点 VM 配置。 返回: 始终 | |
| 相关 DiskEncryptionSet 的资源 ID(如果适用)。 返回: 成功 | |
| 主虚拟机是否在主机上加密。 返回: 始终 示例:  | |
| 主子网的 Azure 资源 ID(不可变)。 返回: 始终 示例:  | |
| 代理 VM 的大小(不可变)。 返回: 始终 示例:  | |
| OpenShift 网络配置。 返回: 始终 | |
| 用于出站流量的 OutboundType。 返回: 始终 示例:  | |
| OpenShift Pod 的 CIDR。 返回: 始终 示例:  | |
| 指定子网是否预先附加了 NSG 返回: 始终 示例:  | |
| OpenShift 服务的 CIDR。 返回: 始终 示例:  | |
| 当前部署或配置状态,仅出现在响应中。 返回: 始终 示例:  | |
| 服务主体。 返回: 始终 | |
| 服务主体的客户端 ID。 返回: 始终 示例:  | |
| OpenShift 集群虚拟机的配置。 返回: 始终 | |
| 承载 Docker 容器的代理(虚拟机)数量。 返回: 始终 示例:  | |
| 磁盘大小(GB)。 返回: 始终 示例:  | |
| 工作虚拟机是否在主机上加密。 返回: 始终 示例:  | |
| 在订阅和资源组上下文中池配置文件的唯一名称。 返回: 始终 示例:  | |
| 工作程序池的子网 ID。 返回: 始终 示例:  | |
| 代理虚拟机的大小。 返回: 始终 示例:  | |
| 资源类型。 返回: 始终 示例:  | 
