Amazon EC2 Auto Scaling (日本語)
ユーザーガイド

EC2 インスタンスを使用した起動設定の作成

Amazon EC2 Auto Scaling には、実行中の EC2 インスタンスの属性を使用して起動設定を作成するオプションが用意されています。

ヒント

EC2 インスタンスから Auto Scaling グループを直接作成できます。この機能を使用すると、Amazon EC2 Auto Scaling が起動設定を自動的に作成します。

指定されたインスタンスに起動設定で現在サポートされていないプロパティがある場合、Auto Scaling グループによって起動されるインスタンスは、元の EC2 インスタンスと同じにならない場合があります。

起動設定を新しく作成することと、既存の EC2 インスタンスから起動設定を作成することには違いがあります。起動設定をゼロから作成するときは、イメージ ID、インスタンスタイプ、オプションリソース(ストレージデバイスなど)、オプション設定(モニタリングなど)を指定します。実行中のインスタンスから起動設定を作成すると、Amazon EC2 Auto Scaling は指定されたインスタンスから起動設定の属性を取得します。属性は、インスタンスが起動された AMI のブロックデバイスマッピングからも取得されますが、起動後に追加されたブロックデバイスは無視されます。

実行中のインスタンスを使用して起動設定を作成するときは、同じリクエストの一部としてそれらを指定することによって、次の属性を変更できます。AMI、ブロックデバイス、キーペア、インスタンスプロファイル、インスタンスタイプ、カーネル、モニタリング、プレイスメントテナンシー、ラムディスク、セキュリティグループ、スポット料金、ユーザーデータ、インスタンスにパブリック IP アドレスが関連付けられているかどうか、インスタンスが EBS で最適化されているかどうか。

次の例では、EC2 インスタンスから起動設定を作成する方法を示します。

EC2 インスタンスを使用した起動設定の作成

既存の EC2 インスタンスの属性を使用して起動設定を作成するには、インスタンスの ID を指定します。

重要

指定したインスタンスを起動するために使用される AMI がまだ存在する必要があります。

EC2 インスタンスから起動設定を作成する (コンソール)

コンソールを使用して実行中の EC2 インスタンスから起動設定と Auto Scaling グループを作成し、新しい Auto Scaling グループにインスタンスを追加できます。詳細については、「Auto Scaling グループへの EC2 インスタンスのアタッチ」を参照してください。

EC2 インスタンスから起動設定を作成する (AWS CLI)

インスタンスから、そのインスタンスと同じ属性を使用して起動設定を作成するには、次の create-launch-configuration コマンドを使用します。起動後に追加されたブロックデバイスはすべて無視されます。

aws autoscaling create-launch-configuration --launch-configuration-name my-lc-from-instance --instance-id i-a8e09d9c

次の describe-launch-configurations コマンドを使用すると、起動設定を記述し、その属性がインスタンスの属性と一致することを確認できます。

aws autoscaling describe-launch-configurations --launch-configuration-names my-lc-from-instance

以下に、応答の例を示します。

{ "LaunchConfigurations": [ { "UserData": null, "EbsOptimized": false, "LaunchConfigurationARN": "arn", "InstanceMonitoring": { "Enabled": false }, "ImageId": "ami-05355a6c", "CreatedTime": "2014-12-29T16:14:50.382Z", "BlockDeviceMappings": [], "KeyName": "my-key-pair", "SecurityGroups": [ "sg-8422d1eb" ], "LaunchConfigurationName": "my-lc-from-instance", "KernelId": "null", "RamdiskId": null, "InstanceType": "t1.micro", "AssociatePublicIpAddress": true } ] }

インスタンスから起動設定を作成し、ブロックデバイスをオーバーライドする (AWS CLI)

Amazon EC2 Auto Scaling は、デフォルトで、指定された EC2 インスタンスの属性を使用して起動設定を作成します。ただし、インスタンスではなく、インスタンスの起動に使用された AMI のブロックデバイスが使用されます。起動設定にブロックデバイスを追加するには、起動設定のブロックデバイスマッピングをオーバーライドします。

