cs_host - Manages hosts on Apache CloudStack based clouds.
New in version 2.3.
Synopsis
- Create, update and remove hosts.
Requirements (on host that executes module)
- python >= 2.6
- cs >= 0.6.10
Options
| parameter | required | default | choices | comments |
|---|---|---|---|---|
| allocation_state | no |
| Allocation state of the host. | |
| api_http_method | no | get |
| HTTP method used. |
| api_key | no | API key of the CloudStack API. | ||
| api_region | no | cloudstack | Name of the ini section in the cloustack.ini file. | |
| api_secret | no | Secret key of the CloudStack API. | ||
| api_timeout | no | 10 | HTTP timeout. | |
| api_url | no | URL of the CloudStack API e.g. https://cloud.example.com/client/api. | ||
| cluster | no | Name of the cluster. | ||
| host_tags | no | Tags of the host. aliases: host_tag | ||
| hypervisor | no |
| Name of the cluster. Required if state=present and host does not yet exist. | |
| name | yes | Name of the host. aliases: ip_address | ||
| password | no | Password for the host. Required if state=present and host does not yet exist. | ||
| pod | no | Name of the pod. Required if state=present and host does not yet exist. | ||
| state | no | present |
| State of the host. |
| url | no | Url of the host used to create a host. If not provided, http:// and param name is used as url.Only considered if state=present and host does not yet exist. | ||
| username | no | Username for the host. Required if state=present and host does not yet exist. | ||
| zone | no | Name of the zone in which the host should be deployed. If not set, default zone is used. |
Examples
- name: Ensure a host is present but disabled
local_action:
module: cs_host
name: ix-pod01-esx01.example.com
cluster: vcenter.example.com/ch-zrh-ix/pod01-cluster01
pod: pod01
zone: ch-zrh-ix-01
hypervisor: VMware
allocation_state: disabled
host_tags:
- perf
- gpu
- name: Ensure an existing host is disabled
local_action:
module: cs_host
name: ix-pod01-esx01.example.com
zone: ch-zrh-ix-01
allocation_state: disabled
- name: Ensure an existing host is disabled
local_action:
module: cs_host
name: ix-pod01-esx01.example.com
zone: ch-zrh-ix-01
allocation_state: enabled
- name: Ensure a host is absent
local_action:
module: cs_host
name: ix-pod01-esx01.example.com
zone: ch-zrh-ix-01
state: absent
Return Values
Common return values are documented here Return Values, the following are the fields unique to this module:
| name | description | returned | type | sample |
|---|---|---|---|---|
| allocation_state: | Allocation state of the host. | success | string | enabled |
| capabilities | Capabilities of the host. | success | string | hvm |
| cluster | Cluster of the host. | success | string | vcenter.example.com/zone/cluster01 |
| cluster_type | Type of the cluster of the host. | success | string | ExternalManaged |
| cpu_allocated | Amount in percent of the host's CPU currently allocated. | success | string | 166.25% |
| cpu_number | Number of CPUs of the host. | success | string | 24 |
| cpu_sockets | Number of CPU sockets of the host. | success | int | 2 |
| cpu_speed | CPU speed in Mhz | success | int | 1999 |
| cpu_used | Amount of the host's CPU currently used. | success | string | 33.6% |
| cpu_with_overprovisioning | Amount of the host's CPU after applying the cpu.overprovisioning.factor. | success | string | 959520.0 |
| created | Date when the host was created. | success | string | 2015-05-03T15:05:51+0200 |
| disconnected | Date when the host was disconnected. | success | string | 2015-05-03T15:05:51+0200 |
| disk_size_allocated | Host's currently allocated disk size. | success | int | 2593 |
| disk_size_total | Total disk size of the host | success | int | 259300 |
| events | Events available for the host | success | string | Ping; HostDown; AgentConnected; AgentDisconnected; PingTimeout; ShutdownRequested; Remove; StartAgentRebalance; ManagementServerDown |
| gpu_group | GPU cards present in the host. | success | list | [] |
| ha_host | Whether the host is a HA host. | success | bool | False |
| has_enough_capacity | Whether the host has enough CPU and RAM capacity to migrate a VM to it. | success | bool | True |
| host_tags | Comma-separated list of tags for the host. | success | string | perf |
| host_type | Type of the host. | success | string | Routing |
| host_version | Version of the host. | success | string | 4.5.2 |
| hypervisor | Host's hypervisor. | success | string | VMware |
| hypervisor_version | Hypervisor version. | success | string | 5.1 |
| ip_address | IP address of the host | success | string | 10.10.10.1 |
| is_local_storage_active | Whether the local storage is available or not. | success | bool | False |
| last_pinged | Date and time the host was last pinged. | success | string | 1970-01-17T17:27:32+0100 |
| management_server_id | Management server ID of the host. | success | int | 345050593418 |
| memory_allocated | Amount of the host's memory currently allocated. | success | int | 69793218560 |
| memory_total | Total of memory of the host. | success | int | 206085263360 |
| memory_used | Amount of the host's memory currently used. | success | int | 65504776192 |
| name | Name of the host. | success | string | esx32.example.com |
| network_kbs_read | Incoming network traffic on the host. | success | int | 0 |
| network_kbs_write | Outgoing network traffic on the host. | success | int | 0 |
| os_category | OS category name of the host. | success | string | ... |
| out_of_band_management | Host out-of-band management information. | success | string | ... |
| pod | Pod name of the host. | success | string | Pod01 |
| removed | Date and time the host was removed. | success | string | 1970-01-17T17:27:32+0100 |
| resource_state | Resource state of the host. | success | string | Enabled |
| state | State of the host. | success | string | Up |
| suitable_for_migration | Whether this host is suitable (has enough capacity and satisfies all conditions like hosttags, max guests VM limit, etc) to migrate a VM to it or not. | success | string | True |
| zone | Zone of the host. | success | string | zone01 |
Notes
Note
- Ansible uses the
cslibrary’s configuration method if credentials are not provided by the argumentsapi_url,api_key,api_secret. Configuration is read from several locations, in the following order. - TheCLOUDSTACK_ENDPOINT,CLOUDSTACK_KEY,CLOUDSTACK_SECRETandCLOUDSTACK_METHOD.CLOUDSTACK_TIMEOUTenvironment variables. - ACLOUDSTACK_CONFIGenvironment variable pointing to an.inifile, - Acloudstack.inifile in the current working directory. - A.cloudstack.inifile in the users home directory. Optionally multiple credentials and endpoints can be specified using ini sections incloudstack.ini. Use the argumentapi_regionto select the section name, default section iscloudstack. See https://github.com/exoscale/cs for more information. - A detailed guide about cloudstack modules can be found on http://docs.ansible.com/ansible/guide_cloudstack.html
- This module supports check mode.
Status
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Testing Ansible and Developing Modules.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/cs_host_module.html