vultr.cloud.block_storage 模块 – 在 Vultr 上管理块存储卷

注意

此模块是 vultr.cloud 集合 (版本 1.13.0) 的一部分。

如果您使用的是 ansible 包,则您可能已经安装了此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install vultr.cloud

要在剧本中使用它,请指定:vultr.cloud.block_storage

vultr.cloud 1.0.0 中的新增功能

概要

  • 管理块存储卷。

参数

参数

注释

api_endpoint

字符串

API 端点 URL(不带尾部斜杠)。

回退环境变量 VULTR_API_ENDPOINT

默认值: "https://api.vultr.com/v2"

api_key

字符串 / 必需

Vultr API 的 API 密钥。

回退环境变量 VULTR_API_KEY

api_retries

整数

如果 Vultr API 返回 HTTP 错误代码(例如 - 429 请求过多 - 500 内部服务器错误 - 504 网关超时),则重试次数。

回退环境变量 VULTR_API_RETRIES

默认值: 5

api_retry_max_delay

整数

以秒为单位的重试回退延迟,呈指数增长,直到达到此最大值(秒)。

回退环境变量 VULTR_API_RETRY_MAX_DELAY

默认值: 12

api_timeout

整数

到 Vultr API 的 HTTP 超时。

回退环境变量 VULTR_API_TIMEOUT

默认值: 180

attached_to_instance

字符串

卷附加到的服务器实例的 ID。

block_type

字符串

vultr.cloud 1.2.0 中新增

将要创建的块存储卷的类型。

选项

  • "high_perf" ← (默认)

  • "storage_opt"

label

别名:name

字符串 / 必需

块存储卷的名称。

live

布尔值

是否应在不重启实例的情况下附加/分离卷。

选项

  • false ← (默认)

  • true

region

字符串

部署块存储卷的区域。

如果 *state* 为 present,则为必需。

size_gb

别名:size

整数

块存储卷的大小(GB)。

如果 *state* 为 present,则为必需。

如果它大于卷的当前大小,则会调整卷的大小。

state

字符串

块存储卷的状态。

选项

  • "present" ← (默认)

  • "absent"

validate_certs

布尔值

验证 Vultr API 的 SSL 证书。

选项

  • false

  • true ← (默认)

备注

注意

示例

---
- name: Ensure a block storage volume is present
  vultr.cloud.block_storage:
    name: myvolume
    size_gb: 10
    block_type: storage_opt
    region: ams

- name: Ensure a block storage volume is absent
  vultr.cloud.block_storage:
    name: myvolume
    state: absent

- name: Ensure a block storage volume exists and is attached a server instance
  vultr.cloud.block_storage:
    name: myvolume
    attached_to_instance: cb676a46-66fd-4dfb-b839-443f2e6c0b60
    size_gb: 50
    block_type: high_perf

- name: Ensure a block storage volume exists but is not attached to any server instance
  vultr.cloud.block_storage:
    name: myvolume
    attached_to_instance: ""
    size_gb: 50
    block_type: high_perf

返回值

常见的返回值已在此处记录,以下是此模块特有的字段

描述

vultr_api

字典

来自 Vultr API 的响应,并进行了一些添加/修改。

已返回:成功

api_account

字符串

在 ini 文件中用于选择密钥的帐户。

已返回:成功

示例: "default"

api_endpoint

字符串

用于 API 请求的端点。

已返回:成功

示例: "https://api.vultr.com/v2"

api_retries

整数

API 请求的最大重试次数。

已返回:成功

示例: 5

api_retry_max_delay

整数

重试之间以秒为单位的指数回退延迟,直到达到此最大延迟值。

已返回:成功

示例: 12

api_timeout

整数

用于 API 请求的超时。

已返回:成功

示例: 60

vultr_block_storage

字典

Vultr API响应。

已返回:成功

attached_to_instance

字符串

卷附加到的服务器实例的 ID。

已返回:成功

示例: "cb676a46-66fd-4dfb-b839-443f2e6c0b60"

block_type

字符串

HDD 或 NVMe (storage_opt 或 high_perf)

已返回:成功

示例: "high_perf"

成本

浮点数

卷的每月成本。

已返回:成功

示例: 1.0

创建日期

字符串

卷创建的日期。

已返回:成功

示例: "2020-10-10T01:56:20+00:00"

ID

字符串

块存储卷的ID。

已返回:成功

示例: "cb676a46-66fd-4dfb-b839-443f2e6c0b60"

标签

字符串

卷的标签。

已返回:成功

示例: "my" volume"

挂载ID

字符串

卷的挂载ID。

已返回:成功

示例: "ewr-2f5d7a314fe44f"

region

字符串

卷部署的区域。

已返回:成功

示例: "ews"

大小 (GB)

整数

卷大小(以GB为单位)的信息。

已返回:成功

示例: 50

状态

字符串

卷部署的状态。

已返回:成功

示例: "active"

作者

  • René Moser (@resmo)

  • Yanis Guenane (@Spredzy)