ansible.builtin.redshift (v2.3.3.0-1) — module

create, delete, or modify an Amazon Redshift instance

| "added in version" 2.2 of ansible.builtin"

Authors: Jens Carl (@j-carl), Hothead Games Inc.

preview | supported by community

Install Ansible via pip

Install with pip install ansible==2.3.3.0.post1

Description

Creates, deletes, or modifies amazon Redshift cluster instances.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# Basic cluster provisioning example
- redshift: >
    command=create
    node_type=ds1.xlarge
    identifier=new_cluster
    username=cluster_admin
    password=1nsecure

Inputs

    
port:
    default: null
    description:
    - which port the cluster is listining

wait:
    choices:
    - 'yes'
    - 'no'
    default: 'no'
    description:
    - When command=create, modify or restore then wait for the database to enter the 'available'
      state. When command=delete wait for the database to be terminated.

command:
    choices:
    - create
    - facts
    - delete
    - modify
    description:
    - Specifies the action to take.
    required: true

db_name:
    default: null
    description:
    - Name of the database.

ec2_url:
    aliases:
    - aws_endpoint_url
    - endpoint_url
    description:
    - URL to use to connect to EC2 or your Eucalyptus cloud (by default the module will
      use EC2 endpoints). Ignored for modules where region is required. Must be specified
      for all other modules if region is not used. If not set then the value of the EC2_URL
      environment variable, if any, is used.
    type: str

profile:
    aliases:
    - aws_profile
    description:
    - The I(profile) option is mutually exclusive with the I(aws_access_key), I(aws_secret_key)
      and I(security_token) options.
    type: str

password:
    description:
    - Master database password. Used only when command=create.

username:
    description:
    - Master database username. Used only when command=create.

encrypted:
    default: false
    description:
    - if the cluster is encrypted or not

node_type:
    choices:
    - ds1.xlarge
    - ds1.8xlarge
    - ds2.xlarge
    - ds2.8xlarge
    - dc1.large
    - dc1.8xlarge
    - dw1.xlarge
    - dw1.8xlarge
    - dw2.large
    - dw2.8xlarge
    description:
    - The node type of the cluster. Must be specified when command=create.

aws_config:
    description:
    - A dictionary to modify the botocore configuration.
    - Parameters can be found at U(https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config).
    type: dict

elastic_ip:
    default: null
    description:
    - if the cluster has an elastic IP or not

identifier:
    description:
    - Redshift cluster identifier.
    required: true

cluster_type:
    choices:
    - multi-node
    - single-node
    default: single-node
    description:
    - The type of cluster.

wait_timeout:
    default: 300
    description:
    - how long before wait gives up, in seconds

aws_ca_bundle:
    description:
    - The location of a CA Bundle to use when validating SSL certificates.
    - 'Note: The CA Bundle is read ''module'' side and may need to be explicitly copied
      from the controller if not run locally.'
    type: path

aws_access_key:
    aliases:
    - ec2_access_key
    - access_key
    description:
    - C(AWS access key). If not set then the value of the C(AWS_ACCESS_KEY_ID), C(AWS_ACCESS_KEY)
      or C(EC2_ACCESS_KEY) environment variable is used.
    - The I(aws_access_key) and I(profile) options are mutually exclusive.
    type: str

aws_secret_key:
    aliases:
    - ec2_secret_key
    - secret_key
    description:
    - C(AWS secret key). If not set then the value of the C(AWS_SECRET_ACCESS_KEY), C(AWS_SECRET_KEY),
      or C(EC2_SECRET_KEY) environment variable is used.
    - The I(aws_secret_key) and I(profile) options are mutually exclusive.
    type: str

security_token:
    aliases:
    - aws_session_token
    - session_token
    - aws_security_token
    - access_token
    description:
    - C(AWS STS security token). If not set then the value of the C(AWS_SECURITY_TOKEN)
      or C(EC2_SECURITY_TOKEN) environment variable is used.
    - The I(security_token) and I(profile) options are mutually exclusive.
    - Aliases I(aws_session_token) and I(session_token) have been added in version 3.2.0.
    type: str

validate_certs:
    default: true
    description:
    - When set to "no", SSL certificates will not be validated for communication with
      the AWS APIs.
    type: bool

cluster_version:
    aliases:
    - version
    choices:
    - '1.0'
    default: null
    description:
    - which version the cluster should have

number_of_nodes:
    default: null
    description:
    - Number of nodes. Only used when cluster_type=multi-node.

availability_zone:
    aliases:
    - zone
    - aws_zone
    description:
    - availability zone in which to launch cluster

publicly_accessible:
    default: false
    description:
    - if the cluster is accessible publicly or not

allow_version_upgrade:
    aliases:
    - version_upgrade
    default: true
    description:
    - flag to determinate if upgrade of version is possible

new_cluster_identifier:
    aliases:
    - new_identifier
    default: null
    description:
    - Only used when command=modify.

vpc_security_group_ids:
    aliases:
    - vpc_security_groups
    default: null
    description:
    - VPC security group

cluster_security_groups:
    aliases:
    - security_groups
    default: null
    description:
    - in which security group the cluster belongs

cluster_subnet_group_name:
    aliases:
    - subnet
    description:
    - which subnet to place the cluster

cluster_parameter_group_name:
    aliases:
    - param_group_name
    default: null
    description:
    - name of the cluster parameter group

debug_botocore_endpoint_logs:
    default: 'no'
    description:
    - Use a botocore.endpoint logger to parse the unique (rather than total) "resource:action"
      API calls made during a task, outputing the set to the resource_actions key in the
      task results. Use the aws_resource_action callback to output to total list made
      during a playbook. The ANSIBLE_DEBUG_BOTOCORE_LOGS environment variable may also
      be used.
    type: bool

preferred_maintenance_window:
    aliases:
    - maintance_window
    - maint_window
    default: null
    description:
    - maintenance window

automated_snapshot_retention_period:
    aliases:
    - retention_period
    default: null
    description:
    - period when the snapshot take place

Outputs

cluster:
  contains:
    availability_zone:
      description: Amazon availability zone where the cluster is located.
      returned: success
      sample: us-east-1b
      type: string
    create_time:
      description: Time of the cluster creation as timestamp.
      returned: success
      sample: 1430158536.308
      type: float
    db_name:
      description: Name of the database.
      returned: success
      sample: new_db_name
      type: string
    identifier:
      description: Id of the cluster.
      returned: success
      sample: new_redshift_cluster
      type: string
    maintenance_window:
      description: Time frame when maintenance/upgrade are done.
      returned: success
      sample: sun:09:30-sun:10:00
      type: string
    port:
      description: Port of the cluster.
      returned: success
      sample: 5439
      type: int
    private_ip_address:
      description: Private IP address of the main node.
      returned: success
      sample: 10.10.10.10
      type: string
    public_ip_address:
      description: Public IP address of the main node.
      returned: success
      sample: 0.0.0.0
      type: string
    status:
      description: Stutus of the cluster.
      returned: success
      sample: available
      type: string
    url:
      description: FQDN of the main cluster node.
      returned: success
      sample: new-redshift_cluster.jfkdjfdkj.us-east-1.redshift.amazonaws.com
      type: string
  description: dictionary containing all the cluster information
  returned: success
  type: dictionary