published on Tuesday, Mar 10, 2026 by Pulumi
published on Tuesday, Mar 10, 2026 by Pulumi
Provides a resource to create a new launch configuration, used for autoscaling groups.
!> WARNING: The use of launch configurations is discouraged in favour of launch templates. Read more in the AWS EC2 Documentation.
Note When using
aws.ec2.LaunchConfigurationwithaws.autoscaling.Group, it is recommended to use thename_prefix(Optional) instead of thename(Optional) attribute.
Using with AutoScaling Groups
Launch Configurations cannot be updated after creation with the Amazon
Web Service API. In order to update a Launch Configuration, this provider will
destroy the existing resource and create a replacement. In order to effectively
use a Launch Configuration resource with an AutoScaling Group resource,
it’s recommended to specify create_before_destroy in a lifecycle block.
Either omit the Launch Configuration name attribute, or specify a partial name
with name_prefix. Example:
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const ubuntu = aws.ec2.getAmi({
mostRecent: true,
filters: [
{
name: "name",
values: ["ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*"],
},
{
name: "virtualization-type",
values: ["hvm"],
},
],
owners: ["099720109477"],
});
const asConf = new aws.ec2.LaunchConfiguration("asConf", {
namePrefix: "lc-example-",
imageId: ubuntu.then(ubuntu => ubuntu.id),
instanceType: "t2.micro",
});
const bar = new aws.autoscaling.Group("bar", {
launchConfiguration: asConf.name,
minSize: 1,
maxSize: 2,
});
import pulumi
import pulumi_aws as aws
ubuntu = aws.ec2.get_ami(most_recent=True,
filters=[
aws.ec2.GetAmiFilterArgs(
name="name",
values=["ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*"],
),
aws.ec2.GetAmiFilterArgs(
name="virtualization-type",
values=["hvm"],
),
],
owners=["099720109477"])
as_conf = aws.ec2.LaunchConfiguration("asConf",
name_prefix="lc-example-",
image_id=ubuntu.id,
instance_type="t2.micro")
bar = aws.autoscaling.Group("bar",
launch_configuration=as_conf.name,
min_size=1,
max_size=2)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var ubuntu = Aws.Ec2.GetAmi.Invoke(new()
{
MostRecent = true,
Filters = new[]
{
new Aws.Ec2.Inputs.GetAmiFilterInputArgs
{
Name = "name",
Values = new[]
{
"ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*",
},
},
new Aws.Ec2.Inputs.GetAmiFilterInputArgs
{
Name = "virtualization-type",
Values = new[]
{
"hvm",
},
},
},
Owners = new[]
{
"099720109477",
},
});
var asConf = new Aws.Ec2.LaunchConfiguration("asConf", new()
{
NamePrefix = "lc-example-",
ImageId = ubuntu.Apply(getAmiResult => getAmiResult.Id),
InstanceType = "t2.micro",
});
var bar = new Aws.AutoScaling.Group("bar", new()
{
LaunchConfiguration = asConf.Name,
MinSize = 1,
MaxSize = 2,
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/autoscaling"
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
ubuntu, err := ec2.LookupAmi(ctx, &ec2.LookupAmiArgs{
MostRecent: pulumi.BoolRef(true),
Filters: []ec2.GetAmiFilter{
{
Name: "name",
Values: []string{
"ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*",
},
},
{
Name: "virtualization-type",
Values: []string{
"hvm",
},
},
},
Owners: []string{
"099720109477",
},
}, nil)
if err != nil {
return err
}
asConf, err := ec2.NewLaunchConfiguration(ctx, "asConf", &ec2.LaunchConfigurationArgs{
NamePrefix: pulumi.String("lc-example-"),
ImageId: *pulumi.String(ubuntu.Id),
InstanceType: pulumi.String("t2.micro"),
})
if err != nil {
return err
}
_, err = autoscaling.NewGroup(ctx, "bar", &autoscaling.GroupArgs{
LaunchConfiguration: asConf.Name,
MinSize: pulumi.Int(1),
MaxSize: pulumi.Int(2),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ec2.Ec2Functions;
import com.pulumi.aws.ec2.inputs.GetAmiArgs;
import com.pulumi.aws.ec2.LaunchConfiguration;
import com.pulumi.aws.ec2.LaunchConfigurationArgs;
import com.pulumi.aws.autoscaling.Group;
import com.pulumi.aws.autoscaling.GroupArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var ubuntu = Ec2Functions.getAmi(GetAmiArgs.builder()
.mostRecent(true)
.filters(
GetAmiFilterArgs.builder()
.name("name")
.values("ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*")
.build(),
GetAmiFilterArgs.builder()
.name("virtualization-type")
.values("hvm")
.build())
.owners("099720109477")
.build());
var asConf = new LaunchConfiguration("asConf", LaunchConfigurationArgs.builder()
.namePrefix("lc-example-")
.imageId(ubuntu.applyValue(getAmiResult -> getAmiResult.id()))
.instanceType("t2.micro")
.build());
var bar = new Group("bar", GroupArgs.builder()
.launchConfiguration(asConf.name())
.minSize(1)
.maxSize(2)
.build());
}
}
resources:
asConf:
type: aws:ec2:LaunchConfiguration
properties:
namePrefix: lc-example-
imageId: ${ubuntu.id}
instanceType: t2.micro
bar:
type: aws:autoscaling:Group
properties:
launchConfiguration: ${asConf.name}
minSize: 1
maxSize: 2
variables:
ubuntu:
fn::invoke:
Function: aws:ec2:getAmi
Arguments:
mostRecent: true
filters:
- name: name
values:
- ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*
- name: virtualization-type
values:
- hvm
owners:
- '099720109477'
With this setup this provider generates a unique name for your Launch Configuration and can then update the AutoScaling Group without conflict before destroying the previous Launch Configuration.
Using with Spot Instances
Launch configurations can set the spot instance pricing to be used for the
Auto Scaling Group to reserve instances. Simply specifying the spot_price
parameter will set the price on the Launch Configuration which will attempt to
reserve your instances at this price. See the AWS Spot Instance
documentation
for more information or how to launch [Spot Instances][3] with this provider.
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const ubuntu = aws.ec2.getAmi({
mostRecent: true,
filters: [
{
name: "name",
values: ["ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*"],
},
{
name: "virtualization-type",
values: ["hvm"],
},
],
owners: ["099720109477"],
});
const asConf = new aws.ec2.LaunchConfiguration("asConf", {
imageId: ubuntu.then(ubuntu => ubuntu.id),
instanceType: "m4.large",
spotPrice: "0.001",
});
const bar = new aws.autoscaling.Group("bar", {launchConfiguration: asConf.name});
import pulumi
import pulumi_aws as aws
ubuntu = aws.ec2.get_ami(most_recent=True,
filters=[
aws.ec2.GetAmiFilterArgs(
name="name",
values=["ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*"],
),
aws.ec2.GetAmiFilterArgs(
name="virtualization-type",
values=["hvm"],
),
],
owners=["099720109477"])
as_conf = aws.ec2.LaunchConfiguration("asConf",
image_id=ubuntu.id,
instance_type="m4.large",
spot_price="0.001")
bar = aws.autoscaling.Group("bar", launch_configuration=as_conf.name)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var ubuntu = Aws.Ec2.GetAmi.Invoke(new()
{
MostRecent = true,
Filters = new[]
{
new Aws.Ec2.Inputs.GetAmiFilterInputArgs
{
Name = "name",
Values = new[]
{
"ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*",
},
},
new Aws.Ec2.Inputs.GetAmiFilterInputArgs
{
Name = "virtualization-type",
Values = new[]
{
"hvm",
},
},
},
Owners = new[]
{
"099720109477",
},
});
var asConf = new Aws.Ec2.LaunchConfiguration("asConf", new()
{
ImageId = ubuntu.Apply(getAmiResult => getAmiResult.Id),
InstanceType = "m4.large",
SpotPrice = "0.001",
});
var bar = new Aws.AutoScaling.Group("bar", new()
{
LaunchConfiguration = asConf.Name,
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/autoscaling"
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
ubuntu, err := ec2.LookupAmi(ctx, &ec2.LookupAmiArgs{
MostRecent: pulumi.BoolRef(true),
Filters: []ec2.GetAmiFilter{
{
Name: "name",
Values: []string{
"ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*",
},
},
{
Name: "virtualization-type",
Values: []string{
"hvm",
},
},
},
Owners: []string{
"099720109477",
},
}, nil)
if err != nil {
return err
}
asConf, err := ec2.NewLaunchConfiguration(ctx, "asConf", &ec2.LaunchConfigurationArgs{
ImageId: *pulumi.String(ubuntu.Id),
InstanceType: pulumi.String("m4.large"),
SpotPrice: pulumi.String("0.001"),
})
if err != nil {
return err
}
_, err = autoscaling.NewGroup(ctx, "bar", &autoscaling.GroupArgs{
LaunchConfiguration: asConf.Name,
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ec2.Ec2Functions;
import com.pulumi.aws.ec2.inputs.GetAmiArgs;
import com.pulumi.aws.ec2.LaunchConfiguration;
import com.pulumi.aws.ec2.LaunchConfigurationArgs;
import com.pulumi.aws.autoscaling.Group;
import com.pulumi.aws.autoscaling.GroupArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var ubuntu = Ec2Functions.getAmi(GetAmiArgs.builder()
.mostRecent(true)
.filters(
GetAmiFilterArgs.builder()
.name("name")
.values("ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*")
.build(),
GetAmiFilterArgs.builder()
.name("virtualization-type")
.values("hvm")
.build())
.owners("099720109477")
.build());
var asConf = new LaunchConfiguration("asConf", LaunchConfigurationArgs.builder()
.imageId(ubuntu.applyValue(getAmiResult -> getAmiResult.id()))
.instanceType("m4.large")
.spotPrice("0.001")
.build());
var bar = new Group("bar", GroupArgs.builder()
.launchConfiguration(asConf.name())
.build());
}
}
resources:
asConf:
type: aws:ec2:LaunchConfiguration
properties:
imageId: ${ubuntu.id}
instanceType: m4.large
spotPrice: '0.001'
bar:
type: aws:autoscaling:Group
properties:
launchConfiguration: ${asConf.name}
variables:
ubuntu:
fn::invoke:
Function: aws:ec2:getAmi
Arguments:
mostRecent: true
filters:
- name: name
values:
- ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*
- name: virtualization-type
values:
- hvm
owners:
- '099720109477'
Block devices
Each of the *_block_device attributes controls a portion of the AWS
Launch Configuration’s “Block Device Mapping”. It’s a good idea to familiarize yourself with AWS’s Block Device
Mapping docs
to understand the implications of using these attributes.
Each AWS Instance type has a different set of Instance Store block devices
available for attachment. AWS publishes a
list
of which ephemeral devices are available on each type. The devices are always
identified by the virtual_name in the format ephemeral{0..N}.
NOTE: Changes to
*_block_deviceconfiguration of existing resources cannot currently be detected by this provider. After updating to block device configuration, resource recreation can be manually triggered by using theupcommand with the –replace argument.
ebs_block_device
Modifying any of the ebs_block_device settings requires resource replacement.
device_name- (Required) The name of the device to mount.snapshot_id- (Optional) The Snapshot ID to mount.volume_type- (Optional) The type of volume. Can bestandard,gp2,gp3,st1,sc1orio1.volume_size- (Optional) The size of the volume in gigabytes.iops- (Optional) The amount of provisioned IOPS. This must be set with avolume_typeof"io1".throughput- (Optional) The throughput (MiBps) to provision for agp3volume.delete_on_termination- (Optional) Whether the volume should be destroyed on instance termination (Default:true).encrypted- (Optional) Whether the volume should be encrypted or not. Defaults tofalse.no_device- (Optional) Whether the device in the block device mapping of the AMI is suppressed.
ephemeral_block_device
device_name- (Required) The name of the block device to mount on the instance.no_device- (Optional) Whether the device in the block device mapping of the AMI is suppressed.virtual_name- (Optional) The Instance Store Device Name.
root_block_device
Modifying any of the
root_block_devicesettings requires resource replacement.
delete_on_termination- (Optional) Whether the volume should be destroyed on instance termination. Defaults totrue.encrypted- (Optional) Whether the volume should be encrypted or not. Defaults tofalse.iops- (Optional) The amount of provisioned IOPS. This must be set with avolume_typeofio1.throughput- (Optional) The throughput (MiBps) to provision for agp3volume.volume_size- (Optional) The size of the volume in gigabytes.volume_type- (Optional) The type of volume. Can bestandard,gp2,gp3,st1,sc1orio1.
Example Usage
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var ubuntu = Aws.Ec2.GetAmi.Invoke(new()
{
MostRecent = true,
Filters = new[]
{
new Aws.Ec2.Inputs.GetAmiFilterInputArgs
{
Name = "name",
Values = new[]
{
"ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*",
},
},
new Aws.Ec2.Inputs.GetAmiFilterInputArgs
{
Name = "virtualization-type",
Values = new[]
{
"hvm",
},
},
},
Owners = new[]
{
"099720109477",
},
});
var asConf = new Aws.Ec2.LaunchConfiguration("asConf", new()
{
ImageId = ubuntu.Apply(getAmiResult => getAmiResult.Id),
InstanceType = "t2.micro",
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
ubuntu, err := ec2.LookupAmi(ctx, &ec2.LookupAmiArgs{
MostRecent: pulumi.BoolRef(true),
Filters: []ec2.GetAmiFilter{
{
Name: "name",
Values: []string{
"ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*",
},
},
{
Name: "virtualization-type",
Values: []string{
"hvm",
},
},
},
Owners: []string{
"099720109477",
},
}, nil)
if err != nil {
return err
}
_, err = ec2.NewLaunchConfiguration(ctx, "asConf", &ec2.LaunchConfigurationArgs{
ImageId: *pulumi.String(ubuntu.Id),
InstanceType: pulumi.String("t2.micro"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ec2.Ec2Functions;
import com.pulumi.aws.ec2.inputs.GetAmiArgs;
import com.pulumi.aws.ec2.LaunchConfiguration;
import com.pulumi.aws.ec2.LaunchConfigurationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var ubuntu = Ec2Functions.getAmi(GetAmiArgs.builder()
.mostRecent(true)
.filters(
GetAmiFilterArgs.builder()
.name("name")
.values("ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*")
.build(),
GetAmiFilterArgs.builder()
.name("virtualization-type")
.values("hvm")
.build())
.owners("099720109477")
.build());
var asConf = new LaunchConfiguration("asConf", LaunchConfigurationArgs.builder()
.imageId(ubuntu.applyValue(getAmiResult -> getAmiResult.id()))
.instanceType("t2.micro")
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const ubuntu = aws.ec2.getAmi({
mostRecent: true,
filters: [
{
name: "name",
values: ["ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*"],
},
{
name: "virtualization-type",
values: ["hvm"],
},
],
owners: ["099720109477"],
});
const asConf = new aws.ec2.LaunchConfiguration("asConf", {
imageId: ubuntu.then(ubuntu => ubuntu.id),
instanceType: "t2.micro",
});
import pulumi
import pulumi_aws as aws
ubuntu = aws.ec2.get_ami(most_recent=True,
filters=[
aws.ec2.GetAmiFilterArgs(
name="name",
values=["ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*"],
),
aws.ec2.GetAmiFilterArgs(
name="virtualization-type",
values=["hvm"],
),
],
owners=["099720109477"])
as_conf = aws.ec2.LaunchConfiguration("asConf",
image_id=ubuntu.id,
instance_type="t2.micro")
resources:
asConf:
type: aws:ec2:LaunchConfiguration
properties:
imageId: ${ubuntu.id}
instanceType: t2.micro
variables:
ubuntu:
fn::invoke:
Function: aws:ec2:getAmi
Arguments:
mostRecent: true
filters:
- name: name
values:
- ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*
- name: virtualization-type
values:
- hvm
owners:
- '099720109477'
. Example
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var ubuntu = Aws.Ec2.GetAmi.Invoke(new()
{
MostRecent = true,
Filters = new[]
{
new Aws.Ec2.Inputs.GetAmiFilterInputArgs
{
Name = "name",
Values = new[]
{
"ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*",
},
},
new Aws.Ec2.Inputs.GetAmiFilterInputArgs
{
Name = "virtualization-type",
Values = new[]
{
"hvm",
},
},
},
Owners = new[]
{
"099720109477",
},
});
var asConf = new Aws.Ec2.LaunchConfiguration("asConf", new()
{
NamePrefix = "lc-example-",
ImageId = ubuntu.Apply(getAmiResult => getAmiResult.Id),
InstanceType = "t2.micro",
});
var bar = new Aws.AutoScaling.Group("bar", new()
{
LaunchConfiguration = asConf.Name,
MinSize = 1,
MaxSize = 2,
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/autoscaling"
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
ubuntu, err := ec2.LookupAmi(ctx, &ec2.LookupAmiArgs{
MostRecent: pulumi.BoolRef(true),
Filters: []ec2.GetAmiFilter{
{
Name: "name",
Values: []string{
"ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*",
},
},
{
Name: "virtualization-type",
Values: []string{
"hvm",
},
},
},
Owners: []string{
"099720109477",
},
}, nil)
if err != nil {
return err
}
asConf, err := ec2.NewLaunchConfiguration(ctx, "asConf", &ec2.LaunchConfigurationArgs{
NamePrefix: pulumi.String("lc-example-"),
ImageId: *pulumi.String(ubuntu.Id),
InstanceType: pulumi.String("t2.micro"),
})
if err != nil {
return err
}
_, err = autoscaling.NewGroup(ctx, "bar", &autoscaling.GroupArgs{
LaunchConfiguration: asConf.Name,
MinSize: pulumi.Int(1),
MaxSize: pulumi.Int(2),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ec2.Ec2Functions;
import com.pulumi.aws.ec2.inputs.GetAmiArgs;
import com.pulumi.aws.ec2.LaunchConfiguration;
import com.pulumi.aws.ec2.LaunchConfigurationArgs;
import com.pulumi.aws.autoscaling.Group;
import com.pulumi.aws.autoscaling.GroupArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var ubuntu = Ec2Functions.getAmi(GetAmiArgs.builder()
.mostRecent(true)
.filters(
GetAmiFilterArgs.builder()
.name("name")
.values("ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*")
.build(),
GetAmiFilterArgs.builder()
.name("virtualization-type")
.values("hvm")
.build())
.owners("099720109477")
.build());
var asConf = new LaunchConfiguration("asConf", LaunchConfigurationArgs.builder()
.namePrefix("lc-example-")
.imageId(ubuntu.applyValue(getAmiResult -> getAmiResult.id()))
.instanceType("t2.micro")
.build());
var bar = new Group("bar", GroupArgs.builder()
.launchConfiguration(asConf.name())
.minSize(1)
.maxSize(2)
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const ubuntu = aws.ec2.getAmi({
mostRecent: true,
filters: [
{
name: "name",
values: ["ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*"],
},
{
name: "virtualization-type",
values: ["hvm"],
},
],
owners: ["099720109477"],
});
const asConf = new aws.ec2.LaunchConfiguration("asConf", {
namePrefix: "lc-example-",
imageId: ubuntu.then(ubuntu => ubuntu.id),
instanceType: "t2.micro",
});
const bar = new aws.autoscaling.Group("bar", {
launchConfiguration: asConf.name,
minSize: 1,
maxSize: 2,
});
import pulumi
import pulumi_aws as aws
ubuntu = aws.ec2.get_ami(most_recent=True,
filters=[
aws.ec2.GetAmiFilterArgs(
name="name",
values=["ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*"],
),
aws.ec2.GetAmiFilterArgs(
name="virtualization-type",
values=["hvm"],
),
],
owners=["099720109477"])
as_conf = aws.ec2.LaunchConfiguration("asConf",
name_prefix="lc-example-",
image_id=ubuntu.id,
instance_type="t2.micro")
bar = aws.autoscaling.Group("bar",
launch_configuration=as_conf.name,
min_size=1,
max_size=2)
resources:
asConf:
type: aws:ec2:LaunchConfiguration
properties:
namePrefix: lc-example-
imageId: ${ubuntu.id}
instanceType: t2.micro
bar:
type: aws:autoscaling:Group
properties:
launchConfiguration: ${asConf.name}
minSize: 1
maxSize: 2
variables:
ubuntu:
fn::invoke:
Function: aws:ec2:getAmi
Arguments:
mostRecent: true
filters:
- name: name
values:
- ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*
- name: virtualization-type
values:
- hvm
owners:
- '099720109477'
] with this provider.
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var ubuntu = Aws.Ec2.GetAmi.Invoke(new()
{
MostRecent = true,
Filters = new[]
{
new Aws.Ec2.Inputs.GetAmiFilterInputArgs
{
Name = "name",
Values = new[]
{
"ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*",
},
},
new Aws.Ec2.Inputs.GetAmiFilterInputArgs
{
Name = "virtualization-type",
Values = new[]
{
"hvm",
},
},
},
Owners = new[]
{
"099720109477",
},
});
var asConf = new Aws.Ec2.LaunchConfiguration("asConf", new()
{
ImageId = ubuntu.Apply(getAmiResult => getAmiResult.Id),
InstanceType = "m4.large",
SpotPrice = "0.001",
});
var bar = new Aws.AutoScaling.Group("bar", new()
{
LaunchConfiguration = asConf.Name,
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/autoscaling"
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
ubuntu, err := ec2.LookupAmi(ctx, &ec2.LookupAmiArgs{
MostRecent: pulumi.BoolRef(true),
Filters: []ec2.GetAmiFilter{
{
Name: "name",
Values: []string{
"ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*",
},
},
{
Name: "virtualization-type",
Values: []string{
"hvm",
},
},
},
Owners: []string{
"099720109477",
},
}, nil)
if err != nil {
return err
}
asConf, err := ec2.NewLaunchConfiguration(ctx, "asConf", &ec2.LaunchConfigurationArgs{
ImageId: *pulumi.String(ubuntu.Id),
InstanceType: pulumi.String("m4.large"),
SpotPrice: pulumi.String("0.001"),
})
if err != nil {
return err
}
_, err = autoscaling.NewGroup(ctx, "bar", &autoscaling.GroupArgs{
LaunchConfiguration: asConf.Name,
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ec2.Ec2Functions;
import com.pulumi.aws.ec2.inputs.GetAmiArgs;
import com.pulumi.aws.ec2.LaunchConfiguration;
import com.pulumi.aws.ec2.LaunchConfigurationArgs;
import com.pulumi.aws.autoscaling.Group;
import com.pulumi.aws.autoscaling.GroupArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var ubuntu = Ec2Functions.getAmi(GetAmiArgs.builder()
.mostRecent(true)
.filters(
GetAmiFilterArgs.builder()
.name("name")
.values("ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*")
.build(),
GetAmiFilterArgs.builder()
.name("virtualization-type")
.values("hvm")
.build())
.owners("099720109477")
.build());
var asConf = new LaunchConfiguration("asConf", LaunchConfigurationArgs.builder()
.imageId(ubuntu.applyValue(getAmiResult -> getAmiResult.id()))
.instanceType("m4.large")
.spotPrice("0.001")
.build());
var bar = new Group("bar", GroupArgs.builder()
.launchConfiguration(asConf.name())
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const ubuntu = aws.ec2.getAmi({
mostRecent: true,
filters: [
{
name: "name",
values: ["ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*"],
},
{
name: "virtualization-type",
values: ["hvm"],
},
],
owners: ["099720109477"],
});
const asConf = new aws.ec2.LaunchConfiguration("asConf", {
imageId: ubuntu.then(ubuntu => ubuntu.id),
instanceType: "m4.large",
spotPrice: "0.001",
});
const bar = new aws.autoscaling.Group("bar", {launchConfiguration: asConf.name});
import pulumi
import pulumi_aws as aws
ubuntu = aws.ec2.get_ami(most_recent=True,
filters=[
aws.ec2.GetAmiFilterArgs(
name="name",
values=["ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*"],
),
aws.ec2.GetAmiFilterArgs(
name="virtualization-type",
values=["hvm"],
),
],
owners=["099720109477"])
as_conf = aws.ec2.LaunchConfiguration("asConf",
image_id=ubuntu.id,
instance_type="m4.large",
spot_price="0.001")
bar = aws.autoscaling.Group("bar", launch_configuration=as_conf.name)
resources:
asConf:
type: aws:ec2:LaunchConfiguration
properties:
imageId: ${ubuntu.id}
instanceType: m4.large
spotPrice: '0.001'
bar:
type: aws:autoscaling:Group
properties:
launchConfiguration: ${asConf.name}
variables:
ubuntu:
fn::invoke:
Function: aws:ec2:getAmi
Arguments:
mostRecent: true
filters:
- name: name
values:
- ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-*
- name: virtualization-type
values:
- hvm
owners:
- '099720109477'
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,
name: Optional[str] = None,
name_prefix: Optional[str] = None,
ephemeral_block_devices: Optional[Sequence[LaunchConfigurationEphemeralBlockDeviceArgs]] = None,
iam_instance_profile: Optional[str] = None,
ebs_optimized: Optional[bool] = None,
ebs_block_devices: Optional[Sequence[LaunchConfigurationEbsBlockDeviceArgs]] = None,
key_name: Optional[str] = None,
metadata_options: Optional[LaunchConfigurationMetadataOptionsArgs] = None,
associate_public_ip_address: Optional[bool] = None,
enable_monitoring: Optional[bool] = None,
placement_tenancy: Optional[str] = None,
root_block_device: Optional[LaunchConfigurationRootBlockDeviceArgs] = None,
security_groups: Optional[Sequence[str]] = None,
spot_price: Optional[str] = None,
user_data: Optional[str] = None,
user_data_base64: Optional[str] = None,
vpc_classic_link_id: Optional[str] = None,
vpc_classic_link_security_groups: Optional[Sequence[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:ec2: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.
Constructor example
The following reference example uses placeholder values for all input properties.
var launchConfigurationResource = new Aws.Ec2.LaunchConfiguration("launchConfigurationResource", new()
{
ImageId = "string",
InstanceType = "string",
Name = "string",
NamePrefix = "string",
EphemeralBlockDevices = new[]
{
new Aws.Ec2.Inputs.LaunchConfigurationEphemeralBlockDeviceArgs
{
DeviceName = "string",
NoDevice = false,
VirtualName = "string",
},
},
IamInstanceProfile = "string",
EbsOptimized = false,
EbsBlockDevices = new[]
{
new Aws.Ec2.Inputs.LaunchConfigurationEbsBlockDeviceArgs
{
DeviceName = "string",
DeleteOnTermination = false,
Encrypted = false,
Iops = 0,
NoDevice = false,
SnapshotId = "string",
Throughput = 0,
VolumeSize = 0,
VolumeType = "string",
},
},
KeyName = "string",
MetadataOptions = new Aws.Ec2.Inputs.LaunchConfigurationMetadataOptionsArgs
{
HttpEndpoint = "string",
HttpPutResponseHopLimit = 0,
HttpTokens = "string",
},
AssociatePublicIpAddress = false,
EnableMonitoring = false,
PlacementTenancy = "string",
RootBlockDevice = new Aws.Ec2.Inputs.LaunchConfigurationRootBlockDeviceArgs
{
DeleteOnTermination = false,
Encrypted = false,
Iops = 0,
Throughput = 0,
VolumeSize = 0,
VolumeType = "string",
},
SecurityGroups = new[]
{
"string",
},
SpotPrice = "string",
UserData = "string",
UserDataBase64 = "string",
});
example, err := ec2.NewLaunchConfiguration(ctx, "launchConfigurationResource", &ec2.LaunchConfigurationArgs{
ImageId: pulumi.String("string"),
InstanceType: pulumi.String("string"),
Name: pulumi.String("string"),
NamePrefix: pulumi.String("string"),
EphemeralBlockDevices: ec2.LaunchConfigurationEphemeralBlockDeviceArray{
&ec2.LaunchConfigurationEphemeralBlockDeviceArgs{
DeviceName: pulumi.String("string"),
NoDevice: pulumi.Bool(false),
VirtualName: pulumi.String("string"),
},
},
IamInstanceProfile: pulumi.Any("string"),
EbsOptimized: pulumi.Bool(false),
EbsBlockDevices: ec2.LaunchConfigurationEbsBlockDeviceArray{
&ec2.LaunchConfigurationEbsBlockDeviceArgs{
DeviceName: pulumi.String("string"),
DeleteOnTermination: pulumi.Bool(false),
Encrypted: pulumi.Bool(false),
Iops: pulumi.Int(0),
NoDevice: pulumi.Bool(false),
SnapshotId: pulumi.String("string"),
Throughput: pulumi.Int(0),
VolumeSize: pulumi.Int(0),
VolumeType: pulumi.String("string"),
},
},
KeyName: pulumi.String("string"),
MetadataOptions: &ec2.LaunchConfigurationMetadataOptionsArgs{
HttpEndpoint: pulumi.String("string"),
HttpPutResponseHopLimit: pulumi.Int(0),
HttpTokens: pulumi.String("string"),
},
AssociatePublicIpAddress: pulumi.Bool(false),
EnableMonitoring: pulumi.Bool(false),
PlacementTenancy: pulumi.String("string"),
RootBlockDevice: &ec2.LaunchConfigurationRootBlockDeviceArgs{
DeleteOnTermination: pulumi.Bool(false),
Encrypted: pulumi.Bool(false),
Iops: pulumi.Int(0),
Throughput: pulumi.Int(0),
VolumeSize: pulumi.Int(0),
VolumeType: pulumi.String("string"),
},
SecurityGroups: pulumi.StringArray{
pulumi.String("string"),
},
SpotPrice: pulumi.String("string"),
UserData: pulumi.String("string"),
UserDataBase64: pulumi.String("string"),
})
var launchConfigurationResource = new LaunchConfiguration("launchConfigurationResource", LaunchConfigurationArgs.builder()
.imageId("string")
.instanceType("string")
.name("string")
.namePrefix("string")
.ephemeralBlockDevices(LaunchConfigurationEphemeralBlockDeviceArgs.builder()
.deviceName("string")
.noDevice(false)
.virtualName("string")
.build())
.iamInstanceProfile("string")
.ebsOptimized(false)
.ebsBlockDevices(LaunchConfigurationEbsBlockDeviceArgs.builder()
.deviceName("string")
.deleteOnTermination(false)
.encrypted(false)
.iops(0)
.noDevice(false)
.snapshotId("string")
.throughput(0)
.volumeSize(0)
.volumeType("string")
.build())
.keyName("string")
.metadataOptions(LaunchConfigurationMetadataOptionsArgs.builder()
.httpEndpoint("string")
.httpPutResponseHopLimit(0)
.httpTokens("string")
.build())
.associatePublicIpAddress(false)
.enableMonitoring(false)
.placementTenancy("string")
.rootBlockDevice(LaunchConfigurationRootBlockDeviceArgs.builder()
.deleteOnTermination(false)
.encrypted(false)
.iops(0)
.throughput(0)
.volumeSize(0)
.volumeType("string")
.build())
.securityGroups("string")
.spotPrice("string")
.userData("string")
.userDataBase64("string")
.build());
launch_configuration_resource = aws.ec2.LaunchConfiguration("launchConfigurationResource",
image_id="string",
instance_type="string",
name="string",
name_prefix="string",
ephemeral_block_devices=[{
"device_name": "string",
"no_device": False,
"virtual_name": "string",
}],
iam_instance_profile="string",
ebs_optimized=False,
ebs_block_devices=[{
"device_name": "string",
"delete_on_termination": False,
"encrypted": False,
"iops": 0,
"no_device": False,
"snapshot_id": "string",
"throughput": 0,
"volume_size": 0,
"volume_type": "string",
}],
key_name="string",
metadata_options={
"http_endpoint": "string",
"http_put_response_hop_limit": 0,
"http_tokens": "string",
},
associate_public_ip_address=False,
enable_monitoring=False,
placement_tenancy="string",
root_block_device={
"delete_on_termination": False,
"encrypted": False,
"iops": 0,
"throughput": 0,
"volume_size": 0,
"volume_type": "string",
},
security_groups=["string"],
spot_price="string",
user_data="string",
user_data_base64="string")
const launchConfigurationResource = new aws.ec2.LaunchConfiguration("launchConfigurationResource", {
imageId: "string",
instanceType: "string",
name: "string",
namePrefix: "string",
ephemeralBlockDevices: [{
deviceName: "string",
noDevice: false,
virtualName: "string",
}],
iamInstanceProfile: "string",
ebsOptimized: false,
ebsBlockDevices: [{
deviceName: "string",
deleteOnTermination: false,
encrypted: false,
iops: 0,
noDevice: false,
snapshotId: "string",
throughput: 0,
volumeSize: 0,
volumeType: "string",
}],
keyName: "string",
metadataOptions: {
httpEndpoint: "string",
httpPutResponseHopLimit: 0,
httpTokens: "string",
},
associatePublicIpAddress: false,
enableMonitoring: false,
placementTenancy: "string",
rootBlockDevice: {
deleteOnTermination: false,
encrypted: false,
iops: 0,
throughput: 0,
volumeSize: 0,
volumeType: "string",
},
securityGroups: ["string"],
spotPrice: "string",
userData: "string",
userDataBase64: "string",
});
type: aws:ec2:LaunchConfiguration
properties:
associatePublicIpAddress: false
ebsBlockDevices:
- deleteOnTermination: false
deviceName: string
encrypted: false
iops: 0
noDevice: false
snapshotId: string
throughput: 0
volumeSize: 0
volumeType: string
ebsOptimized: false
enableMonitoring: false
ephemeralBlockDevices:
- deviceName: string
noDevice: false
virtualName: string
iamInstanceProfile: string
imageId: string
instanceType: string
keyName: string
metadataOptions:
httpEndpoint: string
httpPutResponseHopLimit: 0
httpTokens: string
name: string
namePrefix: string
placementTenancy: string
rootBlockDevice:
deleteOnTermination: false
encrypted: false
iops: 0
throughput: 0
volumeSize: 0
volumeType: string
securityGroups:
- string
spotPrice: string
userData: string
userDataBase64: string
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
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The LaunchConfiguration resource accepts the following input properties:
- Image
Id string - The EC2 image ID to launch.
- Instance
Type string The size of instance to launch.
The following arguments are optional:
- Associate
Public boolIp Address - Associate a public ip address with an instance in a VPC.
- Ebs
Block List<LaunchDevices Configuration Ebs Block Device> - Additional EBS block devices to attach to the instance. See Block Devices below for details.
- Ebs
Optimized bool - If true, the launched EC2 instance will be EBS-optimized.
- Enable
Monitoring bool - Enables/disables detailed monitoring. This is enabled by default.
- Ephemeral
Block List<LaunchDevices Configuration Ephemeral Block Device> - Customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details.
- Iam
Instance string | stringProfile - The name attribute of the IAM instance profile to associate with launched instances.
- Key
Name string - The key name that should be used for the instance.
- Metadata
Options LaunchConfiguration Metadata Options - The metadata options for the instance.
- Name string
- The name of the launch configuration. If you leave this blank, this provider will auto-generate a unique name. Conflicts with
name_prefix. - Name
Prefix string - Creates a unique name beginning with the specified prefix. Conflicts with
name. - Placement
Tenancy string - The tenancy of the instance. Valid values are
defaultordedicated, see AWS's Create Launch Configuration for more details. - Root
Block LaunchDevice Configuration Root Block Device - Customize details about the root block device of the instance. See Block Devices below for details.
- Security
Groups List<string> - A list of associated security group IDS.
- Spot
Price string - The maximum price to use for reserving spot instances.
- User
Data string - The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see
user_data_base64instead. - User
Data stringBase64 - Can be used instead of
user_datato pass base64-encoded binary data directly. Use this instead ofuser_datawhenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption. - Vpc
Classic stringLink Id - The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg.
vpc-2730681a) - Vpc
Classic List<string>Link Security Groups - The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg.
sg-46ae3d11).
- Image
Id string - The EC2 image ID to launch.
- Instance
Type string The size of instance to launch.
The following arguments are optional:
- Associate
Public boolIp Address - Associate a public ip address with an instance in a VPC.
- Ebs
Block []LaunchDevices Configuration Ebs Block Device Args - Additional EBS block devices to attach to the instance. See Block Devices below for details.
- Ebs
Optimized bool - If true, the launched EC2 instance will be EBS-optimized.
- Enable
Monitoring bool - Enables/disables detailed monitoring. This is enabled by default.
- Ephemeral
Block []LaunchDevices Configuration Ephemeral Block Device Args - Customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details.
- Iam
Instance string | stringProfile - The name attribute of the IAM instance profile to associate with launched instances.
- Key
Name string - The key name that should be used for the instance.
- Metadata
Options LaunchConfiguration Metadata Options Args - The metadata options for the instance.
- Name string
- The name of the launch configuration. If you leave this blank, this provider will auto-generate a unique name. Conflicts with
name_prefix. - Name
Prefix string - Creates a unique name beginning with the specified prefix. Conflicts with
name. - Placement
Tenancy string - The tenancy of the instance. Valid values are
defaultordedicated, see AWS's Create Launch Configuration for more details. - Root
Block LaunchDevice Configuration Root Block Device Args - Customize details about the root block device of the instance. See Block Devices below for details.
- Security
Groups []string - A list of associated security group IDS.
- Spot
Price string - The maximum price to use for reserving spot instances.
- User
Data string - The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see
user_data_base64instead. - User
Data stringBase64 - Can be used instead of
user_datato pass base64-encoded binary data directly. Use this instead ofuser_datawhenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption. - Vpc
Classic stringLink Id - The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg.
vpc-2730681a) - Vpc
Classic []stringLink Security Groups - The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg.
sg-46ae3d11).
- image
Id String - The EC2 image ID to launch.
- instance
Type String The size of instance to launch.
The following arguments are optional:
- associate
Public BooleanIp Address - Associate a public ip address with an instance in a VPC.
- ebs
Block List<LaunchDevices Configuration Ebs Block Device> - Additional EBS block devices to attach to the instance. See Block Devices below for details.
- ebs
Optimized Boolean - If true, the launched EC2 instance will be EBS-optimized.
- enable
Monitoring Boolean - Enables/disables detailed monitoring. This is enabled by default.
- ephemeral
Block List<LaunchDevices Configuration Ephemeral Block Device> - Customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details.
- iam
Instance String | StringProfile - The name attribute of the IAM instance profile to associate with launched instances.
- key
Name String - The key name that should be used for the instance.
- metadata
Options LaunchConfiguration Metadata Options - The metadata options for the instance.
- name String
- The name of the launch configuration. If you leave this blank, this provider will auto-generate a unique name. Conflicts with
name_prefix. - name
Prefix String - Creates a unique name beginning with the specified prefix. Conflicts with
name. - placement
Tenancy String - The tenancy of the instance. Valid values are
defaultordedicated, see AWS's Create Launch Configuration for more details. - root
Block LaunchDevice Configuration Root Block Device - Customize details about the root block device of the instance. See Block Devices below for details.
- security
Groups List<String> - A list of associated security group IDS.
- spot
Price String - The maximum price to use for reserving spot instances.
- user
Data String - The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see
user_data_base64instead. - user
Data StringBase64 - Can be used instead of
user_datato pass base64-encoded binary data directly. Use this instead ofuser_datawhenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption. - vpc
Classic StringLink Id - The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg.
vpc-2730681a) - vpc
Classic List<String>Link Security Groups - The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg.
sg-46ae3d11).
- image
Id string - The EC2 image ID to launch.
- instance
Type string The size of instance to launch.
The following arguments are optional:
- associate
Public booleanIp Address - Associate a public ip address with an instance in a VPC.
- ebs
Block LaunchDevices Configuration Ebs Block Device[] - Additional EBS block devices to attach to the instance. See Block Devices below for details.
- ebs
Optimized boolean - If true, the launched EC2 instance will be EBS-optimized.
- enable
Monitoring boolean - Enables/disables detailed monitoring. This is enabled by default.
- ephemeral
Block LaunchDevices Configuration Ephemeral Block Device[] - Customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details.
- iam
Instance string | InstanceProfile Profile - The name attribute of the IAM instance profile to associate with launched instances.
- key
Name string - The key name that should be used for the instance.
- metadata
Options LaunchConfiguration Metadata Options - The metadata options for the instance.
- name string
- The name of the launch configuration. If you leave this blank, this provider will auto-generate a unique name. Conflicts with
name_prefix. - name
Prefix string - Creates a unique name beginning with the specified prefix. Conflicts with
name. - placement
Tenancy string - The tenancy of the instance. Valid values are
defaultordedicated, see AWS's Create Launch Configuration for more details. - root
Block LaunchDevice Configuration Root Block Device - Customize details about the root block device of the instance. See Block Devices below for details.
- security
Groups string[] - A list of associated security group IDS.
- spot
Price string - The maximum price to use for reserving spot instances.
- user
Data string - The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see
user_data_base64instead. - user
Data stringBase64 - Can be used instead of
user_datato pass base64-encoded binary data directly. Use this instead ofuser_datawhenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption. - vpc
Classic stringLink Id - The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg.
vpc-2730681a) - vpc
Classic string[]Link Security Groups - The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg.
sg-46ae3d11).
- image_
id str - The EC2 image ID to launch.
- instance_
type str The size of instance to launch.
The following arguments are optional:
- associate_
public_ boolip_ address - Associate a public ip address with an instance in a VPC.
- ebs_
block_ Sequence[Launchdevices Configuration Ebs Block Device Args] - Additional EBS block devices to attach to the instance. See Block Devices below for details.
- ebs_
optimized bool - If true, the launched EC2 instance will be EBS-optimized.
- enable_
monitoring bool - Enables/disables detailed monitoring. This is enabled by default.
- ephemeral_
block_ Sequence[Launchdevices Configuration Ephemeral Block Device Args] - Customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details.
- iam_
instance_ str | strprofile - The name attribute of the IAM instance profile to associate with launched instances.
- key_
name str - The key name that should be used for the instance.
- metadata_
options LaunchConfiguration Metadata Options Args - The metadata options for the instance.
- name str
- The name of the launch configuration. If you leave this blank, this provider will auto-generate a unique name. Conflicts with
name_prefix. - name_
prefix str - Creates a unique name beginning with the specified prefix. Conflicts with
name. - placement_
tenancy str - The tenancy of the instance. Valid values are
defaultordedicated, see AWS's Create Launch Configuration for more details. - root_
block_ Launchdevice Configuration Root Block Device Args - Customize details about the root block device of the instance. See Block Devices below for details.
- security_
groups Sequence[str] - A list of associated security group IDS.
- spot_
price str - The maximum price to use for reserving spot instances.
- user_
data str - The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see
user_data_base64instead. - user_
data_ strbase64 - Can be used instead of
user_datato pass base64-encoded binary data directly. Use this instead ofuser_datawhenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption. - vpc_
classic_ strlink_ id - The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg.
vpc-2730681a) - vpc_
classic_ Sequence[str]link_ security_ groups - The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg.
sg-46ae3d11).
- image
Id String - The EC2 image ID to launch.
- instance
Type String The size of instance to launch.
The following arguments are optional:
- associate
Public BooleanIp Address - Associate a public ip address with an instance in a VPC.
- ebs
Block List<Property Map>Devices - Additional EBS block devices to attach to the instance. See Block Devices below for details.
- ebs
Optimized Boolean - If true, the launched EC2 instance will be EBS-optimized.
- enable
Monitoring Boolean - Enables/disables detailed monitoring. This is enabled by default.
- ephemeral
Block List<Property Map>Devices - Customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details.
- iam
Instance String |Profile - The name attribute of the IAM instance profile to associate with launched instances.
- key
Name String - The key name that should be used for the instance.
- metadata
Options Property Map - The metadata options for the instance.
- name String
- The name of the launch configuration. If you leave this blank, this provider will auto-generate a unique name. Conflicts with
name_prefix. - name
Prefix String - Creates a unique name beginning with the specified prefix. Conflicts with
name. - placement
Tenancy String - The tenancy of the instance. Valid values are
defaultordedicated, see AWS's Create Launch Configuration for more details. - root
Block Property MapDevice - Customize details about the root block device of the instance. See Block Devices below for details.
- security
Groups List<String> - A list of associated security group IDS.
- spot
Price String - The maximum price to use for reserving spot instances.
- user
Data String - The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see
user_data_base64instead. - user
Data StringBase64 - Can be used instead of
user_datato pass base64-encoded binary data directly. Use this instead ofuser_datawhenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption. - vpc
Classic StringLink Id - The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg.
vpc-2730681a) - vpc
Classic List<String>Link Security Groups - The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg.
sg-46ae3d11).
Outputs
All input properties are implicitly available as output properties. Additionally, the LaunchConfiguration resource produces the following output properties:
Look up Existing LaunchConfiguration Resource
Get an existing LaunchConfiguration resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: LaunchConfigurationState, opts?: CustomResourceOptions): LaunchConfiguration@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
arn: Optional[str] = None,
associate_public_ip_address: Optional[bool] = None,
ebs_block_devices: Optional[Sequence[LaunchConfigurationEbsBlockDeviceArgs]] = None,
ebs_optimized: Optional[bool] = None,
enable_monitoring: Optional[bool] = None,
ephemeral_block_devices: Optional[Sequence[LaunchConfigurationEphemeralBlockDeviceArgs]] = None,
iam_instance_profile: Optional[str] = None,
image_id: Optional[str] = None,
instance_type: Optional[str] = None,
key_name: Optional[str] = None,
metadata_options: Optional[LaunchConfigurationMetadataOptionsArgs] = None,
name: Optional[str] = None,
name_prefix: Optional[str] = None,
placement_tenancy: Optional[str] = None,
root_block_device: Optional[LaunchConfigurationRootBlockDeviceArgs] = None,
security_groups: Optional[Sequence[str]] = None,
spot_price: Optional[str] = None,
user_data: Optional[str] = None,
user_data_base64: Optional[str] = None,
vpc_classic_link_id: Optional[str] = None,
vpc_classic_link_security_groups: Optional[Sequence[str]] = None) -> LaunchConfigurationfunc GetLaunchConfiguration(ctx *Context, name string, id IDInput, state *LaunchConfigurationState, opts ...ResourceOption) (*LaunchConfiguration, error)public static LaunchConfiguration Get(string name, Input<string> id, LaunchConfigurationState? state, CustomResourceOptions? opts = null)public static LaunchConfiguration get(String name, Output<String> id, LaunchConfigurationState state, CustomResourceOptions options)resources: _: type: aws:ec2:LaunchConfiguration get: id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Arn string
- The Amazon Resource Name of the launch configuration.
- Associate
Public boolIp Address - Associate a public ip address with an instance in a VPC.
- Ebs
Block List<LaunchDevices Configuration Ebs Block Device> - Additional EBS block devices to attach to the instance. See Block Devices below for details.
- Ebs
Optimized bool - If true, the launched EC2 instance will be EBS-optimized.
- Enable
Monitoring bool - Enables/disables detailed monitoring. This is enabled by default.
- Ephemeral
Block List<LaunchDevices Configuration Ephemeral Block Device> - Customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details.
- Iam
Instance string | stringProfile - The name attribute of the IAM instance profile to associate with launched instances.
- Image
Id string - The EC2 image ID to launch.
- Instance
Type string The size of instance to launch.
The following arguments are optional:
- Key
Name string - The key name that should be used for the instance.
- Metadata
Options LaunchConfiguration Metadata Options - The metadata options for the instance.
- Name string
- The name of the launch configuration. If you leave this blank, this provider will auto-generate a unique name. Conflicts with
name_prefix. - Name
Prefix string - Creates a unique name beginning with the specified prefix. Conflicts with
name. - Placement
Tenancy string - The tenancy of the instance. Valid values are
defaultordedicated, see AWS's Create Launch Configuration for more details. - Root
Block LaunchDevice Configuration Root Block Device - Customize details about the root block device of the instance. See Block Devices below for details.
- Security
Groups List<string> - A list of associated security group IDS.
- Spot
Price string - The maximum price to use for reserving spot instances.
- User
Data string - The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see
user_data_base64instead. - User
Data stringBase64 - Can be used instead of
user_datato pass base64-encoded binary data directly. Use this instead ofuser_datawhenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption. - Vpc
Classic stringLink Id - The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg.
vpc-2730681a) - Vpc
Classic List<string>Link Security Groups - The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg.
sg-46ae3d11).
- Arn string
- The Amazon Resource Name of the launch configuration.
- Associate
Public boolIp Address - Associate a public ip address with an instance in a VPC.
- Ebs
Block []LaunchDevices Configuration Ebs Block Device Args - Additional EBS block devices to attach to the instance. See Block Devices below for details.
- Ebs
Optimized bool - If true, the launched EC2 instance will be EBS-optimized.
- Enable
Monitoring bool - Enables/disables detailed monitoring. This is enabled by default.
- Ephemeral
Block []LaunchDevices Configuration Ephemeral Block Device Args - Customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details.
- Iam
Instance string | stringProfile - The name attribute of the IAM instance profile to associate with launched instances.
- Image
Id string - The EC2 image ID to launch.
- Instance
Type string The size of instance to launch.
The following arguments are optional:
- Key
Name string - The key name that should be used for the instance.
- Metadata
Options LaunchConfiguration Metadata Options Args - The metadata options for the instance.
- Name string
- The name of the launch configuration. If you leave this blank, this provider will auto-generate a unique name. Conflicts with
name_prefix. - Name
Prefix string - Creates a unique name beginning with the specified prefix. Conflicts with
name. - Placement
Tenancy string - The tenancy of the instance. Valid values are
defaultordedicated, see AWS's Create Launch Configuration for more details. - Root
Block LaunchDevice Configuration Root Block Device Args - Customize details about the root block device of the instance. See Block Devices below for details.
- Security
Groups []string - A list of associated security group IDS.
- Spot
Price string - The maximum price to use for reserving spot instances.
- User
Data string - The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see
user_data_base64instead. - User
Data stringBase64 - Can be used instead of
user_datato pass base64-encoded binary data directly. Use this instead ofuser_datawhenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption. - Vpc
Classic stringLink Id - The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg.
vpc-2730681a) - Vpc
Classic []stringLink Security Groups - The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg.
sg-46ae3d11).
- arn String
- The Amazon Resource Name of the launch configuration.
- associate
Public BooleanIp Address - Associate a public ip address with an instance in a VPC.
- ebs
Block List<LaunchDevices Configuration Ebs Block Device> - Additional EBS block devices to attach to the instance. See Block Devices below for details.
- ebs
Optimized Boolean - If true, the launched EC2 instance will be EBS-optimized.
- enable
Monitoring Boolean - Enables/disables detailed monitoring. This is enabled by default.
- ephemeral
Block List<LaunchDevices Configuration Ephemeral Block Device> - Customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details.
- iam
Instance String | StringProfile - The name attribute of the IAM instance profile to associate with launched instances.
- image
Id String - The EC2 image ID to launch.
- instance
Type String The size of instance to launch.
The following arguments are optional:
- key
Name String - The key name that should be used for the instance.
- metadata
Options LaunchConfiguration Metadata Options - The metadata options for the instance.
- name String
- The name of the launch configuration. If you leave this blank, this provider will auto-generate a unique name. Conflicts with
name_prefix. - name
Prefix String - Creates a unique name beginning with the specified prefix. Conflicts with
name. - placement
Tenancy String - The tenancy of the instance. Valid values are
defaultordedicated, see AWS's Create Launch Configuration for more details. - root
Block LaunchDevice Configuration Root Block Device - Customize details about the root block device of the instance. See Block Devices below for details.
- security
Groups List<String> - A list of associated security group IDS.
- spot
Price String - The maximum price to use for reserving spot instances.
- user
Data String - The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see
user_data_base64instead. - user
Data StringBase64 - Can be used instead of
user_datato pass base64-encoded binary data directly. Use this instead ofuser_datawhenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption. - vpc
Classic StringLink Id - The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg.
vpc-2730681a) - vpc
Classic List<String>Link Security Groups - The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg.
sg-46ae3d11).
- arn string
- The Amazon Resource Name of the launch configuration.
- associate
Public booleanIp Address - Associate a public ip address with an instance in a VPC.
- ebs
Block LaunchDevices Configuration Ebs Block Device[] - Additional EBS block devices to attach to the instance. See Block Devices below for details.
- ebs
Optimized boolean - If true, the launched EC2 instance will be EBS-optimized.
- enable
Monitoring boolean - Enables/disables detailed monitoring. This is enabled by default.
- ephemeral
Block LaunchDevices Configuration Ephemeral Block Device[] - Customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details.
- iam
Instance string | InstanceProfile Profile - The name attribute of the IAM instance profile to associate with launched instances.
- image
Id string - The EC2 image ID to launch.
- instance
Type string The size of instance to launch.
The following arguments are optional:
- key
Name string - The key name that should be used for the instance.
- metadata
Options LaunchConfiguration Metadata Options - The metadata options for the instance.
- name string
- The name of the launch configuration. If you leave this blank, this provider will auto-generate a unique name. Conflicts with
name_prefix. - name
Prefix string - Creates a unique name beginning with the specified prefix. Conflicts with
name. - placement
Tenancy string - The tenancy of the instance. Valid values are
defaultordedicated, see AWS's Create Launch Configuration for more details. - root
Block LaunchDevice Configuration Root Block Device - Customize details about the root block device of the instance. See Block Devices below for details.
- security
Groups string[] - A list of associated security group IDS.
- spot
Price string - The maximum price to use for reserving spot instances.
- user
Data string - The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see
user_data_base64instead. - user
Data stringBase64 - Can be used instead of
user_datato pass base64-encoded binary data directly. Use this instead ofuser_datawhenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption. - vpc
Classic stringLink Id - The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg.
vpc-2730681a) - vpc
Classic string[]Link Security Groups - The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg.
sg-46ae3d11).
- arn str
- The Amazon Resource Name of the launch configuration.
- associate_
public_ boolip_ address - Associate a public ip address with an instance in a VPC.
- ebs_
block_ Sequence[Launchdevices Configuration Ebs Block Device Args] - Additional EBS block devices to attach to the instance. See Block Devices below for details.
- ebs_
optimized bool - If true, the launched EC2 instance will be EBS-optimized.
- enable_
monitoring bool - Enables/disables detailed monitoring. This is enabled by default.
- ephemeral_
block_ Sequence[Launchdevices Configuration Ephemeral Block Device Args] - Customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details.
- iam_
instance_ str | strprofile - The name attribute of the IAM instance profile to associate with launched instances.
- image_
id str - The EC2 image ID to launch.
- instance_
type str The size of instance to launch.
The following arguments are optional:
- key_
name str - The key name that should be used for the instance.
- metadata_
options LaunchConfiguration Metadata Options Args - The metadata options for the instance.
- name str
- The name of the launch configuration. If you leave this blank, this provider will auto-generate a unique name. Conflicts with
name_prefix. - name_
prefix str - Creates a unique name beginning with the specified prefix. Conflicts with
name. - placement_
tenancy str - The tenancy of the instance. Valid values are
defaultordedicated, see AWS's Create Launch Configuration for more details. - root_
block_ Launchdevice Configuration Root Block Device Args - Customize details about the root block device of the instance. See Block Devices below for details.
- security_
groups Sequence[str] - A list of associated security group IDS.
- spot_
price str - The maximum price to use for reserving spot instances.
- user_
data str - The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see
user_data_base64instead. - user_
data_ strbase64 - Can be used instead of
user_datato pass base64-encoded binary data directly. Use this instead ofuser_datawhenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption. - vpc_
classic_ strlink_ id - The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg.
vpc-2730681a) - vpc_
classic_ Sequence[str]link_ security_ groups - The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg.
sg-46ae3d11).
- arn String
- The Amazon Resource Name of the launch configuration.
- associate
Public BooleanIp Address - Associate a public ip address with an instance in a VPC.
- ebs
Block List<Property Map>Devices - Additional EBS block devices to attach to the instance. See Block Devices below for details.
- ebs
Optimized Boolean - If true, the launched EC2 instance will be EBS-optimized.
- enable
Monitoring Boolean - Enables/disables detailed monitoring. This is enabled by default.
- ephemeral
Block List<Property Map>Devices - Customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details.
- iam
Instance String |Profile - The name attribute of the IAM instance profile to associate with launched instances.
- image
Id String - The EC2 image ID to launch.
- instance
Type String The size of instance to launch.
The following arguments are optional:
- key
Name String - The key name that should be used for the instance.
- metadata
Options Property Map - The metadata options for the instance.
- name String
- The name of the launch configuration. If you leave this blank, this provider will auto-generate a unique name. Conflicts with
name_prefix. - name
Prefix String - Creates a unique name beginning with the specified prefix. Conflicts with
name. - placement
Tenancy String - The tenancy of the instance. Valid values are
defaultordedicated, see AWS's Create Launch Configuration for more details. - root
Block Property MapDevice - Customize details about the root block device of the instance. See Block Devices below for details.
- security
Groups List<String> - A list of associated security group IDS.
- spot
Price String - The maximum price to use for reserving spot instances.
- user
Data String - The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see
user_data_base64instead. - user
Data StringBase64 - Can be used instead of
user_datato pass base64-encoded binary data directly. Use this instead ofuser_datawhenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption. - vpc
Classic StringLink Id - The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg.
vpc-2730681a) - vpc
Classic List<String>Link Security Groups - The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg.
sg-46ae3d11).
Supporting Types
LaunchConfigurationEbsBlockDevice, LaunchConfigurationEbsBlockDeviceArgs
- Device
Name string - Delete
On boolTermination - Encrypted bool
- Iops int
- No
Device bool - Snapshot
Id string - Throughput int
- Volume
Size int - Volume
Type string
- Device
Name string - Delete
On boolTermination - Encrypted bool
- Iops int
- No
Device bool - Snapshot
Id string - Throughput int
- Volume
Size int - Volume
Type string
- device
Name String - delete
On BooleanTermination - encrypted Boolean
- iops Integer
- no
Device Boolean - snapshot
Id String - throughput Integer
- volume
Size Integer - volume
Type String
- device
Name string - delete
On booleanTermination - encrypted boolean
- iops number
- no
Device boolean - snapshot
Id string - throughput number
- volume
Size number - volume
Type string
- device_
name str - delete_
on_ booltermination - encrypted bool
- iops int
- no_
device bool - snapshot_
id str - throughput int
- volume_
size int - volume_
type str
- device
Name String - delete
On BooleanTermination - encrypted Boolean
- iops Number
- no
Device Boolean - snapshot
Id String - throughput Number
- volume
Size Number - volume
Type String
LaunchConfigurationEphemeralBlockDevice, LaunchConfigurationEphemeralBlockDeviceArgs
- Device
Name string - No
Device bool - Virtual
Name string
- Device
Name string - No
Device bool - Virtual
Name string
- device
Name String - no
Device Boolean - virtual
Name String
- device
Name string - no
Device boolean - virtual
Name string
- device_
name str - no_
device bool - virtual_
name str
- device
Name String - no
Device Boolean - virtual
Name String
LaunchConfigurationMetadataOptions, LaunchConfigurationMetadataOptionsArgs
- Http
Endpoint string - The state of the metadata service:
enabled,disabled. - Http
Put intResponse Hop Limit - The desired HTTP PUT response hop limit for instance metadata requests.
- Http
Tokens string - If session tokens are required:
optional,required.
- Http
Endpoint string - The state of the metadata service:
enabled,disabled. - Http
Put intResponse Hop Limit - The desired HTTP PUT response hop limit for instance metadata requests.
- Http
Tokens string - If session tokens are required:
optional,required.
- http
Endpoint String - The state of the metadata service:
enabled,disabled. - http
Put IntegerResponse Hop Limit - The desired HTTP PUT response hop limit for instance metadata requests.
- http
Tokens String - If session tokens are required:
optional,required.
- http
Endpoint string - The state of the metadata service:
enabled,disabled. - http
Put numberResponse Hop Limit - The desired HTTP PUT response hop limit for instance metadata requests.
- http
Tokens string - If session tokens are required:
optional,required.
- http_
endpoint str - The state of the metadata service:
enabled,disabled. - http_
put_ intresponse_ hop_ limit - The desired HTTP PUT response hop limit for instance metadata requests.
- http_
tokens str - If session tokens are required:
optional,required.
- http
Endpoint String - The state of the metadata service:
enabled,disabled. - http
Put NumberResponse Hop Limit - The desired HTTP PUT response hop limit for instance metadata requests.
- http
Tokens String - If session tokens are required:
optional,required.
LaunchConfigurationRootBlockDevice, LaunchConfigurationRootBlockDeviceArgs
- Delete
On boolTermination - Encrypted bool
- Iops int
- Throughput int
- Volume
Size int - Volume
Type string
- Delete
On boolTermination - Encrypted bool
- Iops int
- Throughput int
- Volume
Size int - Volume
Type string
- delete
On BooleanTermination - encrypted Boolean
- iops Integer
- throughput Integer
- volume
Size Integer - volume
Type String
- delete
On booleanTermination - encrypted boolean
- iops number
- throughput number
- volume
Size number - volume
Type string
- delete_
on_ booltermination - encrypted bool
- iops int
- throughput int
- volume_
size int - volume_
type str
- delete
On BooleanTermination - encrypted Boolean
- iops Number
- throughput Number
- volume
Size Number - volume
Type String
Import
Launch configurations can be imported using the name, e.g.,
$ pulumi import aws:ec2/launchConfiguration:LaunchConfiguration as_conf lg-123456
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
awsTerraform Provider.
published on Tuesday, Mar 10, 2026 by Pulumi
