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。 仅允许 Root 管理员。 |
|
卷附加到的 VM 上的设备 ID。 仅当 state 为 |
|
要使用的磁盘产品名称。 如果卷不是 state=present,则需要 disk_offering 或 snapshot 其中之一。 |
|
是否向最终用户显示卷。 仅允许 Root 管理员。 选项
|
|
要部署卷的域的名称。 |
|
强制删除卷,即使它已附加到 VM。 仅在 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。 仅当 state 为 |
|
如果 如果未给出,则会考虑 这应该只在个人控制的使用自签名证书的站点上使用。 选项
|
|
要将卷附加到的虚拟机的名称。 |
|
卷应部署在其中的区域的名称。 |
注释
注意
有关 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 时成功 示例: |
|
卷附加到的虚拟机的名称 (分离时不会返回) 返回: 成功 示例: |
|
卷所在的区域的名称。 返回: 成功 示例: |