community.general.oneandone_server – Create, destroy, start, stop, and reboot a 1&1 Host server.
Note
This plugin is part of the community.general collection (version 3.8.3).
You might already have this collection installed if you are using the ansible
package.
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install community.general
.
To use it in a playbook, specify: community.general.oneandone_server
.
Synopsis
Create, destroy, update, start, stop, and reboot a 1&1 Host server. When the server is created it can optionally wait for it to be ‘running’ before returning.
Requirements
The below requirements are needed on the host that executes this module.
1and1
python >= 2.6
Parameters
Parameter |
Comments |
---|---|
Custom API URL. Overrides the ONEANDONE_API_URL environment variable. |
|
The operating system name or ID for the server. It is required only for ‘present’ state. |
|
Authenticating API token provided by 1&1. Overrides the ONEANDONE_AUTH_TOKEN environment variable. |
|
When creating multiple servers at once, whether to differentiate hostnames by appending a count after them or substituting the count where there is a %02d or %03d in the hostname string. Choices:
|
|
The number of cores per processor. It must be provided with vcore, ram, and hdds parameters. |
|
The number of servers to create. Default: 1 |
|
The datacenter location. Choices:
|
|
The description of the server. |
|
The firewall policy name or ID. |
|
The instance size name or ID of the server. It is required only for ‘present’ state, and it is mutually exclusive with vcore, cores_per_processor, ram, and hdds parameters. The available choices are: |
|
A list of hard disks with nested “size” and “is_main” properties. It must be provided with vcore, cores_per_processor, and ram parameters. |
|
The hostname or ID of the server. Only used when state is ‘present’. |
|
The load balancer name or ID. |
|
The monitoring policy name or ID. |
|
The private network name or ID. |
|
The amount of RAM memory. It must be provided with with vcore, cores_per_processor, and hdds parameters. |
|
Server identifier (ID or hostname). It is required for all states except ‘running’ and ‘present’. |
|
The type of server to be built. Choices:
|
|
User’s public SSH key (contents, not path). |
|
Define a server’s state to create, remove, start or stop it. Choices:
|
|
The total number of processors. It must be provided with cores_per_processor, ram, and hdds parameters. |
|
Wait for the server to be in state ‘running’ before returning. Also used for delete operation (set to ‘false’ if you don’t want to wait for each individual server to be deleted before moving on with other tasks.) Choices:
|
|
Defines the number of seconds to wait when using the wait_for methods Default: 5 |
|
how long before wait gives up, in seconds Default: 600 |
Examples
- name: Create three servers and enumerate their names
community.general.oneandone_server:
auth_token: oneandone_private_api_key
hostname: node%02d
fixed_instance_size: XL
datacenter: US
appliance: C5A349786169F140BCBC335675014C08
auto_increment: true
count: 3
- name: Create three servers, passing in an ssh_key
community.general.oneandone_server:
auth_token: oneandone_private_api_key
hostname: node%02d
vcore: 2
cores_per_processor: 4
ram: 8.0
hdds:
- size: 50
is_main: false
datacenter: ES
appliance: C5A349786169F140BCBC335675014C08
count: 3
wait: yes
wait_timeout: 600
wait_interval: 10
ssh_key: SSH_PUBLIC_KEY
- name: Removing server
community.general.oneandone_server:
auth_token: oneandone_private_api_key
state: absent
server: 'node01'
- name: Starting server
community.general.oneandone_server:
auth_token: oneandone_private_api_key
state: running
server: 'node01'
- name: Stopping server
community.general.oneandone_server:
auth_token: oneandone_private_api_key
state: stopped
server: 'node01'
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
Information about each server that was processed Returned: always Sample: “[{\”hostname\”: \”my-server\”, \”id\”: \”server-id\”}]” |
Authors
Amel Ajdinovic (@aajdinov)
Ethan Devenport (@edevenport)