aws ecsとは
aws ecsとはコンテナ化されたアプリケーションを簡単にデプロイ、管理、スケールすることができることのサービスである。
コンテナとは
アプリケーションとそれに依存関係があるものを1つにまとめてどの環境でも動くようにするようにした技術のこと。
コンテナのメリット
開発環境の統一
コンテナはホストマシンの影響を受けないため、ホストマシンによる開発環境の違いがなくなる。
スケーラビリティ
コンテナを増やすだけで簡単にアプリをスケールすることができる。
CICDのとの互換性
コンテナをそのままテストし、そのまま本番環境にデプロイできる。
スケーリングとは
システムの利用者の数に応じて、サービスの規模を拡大・縮小することができる技術のことである。
(スケーラビリティ
=スケールのしやすさ
)
コンテナオーケストレーションとは
どのコンテナをどのサーバーに配置するのかを自動で管理・運用してくれるサービスのこと。
ECSの基本構造
Clusterとは
TaskとServiceの集合体のこと。
Serviceとは
Serviceの役割
・Taskの維持管理
・スケーリング
・負荷分散
・アップデートとデプロイ
Taskとは
コンテナをデプロイするための最小単位のこと。
必ずしもServiceに属さなくてもいい。
Task定義とは
Taskを作成するための設計書のこと。
EC2とFargateの違い
EC2とは
サーバー管理が必要
OSや設定の自由度が高い
Fargateとは
サーバーレスのため管理が簡単
OSや設定の自由度が低い
ECRとは
コンテナイメージを格納・管理・デプロイするためのサービス
コンテナイメージレジストリの一種
コンテナイメージレジストリとは
コンテナイメージのバージョン管理やアクセス管理のサービスのこと