既存のインスタンスからのパラメータを使用して Auto Scaling グループを作成する - Amazon EC2 Auto Scaling

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

既存のインスタンスからのパラメータを使用して Auto Scaling グループを作成する

重要

起動設定に関する情報は、起動設定から起動テンプレートにまだ移行していないお客様向けに提供しています。Auto Scaling グループを移行してテンプレートを起動する方法については、「起動テンプレートに移行する」を参照してください。

Auto Scaling グループを初めて作成する場合は、コンソールを使用して、既存の EC2 インスタンスから起動テンプレートを作成することをお勧めします。次に、起動テンプレートを使用して新しい Auto Scaling グループを作成します。詳しい手順については、「Amazon EC2 起動ウィザードを使用して Auto Scaling グループを作成する」を参照してください。

次の手順は、他のインスタンスを起動するためのベースとして使用する、既存のインスタンスを指定して Auto Scaling グループを作成する方法を示しています。EC2 インスタンスを作成するには、Amazon Machine Image (AMI) ID、インスタンスタイプ、キーペア、セキュリティグループなど、複数のパラメータが必要です。Amazon EC2 Auto Scaling では、スケーリングが必要な場合にユーザーに代わってインスタンスを起動するために、これらの情報もすべて使われます。この情報は、起動テンプレートまたは起動設定のいずれかに保存されます。

既存インスタンスを指定すると、同時に作成された起動設定に基づいて、Amazon EC2 Auto Scaling がインスタンスを起動する Auto Scaling グループを作成します。新しい起動設定には Auto Scaling グループと同じ名前がついていて、インスタンスからの特定の設定についての詳細が含まれます。

次の設定詳細は、特定のインスタンスから起動設定にコピーされます。

  • AMI ID

  • インスタンスタイプ

  • キーペア

  • セキュリティグループ

  • IP アドレスタイプ (パブリックまたはプライベート)

  • IAM インスタンスプロファイル (該当する場合)

  • モニタリング (true または false)

  • EBS 最適化 (true または false)

  • VPC (共有または専用) に起動する場合は、テナンシー設定

  • 該当する場合は、カーネル ID および RAM ディスク ID

  • ユーザーデータ (指定された場合)

  • スポット (最大) 料金

VPC サブネットおよびアベイラビリティーゾーンは、指定のインスタンスから Auto Scaling グループの独自のリソース定義にコピーされます。

特定されたインスタンスがプレイスメントグループ内にある場合、新しい Auto Scaling グループは、特定されたインスタンスと同じプレイスメントグループ内でインスタンスを起動します。起動設定ではプレイスメントグループの指定が許可されないため、プレイスメントグループは新しい Auto Scaling グループの PlacementGroup 属性にコピーされます。

次の設定の詳細は、特定のインスタンスからはコピーされません。

  • ストレージ: ブロックデバイス (EBS ボリュームとインスタンスストアボリューム) は、特定のインスタンスからコピーされません。代わりに、AMI 作成の一部として作成されたブロックデバイスマッピングによって、使用されるデバイスが決まります。

  • ネットワークインターフェイスの数: ネットワークインターフェイスは、特定のインスタンスからコピーされません。代わりにデフォルト設定を使用して、Amazon EC2 Auto Scaling が、プライマリネットワークインターフェイス (eth0) であるネットワークインターフェイスを 1 つ作成します。

  • インスタンスメタデータオプション: アクセス可能なメタデータ、メタデータのバージョン、およびトークンレスポンスのホップ制限の設定は、特定のインスタンスからコピーされません。代わりに、Amazon EC2 Auto Scaling はデフォルト設定を使用します。詳細については、「インスタンスメタデータオプションの設定」を参照してください。

  • ロードバランサー: 識別されたインスタンスが 1 つ以上のロードバランサーに登録されている場合、このロードバランサーの情報は新しい Auto Scaling グループのロードバランサーあるいはターゲットグループ属性にコピーされません。

  • タグ: 特定されたインスタンスにタグが指定されている場合、そのタグは新しい Auto Scaling グループの Tags 属性にはコピーされません。

前提条件

EC2 インスタンスは以下の基準を満たす必要があります。

  • インスタンスは他の Auto Scaling グループのメンバーではありません。

  • インスタンスが running 状態であること。

  • インスタンスの起動に使用した AMI は引き続き存在している必要があります。

EC2 インスタンスを使用して Auto Scaling グループを作成する (コンソール)

