vultr_dns_record – Manages DNS records on Vultr
vultr_dns_record – Manages DNS records on Vultr
New in version 2.5.
Synopsis
- Create, update and remove DNS records.
Aliases: vr_dns_record
Requirements
The below requirements are needed on the host that executes this module.
- python >= 2.6
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
api_account string |
Default: "default" |
Name of the ini section in the The ENV variable |
api_endpoint string |
URL to API endpint (without trailing slash). The ENV variable Fallback value is https://api.vultr.com if not specified. | |
api_key string |
API key of the Vultr API. The ENV variable | |
api_retries integer |
Amount of retries in case of the Vultr API retuns an HTTP 503 code. The ENV variable Fallback value is 5 retries if not specified. | |
api_retry_max_delay integer added in 2.9 |
Retry backoff delay in seconds is exponential up to this max. value, in seconds. The ENV variable Fallback value is 12 seconds. | |
api_timeout integer |
HTTP timeout to Vultr API. The ENV variable Fallback value is 60 seconds if not specified. | |
data - |
Data of the record. Required if | |
domain - / required |
The domain the record is related to. | |
multiple boolean |
|
Whether to use more than one record with similar Only allowed for a few record types, e.g.
|
name - |
Default: "" |
The record name (subrecord).
|
priority - |
Default: 0 |
Priority of the record. |
record_type - |
|
Type of the record.
|
state - |
|
State of the DNS record. |
ttl - |
Default: 300 |
TTL of the record. |
validate_certs boolean |
|
Validate SSL certs of the Vultr API. |
Notes
Examples
- name: Ensure an A record exists
vultr_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_dns_record:
name: www
domain: example.com
data: 10.10.10.11
ttl: 60
multiple: yes
- name: Ensure a CNAME record exists
vultr_dns_record:
name: web
record_type: CNAME
domain: example.com
data: www.example.com
- name: Ensure MX record exists
vultr_dns_record:
record_type: MX
domain: example.com
data: "{{ item.data }}"
priority: "{{ item.priority }}"
multiple: yes
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
local_action:
module: vultr_dns_record
name: www
domain: example.com
state: absent
- name: Ensure MX record is absent in case multiple exists
vultr_dns_record:
record_type: MX
domain: example.com
data: mx1.example.com
multiple: yes
state: absent
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description | |
---|---|---|---|
vultr_api complex |
success |
Response from Vultr API with a few additions/modification
| |
api_account string |
success |
Account used in the ini file to select the key
Sample: default | |
api_endpoint string |
success |
Endpoint used for the API requests
Sample: | |
api_retries integer |
success |
Amount of max retries for the API requests
Sample: 5 | |
api_retry_max_delay integer added in 2.9 |
success |
Exponential backoff delay in seconds between retries up to this max delay value.
Sample: 12 | |
api_timeout integer |
success |
Timeout used for the API requests
Sample: 60 | |
vultr_dns_record complex |
success |
Response from Vultr API
| |
data string |
success |
Data of the DNS record.
Sample: 10.10.10.10 | |
domain string |
success |
Domain the DNS record is related to.
Sample: example.com | |
id integer |
success |
The ID of the DNS record.
Sample: 1265277 | |
name string |
success |
The name of the DNS record.
Sample: web | |
priority integer |
success |
Priority of the DNS record.
Sample: 10 | |
record_type string |
success |
The name of the DNS record.
Sample: web | |
ttl integer |
success |
Time to live of the DNS record.
Sample: 300 |
Status
- This module is not guaranteed to have a backwards compatible interface. [preview]
- This module is maintained by the Ansible Community. [community]
Authors
- René Moser (@resmo)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/vultr_dns_record_module.html