1. Packages
  2. AWS Native
  3. API Docs
  4. autoscaling
  5. LaunchConfiguration

We recommend new projects start with resources from the AWS provider.

AWS Native v0.126.0 published on Monday, Sep 30, 2024 by Pulumi

aws-native.autoscaling.LaunchConfiguration

Explore with Pulumi AI

aws-native logo

We recommend new projects start with resources from the AWS provider.

AWS Native v0.126.0 published on Monday, Sep 30, 2024 by Pulumi

    The AWS::AutoScaling::LaunchConfiguration resource specifies the launch configuration that can be used by an Auto Scaling group to configure Amazon EC2 instances.

    Create LaunchConfiguration Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new LaunchConfiguration(name: string, args: LaunchConfigurationArgs, opts?: CustomResourceOptions);
    @overload
    def LaunchConfiguration(resource_name: str,
                            args: LaunchConfigurationArgs,
                            opts: Optional[ResourceOptions] = None)
    
    @overload
    def LaunchConfiguration(resource_name: str,
                            opts: Optional[ResourceOptions] = None,
                            image_id: Optional[str] = None,
                            instance_type: Optional[str] = None,
                            instance_monitoring: Optional[bool] = None,
                            key_name: Optional[str] = None,
                            ebs_optimized: Optional[bool] = None,
                            iam_instance_profile: Optional[str] = None,
                            classic_link_vpc_id: Optional[str] = None,
                            instance_id: Optional[str] = None,
                            associate_public_ip_address: Optional[bool] = None,
                            block_device_mappings: Optional[Sequence[LaunchConfigurationBlockDeviceMappingArgs]] = None,
                            kernel_id: Optional[str] = None,
                            classic_link_vpc_security_groups: Optional[Sequence[str]] = None,
                            launch_configuration_name: Optional[str] = None,
                            metadata_options: Optional[LaunchConfigurationMetadataOptionsArgs] = None,
                            placement_tenancy: Optional[str] = None,
                            ram_disk_id: Optional[str] = None,
                            security_groups: Optional[Sequence[str]] = None,
                            spot_price: Optional[str] = None,
                            user_data: Optional[str] = None)
    func NewLaunchConfiguration(ctx *Context, name string, args LaunchConfigurationArgs, opts ...ResourceOption) (*LaunchConfiguration, error)
    public LaunchConfiguration(string name, LaunchConfigurationArgs args, CustomResourceOptions? opts = null)
    public LaunchConfiguration(String name, LaunchConfigurationArgs args)
    public LaunchConfiguration(String name, LaunchConfigurationArgs args, CustomResourceOptions options)
    
    type: aws-native:autoscaling:LaunchConfiguration
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args LaunchConfigurationArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args LaunchConfigurationArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args LaunchConfigurationArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args LaunchConfigurationArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args LaunchConfigurationArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    LaunchConfiguration Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The LaunchConfiguration resource accepts the following input properties:

    ImageId string
    Provides the unique ID of the Amazon Machine Image (AMI) that was assigned during registration.
    InstanceType string
    Specifies the instance type of the EC2 instance.
    AssociatePublicIpAddress bool
    For Auto Scaling groups that are running in a virtual private cloud (VPC), specifies whether to assign a public IP address to the group's instances.
    BlockDeviceMappings List<Pulumi.AwsNative.AutoScaling.Inputs.LaunchConfigurationBlockDeviceMapping>
    Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes.
    ClassicLinkVpcId string
    The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to.
    ClassicLinkVpcSecurityGroups List<string>
    The IDs of one or more security groups for the VPC that you specified in the ClassicLinkVPCId property.
    EbsOptimized bool
    Specifies whether the launch configuration is optimized for EBS I/O (true) or not (false).
    IamInstanceProfile string
    Provides the name or the Amazon Resource Name (ARN) of the instance profile associated with the IAM role for the instance. The instance profile contains the IAM role.
    InstanceId string
    The ID of the Amazon EC2 instance you want to use to create the launch configuration.
    InstanceMonitoring bool
    Controls whether instances in this group are launched with detailed (true) or basic (false) monitoring.
    KernelId string
    Provides the ID of the kernel associated with the EC2 AMI.
    KeyName string
    Provides the name of the EC2 key pair.
    LaunchConfigurationName string
    The name of the launch configuration. This name must be unique per Region per account.
    MetadataOptions Pulumi.AwsNative.AutoScaling.Inputs.LaunchConfigurationMetadataOptions
    The metadata options for the instances.
    PlacementTenancy string
    The tenancy of the instance, either default or dedicated.
    RamDiskId string
    The ID of the RAM disk to select.
    SecurityGroups List<string>
    A list that contains the security groups to assign to the instances in the Auto Scaling group.
    SpotPrice string
    The maximum hourly price you are willing to pay for any Spot Instances launched to fulfill the request.
    UserData string
    The Base64-encoded user data to make available to the launched EC2 instances.
    ImageId string
    Provides the unique ID of the Amazon Machine Image (AMI) that was assigned during registration.
    InstanceType string
    Specifies the instance type of the EC2 instance.
    AssociatePublicIpAddress bool
    For Auto Scaling groups that are running in a virtual private cloud (VPC), specifies whether to assign a public IP address to the group's instances.
    BlockDeviceMappings []LaunchConfigurationBlockDeviceMappingArgs
    Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes.
    ClassicLinkVpcId string
    The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to.
    ClassicLinkVpcSecurityGroups []string
    The IDs of one or more security groups for the VPC that you specified in the ClassicLinkVPCId property.
    EbsOptimized bool
    Specifies whether the launch configuration is optimized for EBS I/O (true) or not (false).
    IamInstanceProfile string
    Provides the name or the Amazon Resource Name (ARN) of the instance profile associated with the IAM role for the instance. The instance profile contains the IAM role.
    InstanceId string
    The ID of the Amazon EC2 instance you want to use to create the launch configuration.
    InstanceMonitoring bool
    Controls whether instances in this group are launched with detailed (true) or basic (false) monitoring.
    KernelId string
    Provides the ID of the kernel associated with the EC2 AMI.
    KeyName string
    Provides the name of the EC2 key pair.
    LaunchConfigurationName string
    The name of the launch configuration. This name must be unique per Region per account.
    MetadataOptions LaunchConfigurationMetadataOptionsArgs
    The metadata options for the instances.
    PlacementTenancy string
    The tenancy of the instance, either default or dedicated.
    RamDiskId string
    The ID of the RAM disk to select.
    SecurityGroups []string
    A list that contains the security groups to assign to the instances in the Auto Scaling group.
    SpotPrice string
    The maximum hourly price you are willing to pay for any Spot Instances launched to fulfill the request.
    UserData string
    The Base64-encoded user data to make available to the launched EC2 instances.
    imageId String
    Provides the unique ID of the Amazon Machine Image (AMI) that was assigned during registration.
    instanceType String
    Specifies the instance type of the EC2 instance.
    associatePublicIpAddress Boolean
    For Auto Scaling groups that are running in a virtual private cloud (VPC), specifies whether to assign a public IP address to the group's instances.
    blockDeviceMappings List<LaunchConfigurationBlockDeviceMapping>
    Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes.
    classicLinkVpcId String
    The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to.
    classicLinkVpcSecurityGroups List<String>
    The IDs of one or more security groups for the VPC that you specified in the ClassicLinkVPCId property.
    ebsOptimized Boolean
    Specifies whether the launch configuration is optimized for EBS I/O (true) or not (false).
    iamInstanceProfile String
    Provides the name or the Amazon Resource Name (ARN) of the instance profile associated with the IAM role for the instance. The instance profile contains the IAM role.
    instanceId String
    The ID of the Amazon EC2 instance you want to use to create the launch configuration.
    instanceMonitoring Boolean
    Controls whether instances in this group are launched with detailed (true) or basic (false) monitoring.
    kernelId String
    Provides the ID of the kernel associated with the EC2 AMI.
    keyName String
    Provides the name of the EC2 key pair.
    launchConfigurationName String
    The name of the launch configuration. This name must be unique per Region per account.
    metadataOptions LaunchConfigurationMetadataOptions
    The metadata options for the instances.
    placementTenancy String
    The tenancy of the instance, either default or dedicated.
    ramDiskId String
    The ID of the RAM disk to select.
    securityGroups List<String>
    A list that contains the security groups to assign to the instances in the Auto Scaling group.
    spotPrice String
    The maximum hourly price you are willing to pay for any Spot Instances launched to fulfill the request.
    userData String
    The Base64-encoded user data to make available to the launched EC2 instances.
    imageId string
    Provides the unique ID of the Amazon Machine Image (AMI) that was assigned during registration.
    instanceType string
    Specifies the instance type of the EC2 instance.
    associatePublicIpAddress boolean
    For Auto Scaling groups that are running in a virtual private cloud (VPC), specifies whether to assign a public IP address to the group's instances.
    blockDeviceMappings LaunchConfigurationBlockDeviceMapping[]
    Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes.
    classicLinkVpcId string
    The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to.
    classicLinkVpcSecurityGroups string[]
    The IDs of one or more security groups for the VPC that you specified in the ClassicLinkVPCId property.
    ebsOptimized boolean
    Specifies whether the launch configuration is optimized for EBS I/O (true) or not (false).
    iamInstanceProfile string
    Provides the name or the Amazon Resource Name (ARN) of the instance profile associated with the IAM role for the instance. The instance profile contains the IAM role.
    instanceId string
    The ID of the Amazon EC2 instance you want to use to create the launch configuration.
    instanceMonitoring boolean
    Controls whether instances in this group are launched with detailed (true) or basic (false) monitoring.
    kernelId string
    Provides the ID of the kernel associated with the EC2 AMI.
    keyName string
    Provides the name of the EC2 key pair.
    launchConfigurationName string
    The name of the launch configuration. This name must be unique per Region per account.
    metadataOptions LaunchConfigurationMetadataOptions
    The metadata options for the instances.
    placementTenancy string
    The tenancy of the instance, either default or dedicated.
    ramDiskId string
    The ID of the RAM disk to select.
    securityGroups string[]
    A list that contains the security groups to assign to the instances in the Auto Scaling group.
    spotPrice string
    The maximum hourly price you are willing to pay for any Spot Instances launched to fulfill the request.
    userData string
    The Base64-encoded user data to make available to the launched EC2 instances.
    image_id str
    Provides the unique ID of the Amazon Machine Image (AMI) that was assigned during registration.
    instance_type str
    Specifies the instance type of the EC2 instance.
    associate_public_ip_address bool
    For Auto Scaling groups that are running in a virtual private cloud (VPC), specifies whether to assign a public IP address to the group's instances.
    block_device_mappings Sequence[LaunchConfigurationBlockDeviceMappingArgs]
    Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes.
    classic_link_vpc_id str
    The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to.
    classic_link_vpc_security_groups Sequence[str]
    The IDs of one or more security groups for the VPC that you specified in the ClassicLinkVPCId property.
    ebs_optimized bool
    Specifies whether the launch configuration is optimized for EBS I/O (true) or not (false).
    iam_instance_profile str
    Provides the name or the Amazon Resource Name (ARN) of the instance profile associated with the IAM role for the instance. The instance profile contains the IAM role.
    instance_id str
    The ID of the Amazon EC2 instance you want to use to create the launch configuration.
    instance_monitoring bool
    Controls whether instances in this group are launched with detailed (true) or basic (false) monitoring.
    kernel_id str
    Provides the ID of the kernel associated with the EC2 AMI.
    key_name str
    Provides the name of the EC2 key pair.
    launch_configuration_name str
    The name of the launch configuration. This name must be unique per Region per account.
    metadata_options LaunchConfigurationMetadataOptionsArgs
    The metadata options for the instances.
    placement_tenancy str
    The tenancy of the instance, either default or dedicated.
    ram_disk_id str
    The ID of the RAM disk to select.
    security_groups Sequence[str]
    A list that contains the security groups to assign to the instances in the Auto Scaling group.
    spot_price str
    The maximum hourly price you are willing to pay for any Spot Instances launched to fulfill the request.
    user_data str
    The Base64-encoded user data to make available to the launched EC2 instances.
    imageId String
    Provides the unique ID of the Amazon Machine Image (AMI) that was assigned during registration.
    instanceType String
    Specifies the instance type of the EC2 instance.
    associatePublicIpAddress Boolean
    For Auto Scaling groups that are running in a virtual private cloud (VPC), specifies whether to assign a public IP address to the group's instances.
    blockDeviceMappings List<Property Map>
    Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes.
    classicLinkVpcId String
    The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to.
    classicLinkVpcSecurityGroups List<String>
    The IDs of one or more security groups for the VPC that you specified in the ClassicLinkVPCId property.
    ebsOptimized Boolean
    Specifies whether the launch configuration is optimized for EBS I/O (true) or not (false).
    iamInstanceProfile String
    Provides the name or the Amazon Resource Name (ARN) of the instance profile associated with the IAM role for the instance. The instance profile contains the IAM role.
    instanceId String
    The ID of the Amazon EC2 instance you want to use to create the launch configuration.
    instanceMonitoring Boolean
    Controls whether instances in this group are launched with detailed (true) or basic (false) monitoring.
    kernelId String
    Provides the ID of the kernel associated with the EC2 AMI.
    keyName String
    Provides the name of the EC2 key pair.
    launchConfigurationName String
    The name of the launch configuration. This name must be unique per Region per account.
    metadataOptions Property Map
    The metadata options for the instances.
    placementTenancy String
    The tenancy of the instance, either default or dedicated.
    ramDiskId String
    The ID of the RAM disk to select.
    securityGroups List<String>
    A list that contains the security groups to assign to the instances in the Auto Scaling group.
    spotPrice String
    The maximum hourly price you are willing to pay for any Spot Instances launched to fulfill the request.
    userData String
    The Base64-encoded user data to make available to the launched EC2 instances.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the LaunchConfiguration resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Supporting Types

    LaunchConfigurationBlockDevice, LaunchConfigurationBlockDeviceArgs

    DeleteOnTermination bool
    Indicates whether the volume is deleted on instance termination.
    Encrypted bool
    Specifies whether the volume should be encrypted.
    Iops int
    The number of input/output (I/O) operations per second (IOPS) to provision for the volume.
    SnapshotId string
    The snapshot ID of the volume to use.
    Throughput int
    The throughput (MiBps) to provision for a gp3 volume.
    VolumeSize int
    The volume size, in GiBs.
    VolumeType string
    The volume type.
    DeleteOnTermination bool
    Indicates whether the volume is deleted on instance termination.
    Encrypted bool
    Specifies whether the volume should be encrypted.
    Iops int
    The number of input/output (I/O) operations per second (IOPS) to provision for the volume.
    SnapshotId string
    The snapshot ID of the volume to use.
    Throughput int
    The throughput (MiBps) to provision for a gp3 volume.
    VolumeSize int
    The volume size, in GiBs.
    VolumeType string
    The volume type.
    deleteOnTermination Boolean
    Indicates whether the volume is deleted on instance termination.
    encrypted Boolean
    Specifies whether the volume should be encrypted.
    iops Integer
    The number of input/output (I/O) operations per second (IOPS) to provision for the volume.
    snapshotId String
    The snapshot ID of the volume to use.
    throughput Integer
    The throughput (MiBps) to provision for a gp3 volume.
    volumeSize Integer
    The volume size, in GiBs.
    volumeType String
    The volume type.
    deleteOnTermination boolean
    Indicates whether the volume is deleted on instance termination.
    encrypted boolean
    Specifies whether the volume should be encrypted.
    iops number
    The number of input/output (I/O) operations per second (IOPS) to provision for the volume.
    snapshotId string
    The snapshot ID of the volume to use.
    throughput number
    The throughput (MiBps) to provision for a gp3 volume.
    volumeSize number
    The volume size, in GiBs.
    volumeType string
    The volume type.
    delete_on_termination bool
    Indicates whether the volume is deleted on instance termination.
    encrypted bool
    Specifies whether the volume should be encrypted.
    iops int
    The number of input/output (I/O) operations per second (IOPS) to provision for the volume.
    snapshot_id str
    The snapshot ID of the volume to use.
    throughput int
    The throughput (MiBps) to provision for a gp3 volume.
    volume_size int
    The volume size, in GiBs.
    volume_type str
    The volume type.
    deleteOnTermination Boolean
    Indicates whether the volume is deleted on instance termination.
    encrypted Boolean
    Specifies whether the volume should be encrypted.
    iops Number
    The number of input/output (I/O) operations per second (IOPS) to provision for the volume.
    snapshotId String
    The snapshot ID of the volume to use.
    throughput Number
    The throughput (MiBps) to provision for a gp3 volume.
    volumeSize Number
    The volume size, in GiBs.
    volumeType String
    The volume type.

    LaunchConfigurationBlockDeviceMapping, LaunchConfigurationBlockDeviceMappingArgs

    DeviceName string
    The device name exposed to the EC2 instance (for example, /dev/sdh or xvdh).
    Ebs Pulumi.AwsNative.AutoScaling.Inputs.LaunchConfigurationBlockDevice
    Parameters used to automatically set up EBS volumes when an instance is launched.
    NoDevice bool
    Setting this value to true suppresses the specified device included in the block device mapping of the AMI.
    VirtualName string
    The name of the virtual device.
    DeviceName string
    The device name exposed to the EC2 instance (for example, /dev/sdh or xvdh).
    Ebs LaunchConfigurationBlockDevice
    Parameters used to automatically set up EBS volumes when an instance is launched.
    NoDevice bool
    Setting this value to true suppresses the specified device included in the block device mapping of the AMI.
    VirtualName string
    The name of the virtual device.
    deviceName String
    The device name exposed to the EC2 instance (for example, /dev/sdh or xvdh).
    ebs LaunchConfigurationBlockDevice
    Parameters used to automatically set up EBS volumes when an instance is launched.
    noDevice Boolean
    Setting this value to true suppresses the specified device included in the block device mapping of the AMI.
    virtualName String
    The name of the virtual device.
    deviceName string
    The device name exposed to the EC2 instance (for example, /dev/sdh or xvdh).
    ebs LaunchConfigurationBlockDevice
    Parameters used to automatically set up EBS volumes when an instance is launched.
    noDevice boolean
    Setting this value to true suppresses the specified device included in the block device mapping of the AMI.
    virtualName string
    The name of the virtual device.
    device_name str
    The device name exposed to the EC2 instance (for example, /dev/sdh or xvdh).
    ebs LaunchConfigurationBlockDevice
    Parameters used to automatically set up EBS volumes when an instance is launched.
    no_device bool
    Setting this value to true suppresses the specified device included in the block device mapping of the AMI.
    virtual_name str
    The name of the virtual device.
    deviceName String
    The device name exposed to the EC2 instance (for example, /dev/sdh or xvdh).
    ebs Property Map
    Parameters used to automatically set up EBS volumes when an instance is launched.
    noDevice Boolean
    Setting this value to true suppresses the specified device included in the block device mapping of the AMI.
    virtualName String
    The name of the virtual device.

    LaunchConfigurationMetadataOptions, LaunchConfigurationMetadataOptionsArgs

    HttpEndpoint string
    This parameter enables or disables the HTTP metadata endpoint on your instances.
    HttpPutResponseHopLimit int
    The desired HTTP PUT response hop limit for instance metadata requests.
    HttpTokens string
    The state of token usage for your instance metadata requests.
    HttpEndpoint string
    This parameter enables or disables the HTTP metadata endpoint on your instances.
    HttpPutResponseHopLimit int
    The desired HTTP PUT response hop limit for instance metadata requests.
    HttpTokens string
    The state of token usage for your instance metadata requests.
    httpEndpoint String
    This parameter enables or disables the HTTP metadata endpoint on your instances.
    httpPutResponseHopLimit Integer
    The desired HTTP PUT response hop limit for instance metadata requests.
    httpTokens String
    The state of token usage for your instance metadata requests.
    httpEndpoint string
    This parameter enables or disables the HTTP metadata endpoint on your instances.
    httpPutResponseHopLimit number
    The desired HTTP PUT response hop limit for instance metadata requests.
    httpTokens string
    The state of token usage for your instance metadata requests.
    http_endpoint str
    This parameter enables or disables the HTTP metadata endpoint on your instances.
    http_put_response_hop_limit int
    The desired HTTP PUT response hop limit for instance metadata requests.
    http_tokens str
    The state of token usage for your instance metadata requests.
    httpEndpoint String
    This parameter enables or disables the HTTP metadata endpoint on your instances.
    httpPutResponseHopLimit Number
    The desired HTTP PUT response hop limit for instance metadata requests.
    httpTokens String
    The state of token usage for your instance metadata requests.

    Package Details

    Repository
    AWS Native pulumi/pulumi-aws-native
    License
    Apache-2.0
    aws-native logo

    We recommend new projects start with resources from the AWS provider.

    AWS Native v0.126.0 published on Monday, Sep 30, 2024 by Pulumi