Amazon ECS 最適化 AMI で ECS インスタンスを起動するにはどうすればよいですか?

最終更新日: 2022 年 4 月 26 日

Amazon Elastic Container Service (Amazon ECS) 向けに最適化された Amazon マシンイメージ (AMI) でインスタンスを起動したいと考えています。その方法を教えてください。

簡単な説明

Amazon ECS 最適化 AMI を起動するには、次のオプションから選択できます。

  • Amazon Elastic Compute Cloud (Amazon EC2) コンソールから Amazon ECS 最適化 AMI を使用して Amazon ECS 最適化コンテナインスタンスを起動する
  • Amazon ECS に最適化された AMI の作成を自動化する

解決方法

Amazon ECS に最適化された AMI を使用して Amazon ECS に最適化されたコンテナインスタンスを起動する

  1. Amazon EC2 コンソールを開きます。
  2. [Create Instance] (インスタンスの作成) セクションで、[Launch Instance] (インスタンスの起動) を選択します。
  3. 左側のナビゲーションペインで [AWS Marketplace] をクリックします。次に、検索バーに「ecs-optimized」と入力します。
  4. 必要性に基づいて、以下の AMI バージョンのいずれかを選択します。Amazon Linux AMI、Amazon Linux 2 AMI、Windows Server 2016、Amazon Linux 2 AMI (ARM)
    重要: Amazon ECS に最適化されたインスタンスを Amazon ECS クラスターに参加させるには、「Amazon ECS Linux コンテナインスタンスの起動」を参照してください。

Amazon ECS に最適化された AMI の作成を自動化する

AWS Systems Manager パラメータを使用して、Amazon ECS に最適化された AMI メタデータを自動化して取得します。

次の例では、image_id サブパラメータは、us-east-1 内の Amazon Linux EC2 に最適化された現在の推奨 AMI バージョンに対してのみマシンイメージ AMI ID を返します。

aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux/recommended/image_id --region us-east-1 --query "Parameters[0].Value"

AMI ID を使用して、us-east-1 で Amazon Linux コンテナインスタンスを起動することができます。また、コマンドを変更して、特定のバージョンや AWS リージョンのマシンイメージを返すようにすることもできます。

重要: SSM パラメータを使用するには、最新バージョンの AWS Command Line Interface (AWS CLI) を実行してください。

SSM パラメータを AWS CloudFormation テンプレートの入力パラメータとして使用できます。以下の例をご覧ください。

AWSTemplateFormatVersion: '2010-09-09'
Parameters:
  ImageId:
    Type: AWS::SSM::Parameter::Value<AWS::EC2::Image::Id>
    Description: Use an Image from SSM Parameter Store
    Default: /aws/service/ecs/optimized-ami/amazon-linux-2/recommended/image_id
Resources:
  EC2Instance:
    Type: AWS::EC2::Instance
    Properties:
      InstanceType: t3.micro
      SecurityGroups: [!Ref 'EC2SecurityGroup']
      ImageId: !Ref ImageId
  EC2SecurityGroup:
    Type: AWS::EC2::SecurityGroup
    Properties:
      GroupDescription: SSH access
      SecurityGroupIngress:
      - IpProtocol: tcp
        FromPort: '22'
        ToPort: '22'
        CidrIp: 0.0.0.0/0

この記事は役に立ちましたか。


請求に関するサポートまたは技術サポートが必要ですか?