linode – Manage instances on the Linode Public Cloud
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 boolean 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 boolean 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 boolean 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 boolean 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 boolean 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
| |
name - / required |
Name to give the instance (alphanumeric, dashes, underscore). To keep sanity on the Linode Web Console, name is prepended with | |
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 boolean 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 boolean |
|
wait for the instance to be in state |
wait_timeout - |
Default: 300 |
how long before wait gives up, in seconds |
watchdog boolean added in 2.2 |
|
Set status of Lassie watchdog. |
Notes
Note
LINODE_API_KEY
env variable can be used instead.- Please review https://www.linode.com/api/linode for determining the required parameters.
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 not guaranteed to have a backwards compatible interface. [preview]
- This module is maintained by the Ansible Community. [community]
Authors
- Vincent Viallet (@zbal)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/linode_module.html