AWS Fargateに関連するキーワード

AWS Fargateについて


Fargateとは

Fargate を使用する目的は、アプリケーションの構築に集中する為です。Fargate では、サーバーのプロビジョンと管理が要となります。他にアプリケーションごとにリソースを指定してその分のみ料金を支払うことができたり、設計段階からのアプリケーション分離によりセキュリティを強化することができます。

Fargate では、インスタンスの選択やクラスター容量のスケーリングなしに、適切なコンピューティング容量が割り当てられます。お金は、コンテナの実行に必要なリソースの分のみを支払うため、オーバープロビジョニングや追加のサーバー料金は一切発生しません。Fargate による各タスクおよび各ポッドの実行には、独自のカーネルとそれぞれ独立したコンピューティング環境が使用されます。これにより、お使いのアプリケーションでワークロードの分離と設計段階からのセキュリティの向上が実現します。

Fargateのメリット

1.インフラストラクチャではなくアプリケーションをデプロイおよび管理

Fargate を使用すれば、ECS または EKS で実行するアプリケーションの構築および運用に集中することができます。操作が必要なのはコンテナのみで、料金もコンテナの分のみです。サーバーのスケーリング、パッチ適用、保護、管理にまつわる運用上のオーバーヘッドは発生しません。Fargate では、コンテナが実行されるインフラストラクチャが、必要なパッチにより常に最新の状態に保たれます。

1.設計段階からの安全な分離

各 ECS タスクまたは各 EKS ポッドは、専用のカーネルのランタイム環境でそれぞれ実行されます。CPU、メモリ、ストレージ、ネットワークのリソースが他のタスクやポッドと共有されることはありません。これにより、各タスクまたは各ポッドでワークロードの分離とセキュリティの向上が実現します。

2.適切なサイズのリソースと柔軟な料金オプション

Fargate では、コンテナに対して指定したリソース要件に一致するよう、コンピューティングを起動およびスケーリングします。Fargate では、オーバープロビジョニングおよび追加サーバーの料金は発生しません。Fargate は、Amazon EC2 インスタンスの場合と同様に、Spot Savings Plan および Compute Savings Plan の料金オプションをサポートしています。オンデマンド料金と比較して、Fargate Spot では中断耐性の高いアプリケーションに対し最大 70% の割引が適用されます。また、Compute Savings Plan では、永続的なワークロードに対する確定済みのコストが最大 50% 割引になります。

3.充実したアプリケーションの可観測性

Fargate では、Amazon CloudWatch Container Insights など他の AWS サービスとの組み込み統合によって、すぐに利用できる可観測性を得ることができます。Fargate では、オープンなインターフェイスを有する幅広いサードパーティー製ツールを介してメトリクスおよびログを収集し、アプリケーションをモニタリングすることが可能です。

Fargateのデメリット

logDriverがawslogsに限定される

cloudwatchとの連携は用意だがそれ以外のログの収集や送信(たとえばfluentdなど)との複数コンテナ稼働時のログ収集においては一工夫しないといけなかったりします。共有ボリュームは4GBです。概ねサイドカーエージェントでログ転送する際の置き場になる可能性がありますが、上限が低いのでローテート等をしっかりと組まないと枯渇してしまいます。

kill時の設定が素のECSと比べ設定できなかったり、デプロイと起動が元より少し遅い。EC2と同スペック比較すると約15~20%高くなる。この辺はtask定義のパラメータにも記載があります。また起動数などのサービス制約もあるので、緩和申請なども場合によっては必要になります。

Fargateの料金について

AWS Fargate では、前払いは発生せず、使用しているリソースに対してのみ料金が発生します。コンテナ化されたアプリケーションで消費される vCPU およびメモリリソースの量に対する料金が発生します。AWS Fargate の料金は、コンテナイメージのダウンロードを開始した時点から Amazon ECS タスクまたは Amazon EKS* Pod が終了するまでに使用された vCPU およびメモリリソースに基づいて計算され、最も近い秒数に切り上げられます。

Fargate の使用状況が一定の場合、Saving Plans が活用できます。Savings Plans を利用して、1 年間または 3年間、特定量のコンピューティング使用量 (1 時間あたりのドル単位で測定) で契約をしていただくと、AWS Fargate の使用料金を最大 50% 節約できます。

1.演習時間

料金は1秒あたり、最低1分です。時間は、コンテナイメージのダウンロード (docker pull) を開始した時刻からタスクが終了するまでで計算され、最も近い秒数に切り上げられます。

2.追加料金

コンテナで他の AWS のサービスを使用したり、データを転送したりする場合は、追加料金がかかります。例えば、コンテナがアプリケーションのログ記録に Amazon CloudWatch Logs を使用する場合は、CloudWatch の使用量に対して課金されます。