ansible / ansible.builtin / v2.9.27 / module / linode Manage instances on the Linode Public Cloud | "added in version" 1.3 of ansible.builtin" Authors: Vincent Viallet (@zbal) preview | supported by communityansible.builtin.linode (v2.9.27) — module
pip
Install with pip install ansible==2.9.27
Manage Linode Public Cloud instances and optionally wait for it to be 'running'.
- name: Create a new Linode linode: name: linode-test1 plan: 1 datacenter: 7 distribution: 129 state: present register: linode_creation
- 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 register: linode_creation
- 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 register: linode_creation
- name: Ensure a running server (create if missing) linode: api_key: 'longStringFromLinodeApi' name: linode-test1 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 register: linode_creation
- name: Delete a server linode: api_key: 'longStringFromLinodeApi' name: linode-test1 linode_id: "{{ linode_creation.instance.id }}" state: absent delegate_to: localhost
- name: Stop a server linode: api_key: 'longStringFromLinodeApi' name: linode-test1 linode_id: "{{ linode_creation.instance.id }}" state: stopped delegate_to: localhost
- name: Reboot a server linode: api_key: 'longStringFromLinodeApi' name: linode-test1 linode_id: "{{ linode_creation.instance.id }}" state: restarted delegate_to: localhost
name: description: - Name to give the instance (alphanumeric, dashes, underscore). - To keep sanity on the Linode Web Console, name is prepended with C(LinodeID-). required: true plan: description: - plan to use for the instance (Linode plan) swap: default: 512 description: - swap size in MB wait: default: 'no' description: - wait for the instance to be in state C(running) before returning type: bool state: choices: - absent - active - deleted - present - restarted - started - stopped default: present description: - Indicate desired state of the resource api_key: description: - Linode API key password: description: - root password to apply to a new server (auto generated if missing) watchdog: default: 'True' description: - Set status of Lassie watchdog. type: bool version_added: '2.2' version_added_collection: ansible.builtin kernel_id: description: - kernel to use for the instance (Linode Kernel) version_added: '2.4' version_added_collection: ansible.builtin linode_id: aliases: - lid description: - Unique ID of a linode server. This value is read-only in the sense that if you specify it on creation of a Linode it will not be used. The Linode API generates these IDs and we can those generated value here to reference a Linode more specifically. This is useful for idempotence. datacenter: description: - datacenter to create an instance in (Linode Datacenter) private_ip: default: 'no' description: - Add private IPv4 address when Linode is created. type: bool version_added: '2.3' version_added_collection: ansible.builtin ssh_pub_key: description: - SSH public key applied to root user displaygroup: description: - Add the instance to a Display Group in Linode Manager. version_added: '2.3' version_added_collection: ansible.builtin distribution: description: - distribution to use for the instance (Linode Distribution) payment_term: choices: - 1 - 12 - 24 default: 1 description: - payment term to use for the instance (payment term in months) wait_timeout: default: 300 description: - how long before wait gives up, in seconds backupweeklyday: description: - Integer value for what day of the week to store weekly backups. version_added: '2.3' version_added_collection: ansible.builtin additional_disks: description: - List of dictionaries for creating additional disks that are added to the Linode configuration settings. - Dictionary takes Size, Label, Type. Size is in MB. version_added: '2.3' version_added_collection: ansible.builtin alert_cpu_enabled: description: - Set status of receiving CPU usage alerts. type: bool version_added: '2.3' version_added_collection: ansible.builtin alert_bwin_enabled: description: - Set status of bandwidth in alerts. type: bool version_added: '2.3' version_added_collection: ansible.builtin alert_bwout_enabled: description: - Set status of bandwidth out alerts. type: bool version_added: '2.3' version_added_collection: ansible.builtin alert_cpu_threshold: description: - Set percentage threshold for receiving CPU usage alerts. Each CPU core adds 100% to total. version_added: '2.3' version_added_collection: ansible.builtin alert_bwin_threshold: description: - Set threshold in MB of bandwidth in alerts. version_added: '2.3' version_added_collection: ansible.builtin alert_diskio_enabled: description: - Set status of receiving disk IO alerts. type: bool version_added: '2.3' version_added_collection: ansible.builtin alert_bwout_threshold: description: - Set threshold in MB of bandwidth out alerts. version_added: '2.3' version_added_collection: ansible.builtin alert_bwquota_enabled: description: - Set status of bandwidth quota alerts as percentage of network transfer quota. type: bool version_added: '2.3' version_added_collection: ansible.builtin alert_diskio_threshold: description: - Set threshold for average IO ops/sec over 2 hour period. version_added: '2.3' version_added_collection: ansible.builtin alert_bwquota_threshold: description: - Set threshold in MB of bandwidth quota alerts. version_added: '2.3' version_added_collection: ansible.builtin