EC2 インスタンスから Auto Scaling グループを作成するには
  1. Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/) を開きます。

  2. ナビゲーションペインの [Instances] (インスタンス) で [Instances] (インスタンス) を選択してから、インスタンスを選択します。

  3. [Actions]、[Instance Settings]、[Attach to Auto Scaling Group] の順に選択します。

  4. [Attach to Auto Scaling group (Auto Scaling グループ にアタッチ)] ページで、[Auto Scaling Group (新しい Auto Scaling Group)] を選択し、そのグループの名前を入力して、[Attach (アタッチ)] を選択します。

    アタッチされたインスタンスは、Auto Scaling グループの一部と見なされます。新しい Auto Scaling グループは、Auto Scaling グループに指定したものと同じ名前で、新しい起動設定を使用して作成されます。Auto Scaling グループには、目的の容量と 1 の最大サイズがあります。

  5. (オプション) Auto Scaling グループの設定を編集するには、ナビゲーションペインの [Auto Scaling][Auto Scaling Groups] (Auto Scaling グループ) を選択します。新しい Auto Scaling グループの横にあるチェックボックスをオンにし、グループリストの上にある [Edit (編集)] ボタンを選択します。必要に応じて設定を変更し、[Update (更新)] を選択します。

EC2 インスタンスを使用して Auto Scaling グループを作成する (AWS CLI)

次の手順は、CLI コマンドを使用して EC2 インスタンスから Auto Scaling グループを作成する方法を示しています。

この手順では、Auto Scaling グループにインスタンスを追加しません。Auto Scaling グループを作成した後、アタッチするインスタンスに attach-instances コマンドを実行する必要があります。

開始する前に、Amazon EC2 コンソールまたは describe-instances コマンドを使用して EC2 インスタンスの ID を見つけます。

現在のインスタンスをテンプレートとして使用するには
  • 次のcreate-auto-scaling-groupコマンドを使用して、EC2 インスタンス my-asg-from-instanceから Auto Scaling グループ を作成しますi-0e69cc3f05f825f4f

    aws autoscaling create-auto-scaling-group --auto-scaling-group-name my-asg-from-instance \ --instance-id i-0e69cc3f05f825f4f --min-size 1 --max-size 2 --desired-capacity 2
Auto Scaling グループがインスタンスを起動したことを確認するには
  • 次のdescribe-auto-scaling-groupsコマンドを使用して、Auto Scaling グループが正常に作成されたことを確認します。

    aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name my-asg-from-instance

    次のレスポンスの例は、グループの希望するキャパシティーが 2 であり、グループには実行中のインスタンスが 2 つあり、起動設定の名前が my-asg-from-instance であることを示しています。

    { "AutoScalingGroups":[ { "AutoScalingGroupName":"my-asg-from-instance", "AutoScalingGroupARN":"arn", "LaunchConfigurationName":"my-asg-from-instance", "MinSize":1, "MaxSize":2, "DesiredCapacity":2, "DefaultCooldown":300, "AvailabilityZones":[ "us-west-2a" ], "LoadBalancerNames":[], "TargetGroupARNs":[], "HealthCheckType":"EC2", "HealthCheckGracePeriod":0, "Instances":[ { "InstanceId":"i-06905f55584de02da", "InstanceType":"t2.micro", "AvailabilityZone":"us-west-2a", "LifecycleState":"InService", "HealthStatus":"Healthy", "LaunchConfigurationName":"my-asg-from-instance", "ProtectedFromScaleIn":false }, { "InstanceId":"i-087b42219468eacde", "InstanceType":"t2.micro", "AvailabilityZone":"us-west-2a", "LifecycleState":"InService", "HealthStatus":"Healthy", "LaunchConfigurationName":"my-asg-from-instance", "ProtectedFromScaleIn":false } ], "CreatedTime":"2020-10-28T02:39:22.152Z", "SuspendedProcesses":[ ], "VPCZoneIdentifier":"subnet-6bea5f06", "EnabledMetrics":[ ], "Tags":[ ], "TerminationPolicies":[ "Default" ], "NewInstancesProtectedFromScaleIn":false, "ServiceLinkedRoleARN":"arn", "TrafficSources":[] } ] }
起動設定を表示するには
  • 次のdescribe-launch-configurationsコマンドを使用して、起動設定の詳細を表示します。

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

    出力例を次に示します。

    { "LaunchConfigurations":[ { "LaunchConfigurationName":"my-asg-from-instance", "LaunchConfigurationARN":"arn", "ImageId":"ami-0528a5175983e7f28", "KeyName":"my-key-pair-uswest2", "SecurityGroups":[ "sg-05eaec502fcdadc2e" ], "ClassicLinkVPCSecurityGroups":[ ], "UserData":"", "InstanceType":"t2.micro", "KernelId":"", "RamdiskId":"", "BlockDeviceMappings":[ ], "InstanceMonitoring":{ "Enabled":true }, "CreatedTime":"2020-10-28T02:39:22.321Z", "EbsOptimized":false, "AssociatePublicIpAddress":true } ] }
インスタンスを終了するには
  • 必要がなくなった場合は、インスタンスを終了できます。以下の terminate-instances コマンドで、インスタンスを終了しますi-0e69cc3f05f825f4f

    aws ec2 terminate-instances --instance-ids i-0e69cc3f05f825f4f

    Amazon EC2 インスタンスを削除すると、再起動できなくなります。削除後、ボリュームに含まれるデータは消去され、ボリューム自体はどのインスタンスにもアタッチできなくなります。インスタンスの終了の詳細については、Linux インスタンス用 Amazon EC2 ユーザーガイドの「インスタンスの終了」を参照してください。