vultr.cloud.dns_record 模块 – 在 Vultr 上管理 DNS 记录

注意

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

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

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

要在 playbook 中使用它,请指定: vultr.cloud.dns_record

vultr.cloud 1.0.0 中的新增功能

概要

  • 创建、更新和删除 DNS 记录。

参数

参数

注释

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

data

字符串

记录的数据。

如果 state=present,则必需。

domain

字符串 / 必需

记录相关的域名。

multiple

布尔值

是否使用多个具有相似名称(包括无名称)和类型的记录。

仅允许用于少数几种记录类型,例如 type=Atype=NStype=MX

不会更新 data,而是将其用作查找现有记录的键。

选项

  • false ← (默认)

  • true

name

字符串

记录名称。

默认值: ""

priority

整数

记录的优先级。

state

字符串

DNS 记录的状态。

选项

  • "present" ← (默认)

  • "absent"

ttl

整数

记录的 TTL。

默认值: 300

type

别名:record_type

字符串

记录的类型。

选项

  • "A" ← (默认)

  • "AAAA"

  • "CNAME"

  • "NS"

  • "MX"

  • "SRV"

  • "TXT"

  • "CAA"

  • "SSHFP"

validate_certs

布尔值

验证 Vultr API 的 SSL 证书。

选项

  • false

  • true ← (默认)

备注

注意

示例

- name: Ensure an A record exists
  vultr.cloud.dns_record:
    name: www
    domain: example.com
    data: 10.10.10.10
    ttl: 3600

- name: Ensure a second A record exists for round robin LB
  vultr.cloud.dns_record:
    name: www
    domain: example.com
    data: 10.10.10.11
    ttl: 60
    multiple: true

- name: Ensure a CNAME record exists
  vultr.cloud.dns_record:
    name: web
    type: CNAME
    domain: example.com
    data: www.example.com

- name: Ensure MX record exists
  vultr.cloud.dns_record:
    type: MX
    domain: example.com
    data: "{{ item.data }}"
    priority: "{{ item.priority }}"
    multiple: true
  with_items:
    - { data: mx1.example.com, priority: 10 }
    - { data: mx2.example.com, priority: 10 }
    - { data: mx3.example.com, priority: 20 }

- name: Ensure a record is absent
  vultr.cloud.dns_record:
    name: www
    domain: example.com
    state: absent

- name: Ensure one MX record is absent if multiple exists
  vultr.cloud.dns_record:
    record_type: MX
    domain: example.com
    data: mx1.example.com
    multiple: true
    state: absent

返回值

公共返回值已记录在 此处,以下是此模块独有的字段

描述

dns_record

字典

来自 Vultr API 的响应。

返回:成功

data

字符串

DNS 记录的数据。

返回:成功

示例: "10.10.10.10"

id

字符串

DNS 记录的 ID。

返回:成功

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

name

字符串

DNS 记录的名称。

返回:成功

示例: "web"

priority

整数

DNS 记录的优先级。

返回:成功

示例: 10

ttl

整数

DNS 记录的生存时间。

返回:成功

示例: 300

type

字符串

DNS 记录的名称。

返回:成功

示例: "A"

vultr_api

字典

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

返回:成功

api_endpoint

字符串

用于 API 请求的端点。

返回:成功

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

api_retries

整数

API 请求的最大重试次数。

返回:成功

示例: 5

api_retry_max_delay

整数

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

返回:成功

示例: 12

api_timeout

整数

用于 API 请求的超时。

返回:成功

示例: 60

作者

  • René Moser (@resmo)