重要

指定したインスタンスを起動するために使用される AMI がまだ存在する必要があります。

起動設定を作成し、ブロックデバイスをオーバーライドする

EC2 インスタンスとカスタムブロックデバイスマッピングを使用して起動設定を作成するには、次の create-launch-configuration コマンドを使用します。

aws autoscaling create-launch-configuration --launch-configuration-name my-lc-from-instance-bdm --instance-id i-a8e09d9c \ --block-device-mappings "[{\"DeviceName\":\"/dev/sda1\",\"Ebs\":{\"SnapshotId\":\"snap-3decf207\"}},{\"DeviceName\":\"/dev/sdf\",\"Ebs\":{\"SnapshotId\":\"snap-eed6ac86\"}}]"

起動設定を記述し、それがカスタムブロックデバイスマッピングを使用していることを確認するには、次の describe-launch-configurations コマンドを使用します。

aws autoscaling describe-launch-configurations --launch-configuration-names my-lc-from-instance-bdm

以下の応答例は、起動設定の詳細を表しています。

{ "LaunchConfigurations": [ { "UserData": null, "EbsOptimized": false, "LaunchConfigurationARN": "arn", "InstanceMonitoring": { "Enabled": false }, "ImageId": "ami-c49c0dac", "CreatedTime": "2015-01-07T14:51:26.065Z", "BlockDeviceMappings": [ { "DeviceName": "/dev/sda1", "Ebs": { "SnapshotId": "snap-3decf207" } }, { "DeviceName": "/dev/sdf", "Ebs": { "SnapshotId": "snap-eed6ac86" } } ], "KeyName": "my-key-pair", "SecurityGroups": [ "sg-8637d3e3" ], "LaunchConfigurationName": "my-lc-from-instance-bdm", "KernelId": null, "RamdiskId": null, "InstanceType": "t1.micro", "AssociatePublicIpAddress": true } ] }

起動設定を作成し、インスタンスタイプをオーバーライドする (AWS CLI)

Amazon EC2 Auto Scaling は、デフォルトで、指定された EC2 インスタンスの属性を使用して起動設定を作成します。要件によっては、インスタンスの属性をオーバーライドし、必要な値を使用する場合があります。たとえば、インスタンスタイプをオーバーライドできます。

重要

指定したインスタンスを起動するために使用される AMI がまだ存在する必要があります。

起動設定を作成し、インスタンスタイプをオーバーライドする

EC2 インスタンスを使用して起動設定を作成し、インスタンスタイプをインスタンスのもの (たとえば t2.medium) とは異なる値 (たとえば t2.micro) に変更するには、次の create-launch-configuration コマンドを使用します。

aws autoscaling create-launch-configuration --launch-configuration-name my-lc-from-instance-changetype \ --instance-id i-a8e09d9c --instance-type t2.medium

起動設定を記述し、インスタンスタイプがオーバーライドされたことを確認するには、次の describe-launch-configurations コマンドを使用します。

aws autoscaling describe-launch-configurations --launch-configuration-names my-lc-from-instance-changetype

以下の応答例は、起動設定の詳細を表しています。

{ "LaunchConfigurations": [ { "UserData": null, "EbsOptimized": false, "LaunchConfigurationARN": "arn", "InstanceMonitoring": { "Enabled": false }, "ImageId": "ami-05355a6c", "CreatedTime": "2014-12-29T16:14:50.382Z", "BlockDeviceMappings": [], "KeyName": "my-key-pair", "SecurityGroups": [ "sg-8422d1eb" ], "LaunchConfigurationName": "my-lc-from-instance-changetype", "KernelId": "null", "RamdiskId": null, "InstanceType": "t2.medium", "AssociatePublicIpAddress": true } ] }