community.general.clc_server 模块 – 在 CenturyLink 云中创建、删除、启动和停止服务器
注意
此模块是 community.general 集合 (版本 10.1.0) 的一部分。
如果您使用的是 ansible
包,则可能已安装此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install community.general
。您需要其他要求才能使用此模块,请参阅 要求 以了解详情。
要在 playbook 中使用它,请指定:community.general.clc_server
。
概要
一个 Ansible 模块,用于在 CenturyLink 云中创建、删除、启动和停止服务器。
要求
在执行此模块的主机上需要以下要求。
python = 2.7
requests >= 2.5.0
clc-sdk
参数
参数 |
注释 |
---|---|
是否为服务器添加公网 IP 选项
|
|
服务器的附加磁盘列表 默认值: |
|
要分配给服务器的告警策略。这与“alert_policy_name”互斥。 |
|
要分配给服务器的告警策略。这与“alert_policy_id”互斥。 |
|
用于在其中配置服务器的帐户别名。 |
|
要分配给服务器的反亲和性策略。这与“anti_affinity_policy_name”互斥。 |
|
要分配给服务器的反亲和性策略。这与“anti_affinity_policy_id”互斥。 |
|
仅对于裸机服务器需要。指定要部署的裸机服务器的特定配置类型的标识符。 |
|
要构建的服务器数量(与 exact_count 互斥) 默认值: |
|
指定 exact_count 时需要。用于确定要部署多少服务器的服务器组。 |
|
要在服务器上配置的 CPU 数量 默认值: |
|
要分配给服务器的自动缩放策略。 |
|
要在服务器上设置的自定义字段列表。 默认值: |
|
要为服务器设置的描述。 |
|
以幂等模式运行。将确保在提供的组中运行此确切数量的服务器,创建和删除它们以达到该数量。需要设置 count_group。 |
|
要在其下创建服务器的服务器组。 默认值: |
|
服务器的 IP 地址。如果没有提供,则会分配一个。 |
|
要在其中创建服务器的数据中心。 |
|
是否将服务器创建为“托管”服务器。 选项
|
|
内存(以 GB 为单位)。 默认值: |
|
用于服务器的 1 到 6 个字符的标识符。当 state 为“present”时,这是必需的。 |
|
要在其上创建服务器的网络 UUID。 |
|
仅对于裸机服务器需要。指定要与裸机服务器一起配置的操作系统。 选项
|
|
在服务器创建后在其上运行的蓝图包列表。 默认值: |
|
管理员/root 用户的密码 |
|
服务器使用的主 DNS。 |
|
如果 add_public_ip 设置为 True,则允许通过防火墙访问服务器公网 IP 的端口列表。 默认值: |
|
如果 add_public_ip 设置为 True,则用于公网 IP 的协议。 选项
|
|
服务器使用的辅助 DNS。 |
|
对于 started、stopped 和 absent 状态都需要。服务器 ID 列表,确保已启动、已停止或不存在。 默认值: |
|
如果指定了克隆,则源服务器的密码。 |
|
确保提供的资源处于的状态。 选项
|
|
要附加到服务器的存储类型。 选项
|
|
用于服务器创建的模板。如果提供部分字符串,则将搜索模板。当 state 为 'present' 时,这是必需的。 |
|
服务器的生存时间(秒)。当此时间到期时,服务器将被删除。 |
|
要创建的服务器类型。 选项
|
|
是否在返回之前等待配置任务完成。 选项
|
属性
属性 |
支持 |
描述 |
---|---|---|
支持:完全支持 |
可以在 |
|
支持:不支持 |
在差异模式下,将返回有关已更改内容(或可能需要在 |
备注
注意
要使用此模块,需要设置以下环境变量,以启用对 CenturyLink Cloud 的访问 - CLC_V2_API_USERNAME(CenturyLink Cloud 的帐户登录 ID)- CLC_V2_API_PASSWORD(CenturyLink Cloud 的帐户密码)
或者,该模块接受 API 令牌和帐户别名。API 令牌可以使用 CLC 帐户登录名和密码通过 HTTP API 调用生成,网址为 https://api.ctl.io/v2/authentication/login - CLC_V2_API_TOKEN(从 https://api.ctl.io/v2/authentication/login 生成的 API 令牌)- CLC_ACCT_ALIAS(与 CenturyLink Cloud 关联的帐户别名)
用户可以设置 CLC_V2_API_URL 来指定指向不同 CLC 环境的端点。
示例
# Note - You must set the CLC_V2_API_USERNAME And CLC_V2_API_PASSWD Environment variables before running these examples
- name: Provision a single Ubuntu Server
community.general.clc_server:
name: test
template: ubuntu-14-64
count: 1
group: Default Group
state: present
- name: Ensure 'Default Group' has exactly 5 servers
community.general.clc_server:
name: test
template: ubuntu-14-64
exact_count: 5
count_group: Default Group
group: Default Group
- name: Stop a Server
community.general.clc_server:
server_ids:
- UC1ACCT-TEST01
state: stopped
- name: Start a Server
community.general.clc_server:
server_ids:
- UC1ACCT-TEST01
state: started
- name: Delete a Server
community.general.clc_server:
server_ids:
- UC1ACCT-TEST01
state: absent
返回值
常见的返回值已在 此处 记录,以下是此模块独有的字段
键 |
描述 |
---|---|
部分创建的服务器 ID 列表 返回:成功 示例: |
|
已创建的服务器 ID 列表 返回:成功 示例: |
|
从 CLC 返回的服务器对象列表 返回:成功 示例: |