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 示例: |