Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AWS のコンテナサービスについて整理してみる

AWS のコンテナサービスについて整理してみる

イベント「KGDC Tech Conference #3 KDDIグループの「ごったに!」会」での登壇資料です。

[概要]
現在 AWS では様々なコンテナ関連サービスが展開されています。Web サービスとして展開できたり、バッチ処理を行えたりと用途は多岐にわたります。それらのサービスについて、個人的に考えるユースケースを中心に整理してみたいと思います。これから AWS でコンテナを始めてみたいという人の参考になれば幸いです。

Ryuki Dohara

October 21, 2022
Tweet

More Decks by Ryuki Dohara

Other Decks in Technology

Transcript

  1. Elastic Container Service (ECS) Elastic Kubernetes Service (EKS) ECS AWS独自の

    フルマネージドコンテナオーケストレーション EKS Kubernetes (K8s) のマネージドサービス
  2. ECS・EKS の比較 ECS EKS 料金 ECS 自体は無料 コンピューティングリソースに料金発生 クラスタ料金発生(0.10 USD/h)

    + コンピューティングリソース料金 クラスタ管理 ほぼ不要 アップデート対応 他のサービスとの連携 比較的容易 マニフェストファイルの記載必要 コンテナプロビジョニング 独自のタスク定義・サービス定義 AWS Copilot CLI といった支援ツールが あるらしい マニフェストファイル Helm 等のツールあり 移植性 AWS 独自のシステムのため不可 K8s 自体は OSS
  3. ユースケース ECS シンプルな構成  気軽に管理したいなら ECS に分がある 複雑な構成  複数のサービスの連携を意識する必要あり  IaC を用いれば多少楽になるかも

    EKS K8s クラスタのクラウド移行 複雑な構成  K8s がわかっていれば、  ある程度一貫した記述で環境構築可能 これからコンテナを始めたい人なら ECS がおすすめ ただし、もっとユースケース次第で楽なサービスもある(後に紹介)
  4. コンピューティング環境の選択肢 EC2 指定した数の EC2 インスタンスが起動 インスタンス上でコンテナ稼働 オンプレ オンプレのサーバを ECS や

    EKS のクラスタに 参加させる Fargate サーバレスサービス コンテナ用のリソース管理を AWS が行ってくれる
  5. EC2 と Fargate の比較 EC2 スケーリング戦略が必要 複雑な構成が可能 ex) GPU Spot

    あり インスタンスを余すことなく使えるなら EC2 の方がコストが低い Fargate スケーリングは意識しなくて良い 一部機能が非対応 ex) GPU Spot あり
  6. 簡単に Web アプリケーションを展開したい App Runner コンテナまたはソースコードを push するだけで、Web アプリケーションが展開できる サーバレスサービス

    • VPC や ELB は隠蔽され、ユーザは意識しなくて良い • 自動スケーリング ただ、シンプルな分制約も多い • 複数コンテナの起動 ❌ • IP 制限や WAF アタッチが単体ではできない
  7. まとめ 主にコンテナ実行環境を管理・提供するサービスについてまとめた • コンテナオーケストレーション : ECS, EKS • コンピューティング環境 :

    EC2, Fargate, オンプレ • ユースケース特化 : App Runner, AWS Batch コンテナサービスは今後もリリース・アップデートが行われるはず 定期的なキャッチアップを継続していきたい