Server
server
Create, update, destroy, update, start, stop, and reboot a Ionos virtual machine. When the virtual machine is created it can optionally wait for it to be 'running' before returning. The CUBE functionality of the server module is DEPRECATED. Please use the new cube_server module for operations with CUBE servers.
Example Syntax
name: Provision two servers
ionoscloudsdk.ionoscloud.server:
datacenter: 'AnsibleAutoTestCompute'
name: 'AnsibleAutoTestCompute %02d'
cores: 1
ram: 1024
availability_zone: ZONE_1
lan: 'AnsibleAutoTestCompute'
volume_availability_zone: ZONE_3
volume_size: 20
cpu_family: INTEL_SKYLAKE
disk_type: SSD Standard
image: 'centos:7'
image_password: '{{ lookup('ansible.builtin.password', '/dev/null chars=ascii_letters,digits') }}'
location: 'gb/lhr'
user_data: ''
count: 2
remove_boot_volume: true
wait: true
wait_timeout: '500'
state: present
register: server_create_result
name: Update servers
ionoscloudsdk.ionoscloud.server:
datacenter: 'AnsibleAutoTestCompute'
instance_ids:
- 'AnsibleAutoTestCompute 01'
- 'AnsibleAutoTestCompute 02'
cores: 2
cpu_family: INTEL_SKYLAKE
ram: 2048
wait_timeout: '500'
state: update
name: Remove servers
ionoscloudsdk.ionoscloud.server:
datacenter: 'AnsibleAutoTestCompute'
instance_ids:
- 'AnsibleAutoTestCompute'
- 'AnsibleAutoTestCompute 02'
remove_boot_volume: true
wait_timeout: '500'
state: absent
name: Start servers
ionoscloudsdk.ionoscloud.server:
datacenter: 'AnsibleAutoTestCompute'
instance_ids:
- 'AnsibleAutoTestCompute'
- 'AnsibleAutoTestCompute 02'
wait_timeout: '500'
state: running
name: Stop servers
ionoscloudsdk.ionoscloud.server:
datacenter: 'AnsibleAutoTestCompute'
instance_ids:
- 'AnsibleAutoTestCompute'
- 'AnsibleAutoTestCompute 02'
wait_timeout: '500'
state: stopped
Returned object
{
"changed": false,
"failed": false,
"machines": [
{
"entities": {
"cdroms": {
"links": null,
"href": "https://api.ionos.com/cloudapi/v6/datacenters/f6e15460-e5eb-451a-9da7-08c9da65a179/servers/78ce195d-147b-48d8-a20e-57104b99badd/cdroms",
"id": "78ce195d-147b-48d8-a20e-57104b99badd/cdroms",
"items": null,
"limit": null,
"offset": null,
"type": "collection"
},
"nics": {
"links": null,
"href": "https://api.ionos.com/cloudapi/v6/datacenters/f6e15460-e5eb-451a-9da7-08c9da65a179/servers/78ce195d-147b-48d8-a20e-57104b99badd/nics",
"id": "78ce195d-147b-48d8-a20e-57104b99badd/nics",
"items": null,
"limit": null,
"offset": null,
"type": "collection"
},
"volumes": {
"links": null,
"href": "https://api.ionos.com/cloudapi/v6/datacenters/f6e15460-e5eb-451a-9da7-08c9da65a179/servers/78ce195d-147b-48d8-a20e-57104b99badd/volumes",
"id": "78ce195d-147b-48d8-a20e-57104b99badd/volumes",
"items": null,
"limit": null,
"offset": null,
"type": "collection"
}
},
"href": "https://api.ionos.com/cloudapi/v6/datacenters/f6e15460-e5eb-451a-9da7-08c9da65a179/servers/78ce195d-147b-48d8-a20e-57104b99badd",
"id": "78ce195d-147b-48d8-a20e-57104b99badd",
"metadata": {
"created_by": "<USER_EMAIL>",
"created_by_user_id": "<USER_ID>",
"created_date": "2023-05-29T09:17:01+00:00",
"etag": "f9b2094caee723ec45475a17c223ddd2",
"last_modified_by": "<USER_EMAIL>",
"last_modified_by_user_id": "<USER_ID>",
"last_modified_date": "2023-05-29T09:17:01+00:00",
"state": "AVAILABLE"
},
"properties": {
"availability_zone": "AUTO",
"boot_cdrom": null,
"boot_volume": {
"href": "https://api.ionos.com/cloudapi/v6/datacenters/f6e15460-e5eb-451a-9da7-08c9da65a179/volumes/4e9d988c-d4d8-4de1-a325-7f1a7b0ea77f",
"id": "4e9d988c-d4d8-4de1-a325-7f1a7b0ea77f",
"type": "volume"
},
"cores": 1,
"cpu_family": "INTEL_SKYLAKE",
"name": "AnsibleAutoTestCompute",
"ram": 2048,
"template_uuid": null,
"type": "ENTERPRISE",
"vm_state": "RUNNING"
},
"type": "server"
}
],
"action": "create"
}
For more examples please check out the tests here.
state: running
name: Start servers
ionoscloudsdk.ionoscloud.server:
datacenter: 'AnsibleAutoTestCompute'
instance_ids:
- 'AnsibleAutoTestCompute'
- 'AnsibleAutoTestCompute 02'
wait_timeout: '500'
state: running
Available parameters for state running:
state: stopped
name: Stop servers
ionoscloudsdk.ionoscloud.server:
datacenter: 'AnsibleAutoTestCompute'
instance_ids:
- 'AnsibleAutoTestCompute'
- 'AnsibleAutoTestCompute 02'
wait_timeout: '500'
state: stopped
Available parameters for state stopped:
state: absent
name: Remove servers
ionoscloudsdk.ionoscloud.server:
datacenter: 'AnsibleAutoTestCompute'
instance_ids:
- 'AnsibleAutoTestCompute'
- 'AnsibleAutoTestCompute 02'
remove_boot_volume: true
wait_timeout: '500'
state: absent
Available parameters for state absent:
state: present
name: Provision two servers
ionoscloudsdk.ionoscloud.server:
datacenter: 'AnsibleAutoTestCompute'
name: 'AnsibleAutoTestCompute %02d'
cores: 1
ram: 1024
availability_zone: ZONE_1
lan: 'AnsibleAutoTestCompute'
volume_availability_zone: ZONE_3
volume_size: 20
cpu_family: INTEL_SKYLAKE
disk_type: SSD Standard
image: 'centos:7'
image_password: '{{ lookup('ansible.builtin.password', '/dev/null chars=ascii_letters,digits') }}'
location: 'gb/lhr'
user_data: ''
count: 2
remove_boot_volume: true
wait: true
wait_timeout: '500'
state: present
register: server_create_result
Available parameters for state present:
state: update
name: Update servers
ionoscloudsdk.ionoscloud.server:
datacenter: 'AnsibleAutoTestCompute'
instance_ids:
- 'AnsibleAutoTestCompute 01'
- 'AnsibleAutoTestCompute 02'
cores: 2
cpu_family: INTEL_SKYLAKE
ram: 2048
wait_timeout: '500'
state: update
Available parameters for state update:
Last updated