Auto Scaling グループを起動テンプレートに移行する - Amazon EC2 Auto Scaling

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Auto Scaling グループを起動テンプレートに移行する

2023 年より、2022 年 12 月 31 日以降にリリースされた新しい Amazon EC2 インスタンスタイプで CreateLaunchConfiguration を呼び出すことはできなくなりました。詳細については、「Auto Scaling 起動設定」を参照してください。

Auto Scaling グループを起動設定から起動テンプレートに移行するには、次のステップを参照してください。

重要

続行する前に、起動テンプレートを操作するために必要な許可があることを確認してください。詳細については、「起動テンプレートを操作するアクセス許可」を参照してください。

ステップ 1: 起動設定を使用する Auto Scaling グループを検索する

起動設定をまだ使用している Auto Scaling グループがあるかどうかを確認するには、 を使用して次のdescribe-auto-scaling-groupsコマンドを実行します AWS CLI。REGION を に置き換えます AWS リージョン。

aws autoscaling describe-auto-scaling-groups --region REGION \ --query 'AutoScalingGroups[?LaunchConfigurationName!=`null`]'

以下は出力例です。

[ { "AutoScalingGroupName": "group-1", "AutoScalingGroupARN": "arn", "LaunchConfigurationName": "my-launch-config", "MinSize": 1, "MaxSize": 5, "DesiredCapacity": 2, "DefaultCooldown": 300, "AvailabilityZones": [ "us-west-2a", "us-west-2b", "us-west-2c" ], "LoadBalancerNames": [], "TargetGroupARNs": [], "HealthCheckType": "EC2", "HealthCheckGracePeriod": 300, "Instances": [ { "ProtectedFromScaleIn": false, "AvailabilityZone": "us-west-2a", "LaunchConfigurationName": "my-launch-config", "InstanceId": "i-05b4f7d5be44822a6", "InstanceType": "t3.micro", "HealthStatus": "Healthy", "LifecycleState": "InService" }, { "ProtectedFromScaleIn": false, "AvailabilityZone": "us-west-2b", "LaunchConfigurationName": "my-launch-config", "InstanceId": "i-0c20ac468fa3049e8", "InstanceType": "t3.micro", "HealthStatus": "Healthy", "LifecycleState": "InService" } ], "CreatedTime": "2023-03-09T22:15:11.611Z", "SuspendedProcesses": [], "VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782", "EnabledMetrics": [], "Tags": [ { "ResourceId": "group-1", "ResourceType": "auto-scaling-group", "Key": "environment", "Value": "production", "PropagateAtLaunch": true } ], "TerminationPolicies": [ "Default" ], "NewInstancesProtectedFromScaleIn": false, "ServiceLinkedRoleARN": "arn", "TrafficSources": [] }, ... additional groups ... ]

あるいは、Auto Scaling グループ名、それぞれの起動設定およびタグの名前のみを出力に表示するには、次のコマンドを実行します。

aws autoscaling describe-auto-scaling-groups --region REGION \ --query 'AutoScalingGroups[?LaunchConfigurationName!=`null`].{AutoScalingGroupName: AutoScalingGroupName, LaunchConfigurationName: LaunchConfigurationName, Tags: Tags}'

出力例を次に示します。

[ { "AutoScalingGroupName": "group-1", "LaunchConfigurationName": "my-launch-config", "Tags": [ { "ResourceId": "group-1", "ResourceType": "auto-scaling-group", "Key": "environment", "Value": "production", "PropagateAtLaunch": true } ] }, ... additional groups ... ]

フィルタリングの詳細については、「 AWS Command Line Interface ユーザーガイド」のAWS CLI 「出力のフィルタリング」を参照してください。

ステップ 2: 起動設定を起動テンプレートにコピーする

次のステップを実行して、起動設定を起動テンプレートにコピーできます。その後、それを Auto Scaling グループに追加できます。

複数の起動設定をコピーすると、同じ名前の起動テンプレートが作成されます。コピープロセス中に起動テンプレートに付けられた名前を変更するには、起動設定を 1 つずつコピーする必要があります。

注記

コピー機能は、コンソールでのみ使用できます。

