AWS::EC2::Instance LaunchTemplateSpecification - AWS CloudFormation (original) (raw)

Specifies a launch template to use when launching an Amazon EC2 instance.

You must specify the following:

For information about creating a launch template, see AWS::EC2::LaunchTemplate and Create a launch template in the Amazon EC2 User Guide. For example launch templates, see the Examples for AWS::EC2::LaunchTemplate.

Syntax

To declare this entity in your AWS CloudFormation template, use the following syntax:

JSON

{
  "LaunchTemplateId" : String,
  "LaunchTemplateName" : String,
  "Version" : String
}

YAML

  LaunchTemplateId: String
  LaunchTemplateName: String
  Version: String

Properties

LaunchTemplateId

The ID of the launch template.

You must specify either the launch template ID or the launch template name, but not both.

Required: Conditional

Type: String

Update requires: Replacement

LaunchTemplateName

The name of the launch template.

You must specify either the launch template ID or the launch template name, but not both.

Required: Conditional

Type: String

Update requires: Replacement

Version

The version number of the launch template. You must specify this property.

To specify the default version of the template, use the Fn::GetAtt intrinsic function to retrieve the DefaultVersionNumber attribute of the launch template. To specify the latest version of the template, useFn::GetAtt to retrieve the LatestVersionNumber attribute. For more information, see AWS::EC2:LaunchTemplate return values for Fn::GetAtt.

Required: No

Type: String

Update requires: Replacement

Examples

Launch an instance using a launch template

This example creates a launch template and uses it to launch a new instance.

YAML

Resources:
  myInstance:
    Type: 'AWS::EC2::Instance'
    Properties: 
      LaunchTemplate: 
        LaunchTemplateId: !Ref myLaunchTemplate
        Version: !GetAtt myLaunchTemplate.DefaultVersionNumber
  myLaunchTemplate:
    Type: 'AWS::EC2::LaunchTemplate'
    Properties:
      LaunchTemplateData:
        ImageId: ami-0a70b9d193ae8a799
        InstanceType: t2.micro
        SecurityGroupIds:
          - sg-12a4c434

See also