linode - Manage instances on the Linode Public Cloud
New in version 1.3.
Synopsis
- Manage Linode Public Cloud instances and optionally wait for it to be ‘running’.
Requirements
The below requirements are needed on the host that executes this module.
- python >= 2.6
- linode-python
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
additional_disks (added in 2.3) | List of dictionaries for creating additional disks that are added to the Linode configuration settings. Dictionary takes Size, Label, Type. Size is in MB. | |
alert_bwin_enabled bool (added in 2.3) |
| Set status of bandwidth in alerts. |
alert_bwin_threshold (added in 2.3) | Set threshold in MB of bandwidth in alerts. | |
alert_bwout_enabled bool (added in 2.3) |
| Set status of bandwidth out alerts. |
alert_bwout_threshold (added in 2.3) | Set threshold in MB of bandwidth out alerts. | |
alert_bwquota_enabled bool (added in 2.3) |
| Set status of bandwidth quota alerts as percentage of network transfer quota. |
alert_bwquota_threshold (added in 2.3) | Set threshold in MB of bandwidth quota alerts. | |
alert_cpu_enabled bool (added in 2.3) |
| Set status of receiving CPU usage alerts. |
alert_cpu_threshold (added in 2.3) | Set percentage threshold for receiving CPU usage alerts. Each CPU core adds 100% to total. | |
alert_diskio_enabled bool (added in 2.3) |
| Set status of receiving disk IO alerts. |
alert_diskio_threshold (added in 2.3) | Set threshold for average IO ops/sec over 2 hour period. | |
api_key | Linode API key | |
backupweeklyday (added in 2.3) | Integer value for what day of the week to store weekly backups. | |
datacenter | datacenter to create an instance in (Linode Datacenter) | |
displaygroup (added in 2.3) | Add the instance to a Display Group in Linode Manager. | |
distribution | distribution to use for the instance (Linode Distribution) | |
kernel_id (added in 2.4) | kernel to use for the instance (Linode Kernel) | |
linode_id | Unique ID of a linode server aliases: lid | |
name | Name to give the instance (alphanumeric, dashes, underscore). To keep sanity on the Linode Web Console, name is prepended with LinodeID_ . | |
password | root password to apply to a new server (auto generated if missing) | |
payment_term |
| payment term to use for the instance (payment term in months) |
plan | plan to use for the instance (Linode plan) | |
private_ip bool (added in 2.3) |
| Add private IPv4 address when Linode is created. |
ssh_pub_key | SSH public key applied to root user | |
state |
| Indicate desired state of the resource |
swap | Default: 512 | swap size in MB |
wait bool |
| wait for the instance to be in state running before returning |
wait_timeout | Default: 300 | how long before wait gives up, in seconds |
watchdog bool (added in 2.2) |
"True" | Set status of Lassie watchdog. |
Notes
Note
-
LINODE_API_KEY
env variable can be used instead.
Examples
- name: Create a server with a private IP Address linode: module: linode api_key: 'longStringFromLinodeApi' name: linode-test1 plan: 1 datacenter: 2 distribution: 99 password: 'superSecureRootPassword' private_ip: yes ssh_pub_key: 'ssh-rsa qwerty' swap: 768 wait: yes wait_timeout: 600 state: present delegate_to: localhost - name: Fully configure new server linode: api_key: 'longStringFromLinodeApi' name: linode-test1 plan: 4 datacenter: 2 distribution: 99 kernel_id: 138 password: 'superSecureRootPassword' private_ip: yes ssh_pub_key: 'ssh-rsa qwerty' swap: 768 wait: yes wait_timeout: 600 state: present alert_bwquota_enabled: True alert_bwquota_threshold: 80 alert_bwin_enabled: True alert_bwin_threshold: 10 alert_cpu_enabled: True alert_cpu_threshold: 210 alert_bwout_enabled: True alert_bwout_threshold: 10 alert_diskio_enabled: True alert_diskio_threshold: 10000 backupweeklyday: 1 backupwindow: 2 displaygroup: 'test' additional_disks: - {Label: 'disk1', Size: 2500, Type: 'raw'} - {Label: 'newdisk', Size: 2000} watchdog: True delegate_to: localhost - name: Ensure a running server (create if missing) linode: api_key: 'longStringFromLinodeApi' name: linode-test1 linode_id: 12345678 plan: 1 datacenter: 2 distribution: 99 password: 'superSecureRootPassword' ssh_pub_key: 'ssh-rsa qwerty' swap: 768 wait: yes wait_timeout: 600 state: present delegate_to: localhost - name: Delete a server linode: api_key: 'longStringFromLinodeApi' name: linode-test1 linode_id: 12345678 state: absent delegate_to: localhost - name: Stop a server linode: api_key: 'longStringFromLinodeApi' name: linode-test1 linode_id: 12345678 state: stopped delegate_to: localhost - name: Reboot a server linode: api_key: 'longStringFromLinodeApi' name: linode-test1 linode_id: 12345678 state: restarted delegate_to: localhost
Status
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
Maintenance
This module is flagged as community which means that it is maintained by the Ansible Community. See Module Maintenance & Support for more info.
For a list of other modules that are also maintained by the Ansible Community, see here.
Author
- Vincent Viallet (@zbal)
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.6/modules/linode_module.html