AWS::EC2::Instance
EC2 インスタンスを指定します。
インスタンスに Elastic IP アドレスがアタッチされた場合、AWS CloudFormation はそのインスタンスを更新した後、Elastic IP アドレスを再度アタッチします。スタックを更新する方法の詳細については、「AWS CloudFormation スタックの更新」を参照してください。
構文
AWS CloudFormation テンプレートでこのエンティティを宣言するには、次の構文を使用します。
JSON
{ "Type" : "AWS::EC2::Instance", "Properties" : { "AdditionalInfo" :
String
, "Affinity" :String
, "AvailabilityZone" :String
, "BlockDeviceMappings" :[ BlockDeviceMapping, ... ]
, "CpuOptions" :CpuOptions
, "CreditSpecification" :CreditSpecification
, "DisableApiTermination" :Boolean
, "EbsOptimized" :Boolean
, "ElasticGpuSpecifications" :[ ElasticGpuSpecification, ... ]
, "ElasticInferenceAccelerators" :[ ElasticInferenceAccelerator, ... ]
, "HibernationOptions" :HibernationOptions
, "HostId" :String
, "HostResourceGroupArn" :String
, "IamInstanceProfile" :String
, "ImageId" :String
, "InstanceInitiatedShutdownBehavior" :String
, "InstanceType" :String
, "Ipv6AddressCount" :Integer
, "Ipv6Addresses" :[ InstanceIpv6Address, ... ]
, "KernelId" :String
, "KeyName" :String
, "LaunchTemplate" :LaunchTemplateSpecification
, "LicenseSpecifications" :[ LicenseSpecification, ... ]
, "Monitoring" :Boolean
, "NetworkInterfaces" :[ NetworkInterface, ... ]
, "PlacementGroupName" :String
, "PrivateIpAddress" :String
, "RamdiskId" :String
, "SecurityGroupIds" :[ String, ... ]
, "SecurityGroups" :[ String, ... ]
, "SourceDestCheck" :Boolean
, "SsmAssociations" :[ SsmAssociation, ... ]
, "SubnetId" :String
, "Tags" :[ Tag, ... ]
, "Tenancy" :String
, "UserData" :String
, "Volumes" :[ Volume, ... ]
} }
YAML
Type: AWS::EC2::Instance Properties: AdditionalInfo:
String
Affinity:String
AvailabilityZone:String
BlockDeviceMappings:- BlockDeviceMapping
CpuOptions:CpuOptions
CreditSpecification:CreditSpecification
DisableApiTermination:Boolean
EbsOptimized:Boolean
ElasticGpuSpecifications:- ElasticGpuSpecification
ElasticInferenceAccelerators:- ElasticInferenceAccelerator
HibernationOptions:HibernationOptions
HostId:String
HostResourceGroupArn:String
IamInstanceProfile:String
ImageId:String
InstanceInitiatedShutdownBehavior:String
InstanceType:String
Ipv6AddressCount:Integer
Ipv6Addresses:- InstanceIpv6Address
KernelId:String
KeyName:String
LaunchTemplate:LaunchTemplateSpecification
LicenseSpecifications:- LicenseSpecification
Monitoring:Boolean
NetworkInterfaces:- NetworkInterface
PlacementGroupName:String
PrivateIpAddress:String
RamdiskId:String
SecurityGroupIds:- String
SecurityGroups:- String
SourceDestCheck:Boolean
SsmAssociations:- SsmAssociation
SubnetId:String
Tags:- Tag
Tenancy:String
UserData:String
Volumes:- Volume
プロパティ
AdditionalInfo
-
このプロパティは内部使用のために予約されています。これを使用すると、スタックは次のエラーで失敗します:
Bad property set: [Testing this property] (Service: AmazonEC2; Status Code: 400; Error Code: InvalidParameterCombination; Request ID: 0XXXXXX-49c7-4b40-8bcc-76885dcXXXXX)
。必須: いいえ
タイプ: 文字列
Update requires: Some interruptions
Affinity
-
インスタンスが専用ホストに関連付けられているかどうかを示します。常に起動時と同じホストでインスタンスを再起動する場合は、
host
を指定します。インスタンスを任意の使用可能なホストで再起動するが、最後に実行されたホストでの起動を試みる場合は (ベストエフォートベース)、default
を指定します。必須: いいえ
タイプ: 文字列
Update requires: Some interruptions
AvailabilityZone
-
インスタンスのアベイラビリティーゾーン。
指定しない場合、リージョンの負荷分散基準に基づいて、アベイラビリティーゾーンが自動的に選択されます。
このパラメータは、DescribeImageAttribute でサポートされていません。
必須: いいえ
タイプ: 文字列
Update requires: Replacement
BlockDeviceMappings
-
起動時にインスタンスにアタッチするブロックデバイスを定義するブロックデバイスマッピングのエントリ。
デフォルトでは、AMI のブロックデバイスマッピングで指定されたブロックデバイスが使用されます。AMI ブロックデバイスマッピングを上書きするには、インスタンスブロックデバイスマッピングを使用します。ルートボリュームの場合は、ボリュームサイズ、ボリュームタイプ、ボリューム暗号化設定、
DeleteOnTermination
設定のみを上書きできます。インスタンスの実行が開始した後では、アタッチした EBS ボリュームのDeleteOnTermination
設定のみを変更できます。必須: いいえ
タイプ: BlockDeviceMapping のリスト
Update requires: Some interruptions
CpuOptions
-
インスタンスの CPU オプション。
必須: いいえ
タイプ: CpuOptions
Update requires: Replacement
CreditSpecification
-
バースト可能なパフォーマンスインスタンスの CPU 使用率のクレジットオプション。有効な値は、
standard
およびunlimited
です。起動後にこの属性を変更するには、ModifyInstanceCreditSpecification を使用します。詳細については、『Amazon Elastic Compute Cloud ユーザーガイド』の「バースト可能パフォーマンスインスタンス」を参照してください。デフォルト:
standard
(T2 インスタンス)またはunlimited
(T3/T3a インスタンス)必須: いいえ
タイプ: CreditSpecification
Update requires: No interruption
DisableApiTermination
-
このパラメータを
true
に設定した場合は、Amazon EC2 コンソール、CLI、または API を使用してインスタンスを終了できません。それ以外の場合は可能です。起動後にこの属性を変更するには、ModifyInstanceAttribute を使用します。また、InstanceInitiatedShutdownBehavior
をterminate
に設定した場合は、インスタンスから shutdown コマンドを実行してインスタンスを終了できます。デフォルト:
false
必須: いいえ
タイプ: ブール値
Update requires: No interruption
EbsOptimized
-
インスタンスが Amazon EBS I/O 用に最適化されているかどうかを示します。この最適化により、Amazon EBS への専用のスループット、および最適な Amazon EBS I/O パフォーマンスを得るための最適化された設定スタックが提供されます。この最適化は、すべてのインスタンスタイプで使用できるわけではありません。EBS 最適化インスタンスをする場合は、追加料金が適用されます。
デフォルト:
false
必須: いいえ
タイプ: ブール値
Update requires: Some interruptions
ElasticGpuSpecifications
-
インスタンスに関連付ける Elastic GPU。Elastic GPU はアプリケーションのグラフィックパフォーマンスを加速化するために Windows インスタンスにアタッチできる GPU リソースです。詳細については、Amazon Elastic Compute Cloud ユーザーガイドの「Amazon EC2 Elastic GPU」を参照してください。
必須: いいえ
タイプ: ElasticGpuSpecification のリスト
Update requires: Replacement
ElasticInferenceAccelerators
-
インスタンスに関連付ける Elastic Inference アクセラレーター。Elastic Inference アクセラレーターは、深層学習 (DL) の推論ワークロードを加速するために Amazon EC2 インスタンスにアタッチできるリソースです。
同じリクエストで異なる世代のアクセラレーターを指定することはできません。
必須: いいえ
タイプ: ElasticInferenceAccelerator のリスト
Update requires: Replacement
HibernationOptions
-
インスタンスの休止が有効であるかどうかを示します。詳細については、『Amazon Elastic Compute Cloud ユーザーガイド』の「インスタンスの休止」を参照してください。
必須: いいえ
タイプ: HibernationOptions
Update requires: Replacement
HostId
-
Affinity
プロパティにホストを指定した場合は、インスタンスが関連付けられた専用ホストの ID。ID を指定しなかった場合、Amazon EC2 はアカウント内の互換性のある使用可能な任意の専用ホストでインスタンスを起動します。このタイプの起動は、ターゲットを絞らない起動と呼ばれます。ターゲットを絞らない起動の場合、インスタンスを正常に移動するには、互換性のある使用可能な専用ホストが必要です。必須: いいえ
タイプ: 文字列
Update requires: Some interruptions
HostResourceGroupArn
-
インスタンスを起動するホストリソースグループの ARN。ホストリソースグループ ARN を指定する場合は、Tenancy パラメータを省略するか、または
host
に設定します。必須: いいえ
タイプ: 文字列
Update requires: Replacement
IamInstanceProfile
-
IAM インスタンスプロファイル。プロパティ値については、Amazon EC2 API リファレンスの「IamInstanceProfileSpecification」を参照してください。
必須: いいえ
タイプ: 文字列
Update requires: No interruption
ImageId
-
AMI の ID。AMI ID はインスタンスを起動するために必要であり、ここでまたは起動テンプレートで指定する必要があります。
必須: 条件付き
タイプ: 文字列
Update requires: Replacement
InstanceInitiatedShutdownBehavior
-
インスタンスからシャットダウンを開始するときに、インスタンスを停止または終了するかどうかを示します (システムシャットダウンを行うオペレーションシステムコマンドを使用)。
デフォルト:
stop
必須: いいえ
タイプ: 文字列
許可された値:
stop | terminate
Update requires: No interruption
InstanceType
-
インスタンスタイプ。詳細については、『Amazon Elastic Compute Cloud ユーザーガイド』の「インスタンスタイプ」を参照してください。
デフォルト:
m1.small
必須: いいえ
タイプ: 文字列
許可された値:
a1.2xlarge | a1.4xlarge | a1.large | a1.medium | a1.metal | a1.xlarge | c1.medium | c1.xlarge | c3.2xlarge | c3.4xlarge | c3.8xlarge | c3.large | c3.xlarge | c4.2xlarge | c4.4xlarge | c4.8xlarge | c4.large | c4.xlarge | c5.12xlarge | c5.18xlarge | c5.24xlarge | c5.2xlarge | c5.4xlarge | c5.9xlarge | c5.large | c5.metal | c5.xlarge | c5a.12xlarge | c5a.16xlarge | c5a.24xlarge | c5a.2xlarge | c5a.4xlarge | c5a.8xlarge | c5a.large | c5a.xlarge | c5ad.12xlarge | c5ad.16xlarge | c5ad.24xlarge | c5ad.2xlarge | c5ad.4xlarge | c5ad.8xlarge | c5ad.large | c5ad.xlarge | c5d.12xlarge | c5d.18xlarge | c5d.24xlarge | c5d.2xlarge | c5d.4xlarge | c5d.9xlarge | c5d.large | c5d.metal | c5d.xlarge | c5n.18xlarge | c5n.2xlarge | c5n.4xlarge | c5n.9xlarge | c5n.large | c5n.xlarge | c6g.12xlarge | c6g.16xlarge | c6g.2xlarge | c6g.4xlarge | c6g.8xlarge | c6g.large | c6g.medium | c6g.metal | c6g.xlarge | c6gd.12xlarge | c6gd.16xlarge | c6gd.2xlarge | c6gd.4xlarge | c6gd.8xlarge | c6gd.large | c6gd.medium | c6gd.metal | c6gd.xlarge | cc1.4xlarge | cc2.8xlarge | cg1.4xlarge | cr1.8xlarge | d2.2xlarge | d2.4xlarge | d2.8xlarge | d2.xlarge | f1.16xlarge | f1.2xlarge | f1.4xlarge | g2.2xlarge | g2.8xlarge | g3.16xlarge | g3.4xlarge | g3.8xlarge | g3s.xlarge | g4dn.12xlarge | g4dn.16xlarge | g4dn.2xlarge | g4dn.4xlarge | g4dn.8xlarge | g4dn.metal | g4dn.xlarge | h1.16xlarge | h1.2xlarge | h1.4xlarge | h1.8xlarge | hi1.4xlarge | hs1.8xlarge | i2.2xlarge | i2.4xlarge | i2.8xlarge | i2.xlarge | i3.16xlarge | i3.2xlarge | i3.4xlarge | i3.8xlarge | i3.large | i3.metal | i3.xlarge | i3en.12xlarge | i3en.24xlarge | i3en.2xlarge | i3en.3xlarge | i3en.6xlarge | i3en.large | i3en.metal | i3en.xlarge | inf1.24xlarge | inf1.2xlarge | inf1.6xlarge | inf1.xlarge | m1.large | m1.medium | m1.small | m1.xlarge | m2.2xlarge | m2.4xlarge | m2.xlarge | m3.2xlarge | m3.large | m3.medium | m3.xlarge | m4.10xlarge | m4.16xlarge | m4.2xlarge | m4.4xlarge | m4.large | m4.xlarge | m5.12xlarge | m5.16xlarge | m5.24xlarge | m5.2xlarge | m5.4xlarge | m5.8xlarge | m5.large | m5.metal | m5.xlarge | m5a.12xlarge | m5a.16xlarge | m5a.24xlarge | m5a.2xlarge | m5a.4xlarge | m5a.8xlarge | m5a.large | m5a.xlarge | m5ad.12xlarge | m5ad.16xlarge | m5ad.24xlarge | m5ad.2xlarge | m5ad.4xlarge | m5ad.8xlarge | m5ad.large | m5ad.xlarge | m5d.12xlarge | m5d.16xlarge | m5d.24xlarge | m5d.2xlarge | m5d.4xlarge | m5d.8xlarge | m5d.large | m5d.metal | m5d.xlarge | m5dn.12xlarge | m5dn.16xlarge | m5dn.24xlarge | m5dn.2xlarge | m5dn.4xlarge | m5dn.8xlarge | m5dn.large | m5dn.xlarge | m5n.12xlarge | m5n.16xlarge | m5n.24xlarge | m5n.2xlarge | m5n.4xlarge | m5n.8xlarge | m5n.large | m5n.xlarge | m6g.12xlarge | m6g.16xlarge | m6g.2xlarge | m6g.4xlarge | m6g.8xlarge | m6g.large | m6g.medium | m6g.metal | m6g.xlarge | m6gd.12xlarge | m6gd.16xlarge | m6gd.2xlarge | m6gd.4xlarge | m6gd.8xlarge | m6gd.large | m6gd.medium | m6gd.metal | m6gd.xlarge | p2.16xlarge | p2.8xlarge | p2.xlarge | p3.16xlarge | p3.2xlarge | p3.8xlarge | p3dn.24xlarge | r3.2xlarge | r3.4xlarge | r3.8xlarge | r3.large | r3.xlarge | r4.16xlarge | r4.2xlarge | r4.4xlarge | r4.8xlarge | r4.large | r4.xlarge | r5.12xlarge | r5.16xlarge | r5.24xlarge | r5.2xlarge | r5.4xlarge | r5.8xlarge | r5.large | r5.metal | r5.xlarge | r5a.12xlarge | r5a.16xlarge | r5a.24xlarge | r5a.2xlarge | r5a.4xlarge | r5a.8xlarge | r5a.large | r5a.xlarge | r5ad.12xlarge | r5ad.16xlarge | r5ad.24xlarge | r5ad.2xlarge | r5ad.4xlarge | r5ad.8xlarge | r5ad.large | r5ad.xlarge | r5d.12xlarge | r5d.16xlarge | r5d.24xlarge | r5d.2xlarge | r5d.4xlarge | r5d.8xlarge | r5d.large | r5d.metal | r5d.xlarge | r5dn.12xlarge | r5dn.16xlarge | r5dn.24xlarge | r5dn.2xlarge | r5dn.4xlarge | r5dn.8xlarge | r5dn.large | r5dn.xlarge | r5n.12xlarge | r5n.16xlarge | r5n.24xlarge | r5n.2xlarge | r5n.4xlarge | r5n.8xlarge | r5n.large | r5n.xlarge | r6g.12xlarge | r6g.16xlarge | r6g.2xlarge | r6g.4xlarge | r6g.8xlarge | r6g.large | r6g.medium | r6g.metal | r6g.xlarge | r6gd.12xlarge | r6gd.16xlarge | r6gd.2xlarge | r6gd.4xlarge | r6gd.8xlarge | r6gd.large | r6gd.medium | r6gd.metal | r6gd.xlarge | t1.micro | t2.2xlarge | t2.large | t2.medium | t2.micro | t2.nano | t2.small | t2.xlarge | t3.2xlarge | t3.large | t3.medium | t3.micro | t3.nano | t3.small | t3.xlarge | t3a.2xlarge | t3a.large | t3a.medium | t3a.micro | t3a.nano | t3a.small | t3a.xlarge | t4g.2xlarge | t4g.large | t4g.medium | t4g.micro | t4g.nano | t4g.small | t4g.xlarge | u-12tb1.metal | u-18tb1.metal | u-24tb1.metal | u-6tb1.metal | u-9tb1.metal | x1.16xlarge | x1.32xlarge | x1e.16xlarge | x1e.2xlarge | x1e.32xlarge | x1e.4xlarge | x1e.8xlarge | x1e.xlarge | z1d.12xlarge | z1d.2xlarge | z1d.3xlarge | z1d.6xlarge | z1d.large | z1d.metal | z1d.xlarge
Update requires: Some interruptions
Ipv6AddressCount
-
[EC2-VPC] プライマリネットワークインターフェイスに関連付ける IPv6 アドレスの数。Amazon EC2 ではサブネットの範囲から IPv6 アドレスが選択されます。同じリクエストで、このオプションと、特定の IPv6 アドレスを割り当てるオプションを指定することはできません。起動するインスタンスの最小数を指定した場合は、このオプションを指定できます。
同じリクエストでこのオプションとネットワークインターフェイスオプションを指定することはできません。
必須: いいえ
タイプ: 整数
Update requires: Replacement
Ipv6Addresses
-
[EC2-VPC] プライマリネットワークインターフェイスに関連付けるサブネットの範囲の IPv6 アドレス。同じリクエストで、このオプションと、多数の IPv6 アドレスを割り当てるオプションを指定することはできません。起動するインスタンスの最小数を指定した場合は、このオプションを指定できません。
同じリクエストでこのオプションとネットワークインターフェイスオプションを指定することはできません。
必須: いいえ
タイプ: InstanceIpv6Address のリスト
Update requires: Replacement
KernelId
-
カーネルの ID。
重要 カーネルと RAM ディスクではなく PV-GRUB を使用することをお勧めします。詳細については、Amazon Elastic Compute Cloud ユーザーガイドの「PV-GRUB」を参照してください。
必須: いいえ
タイプ: 文字列
Update requires: Some interruptions
KeyName
-
キーペアの名前。CreateKeyPair または ImportKeyPair を使用してキーペアを作成できます。
重要 キーペアを指定しない場合は、ユーザーが別の方法でログインすることを許可するように設定された AMI を選択した場合を除き、インスタンスに接続することはできません。
必須: いいえ
タイプ: 文字列
Update requires: Replacement
LaunchTemplate
-
インスタンスの起動に使用する起動テンプレート。AWS CloudFormation テンプレートで指定したパラメータはすべて、起動テンプレート内の同じパラメータを上書きします。起動テンプレートの名前または ID のいずれかを指定できますが、両方を指定することはできません。
必須: いいえ
タイプ: LaunchTemplateSpecification
Update requires: Replacement
LicenseSpecifications
-
ライセンス設定。
必須: いいえ
タイプ: LicenseSpecification のリスト
Update requires: Replacement
Monitoring
-
インスタンスに対して詳細モニタリングを有効にするかどうかを指定します。
必須: いいえ
タイプ: ブール値
Update requires: No interruption
NetworkInterfaces
-
インスタンスに関連付るネットワークインターフェイス。
注記 ネットワークインターフェイスを示すためにこのプロパティを使用する場合、新しいインターフェイスを貼り付ける前に初期のインターフェイスを終了し、正しく機能するためにそのインスタンスの更新ができるようにしてください。
このリソースにパブリック IP アドレスが割り当てられており、同じテンプレートに定義されている VPC が関連付けられている場合は、DependsOn 属性を使用して VPC ゲートウェイのアタッチメントへの依存関係を宣言する必要があります。
必須: いいえ
タイプ: NetworkInterface のリスト
Update requires: Replacement
PlacementGroupName
-
起動したインスタンスの配置先となる既存のプレイスメントグループの名前 (クラスターインスタンスの場合)。
必須: いいえ
タイプ: 文字列
Update requires: Replacement
PrivateIpAddress
-
[EC2-VPC] プライマリ IPv4 アドレス。サブネットの IPv4 アドレス範囲の値を指定する必要があります。
プライマリとして指定できるプライベート IP アドレスは 1 つだけです。ネットワークインターフェイス仕様でプライベート IP アドレスをプライマリ IP アドレスとして指定するオプションを指定した場合、このオプションは指定できません。リクエストで複数のインスタンスを起動している場合は、このオプションを指定できません。
同じリクエストでこのオプションとネットワークインターフェイスオプションを指定することはできません。
置き換えが要求される更新をインスタンスに対して行った場合は、新しいプライベート IP アドレスを割り当てる必要があります。置き換え時は、新しいインスタンスが AWS CloudFormation によって作成されます。ただし、スタックが正常に更新されるまで古いインスタンスは削除されません。スタックの更新に失敗した場合、AWS CloudFormation は、以前正常に動作していたときの状態にスタックをロールバックするために、古いインスタンスを使用します。古いインスタンスと新しいインスタンスに同じプライベート IP アドレスを割り当てることはできません。
必須: いいえ
タイプ: 文字列
Update requires: Replacement
RamdiskId
-
選択する RAM ディスクの ID。一部のカーネルでは起動時に別途ドライバーが必要となります。RAM ディスクを指定する必要があるかどうかについては、カーネルの要件を確認してください。カーネル要件を確認するには、AWS リソースセンターでカーネル ID を検索します。
重要 カーネルと RAM ディスクではなく PV-GRUB を使用することをお勧めします。詳細については、Amazon Elastic Compute Cloud ユーザーガイドの「PV-GRUB」を参照してください。
必須: いいえ
タイプ: 文字列
Update requires: Some interruptions
SecurityGroupIds
-
セキュリティグループの ID。CreateSecurityGroup を使用してセキュリティグループを作成できます。
ネットワークインターフェイスを指定する場合、ネットワークインターフェイスの一部としてセキュリティグループを指定する必要があります。
必須: 条件付き
タイプ: 文字列のリスト
Update requires: Some interruptions
SecurityGroups
-
[EC2-Classic、デフォルト VPC] セキュリティグループの名前。デフォルト以外の VPC の場合は、代わりにセキュリティグループ ID を使用する必要があります。
同じリクエストでこのオプションとネットワークインターフェイスオプションを指定することはできません。このリストには、既存の Amazon EC2 セキュリティグループの名前のほか、テンプレートで作成した AWS::EC2::SecurityGroup リソースのリファレンスを含めることもできます。
デフォルト: Amazon EC2 はデフォルトのセキュリティグループを使用します。
必須: いいえ
タイプ: 文字列のリスト
Update requires: Replacement
SourceDestCheck
-
VPC で起動されたインスタンスが NAT を実行できるようにするかどうかを指定します。これにより、インスタンスの送信元/送信先チェックを有効にするかどうかを制御します。
true
はチェックが有効であることを示し、false
は無効であることを示します。インスタンスが NAT を実行するには、値がfalse
である必要があります。詳細については、Amazon Virtual Private Cloud ユーザーガイドの「NAT インスタンス」を参照してください。必須: いいえ
タイプ: ブール値
Update requires: No interruption
SsmAssociations
-
このインスタンスに関連付ける AWS Systems Manager の SSM ドキュメントとパラメータ値。このプロパティを使用するには、インスタンスの IAM インスタンスプロファイルロールを指定する必要があります。詳細については、AWS Systems Manager ユーザーガイドの「Systems Manager のインスタンスプロファイルを作成する」を参照してください。
注記 現在のところ、インスタンスには 1 個のドキュメントのみ関連付けることができます。
必須: いいえ
タイプ: SsmAssociation のリスト
Update requires: No interruption
SubnetId
-
[EC2-VPC] インスタンスを起動するサブネットの ID。
ネットワークインターフェイスを指定する場合、ネットワークインターフェイスの一部としてサブネットを指定する必要があります。
必須: いいえ
タイプ: 文字列
Update requires: Replacement
Tags
-
インスタンスに追加するタグ。これらのタグは、ルートボリュームなどの EBS ボリュームには適用されません。AWS CloudFormation は、インスタンスの起動後にこれらのタグを追加します。
必須: いいえ
タイプ: Tag のリスト
Update requires: No interruption
Tenancy
-
インスタンスのテナンシー (インスタンスが VPC で実行されている場合)。テナンシーが
dedicated
であるインスタンスは、シングルテナントのハードウェアで実行されます。必須: いいえ
タイプ: 文字列
許可された値:
dedicated | default | host
Update requires: Some interruptions
UserData
-
インスタンスで利用可能なユーザーデータ。詳細については、「Linux インスタンスでの起動時のコマンドの実行」 (Linux)、および「ユーザーデータの追加」 (Windows) を参照してください。コマンドラインツールを使用している場合は、base64 エンコードが自動的に実行され、ファイルからテキストを読み込むことができます。それ以外の場合は、base64 でエンコードされたテキストを指定する必要があります。ユーザーデータのサイズの上限は 16 KB です。
必須: いいえ
タイプ: 文字列
Update requires: Some interruptions
Volumes
-
インスタンスにアタッチするボリューム。
必須: いいえ
タイプ: Volume のリスト
Update requires: No interruption
戻り値
Ref
インスタンス ID を このリソースの論理 ID を組み込みの Ref
関数に渡すと、Ref
は次を返します: 。例: i-1234567890abcdef0
。
For more information about using the Ref
function, see Ref.
Fn::GetAtt
Fn::GetAtt
組み込み関数は、このタイプの指定された属性の値を返します。以下には、利用可能な属性とサンプル戻り値のリストが示されます。
Fn::GetAtt
組み込み関数の使用方法の詳細については、「Fn::GetAtt」を参照してください。
AvailabilityZone
-
指定したインスタンスを起動するアベイラビリティーゾーン。例:
us-east-1b
。特定のリージョンに該当するすべてのアベイラビリティーゾーンのリストを取得するには、Fn::GetAZs 組み込み関数を使用します。
PrivateDnsName
-
指定するインスタンスのプライベート DNS 名。例:
ip-10-24-34-0.ec2.internal
。 PrivateIp
-
指定するインスタンスのプライベート IP アドレス。例:
10.24.34.0
。 PublicDnsName
-
指定するインスタンスのパブリック DNS 名。例:
ec2-107-20-50-45.compute-1.amazonaws.com
。 PublicIp
-
指定するインスタンスのパブリック IP アドレス。例:
192.0.2.0
。
例
EBS ブロックデバイスマッピングを持つ EC2 インスタンス
JSON
"MyEC2Instance" : { "Type" : "AWS::EC2::Instance", "Properties" : { "ImageId" : "ami-79fd7eee", "KeyName" : "testkey", "BlockDeviceMappings" : [ { "DeviceName" : "/dev/sdm", "Ebs" : { "VolumeType" : "io1", "Iops" : "200", "DeleteOnTermination" : "false", "VolumeSize" : "20" } }, { "DeviceName" : "/dev/sdk", "NoDevice" : {} } ] } }
YAML
MyEC2Instance: Type: AWS::EC2::Instance Properties: ImageId: "ami-79fd7eee" KeyName: "testkey" BlockDeviceMappings: - DeviceName: "/dev/sdm" Ebs: VolumeType: "io1" Iops: "200" DeleteOnTermination: "false" VolumeSize: "20" - DeviceName: "/dev/sdk" NoDevice: {}
パブリック IP アドレスの自動割り当て
パブリック IP アドレスをネットワークインターフェイスと関連付けることができるのは、デバイスインデックスが 0
のものであり、新しい (既存のものではない) ネットワークインターフェイスの場合のみです。
JSON
"Ec2Instance" : { "Type" : "AWS::EC2::Instance", "Properties" : { "ImageId" : { "Fn::FindInMap" : [ "RegionMap", { "Ref" : "AWS::Region" }, "AMI" ]}, "KeyName" : { "Ref" : "KeyName" }, "NetworkInterfaces": [ { "AssociatePublicIpAddress": "true", "DeviceIndex": "0", "GroupSet": [{ "Ref" : "myVPCEC2SecurityGroup" }], "SubnetId": { "Ref" : "PublicSubnet" } } ] } }
YAML
Ec2Instance: Type: AWS::EC2::Instance Properties: ImageId: Fn::FindInMap: - "RegionMap" - Ref: "AWS::Region" - "AMI" KeyName: Ref: "KeyName" NetworkInterfaces: - AssociatePublicIpAddress: "true" DeviceIndex: "0" GroupSet: - Ref: "myVPCEC2SecurityGroup" SubnetId: Ref: "PublicSubnet"
以下の資料も参照してください。
-
Amazon EC2 API リファレンスの「RunInstances」
-
Amazon EC2 API リファレンスの「EBS 最適化インスタンス」