vultr.cloud.instance 模块 – 管理 Vultr 上的服务器实例。
注意
此模块是 vultr.cloud 集合 (版本 1.13.0) 的一部分。
如果您使用的是 ansible
包,则可能已经安装了此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用: ansible-galaxy collection install vultr.cloud
。
要在剧本中使用它,请指定: vultr.cloud.instance
。
vultr.cloud 1.1.0 中的新增功能
概要
管理 Vultr 上的服务器实例。
参数
参数 |
注释 |
---|---|
实例准备好后是否发送激活邮件。 仅在创建时考虑。 选项
|
|
API 端点 URL(无尾部斜杠)。 回退环境变量 默认值: |
|
Vultr API 的 API 密钥。 回退环境变量 |
|
如果 Vultr API 返回 HTTP 错误代码(例如 - 429 请求过多 - 500 内部服务器错误 - 504 网关超时),则重试次数。 回退环境变量 默认值: |
|
以秒为单位的重试回退延迟,呈指数增长,直到达到此最大值(以秒为单位)。 回退环境变量 默认值: |
|
到 Vultr API 的 HTTP 超时。 回退环境变量 默认值: |
|
Vultr 一键式应用的应用部署名称。 与 *image* 和 *os* 互斥。 |
|
是否启用自动备份。 选项
|
|
是否启用 ddos_protection。 选项
|
|
是否启用 IPv6。 选项
|
|
要为此实例分配的防火墙组描述。 |
|
要为此实例分配的主机名。 |
|
Vultr 市场应用的镜像部署名称。 与 *os* 和 *app* 互斥。 |
|
实例的名称。 |
|
操作系统名称。 与 *image* 和 *app* 互斥。 |
|
要用于实例的计划名称。 如果实例尚不存在,则为必需。 |
|
部署实例的区域。 |
|
用作此实例主 IP 的浮动 IP 的 IP 地址。 仅在创建时考虑。 |
|
是否跳过等待实例完全准备好访问。 选项
|
|
快照的描述或 ID。 仅在创建实例时考虑。 |
|
创建时传递给实例的 SSH 密钥名称列表。 |
|
启动时要执行的启动脚本的名称或 ID。 仅在创建实例时考虑。 |
|
实例的状态。 状态 *reinstalled* 在 1.8.0 版本中添加。 选项
|
|
实例的标签。 |
|
要传递给实例的用户数据。 |
|
用作登录用户的用户方案(仅限 Linux)。 默认情况下,配置 *root* 用户。 仅在创建实例时考虑。 选项
|
|
验证 Vultr API 的 SSL 证书。 选项
|
|
要分配给实例的 VPC 列表,由其描述标识。 |
备注
注意
另请参阅 https://www.vultr.com/api/ 上的 API 文档。
示例
---
- name: Create an instance using OS
vultr.cloud.instance:
label: my web server
hostname: my-hostname
user_data: |
#cloud-config
packages:
- nginx
firewall_group: my firewall group
plan: vc2-1c-2gb
ddos_protection: true
backups: true
enable_ipv6: true
ssh_keys:
- my ssh key
vpcs:
- my vpc description
tags:
- web
- project-genesis
region: ams
os: Debian 12 x64 (bookworm)
- name: Deploy an instance of a marketplace app
vultr.cloud.instance:
label: git-server
hostname: git
firewall_group: my firewall group
plan: vc2-1c-2gb
ddos_protection: true
backups: true
enable_ipv6: true
region: ams
image: Gitea on Ubuntu 20.04
- name: Stop an existing instance
vultr.cloud.instance:
label: my web server
region: ams
state: stopped
- name: Start an existing instance
vultr.cloud.instance:
label: my web server
region: ams
state: started
- name: Reinstall an instance
vultr.cloud.instance:
label: my web server
region: ams
state: reinstalled
- name: Delete an instance
vultr.cloud.instance:
label: my web server
region: ams
state: absent
返回值
常见的返回值已在此处记录,以下是此模块独有的字段
键 |
描述 |
---|---|
Vultr API 响应,包含一些补充/修改。 返回: 成功 |
|
API 请求使用的端点。 返回: 成功 示例: |
|
API 请求的最大重试次数。 返回: 成功 示例: |
|
重试之间指数退避延迟(秒),上限为该最大延迟值。 返回: 成功 示例: |
|
API 请求使用的超时时间。 返回: 成功 示例: |
|
Vultr API 响应。 返回: 成功 |
|
实例允许的带宽。 返回: 成功 示例: |
|
实例的应用 ID。 返回: 成功 示例: |
|
备份是否启用。 返回: 成功 示例: |
|
实例创建时间。 返回: 成功 示例: |
|
DDoS 防护是否启用。 返回: 成功 示例: |
|
实例的磁盘大小。 返回: 成功 示例: |
|
IPv6 是否启用。 返回: 成功 示例: |
|
实例的功能。 返回: 成功 示例: |
|
实例的防火墙组 ID。 返回: 成功 示例: |
|
IPv4 网关。 返回: 成功 示例: |
|
实例的主机名。 返回: 成功 示例: |
|
实例的 ID。 返回: 成功 示例: |
|
实例的镜像 ID。 返回: 成功 示例: |
|
实例的内部 IP。 返回: 成功 示例: |
|
实例的 KVM。 返回: 成功 示例: |
|
实例的标签。 返回: 成功 示例: |
|
实例的 IPv4 地址。 返回: 成功 示例: |
|
实例的 IPv4 子网掩码。 返回: 成功 示例: |
|
实例的操作系统。 返回: 成功 示例: |
|
实例的操作系统 ID。 返回: 成功 示例: |
|
实例的套餐。 返回: 成功 示例: |
|
实例的电源状态。 返回: 成功 示例: |
|
实例的 RAM(MB)。 返回: 成功 示例: |
|
实例部署的区域。 返回: 成功 示例: |
|
实例的服务器状态。 返回: 成功 示例: |
|
关于实例部署的状态。 返回: 成功 示例: |
|
实例的标签。 返回: 成功 示例: |
|
实例的 Base64 编码用户数据(cloud init)。 返回: 成功 示例: |
|
登录此实例的用户方案。 返回: 成功 示例: |
|
实例的 IPv6 地址。 返回: 成功 示例: |
|
实例的 IPv6 网络。 返回: 成功 示例: |
|
实例的 IPv6 网络大小。 返回: 成功 示例: |
|
实例的 vCPU 数量。 返回: 成功 示例: |
|
已附加的 VPC 列表。 返回: 成功 |
|
VPC 的描述。 返回: 成功 示例: |
|
VPC 的 ID。 返回: 成功 示例: |
|
从 VPC 分配的 IP 地址。 返回: 成功 示例: |
|
网络接口的 MAC 地址。 返回: 成功 示例: |