AWSのアーキテクチャについて、調べていてよく分からなかったの個人的なメモ。
Amazon FargateはAmazon ECS (on EC2)と何が違うのか?
ECSはコンテナ(サーバ)を動かすためのオーケケスレーションサービス。
EC2などの稼働用のサーバが必要である。したがって、
・「ECS on EC2」(EC2上でECSを稼働させる)
・「ECS on Fargete」(Fargete上でECSを稼働させる)
ということを行う必要がある。
Fargateはフルマネージドなコンテナ実行環境である
FargeteはOSやインフラ基盤をAWSがフルマネージドで管理するサーバレースなコンテナ実行環境を提供してくれるもの。
しかし、Fargete単体でコンテナは動かせない。
ECSやEKSからの支持でコンテナを実行することができる。
ECS/EKSが司令塔になり、コンテナをEC2やFargateで稼働させる
つまり「ECS」 → 「ECS on EC2」 , 「ECS on Fargate」ということ。
ECSは司令塔(コントロールプレーン)と命令実行のエージェント(データプレーン)で動いている。
補足:Fargateはコンテナ以外の実行が可能か?
→ いいえ
コンテナ実行専用のサーバレス基盤でEC2に比べて汎用性が低い。
補足:Fargeteを使用するメリットは?
サーバ管理から開放されてOSのパッチをあてる等の手間が不要。
使った分だけ課金される合理的なサービスになっている。
スケーラブルなタスクの場合は条件次第でFargateの方が安くできる可能性もある。
(が、当然ながら基本的にFargateの方が高くつく。だいたい1.2倍前後)
コメント