community.general.hwc_ecs_instance 模块 – 在华为云中创建 Ecs/Instance 资源
注意
此模块是 community.general 集合 (版本 10.1.0) 的一部分。
如果您使用的是 ansible
包,则可能已安装此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install community.general
。您需要其他要求才能使用此模块,请参阅 需求 以了解详细信息。
要在剧本中使用它,请指定:community.general.hwc_ecs_instance
。
community.general 0.2.0 中的新增功能
概要
实例管理。
需求
执行此模块的主机需要以下需求。
keystoneauth1 >= 3.6.0
参数
参数 |
注释 |
---|---|
指定使用密码身份验证登录 ECS 的管理员帐户的初始登录密码。Linux 管理员是 root,Windows 管理员是 Administrator。密码复杂性要求,包含 8 到 26 个字符。密码必须至少包含以下三种字符类型:“大写字母、小写字母、数字和特殊字符 (!@$%^-_=+[{}]:,./?)”。密码不能包含用户名或反向的用户名。Windows ECS 密码不能包含用户名、反向的用户名或用户名中超过两个连续的字符。 |
|
指定 ECS 所在 AZ 的名称。 |
|
指定 ECS 实例的数据磁盘。 |
|
指定磁盘设备名称。 |
|
指定磁盘 ID。 |
|
指定 ECS 的描述,默认为空字符串。最多可包含 85 个字符。不能包含特殊字符,例如 < 和 >。 |
|
要限定范围的域的名称 (Identity v3)。 目前仅支持域名,不支持域 ID。 |
|
指定分配给 ECS 的弹性 IP 地址的 ID。只有处于 DOWN 状态的弹性 IP 地址才能被分配。 |
|
指定是否在 ECS 上启用自动恢复。 选项
|
|
指定 ECS 所属的企业项目的 ID。 |
|
指定系统类型的名称。 |
|
要管理的资源的 ID。 |
|
身份验证 URL。 |
|
指定系统镜像的 ID。 |
|
指定 ECS 名称。值要求包含 1 到 64 个字符,包括字母、数字、下划线 ( |
|
指定 ECS 的 NIC 信息。约束条件:NIC 的网络必须属于 vpc_id 指定的 VPC。最多可以将 12 个 NIC 附加到一个 ECS。 |
|
指定 NIC 的 IP 地址。该值为 IPv4 地址。其值必须是子网网络段中未使用的 IP 地址。 |
|
指定子网的 ID。 |
|
登录密码。 |
|
租户 (Identity v2) 或项目 (Identity v3) 的名称。 目前仅支持项目名称,不支持项目 ID。 |
|
项目所属的区域。 |
|
指定 ECS 系统磁盘的配置。 |
|
指定系统磁盘大小(以 GB 为单位)。取值范围为 1 到 1024。系统磁盘大小必须大于或等于镜像支持的最小系统磁盘大小(镜像的 min_disk 属性)。如果未指定此参数或将其设置为 0,则默认系统磁盘大小为镜像中系统磁盘的最小值(镜像的 min_disk 属性)。 |
|
指定快照 ID 或完整 ECS 镜像中包含的原始数据磁盘的 ID。 |
|
指定 ECS 系统磁盘类型。 SATA 是普通 I/O 磁盘类型。 SAS 是高 I/O 磁盘类型。 SSD 是超高 I/O 磁盘类型。 co-p1 是高 I/O(性能优化型 I)磁盘类型。 uh-l1 是超高 I/O(延迟优化型)磁盘类型。 注意:对于 HANA、HL1 和 HL2 ECS,请使用 co-p1 和 uh-l1 磁盘。对于其他 ECS,请不要使用 co-p1 或 uh-l1 磁盘。 |
|
指定ECS的安全组。如果此参数留空,则默认情况下会将默认安全组绑定到ECS。 |
|
指定要创建的ECS的元数据。 |
|
指定ECS的标签。创建ECS时,一个ECS最多支持10个标签。 |
|
指定用于登录ECS的SSH密钥的名称。 |
|
给定对象是否应该存在于华为云中。 选项
|
|
每个操作的超时时间。 默认值: |
|
创建操作的超时时间。 默认值: |
|
删除操作的超时时间。 默认值: |
|
更新操作的超时时间。 默认值: |
|
用于登录的用户名。 目前仅支持用户名,不支持用户ID。 |
|
指定在ECS创建过程中注入的用户数据。可以注入文本、文本文件和gzip文件。要注入的内容必须使用base64编码。要注入的内容(编码前)的最大大小为32 KB。对于Linux ECS,当使用adminPass时,此参数无效。 |
|
指定ECS所属的VPC的ID。 |
属性
属性 |
支持 |
描述 |
---|---|---|
支持:完全支持 |
可以在 |
|
支持:不支持 |
在差异模式下,将返回关于已更改内容(或可能需要在 |
备注
注意
对于身份验证,您可以使用
ANSIBLE_HWC_IDENTITY_ENDPOINT
环境变量设置identity_endpoint。对于身份验证,您可以使用
ANSIBLE_HWC_USER
环境变量设置user。对于身份验证,您可以使用
ANSIBLE_HWC_PASSWORD
环境变量设置password。对于身份验证,您可以使用
ANSIBLE_HWC_DOMAIN
环境变量设置domain。对于身份验证,您可以使用
ANSIBLE_HWC_PROJECT
环境变量设置project。对于身份验证,您可以使用
ANSIBLE_HWC_REGION
环境变量设置region。只有在未设置playbook值时,才会使用环境变量值。
示例
# create an ecs instance
- name: Create a vpc
hwc_network_vpc:
cidr: "192.168.100.0/24"
name: "ansible_network_vpc_test"
register: vpc
- name: Create a subnet
hwc_vpc_subnet:
gateway_ip: "192.168.100.32"
name: "ansible_network_subnet_test"
dhcp_enable: true
vpc_id: "{{ vpc.id }}"
cidr: "192.168.100.0/26"
register: subnet
- name: Create a eip
hwc_vpc_eip:
dedicated_bandwidth:
charge_mode: "traffic"
name: "ansible_test_dedicated_bandwidth"
size: 1
type: "5_bgp"
register: eip
- name: Create a disk
hwc_evs_disk:
availability_zone: "cn-north-1a"
name: "ansible_evs_disk_test"
volume_type: "SATA"
size: 10
register: disk
- name: Create an instance
community.general.hwc_ecs_instance:
data_volumes:
- volume_id: "{{ disk.id }}"
enable_auto_recovery: false
eip_id: "{{ eip.id }}"
name: "ansible_ecs_instance_test"
availability_zone: "cn-north-1a"
nics:
- subnet_id: "{{ subnet.id }}"
ip_address: "192.168.100.33"
- subnet_id: "{{ subnet.id }}"
ip_address: "192.168.100.34"
server_tags:
my_server: "my_server"
image_id: "8da46d6d-6079-4e31-ad6d-a7167efff892"
flavor_name: "s3.small.1"
vpc_id: "{{ vpc.id }}"
root_volume:
volume_type: "SAS"
返回值
常用的返回值已在此处记录,以下是此模块特有的字段
Key |
描述 |
---|---|
指定使用密码身份验证登录ECS的管理员帐户的初始登录密码。Linux管理员是root,Windows管理员是Administrator。密码复杂性要求为8到26个字符。密码必须至少包含以下三种字符类型:“大写字母、小写字母、数字和特殊字符(!@$%^-_=+[{}]:,./?)”。密码不能包含用户名或反转的用户名。Windows ECS密码不能包含用户名、反转的用户名或用户名中超过两个连续的字符。 返回:成功 |
|
指定 ECS 所在 AZ 的名称。 返回:成功 |
|
指定配置驱动器。 返回:成功 |
|
指定ECS的创建时间。 返回:成功 |
|
指定 ECS 实例的数据磁盘。 返回:成功 |
|
指定磁盘设备名称。 返回:成功 |
|
指定磁盘 ID。 返回:成功 |
|
指定 ECS 的描述,默认为空字符串。最多可包含 85 个字符。不能包含特殊字符,例如 < 和 >。 返回:成功 |
|
指定磁盘配置类型。MANUAL是不扩展镜像空间。AUTO是系统磁盘的镜像空间将扩展到与flavor相同。 返回:成功 |
|
指定分配给 ECS 的弹性 IP 地址的 ID。只有处于 DOWN 状态的弹性 IP 地址才能被分配。 返回:成功 |
|
指定是否在 ECS 上启用自动恢复。 返回:成功 |
|
指定 ECS 所属的企业项目的 ID。 返回:成功 |
|
指定系统类型的名称。 返回:成功 |
|
指定ECS的主机名。 返回:成功 |
|
指定系统镜像的 ID。 返回:成功 |
|
指定ECS的镜像名称。 返回:成功 |
|
指定ECS名称。值要求“包含1到64个字符,包括字母、数字、下划线( 返回:成功 |
|
指定ECS的NIC信息。NIC的网络必须属于vpc_id指定的VPC。最多可以将12个NIC附加到一个ECS。 返回:成功 |
|
指定 NIC 的 IP 地址。该值为 IPv4 地址。其值必须是子网网络段中未使用的 IP 地址。 返回:成功 |
|
指定与IP地址对应的端口ID。 返回:成功 |
|
指定子网的 ID。 返回:成功 |
|
指定ECS的电源状态。 返回:成功 |
|
指定 ECS 系统磁盘的配置。 返回:成功 |
|
指定磁盘设备名称。 返回:成功 |
|
指定系统磁盘大小(以 GB 为单位)。取值范围为 1 到 1024。系统磁盘大小必须大于或等于镜像支持的最小系统磁盘大小(镜像的 min_disk 属性)。如果未指定此参数或将其设置为 0,则默认系统磁盘大小为镜像中系统磁盘的最小值(镜像的 min_disk 属性)。 返回:成功 |
|
指定快照 ID 或完整 ECS 镜像中包含的原始数据磁盘的 ID。 返回:成功 |
|
指定磁盘 ID。 返回:成功 |
|
指定 ECS 系统磁盘类型。 SATA 是普通 I/O 磁盘类型。 SAS 是高 I/O 磁盘类型。 SSD 是超高 I/O 磁盘类型。 co-p1 是高 I/O(性能优化型 I)磁盘类型。 uh-l1 是超高 I/O(延迟优化型)磁盘类型。 注意:对于 HANA、HL1 和 HL2 ECS,请使用 co-p1 和 uh-l1 磁盘。对于其他 ECS,请不要使用 co-p1 或 uh-l1 磁盘。 返回:成功 |
|
指定ECS的安全组。如果此参数留空,则默认情况下会将默认安全组绑定到ECS。 返回:成功 |
|
指定ECS别名。 返回:成功 |
|
指定要创建的ECS的元数据。 返回:成功 |
|
指定ECS的标签。创建ECS时,一个ECS最多支持10个标签。 返回:成功 |
|
指定用于登录ECS的SSH密钥的名称。 返回:成功 |
|
指定ECS状态。选项包括ACTIVE、REBOOT、HARD_REBOOT、REBUILD、MIGRATING、BUILD、SHUTOFF、RESIZE、VERIFY_RESIZE、ERROR和DELETED。 返回:成功 |
|
指定在ECS创建过程中注入的用户数据。可以注入文本、文本文件和gzip文件。要注入的内容必须使用base64编码。要注入的内容(编码前)的最大大小为32 KB。对于Linux ECS,当使用adminPass时,此参数无效。 返回:成功 |
|
指定ECS所属的VPC的ID。 返回:成功 |