community.digitalocean.digital_ocean_block_storage 模块 – 在 DigitalOcean 中创建/销毁或挂载/卸载块存储卷
注意
此模块是 community.digitalocean 集合 (版本 1.27.0) 的一部分。
如果您使用的是 ansible
包,则可能已安装此集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用: ansible-galaxy collection install community.digitalocean
。
要在 playbook 中使用它,请指定: community.digitalocean.digital_ocean_block_storage
。
概要
在 DigitalOcean 中创建/销毁块存储卷,或将块存储卷挂载/卸载到 Droplet。
参数
参数 |
注释 |
---|---|
DigitalOcean API 基本 URL。 默认值: |
|
块存储卷的大小(以 GB 为单位)。 当 command=create 且 state=present 时必填。 如果包含 snapshot_id,则忽略此参数。 如果 block_size > 卷的当前大小,则调整卷的大小。 |
|
您想执行哪个操作。 选项
|
|
块存储卷的描述。 |
|
您要操作的 Droplet ID。 当 command=attach 时必填。 |
|
DigitalOcean OAuth 令牌。 可以使用其他几个环境变量来提供此值。 例如,- |
|
要将资源分配到的项目(项目名称,而不是 UUID)。 默认为帐户的默认项目(空字符串)。 目前仅在 默认值: |
|
块存储卷应位于其中的区域的代码。 如果包含 snapshot_id,则忽略此参数。 |
|
您要用来创建块存储卷的快照 ID。 如果包含此参数,则忽略 region 和 block_size 并将其更改为 |
|
指示目标的所需状态。 选项
|
|
用于轮询 DigitalOcean API 的超时时间(以秒为单位)。 默认值: |
|
如果设置为 仅应在使用自签名证书的个人控制站点上将其设置为 选项
|
|
块存储卷的名称。 |
备注
注意
可以使用两个环境变量 DO_API_KEY 和 DO_API_TOKEN。它们都指 v2 令牌。
如果使用 snapshot_id,则忽略 region 和 block_size 并将其更改为 null。
示例
- name: Create new Block Storage
community.digitalocean.digital_ocean_block_storage:
state: present
oauth_token: "{{ lookup('ansible.builtin.env', 'DO_API_TOKEN') }}"
command: create
region: nyc1
block_size: 10
volume_name: nyc1-block-storage
- name: Create new Block Storage (and assign to Project "test")
community.digitalocean.digital_ocean_block_storage:
state: present
oauth_token: "{{ lookup('ansible.builtin.env', 'DO_API_TOKEN') }}"
command: create
region: nyc1
block_size: 10
volume_name: nyc1-block-storage
project_name: test
- name: Resize an existing Block Storage
community.digitalocean.digital_ocean_block_storage:
state: present
oauth_token: "{{ lookup('ansible.builtin.env', 'DO_API_TOKEN') }}"
command: create
region: nyc1
block_size: 20
volume_name: nyc1-block-storage
- name: Delete Block Storage
community.digitalocean.digital_ocean_block_storage:
state: absent
oauth_token: "{{ lookup('ansible.builtin.env', 'DO_API_TOKEN') }}"
command: create
region: nyc1
volume_name: nyc1-block-storage
- name: Attach Block Storage to a Droplet
community.digitalocean.digital_ocean_block_storage:
state: present
oauth_token: "{{ lookup('ansible.builtin.env', 'DO_API_TOKEN') }}"
command: attach
volume_name: nyc1-block-storage
region: nyc1
droplet_id: <ID>
- name: Detach Block Storage from a Droplet
community.digitalocean.digital_ocean_block_storage:
state: absent
oauth_token: "{{ lookup('ansible.builtin.env', 'DO_API_TOKEN') }}"
command: attach
volume_name: nyc1-block-storage
region: nyc1
droplet_id: <ID>
返回值
常用返回值已在 此处 记录,以下是此模块独有的字段
键 |
描述 |
---|---|
分配状态 (ok、not_found、assigned、already_assigned、service_down) 已返回:changed 示例: |
|
创建期间返回的块存储卷的唯一标识符。 已返回:changed 示例: |
|
执行期间遇到的信息性或错误消息 已返回:changed 示例: |
|
项目分配中涉及的资源分配 已返回:changed 示例: |