0

AWS で定義された ECS クラスターと、必要に応じてタスクを処理するためにインスタンスを追加/削除するために使用する Auto Scaling グループがあります。適切なタイミングで EC2 インスタンスを作成するように ASG をセットアップしましたが、手動で ECS サービスを無効/有効にしない限り、ECS クラスターに接続しません。

EC2 マシンで Amazon Linux 2 ami を使用しており、すべてが同じリージョン/アカウントなどにあります。以下にユーザー データを含めました。

#!/bin/bash 
yum update -y 
amazon-linux-extras disable docker 
amazon-linux-extras install -y ecs 
echo "ECS_CLUSTER={CLUSTERNAME}" >> /etc/ecs/ecs.config
systemctl enable --now ecs

前述のように、これにより ECS サービスがインストールされ、構成ファイルが適切に設定されますが、有効にしても実際にはマシンに接続されませんが、実行中のマシンで同じ無効化/有効化コマンドを実行すると、問題なく接続されます。私は何が欠けていますか?

4

2 に答える 2

0

まず、正しい構文は次のとおりです。

#!/usr/bin/env bash
echo "ECS_CLUSTER=CLUSTER_NAMe" >> /etc/ecs/ecs.config

構成を更新したら、ECS エージェントを再起動します。

#!/usr/bin/env bash
echo "ECS_CLUSTER=CLUSTER_NAME" >> /etc/ecs/ecs.config
sudo yum update -y ecs-init
#this will update ECS agent, better when using custom AMI
/usr/bin/docker pull amazon/amazon-ecs-agent:latest
#Restart docker and ECS agent
sudo service docker restart
sudo start ecs
于 2020-07-07T02:13:10.270 に答える