ansible / ansible.builtin / v2.9.17 / module / ec2_lc Create or delete AWS Autoscaling Launch Configurations | "added in version" 1.6 of ansible.builtin" Authors: Gareth Rushgrove (@garethr), Willem van Ketwich (@wilvk) stableinterface | supported by communityansible.builtin.ec2_lc (v2.9.17) — module
pip
Install with pip install ansible==2.9.17
Can create or delete AWS Autoscaling Configurations
Works with the ec2_asg module to manage Autoscaling Groups
# create a launch configuration using an AMI image and instance type as a basis - name: note that encrypted volumes are only supported in >= Ansible 2.4 ec2_lc: name: special image_id: ami-XXX key_name: default security_groups: ['group', 'group2' ] instance_type: t1.micro volumes: - device_name: /dev/sda1 volume_size: 100 volume_type: io1 iops: 3000 delete_on_termination: true encrypted: true - device_name: /dev/sdb ephemeral: ephemeral0
# create a launch configuration using a running instance id as a basis - ec2_lc: name: special instance_id: i-00a48b207ec59e948 key_name: default security_groups: ['launch-wizard-2' ] volumes: - device_name: /dev/sda1 volume_size: 120 volume_type: io1 iops: 3000 delete_on_termination: true
# create a launch configuration to omit the /dev/sdf EBS device that is included in the AMI image - ec2_lc: name: special image_id: ami-XXX key_name: default security_groups: ['group', 'group2' ] instance_type: t1.micro volumes: - device_name: /dev/sdf no_device: true
name: description: - Unique name for configuration required: true state: choices: - present - absent default: present description: - Register or deregister the instance region: aliases: - aws_region - ec2_region description: - The AWS region to use. If not specified then the value of the AWS_REGION or EC2_REGION environment variable, if any, is used. See U(http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region) type: str vpc_id: description: - VPC ID, used when resolving security group names to IDs. version_added: '2.4' version_added_collection: ansible.builtin 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: - Using I(profile) will override I(aws_access_key), I(aws_secret_key) and I(security_token) and support for passing them at the same time as I(profile) has been deprecated. - I(aws_access_key), I(aws_secret_key) and I(security_token) will be made mutually exclusive with I(profile) after 2022-06-01. type: str volumes: description: - A list of volume dicts, each containing device name and optionally ephemeral id or snapshot id. Size and type (and number of iops for io device type) must be specified for a new volume or a root volume, and may be passed for a snapshot volume. For any volume, a volume size less than 1 will be interpreted as a request not to create the volume. image_id: description: - The AMI unique identifier to be used for the group key_name: description: - The SSH key name to be used for access to managed instances kernel_id: description: - Kernel id for the EC2 instance user_data: description: - Opaque blob of data which is made available to the ec2 instance. Mutually exclusive with I(user_data_path). 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). - Only the 'user_agent' key is used for boto modules. See U(http://boto.cloudhackers.com/en/latest/boto_config_tut.html#boto) for more boto configuration. type: dict ramdisk_id: description: - A RAM disk id for the instances. version_added: '1.8' version_added_collection: ansible.builtin spot_price: description: - The spot price you are bidding. Only applies for an autoscaling group with spot instances. instance_id: description: - The Id of a running instance to use as a basis for a launch configuration. Can be used in place of image_id and instance_type. version_added: '2.4' version_added_collection: ansible.builtin aws_ca_bundle: description: - The location of a CA Bundle to use when validating SSL certificates. - Not used by boto 2 based modules. - 'Note: The CA Bundle is read ''module'' side and may need to be explicitly copied from the controller if not run locally.' type: path ebs_optimized: default: false description: - Specifies whether the instance is optimized for EBS I/O (true) or not (false). version_added: '1.8' version_added_collection: ansible.builtin instance_type: description: - Instance type to use for the instance required: true 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. - If I(profile) is set this parameter is ignored. - Passing the I(aws_access_key) and I(profile) options at the same time has been deprecated and the options will be made mutually exclusive after 2022-06-01. 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. - If I(profile) is set this parameter is ignored. - Passing the I(aws_secret_key) and I(profile) options at the same time has been deprecated and the options will be made mutually exclusive after 2022-06-01. type: str security_token: aliases: - 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. - If I(profile) is set this parameter is ignored. - Passing the I(security_token) and I(profile) options at the same time has been deprecated and the options will be made mutually exclusive after 2022-06-01. type: str user_data_path: description: - Path to the file that contains userdata for the ec2 instances. Mutually exclusive with I(user_data). version_added: '2.3' version_added_collection: ansible.builtin validate_certs: default: true description: - When set to "no", SSL certificates will not be validated for communication with the AWS APIs. type: bool security_groups: description: - A list of security groups to apply to the instances. Since version 2.4 you can specify either security group names or IDs or a mix. Previous to 2.4, for VPC instances, specify security group IDs and for EC2-Classic, specify either security group names or IDs. assign_public_ip: description: - Used for Auto Scaling groups that launch instances into an Amazon Virtual Private Cloud. Specifies whether to assign a public IP address to each instance launched in a Amazon VPC. version_added: '1.8' version_added_collection: ansible.builtin placement_tenancy: default: default description: - Determines whether the instance runs on single-tenant hardware or not. version_added: '2.4' version_added_collection: ansible.builtin classic_link_vpc_id: description: - Id of ClassicLink enabled VPC version_added: '2.0' version_added_collection: ansible.builtin instance_monitoring: default: 'no' description: - Specifies whether instances are launched with detailed monitoring. type: bool instance_profile_name: description: - The name or the Amazon Resource Name (ARN) of the instance profile associated with the IAM role for the instances. version_added: '1.8' version_added_collection: ansible.builtin 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 classic_link_vpc_security_groups: description: - A list of security group IDs with which to associate the ClassicLink VPC instances. version_added: '2.0' version_added_collection: ansible.builtin
arn: description: The Amazon Resource Name of the launch configuration. returned: when I(state=present) sample: arn:aws:autoscaling:us-east-1:148830907657:launchConfiguration:888d9b58-d93a-40c4-90cf-759197a2621a:launchConfigurationName/launch_config_name type: str changed: description: Whether the state of the launch configuration has changed. returned: always sample: false type: bool created_time: description: The creation date and time for the launch configuration. returned: when I(state=present) sample: '2017-11-03 23:46:44.841000' type: str image_id: description: The ID of the Amazon Machine Image used by the launch configuration. returned: when I(state=present) sample: ami-9be6f38c type: str instance_type: description: The instance type for the instances. returned: when I(state=present) sample: t1.micro type: str name: description: The name of the launch configuration. returned: when I(state=present) sample: launch_config_name type: str result: contains: PlacementTenancy: description: The tenancy of the instances, either default or dedicated. returned: when I(state=present) sample: default type: str associate_public_ip_address: description: (EC2-VPC) Indicates whether to assign a public IP address to each instance. returned: when I(state=present) sample: null type: NoneType block_device_mappings: contains: device_name: description: The device name exposed to the EC2 instance (for example, /dev/sdh or xvdh). returned: when I(state=present) sample: /dev/sda1 type: str ebs: contains: snapshot_id: description: The ID of the snapshot. returned: when I(state=present) sample: null type: NoneType volume_size: description: The volume size, in GiB. returned: when I(state=present) sample: '100' type: str description: The information about the Amazon EBS volume. returned: when I(state=present) type: complex virtual_name: description: The name of the virtual device (for example, ephemeral0). returned: when I(state=present) sample: null type: NoneType description: A block device mapping, which specifies the block devices. returned: when I(state=present) type: complex classic_link_vpc_id: description: The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to. returned: when I(state=present) sample: null type: NoneType classic_link_vpc_security_groups: description: The IDs of one or more security groups for the VPC specified in ClassicLinkVPCId. returned: when I(state=present) sample: [] type: list created_time: description: The creation date and time for the launch configuration. returned: when I(state=present) sample: '2017-11-03 23:46:44.841000' type: str delete_on_termination: description: Indicates whether the volume is deleted on instance termination. returned: when I(state=present) sample: true type: bool ebs_optimized: description: Indicates whether the instance is optimized for EBS I/O (true) or not (false). returned: when I(state=present) sample: false type: bool image_id: description: The ID of the Amazon Machine Image used by the launch configuration. returned: when I(state=present) sample: ami-9be6f38c type: str instance_monitoring: description: Indicates whether instances in this group are launched with detailed (true) or basic (false) monitoring. returned: when I(state=present) sample: true type: bool instance_profile_name: description: The name or Amazon Resource Name (ARN) of the instance profile associated with the IAM role for the instance. returned: when I(state=present) sample: null type: str instance_type: description: The instance type for the instances. returned: when I(state=present) sample: t1.micro type: str iops: description: The number of I/O operations per second (IOPS) to provision for the volume. returned: when I(state=present) sample: null type: NoneType kernel_id: description: The ID of the kernel associated with the AMI. returned: when I(state=present) sample: '' type: str key_name: description: The name of the key pair. returned: when I(state=present) sample: testkey type: str launch_configuration_arn: description: The Amazon Resource Name (ARN) of the launch configuration. returned: when I(state=present) sample: arn:aws:autoscaling:us-east-1:148830907657:launchConfiguration:888d9b58-d93a-40c4-90cf-759197a2621a:launchConfigurationName/launch_config_name type: str member: description: '' returned: when I(state=present) sample: ' ' type: str name: description: The name of the launch configuration. returned: when I(state=present) sample: launch_config_name type: str ramdisk_id: description: The ID of the RAM disk associated with the AMI. returned: when I(state=present) sample: '' type: str security_groups: description: The security groups to associate with the instances. returned: when I(state=present) sample: - sg-5e27db2f type: list spot_price: description: The price to bid when launching Spot Instances. returned: when I(state=present) sample: null type: NoneType use_block_device_types: description: Indicates whether to suppress a device mapping. returned: when I(state=present) sample: false type: bool user_data: description: The user data available to the instances. returned: when I(state=present) sample: '' type: str volume_type: description: The volume type (one of standard, io1, gp2). returned: when I(state=present) sample: null type: NoneType description: The specification details for the launch configuration. returned: when I(state=present) type: complex security_groups: description: The security groups to associate with the instances. returned: when I(state=present) sample: - sg-5e27db2f type: list