- Docs »
- cs_router – Manages routers on Apache CloudStack based clouds
-
cs_router – Manages routers on Apache CloudStack based clouds
Start, restart, stop and destroy routers.
state=present is not able to create routers, use cs_network instead.
The below requirements are needed on the host that executes this module.
python >= 2.6
cs >= 0.6.10
Parameter |
Choices/Defaults |
Comments |
account
string
|
|
Account the router is related to.
|
api_http_method
string
|
|
HTTP method used to query the API endpoint.
If not given, the CLOUDSTACK_METHOD env variable is considered.
As the last option, the value is taken from the ini config file, also see the notes.
Fallback value is get if not specified.
|
api_key
string
|
|
API key of the CloudStack API.
If not given, the CLOUDSTACK_KEY env variable is considered.
As the last option, the value is taken from the ini config file, also see the notes.
|
api_region
string
|
Default:
"cloudstack"
|
Name of the ini section in the cloustack.ini file.
If not given, the CLOUDSTACK_REGION env variable is considered.
|
api_secret
string
|
|
Secret key of the CloudStack API.
If not set, the CLOUDSTACK_SECRET env variable is considered.
As the last option, the value is taken from the ini config file, also see the notes.
|
api_timeout
integer
|
|
HTTP timeout in seconds.
If not given, the CLOUDSTACK_TIMEOUT env variable is considered.
As the last option, the value is taken from the ini config file, also see the notes.
Fallback value is 10 seconds if not specified.
|
api_url
string
|
|
URL of the CloudStack API e.g. https://cloud.example.com/client/api.
If not given, the CLOUDSTACK_ENDPOINT env variable is considered.
As the last option, the value is taken from the ini config file, also see the notes.
|
domain
string
|
|
Domain the router is related to.
|
name
string
/ required
|
|
Name of the router.
|
poll_async
boolean
|
|
Poll async jobs until job has finished.
|
project
string
|
|
Name of the project the router is related to.
|
service_offering
string
|
|
Name or id of the service offering of the router.
|
state
string
|
Choices:
present ←
- absent
- started
- stopped
- restarted
|
State of the router.
|
zone
string
added in 2.4 |
|
Name of the zone the router is deployed in.
If not set, all zones are used.
|
Note
Ansible uses the cs
library’s configuration method if credentials are not provided by the arguments api_url
, api_key
, api_secret
. Configuration is read from several locations, in the following order. The CLOUDSTACK_ENDPOINT
, CLOUDSTACK_KEY
, CLOUDSTACK_SECRET
and CLOUDSTACK_METHOD
. CLOUDSTACK_TIMEOUT
environment variables. A CLOUDSTACK_CONFIG
environment variable pointing to an .ini
file. A cloudstack.ini
file in the current working directory. A .cloudstack.ini
file in the users home directory. Optionally multiple credentials and endpoints can be specified using ini sections in cloudstack.ini
. Use the argument api_region
to select the section name, default section is cloudstack
. See https://github.com/exoscale/cs for more information.
A detailed guide about cloudstack modules can be found in the CloudStack Cloud Guide.
This module supports check mode.
# Ensure the router has the desired service offering, no matter if
# the router is running or not.
- name: Present router
cs_router:
name: r-40-VM
service_offering: System Offering for Software Router
delegate_to: localhost
- name: Ensure started
cs_router:
name: r-40-VM
state: started
delegate_to: localhost
# Ensure started with desired service offering.
# If the service offerings changes, router will be rebooted.
- name: Ensure started with desired service offering
cs_router:
name: r-40-VM
service_offering: System Offering for Software Router
state: started
delegate_to: localhost
- name: Ensure stopped
cs_router:
name: r-40-VM
state: stopped
delegate_to: localhost
- name: Remove a router
cs_router:
name: r-40-VM
state: absent
delegate_to: localhost
Common return values are documented here, the following are the fields unique to this module:
Key |
Returned |
Description |
account
string
|
success |
Account the router is related to.
Sample:
admin
|
created
string
|
success |
Date of the router was created.
Sample:
2014-12-01T14:57:57+0100
|
domain
string
|
success |
Domain the router is related to.
Sample:
ROOT
|
id
string
|
success |
UUID of the router.
Sample:
04589590-ac63-4ffc-93f5-b698b8ac38b6
|
name
string
|
success |
Name of the router.
Sample:
r-40-VM
|
redundant_state
string
|
success |
Redundant state of the router.
Sample:
UNKNOWN
|
requires_upgrade
boolean
|
success |
Whether the router needs to be upgraded to the new template.
|
role
string
|
success |
Role of the router.
Sample:
VIRTUAL_ROUTER
|
service_offering
string
|
success |
Name of the service offering the router has.
Sample:
System Offering For Software Router
|
state
string
|
success |
State of the router.
Sample:
Active
|
template_version
string
|
success |
Version of the system VM template.
Sample:
4.5.1
|
zone
string
|
success |
Name of zone the router is in.
Sample:
ch-gva-2
|
Authors
Hint
If you notice any issues in this documentation, you can edit this document to improve it.