EKS

AWS のマネージド Kubernetes サービス

AWSコンテナ
EKS」の技術書を見る (10 冊) →

EKS とは

Amazon EKS (Elastic Kubernetes Service) は、AWS が提供するマネージド Kubernetes サービスである。コントロールプレーン (API サーバー、etcd) の運用を AWS が担い、ユーザーはワーカーノードとワークロードの管理に集中できる。

ECS vs EKS

ECS と EKS の違いを以下にまとめる。

観点ECSEKS
オーケストレーターAWS 独自Kubernetes (OSS)
学習コスト低い高い
エコシステムAWS に閉じるKubernetes エコシステム全体
ポータビリティAWS のみマルチクラウド、オンプレミス
運用コストコントロールプレーン無料$0.10/時間 (約 $73/月)
適用場面AWS に特化したシンプルな構成大規模、マルチクラウド、既存 K8s 資産

AWS だけで完結するなら ECS の方がシンプルで安い。Kubernetes のエコシステム (Helm、Istio、ArgoCD) を活用したい場合や、マルチクラウド戦略がある場合は EKS を選択する。

ワーカーノードの選択肢

ワーカーノードの選択肢を以下にまとめる。

タイプ管理負荷コスト適用場面
Managed Node GroupsEC2 料金汎用ワークロード
FargateFargate 料金 (割高)運用負荷を最小化
Self-managed NodesEC2 料金GPU、カスタム AMI
Karpenter低〜中EC2 料金 (最適化)動的スケーリング

Fargate on EKS は Pod 単位でサーバーレス実行できるが、DaemonSet が使えない、ストレージが EFS に限定されるなどの制約がある。

EKS のアーキテクチャ

EKS のアーキテクチャを図で示す。

[AWS マネージド]
  コントロールプレーン: API Server, etcd, Scheduler, Controller Manager[ユーザー管理]
  ワーカーノード (EC2 / Fargate)
    ├── Pod A (アプリ)
    ├── Pod B (アプリ)
    └── Pod C (サイドカー: Envoy, Fluent Bit)

コントロールプレーンは 3 AZ に分散配置され、AWS が可用性を保証する。

コスト最適化

  • Karpenter: Pod の要求に応じて最適なインスタンスタイプを自動選択し、ビンパッキング効率を最大化
  • Spot Instances: 中断耐性のあるワークロードに Spot を使い、最大 90% のコスト削減
  • Graviton: ARM ベースの Graviton インスタンスで、同等性能を 20% 低コストで実現
  • 不要な Pod の削除: kubectl top pods でリソース使用量を確認し、過剰なリクエスト/リミットを調整

関連書籍も参考になる。

この記事は役に立ちましたか?

関連用語

関連する記事