起動テンプレートへ起動設定をコピーするには (コンソール)
  1. Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/) を開きます。

  2. 左のナビゲーションペインの [Auto Scaling] で、[Auto Scaling グループ] を選択します。

  3. ページの上部付近にある [起動設定] を選択します。確認を求めるプロンプトが表示されたら、[起動設定を表示] を選択して、[起動設定] ページを表示することを確認します。

  4. コピーする起動設定を選択し、[Copy to launch template (起動テンプレートにコピー)、Copy selected (選択した範囲をコピー)] を選択します。これにより、新しい起動テンプレートが、選択した起動設定と同じ名前およびオプションでセットアップされます。

  5. [New launch template name (新しい起動テンプレート名)] では、起動設定の名前 (デフォルト) を使用する、または、新しい名前を入力します。起動テンプレート名は一意である必要があります。

  6. (オプション) [新しいテンプレートを使用して Auto Scaling グループを作成] を選択します。

    このステップをスキップして、起動設定のコピーを完了することができます。新しい Auto Scaling グループを作成する必要はありません。

  7. [コピー] を選択します。

すべての起動設定を起動テンプレートにコピーするには (コンソール)
  1. Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/) を開きます。

  2. ナビゲーションペインの [Auto Scaling] で、[Launch Configurations (起動設定)] を選択します。

  3. Copy to launch template (起動テンプレートにコピー)、Copy all (すべてコピー)を選択します。これにより、現在のリージョンの各起動設定が、同じ名前およびオプションで新しい起動テンプレートにコピーされます。

  4. [コピー] を選択します。

ステップ 3: 起動テンプレートを使用するように Auto Scaling グループを更新する

起動テンプレートを作成すると、それを Auto Scaling グループに追加する準備が整います。

起動テンプレートを使用するように Auto Scaling グループを更新するには (コンソール)
  1. https://console.aws.amazon.com/ec2/ でAmazon EC2 コンソールを開き、ナビゲーションペインで [Auto Scaling グループ] を選択します。

  2. Auto Scaling グループの隣にあるチェックボックスを選択します。

    ページ下部に分割ウィンドウが開き、選択したグループの情報が表示されます。

  3. [詳細] タブで、[起動設定]、[編集] の順に選択します。

  4. 起動テンプレートに切り替えるを選択します。

  5. [Launch Template (起動テンプレート)] では、起動テンプレートを選択します。

  6. [Version (バージョン)] では、必要に応じて起動テンプレートのバージョンを選択します。起動テンプレートのバージョンを作成したら、スケールアウト時に Auto Scaling グループで起動テンプレートのデフォルトバージョンを使用するか最新バージョンを使用するかを選択できます。

  7. [更新] を選択します。

起動テンプレートを使用するように Auto Scaling グループを更新するには (AWS CLI)

次のupdate-auto-scaling-groupコマンドは、指定された Auto Scaling グループを更新して、指定された起動テンプレートの初期バージョンを使用します。

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateName=my-template-for-auto-scaling,Version='1'

CLI コマンドを使用して Auto Scaling グループを更新して起動テンプレートを使用する他の例については、「起動テンプレートを使用するように Auto Scaling グループを更新する」を参照してください。

ステップ 4: インスタンスを置き換える

起動設定を起動テンプレートに置き換えると、新しいインスタンスは、その新しい起動テンプレートを使用するようになります。既存のインスタンスは影響を受けません。

既存のインスタンスを更新するには、一度にいくつかのインスタンスを手動で置き換えるのではなく、インスタンスの更新を開始して Auto Scaling グループ内のインスタンスを置き換えることができます。詳細については、「インスタンスの更新を使用して Auto Scaling グループのインスタンスを更新する」を参照してください。グループが大きい場合、インスタンスの更新は特に便利です。

あるいは、自動スケーリングを許可して、グループの終了ポリシーに基づき既存のインスタンスを新しいインスタンスに徐々に置き換えたり、インスタンスを終了したりすることもできます。手動での終了により、グループが必要とするキャパシティーを維持するため、強制的にAuto Scaling グループが新しいインスタンスを起動します。詳細については、「Amazon EC2 ユーザーガイド」の「インスタンスの終了」を参照してください。 Amazon EC2

追加情報

詳細については、「 コンピューティングブログ」のAmazon EC2 Auto Scaling は、新しい EC2 機能のサポートを 起動設定に追加しなくなります」を参照してください。 AWS

AWS CloudFormation スタックを起動設定から起動テンプレートに移行する方法を説明するトピックについては、「」を参照してくださいスタックを起動テンプレートに移行する AWS CloudFormation