On this page
linode_v4 – Manage instances on the Linode cloud
New in version 2.8.
Synopsis
- Manage instances on the Linode cloud.
Requirements
The below requirements are needed on the host that executes this module.
- python >= 2.7
- linode_api4 >= 2.0.0
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
access_token
- / required
|
The Linode API v4 access token. It may also be specified by exposing the LINODE_ACCESS_TOKEN environment variable. See https://developers.linode.com/api/v4#section/Access-and-Authentication.
|
|
authorized_keys
list
|
A list of SSH public key parts to deploy for the root user.
|
|
group
string
|
The group that the instance should be marked under. Please note, that group labelling is deprecated but still supported. The encouraged method for marking instances is to use tags.
|
|
image
string
|
The image of the instance. This is a required parameter only when creating Linode instances. See https://developers.linode.com/api/v4#tag/Images.
|
|
label
string / required
|
The instance label. This label is used as the main determiner for idempotence for the module and is therefore mandatory.
|
|
region
string
|
The region of the instance. This is a required parameter only when creating Linode instances. See https://developers.linode.com/api/v4#tag/Regions.
|
|
root_pass
string
|
The password for the root user. If not specified, one will be generated. This generated password will be available in the task success JSON.
|
|
state
string / required
|
|
The desired instance state.
|
tags
list
|
The tags that the instance should be marked under. See https://developers.linode.com/api/v4#tag/Tags.
|
|
type
string
|
The type of the instance. This is a required parameter only when creating Linode instances. See https://developers.linode.com/api/v4#tag/Linode-Types.
|
Notes
Note
- No Linode resizing is currently implemented. This module will, in time, replace the current Linode module which uses deprecated API bindings on the Linode side.
Examples
- name: Create a new Linode.
linode_v4:
label: new-linode
type: g6-nanode-1
region: eu-west
image: linode/debian9
root_pass: passw0rd
authorized_keys:
- "ssh-rsa ..."
state: present
- name: Delete that new Linode.
linode_v4:
label: new-linode
state: absent
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
instance
dictionary
|
Always. |
The instance description in JSON serialized form.
Sample:
{'root_pass': 'foobar', 'alerts': {'cpu': 90, 'io': 10000, 'network_in': 10, 'network_out': 10, 'transfer_quota': 80}, 'backups': {'enabled': False, 'schedule': {'day': None, 'window': None}}, 'created': '2018-09-26T08:12:33', 'group': 'Foobar Group', 'hypervisor': 'kvm', 'id': 10480444, 'image': 'linode/centos7', 'ipv4': ['130.132.285.233'], 'ipv6': '2a82:7e00::h03c:46ff:fe04:5cd2/64', 'label': 'lin-foo', 'region': 'eu-west', 'specs': {'disk': 25600, 'memory': 1024, 'transfer': 1000, 'vcpus': 1}, 'status': 'running', 'tags': [], 'type': 'g6-nanode-1', 'updated': '2018-09-26T10:10:14', 'watchdog_enabled': True}
|
Status
- This module is not guaranteed to have a backwards compatible interface. [preview]
- This module is maintained by the Ansible Community. [community]
Authors
- Luke Murphy (@lwm)
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.9/modules/linode_v4_module.html