0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ECSの自分用メモ

Posted at

自分用メモとして残す。

ECS が動作しないときに確認すべきポイント

  • 起動タイプ(EC2 or Fargate)

  • SG/NACL のネットワーク設定 (443が開いているか)

  • IAM ロールの権限

  • EC2 の場合、コンテナインスタンス /etc/ecs/ecs.config でクラスターの指定を行っているか

  • EC2 の場合、ECS Agent が動作しているか

  • カスタムAMIを使用する場合

    • 固有のデータをクリーンアップする必要がある

プロキシ

  • ECS on EC2 だとプロキシ経由で ECR からのイメージを pull できる。
    • ユースケースとしては、すでにプロキシが存在し、VPCeを設けたくない場合など
  • ECS on Fargate だとプロキシ経由で ECR イメージは pull できない
    • Fargateタスクで実行されているアプリケーションにおいては、環境変数 HTTP_PROXYを利用してプロキシ経由でアクセスすることは可能

安全なコンテナの終了方法

  • タスクが停止すると ECS エージェントは、各コンテナのエントリプロセス (Dockerfile の ENTRYPOINT、CMD) に SIGTERM シグナルを送信する。デフォルトで 30s に SIGKILL シグナルを送信する。
  • コンテナでは、エントリプロセスが全てのプロセスの親になる。
  • エントリポイントに sh を設定していると注意が必要。デフォルトでは、shell は SIGTERMシグナルを無視する。

ECS Execの方法 (ざっくり)

  • ECSExecRoleをタスク定義で設定
  • ECS Exec を有効化する(確か、新タスクを起動する必要あり)
aws ecs update-service --region <リージョン名> --cluster <クラスタ名> --service <サービス名> --enable-execute-command
  • ECS Exe でアクセスする
aws ecs execute-comand --region <リージョン名> --cluster <クラスタ名> --task <タスクID> --container <コンテナ名> --interactive --command "/bin/sh"

Blue/Greenデプロイ

Application AutoScaling と B/G デプロイを組み合わせて同時使用することは難しい。デプロイ時には一時的に Application AutoScaling は停止した方が良い

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?