vr_server - Manages virtual servers on Vultr.
New in version 2.5.
Synopsis
- Deploy, start, stop, update, restart, reinstall servers.
Requirements
The below requirements are needed on the host that executes this module.
- python >= 2.6
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
api_account | Default: default | Name of the ini section in the vultr.ini file.The ENV variable VULTR_API_ACCOUNT is used as default, when defined. |
api_endpoint | Default: https://api.vultr.com | URL to API endpint (without trailing slash). The ENV variable VULTR_API_ENDPOINT is used as default, when defined. |
api_key | API key of the Vultr API. The ENV variable VULTR_API_KEY is used as default, when defined. | |
api_retries | Default: 5 | Amount of retries in case of the Vultr API retuns an HTTP 503 code. The ENV variable VULTR_API_RETRIES is used as default, when defined. |
api_timeout | Default: 60 | HTTP timeout to Vultr API. The ENV variable VULTR_API_TIMEOUT is used as default, when defined. |
auto_backup_enabled |
| Whether to enable automatic backups or not. |
firewall_group | The firewall group to assign this server to. | |
force | Force stop/start the server if required to apply changes Otherwise a running server will not be changed. | |
hostname | Hostname to assign to this server. | |
ipv6_enabled |
| Whether to enable IPv6 or not. |
name required | Name of the server. aliases: label | |
notify_activate |
| Whether to send an activation email when the server is ready or not. Only considered on creation. |
os | The operating system. Required if the server does not yet exist. | |
plan | Plan to use for the server. Required if the server does not yet exist. | |
private_network_enabled |
| Whether to enable private networking or not. |
region | Region the server is deployed into. Required if the server does not yet exist. | |
reserved_ip_v4 | IP address of the floating IP to use as the main IP of this server. Only considered on creation. | |
ssh_keys | List of SSH keys passed to the server on creation. aliases: ssh_key | |
startup_script | Name of the startup script to execute on boot. Only considered while creating the server. | |
state |
| State of the server. |
tag | Tag for the server. | |
user_data | User data to be passed to the server. | |
validate_certs |
| Validate SSL certs of the Vultr API. |
Notes
Note
- Also see the API documentation on https://www.vultr.com/api/.
Examples
- name: create server local_action: module: vr_server name: "{{ vr_server_name }}" os: CentOS 7 x64 plan: 1024 MB RAM,25 GB SSD,1.00 TB BW region: Amsterdam state: present - name: ensure a server is present and started local_action: module: vr_server name: "{{ vr_server_name }}" os: CentOS 7 x64 plan: 1024 MB RAM,25 GB SSD,1.00 TB BW region: Amsterdam state: started - name: ensure a server is present and stopped local_action: module: vr_server name: "{{ vr_server_name }}" os: CentOS 7 x64 plan: 1024 MB RAM,25 GB SSD,1.00 TB BW region: Amsterdam state: stopped - name: ensure an existing server is stopped local_action: module: vr_server name: "{{ vr_server_name }}" state: stopped - name: ensure an existing server is started local_action: module: vr_server name: "{{ vr_server_name }}" state: started - name: ensure a server is absent local_action: module: vr_server name: "{{ vr_server_name }}" 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_endpoint string | success | Endpoint used for the API requests Sample: https://api.vultr.com | |
api_timeout int | success | Timeout used for the API requests Sample: 60 | |
api_retries int | success | Amount of max retries for the API requests Sample: 5 | |
api_account string | success | Account used in the ini file to select the key Sample: default | |
vultr_server complex | success | Response from Vultr API with a few additions/modification | |
status string | success | Status about the deployment of the server Sample: active | |
v6_network_size string | success | Network size IPv6 | |
server_state string | success | State about the server Sample: ok | |
ram string | success | Information about the RAM size Sample: 1024 MB | |
tag string | success | TBD | |
allowed_bandwidth_gb int | success | Allowed bandwidth to use in GB Sample: 1000 | |
default_password string | success | Password to login as root into the server Sample: !p3EWYJm$qDWYaFr | |
internal_ip string | success | Internal IP | |
auto_backup_enabled bool | success | Whether automatic backups are enabled | |
pending_charges float | success | Pending charges Sample: 0.01 | |
plan string | success | Plan used for the server Sample: 1024 MB RAM,25 GB SSD,1.00 TB BW | |
v6_network string | success | Network IPv6 | |
disk string | success | Information about the disk Sample: Virtual 25 GB | |
v4_netmask string | success | Netmask IPv4 Sample: 255.255.254.0 | |
id string | success | ID of the server Sample: 10194376 | |
v6_networks list | success | Networks IPv6 | |
vcpu_count int | success | Virtual CPU count Sample: 1 | |
name string | success | Name (label) of the server Sample: ansible-test-vm | |
kvm_url string | success | URL to the VNC Sample: https://my.vultr.com/subs/vps/novnc/api.php?data=xyz | |
os string | success | Operating system used for the server Sample: CentOS 6 x64 | |
v6_main_ip string | success | Main IPv6 | |
v4_gateway string | success | IPv4 gateway Sample: 45.32.232.1 | |
firewall_group string | success and available | Firewall group the server is assinged to Sample: CentOS 6 x64 | |
current_bandwidth_gb int | success | Current bandwidth used for the server | |
power_status string | success | Power status of the server Sample: running | |
date_created string | success | Date when the server was created Sample: 2017-08-26 12:47:48 | |
v4_main_ip string | success | Main IPv4 Sample: 45.32.233.154 | |
region string | success | Region the server was deployed into Sample: Amsterdam | |
cost_per_month float | success | Cost per month for the server Sample: 5.0 |
Status
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
Author
- René Moser (@resmo)
Hint
If you notice any issues in this documentation you can edit this document to improve it.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/vr_server_module.html