ngine_io.cloudstack.cs_instance – Manages instances and virtual machines on Apache CloudStack based clouds.¶
Note
This plugin is part of the ngine_io.cloudstack collection (version 2.1.0).
To install it use: ansible-galaxy collection install ngine_io.cloudstack
.
To use it in a playbook, specify: ngine_io.cloudstack.cs_instance
.
New in version 0.1.0: of ngine_io.cloudstack
Requirements¶
The below requirements are needed on the host that executes this module.
python >= 2.6
cs >= 0.9.0
Parameters¶
Notes¶
Note
A detailed guide about cloudstack modules can be found in the CloudStack Cloud Guide.
This module supports check mode.
Examples¶
# NOTE: Names of offerings and ISOs depending on the CloudStack configuration.
- name: create a instance from an ISO
ngine_io.cloudstack.cs_instance:
name: web-vm-1
iso: Linux Debian 7 64-bit
hypervisor: VMware
project: Integration
zone: ch-zrh-ix-01
service_offering: 1cpu_1gb
disk_offering: PerfPlus Storage
disk_size: 20
networks:
- Server Integration
- Sync Integration
- Storage Integration
- name: for changing a running instance, use the 'force' parameter
ngine_io.cloudstack.cs_instance:
name: web-vm-1
zone: zone01
display_name: web-vm-01.example.com
iso: Linux Debian 7 64-bit
service_offering: 2cpu_2gb
force: yes
# NOTE: user_data can be used to kickstart the instance using cloud-init yaml config.
- name: create or update a instance on Exoscale's public cloud using display_name.
ngine_io.cloudstack.cs_instance:
display_name: web-vm-1
zone: zone01
template: Linux Debian 7 64-bit
service_offering: Tiny
ssh_key: [email protected]
tags:
- key: admin
value: john
- key: foo
value: bar
user_data: |
#cloud-config
packages:
- nginx
- name: create an instance with multiple interfaces specifying the IP addresses
ngine_io.cloudstack.cs_instance:
name: web-vm-1
zone: zone01
template: Linux Debian 7 64-bit
service_offering: Tiny
ip_to_networks:
- network: NetworkA
ip: 10.1.1.1
- network: NetworkB
ip: 192.0.2.1
- name: ensure an instance is stopped
ngine_io.cloudstack.cs_instance:
name: web-vm-1
zone: zone01
state: stopped
- name: ensure an instance is running
ngine_io.cloudstack.cs_instance:
name: web-vm-1
zone: zone01
state: started
- name: remove an instance
ngine_io.cloudstack.cs_instance:
name: web-vm-1
zone: zone01
state: absent
Return Values¶
Common return values are documented here, the following are the fields unique to this module:
Authors¶
René Moser (@resmo)