Author: | Matt Martz |
---|
parameter | required | default | choices | comments |
---|---|---|---|---|
api_key | no | Rackspace API key (overrides credentials) | ||
cooldown | no | The period of time, in seconds, that must pass before any scaling can occur after the previous scaling. Must be an integer between 0 and 86400 (24 hrs). | ||
credentials | no | File to find the Rackspace credentials in (ignored if api_key and username are provided) | ||
disk_config | no | auto |
|
Disk partitioning strategy |
env | no | Environment as configured in ~/.pyrax.cfg, see https://github.com/rackspace/pyrax/blob/master/docs/getting_started.md#pyrax-configuration (added in Ansible 1.5) | ||
files | no | Files to insert into the instance. Hash of remotepath: localpath |
||
flavor | yes | flavor to use for the instance | ||
image | yes | image to use for the instance. Can be an id , human_id or name |
||
key_name | no | key pair to use on the instance | ||
loadbalancers | no | List of load balancer id and port hashes |
||
max_entities | yes | The maximum number of entities that are allowed in the scaling group. Must be an integer between 0 and 1000. | ||
meta | no | A hash of metadata to associate with the instance | ||
min_entities | yes | The minimum number of entities that are allowed in the scaling group. Must be an integer between 0 and 1000. | ||
name | yes | Name to give the scaling group | ||
networks | no | ['public', 'private'] | The network to attach to the instances. If specified, you must include ALL networks including the public and private interfaces. Can be id or label . |
|
region | no | DFW | Region to create an instance in | |
server_name | yes | The base name for servers created by Autoscale | ||
state | no | present |
|
Indicate desired state of the resource |
username | no | Rackspace username (overrides credentials) | ||
verify_ssl | no | Whether or not to require SSL validation of API endpoints (added in Ansible 1.5) |
Note
Requires pyrax
---
- hosts: localhost
gather_facts: false
connection: local
tasks:
- rax_scaling_group:
credentials: ~/.raxpub
region: ORD
cooldown: 300
flavor: performance1-1
image: bb02b1a3-bc77-4d17-ab5b-421d89850fca
min_entities: 5
max_entities: 10
name: ASG Test
server_name: asgtest
loadbalancers:
- id: 228385
port: 80
register: asg
Note
The following environment variables can be used, RAX_USERNAME, RAX_API_KEY, RAX_CREDS_FILE, RAX_CREDENTIALS, RAX_REGION.
Note
RAX_CREDENTIALS and RAX_CREDS_FILE points to a credentials file appropriate for pyrax. See https://github.com/rackspace/pyrax/blob/master/docs/getting_started.md#authenticating
Note
RAX_USERNAME and RAX_API_KEY obviate the use of a credentials file
Note
RAX_REGION defines a Rackspace Public Cloud region (DFW, ORD, LON, ...)