ngine_io.cloudstack.cs_volume 模块 – 管理基于 Apache CloudStack 云的卷。
注意
此模块是 ngine_io.cloudstack 集合 (版本 2.5.0) 的一部分。
如果您正在使用 ansible
包,则可能已经安装了此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用: ansible-galaxy collection install ngine_io.cloudstack
。您需要其他要求才能使用此模块,有关详细信息,请参见 要求。
要在 playbook 中使用它,请指定: ngine_io.cloudstack.cs_volume
。
ngine_io.cloudstack 0.1.0 中的新增功能
概要
创建、销毁、附加、分离、提取或上传卷。
要求
执行此模块的主机需要以下要求。
python >= 2.6
cs >= 0.9.0
参数
参数 |
注释 |
---|---|
卷相关的帐户。 |
|
用于查询 API 端点的 HTTP 方法。 如果未给出,则考虑 选项
|
|
CloudStack API 的 API 密钥。 如果未给出,则考虑 |
|
CloudStack API 的密钥。 如果未设置,则考虑 |
|
HTTP 超时时间(秒)。 如果未给出,则考虑 默认值: |
|
CloudStack API 的 URL,例如 https://cloud.example.com/client/api。 如果未给出,则考虑 |
|
验证 CA 授权证书文件。 如果未给出,则考虑 |
|
资源的自定义 ID。 仅限根管理员。 |
|
卷附加到的虚拟机上的设备 ID。 仅当 *state* 为 |
|
要使用的磁盘配额的名称。 如果卷不是 *state=present*,则需要 *disk_offering* 或 *snapshot* 之一。 |
|
是否向最终用户显示卷。 仅限根管理员。 选项
|
|
要部署卷的域的名称。 |
|
即使卷附加到虚拟机,也强制删除卷。 仅在 *state=absent* 时考虑。 选项
|
|
卷的格式。 仅当 *state=uploaded* 时才考虑。 选项
|
|
最大 IOPS |
|
最小 IOPS |
|
卷提取的模式。 仅当 *state=extracted* 时才考虑。 选项
|
|
卷的名称。 *name* 只能包含 ASCII 字母。 |
|
轮询异步作业,直到作业完成。 选项
|
|
要部署卷的项目的名称。 |
|
是否允许缩小卷。 选项
|
|
磁盘大小(GB) |
|
磁盘卷的快照名称。 如果卷不是 *state=present*,则需要 *disk_offering* 或 *snapshot* 之一。 |
|
卷的状态。 选项
|
|
标签列表。标签是具有键 *key* 和 *value* 的字典列表。 要删除所有标签,请设置一个空列表,例如 *tags: []*。 |
|
在 *state=extracted* 时要提取卷的 URL 或在 *state=uploaded* 时下载卷的 URL。 仅当状态为 |
|
如果为 如果未指定,则会考虑 这仅应在使用自签名证书的个人控制站点上使用。 选项
|
|
要附加卷的虚拟机的名称。 |
|
应在其中部署卷的区域的名称。 |
注释
注意
有关 CloudStack 模块的详细指南,请参阅CloudStack 云指南。
此模块支持检查模式。
示例
- name: create volume within project and zone with specified storage options
ngine_io.cloudstack.cs_volume:
name: web-vm-1-volume
project: Integration
zone: ch-zrh-ix-01
disk_offering: PerfPlus Storage
size: 20
- name: create/attach volume to instance
ngine_io.cloudstack.cs_volume:
name: web-vm-1-volume
zone: zone01
disk_offering: PerfPlus Storage
size: 20
vm: web-vm-1
state: attached
- name: detach volume
ngine_io.cloudstack.cs_volume:
name: web-vm-1-volume
zone: zone01
state: detached
- name: remove volume
ngine_io.cloudstack.cs_volume:
name: web-vm-1-volume
zone: zone01
state: absent
- name: Extract DATA volume to make it downloadable
ngine_io.cloudstack.cs_volume:
state: extracted
name: web-vm-1-volume
zone: zone01
register: data_vol_out
- name: Create new volume by downloading source volume
ngine_io.cloudstack.cs_volume:
state: uploaded
name: web-vm-1-volume-2
zone: zone01
format: VHD
url: "{{ data_vol_out.url }}"
返回值
常见的返回值已在此处记录,以下是此模块特有的字段
键 |
描述 |
---|---|
附加卷的日期。 返回:成功 示例: |
|
创建卷的日期。 返回:成功 示例: |
|
卷附加到的用户虚拟机上的设备 ID(分离时不返回) 返回:成功 示例: |
|
卷的显示名称。 返回:成功 示例: |
|
卷所属的域 返回:成功 示例: |
|
卷所属的组 返回:成功 示例: |
|
卷的 ID。 返回:成功 |
|
卷的名称。 返回:成功 示例: |
|
卷所属的项目 返回:成功 示例: |
|
磁盘卷的大小。 返回:成功 示例: |
|
卷的状态 返回:成功 示例: |
|
磁盘卷类型。 返回:成功 示例: |
|
上传卷的 URL 或取决于提取模式的下载 URL。 返回:当state=extracted时成功 示例: |
|
卷附加到的虚拟机的名称(分离时不返回) 返回:成功 示例: |
|
卷所在的区域的名称。 返回:成功 示例: |