はじめに
本記事は「2025年にQiitaで流行した技術スタック30選アドベントカレンダー」の一環として、Amazon EKS(Elastic Kubernetes Service)について解説します。2025年はAmazon EKSにとって大きな進化の年となり、特にEKS Auto Modeの一般提供開始や数々の新機能追加により、Kubernetes運用の複雑性が大幅に削減されました。
Amazon EKSとは
Amazon EKS(Elastic Kubernetes Service)は、AWSが提供するマネージドKubernetesサービスです。Kubernetesコントロールプレーンの管理を自動化し、高可用性と安全性を確保しながら、コンテナ化されたアプリケーションを実行できます。
主な特徴
- 完全マネージド: Kubernetesコントロールプレーンの運用、スケーリング、アップグレードをAWSが管理
- 高可用性: 複数のアベイラビリティゾーンにわたるコントロールプレーンの自動配置
- AWS統合: IAM、VPC、ELBなどのAWSサービスとのネイティブ統合
- セキュリティ: エンタープライズグレードのセキュリティとコンプライアンス機能
2025年の主要アップデート
2025年、特にAWS re:Invent 2024で発表され2024年12月にGA(一般提供)となった機能群が本格的に浸透した年となりました。以下、注目すべきアップデートを紹介します。
1. EKS Auto Mode - 運用の革命
2025年における最大のトピックはEKS Auto Modeの本格展開です。EKS Auto Modeは、コンピュート、ストレージ、ネットワーキングを完全に自動化する新しいクラスター管理オプションです。
EKS Auto Modeの主要機能
自動化されたインフラ管理
- ノードのプロビジョニング、スケーリング、ライフサイクル管理を自動化
- 最適なEC2インスタンスタイプの自動選択
- SpotインスタンスとOn-Demandインスタンスの最適な組み合わせ
セキュリティ強化
- ノードの最大ライフタイムは21日で、自動的に新しいノードに置き換え
- Bottlerocket AMIベースで、SELinuxの強制アクセス制御とリードオンリーのルートファイルシステム
- FIPS準拠のAMIサポート(USリージョン)
コスト最適化
- 実際の使用パターンに基づいた継続的なコスト最適化
- 動的なリソーススケーリング
- EC2 Savings Plansとの互換性維持
2025年のEKS Auto Mode拡張機能
リージョン展開の拡大(2025年10月)
- AWS GovCloud(US-East、US-West)での提供開始
- FedRAMP準拠要件を満たす連邦政府向けワークロード対応
- AWS Local Zonesへの展開サポート
静的容量ノードプール(2025年9月)
- 固定数のノードを維持する静的容量ノードプールのサポート
- 予測可能なキャパシティが必要なワークロードに最適
SOCI(Seekable OCI)並列プル(2025年11月)
- G、P、Trnファミリーインスタンスでコンテナ起動時間を最大60%短縮
- ローカルNVMeストレージを持つインスタンスで自動的に有効化
EC2キャパシティ予約サポート
- On-Demand Capacity Reservations(ODCR)対応
- Capacity Blocks for MLのサポート
- AI/MLワークロード向けの専用インスタンス(P5など)への確実なアクセス
2. EKS Capabilities - プラットフォーム機能の統合管理
2025年11月に発表されたEKS Capabilitiesは、ワークロードオーケストレーションとクラウドリソース管理のための完全マネージド機能です。
提供される3つの主要機能
Argo CD - 継続的デプロイメント
- GitOps方式の宣言的デプロイメント
- 45%以上のKubernetesユーザーが本番環境で利用(CNCF 2024調査)
- EKSが完全マネージド化し、スケーリング、パッチ適用、アップグレードを自動化
AWS Controllers for Kubernetes (ACK)
- Kubernetes APIを通じたAWSリソースの管理
- 既存のAWSリソースの採用機能
- TerraformやCloudFormationからの段階的な移行をサポート
Kube Resource Orchestrator (KRO)
- 動的なリソースオーケストレーション
- 複雑なリソース構成の簡素化
これらの機能はAWS所有のインフラストラクチャで実行され、顧客のクラスターとは分離されているため、運用負荷が大幅に削減されます。
3. Provisioned Control Plane - 予測可能な高パフォーマンス
2025年11月発表のProvisioned Control Planeは、最も要求の厳しいワークロード向けに、コントロールプレーンの容量を事前にプロビジョニングできる機能です。
ユースケース
- 大規模イベント対応: 製品発売、ホリデーセール、スポーツイベント時のトラフィック急増
- 一貫した環境: 開発、ステージング、本番、DRでの一貫したパフォーマンス
- 超大規模ワークロード: 数千ノードを必要とするAI/MLトレーニング、HPC、大規模データ処理
4. 強化されたネットワーク機能
ネットワーク観測性の向上(2025年11月)
EKSが新しいネットワーク観測機能を導入し、コンテナネットワーク環境への詳細な洞察を提供するようになりました。
- クラスタートラフィック、クロスAZフロー、AWSサービス間の詳細なメトリクス
- CloudWatch Network Flow Monitorによるネットワークモニタリング
- AWSコンソールでのネットワーク可視化
- トップトーカーや再送信を引き起こすネットワークフローの特定
ネットワークセキュリティポリシーの強化(2025年12月)
- クラスター全体のネットワークフィルタの一元管理
- FQDNベースのエグレスルール
- クラスター外リソースへの不正アクセス防止
5. MCP Server統合(2025年11月)
EKSとECSが**完全マネージドMCPサーバー(Model Context Protocol)**をプレビュー提供開始しました。
- AI駆動の開発・運用体験を実現
- リアルタイムのコンテキスト情報をAIアプリケーションに提供
- AWS IAM統合による企業グレードのセキュリティ
- AWS CloudTrailによる包括的な監査ログ
6. Kubernetes 1.34サポート(2025年10月)
EKSがKubernetes 1.34をサポート開始しました。
- Kubeletイメージクレデンシャルプロバイダー用の投影サービスアカウントトークン
- Pod レベルのリソース要求と制限による簡素化されたマルチコンテナ管理
- Dynamic Resource Allocation (DRA) の優先順位付き代替案
7. マネージドノードグループの新しいアップデート戦略(2025年1月)
Minimal Capacity戦略の導入により、EC2インスタンスの起動数を削減してアップデートが可能になりました。
- GPUアクセラレートインスタンスや需要の高いインスタンスでの更新に最適
- Reserved Instancesやキャパシティ予約を使用している場合に特に有効
EKS Auto Modeの始め方
EKS Auto Modeを使い始めるのは驚くほどシンプルです。
eksctlでの作成
eksctl create cluster \
--name my-auto-cluster \
--region ap-northeast-1 \
--auto-mode
これだけで、以下がすべて自動設定されます。
- インスタンスタイプの選択
- スケーリングポリシーの設定
- アドオンのインストール
- ネットワーキングとストレージの設定
AWS CLIでの作成
aws eks create-cluster \
--name my-auto-cluster \
--region ap-northeast-1 \
--compute-config enabled=true
既存クラスターでのAuto Mode有効化
既存のEKSクラスターでもAuto Modeを有効化できます。
aws eks update-cluster-config \
--name existing-cluster \
--compute-config enabled=true
注意点:
- Auto Mode有効化後、Karpenterやロードバランサーコントローラーなど、Auto Modeで管理されるコンポーネントはアンインストールする必要があります
- インストール済みアドオンを最新バージョンに更新しておく必要があります
NodePoolsとNodeClassesの活用
EKS Auto Modeでは、デフォルトで2つのNodePoolが提供されます。
General Purpose NodePool
apiVersion: karpenter.sh/v1
kind: NodePool
metadata:
name: general-purpose
spec:
disruption:
budgets:
nodes: "10%"
consolidateAfter: 30s
consolidationPolicy: WhenEmptyOrUnderutilized
template:
spec:
expireAfter: 336h
requirements:
- key: karpenter.sh/capacity-type
operator: In
values: ["on-demand"]
- key: eks.amazonaws.com/instance-category
operator: In
values: ["c", "m", "r"]
- key: eks.amazonaws.com/instance-generation
operator: Gt
values: ["4"]
- key: kubernetes.io/arch
operator: In
values: ["amd64"]
カスタムNodePoolの作成
GPU対応のワークロードなど、特定の要件がある場合は、カスタムNodePoolを作成できます。
apiVersion: karpenter.sh/v1
kind: NodePool
metadata:
name: gpu-workload
spec:
template:
spec:
requirements:
- key: karpenter.sh/capacity-type
operator: In
values: ["on-demand"]
- key: eks.amazonaws.com/instance-family
operator: In
values: ["p4d", "p5"]
- key: kubernetes.io/arch
operator: In
values: ["amd64"]
nodeClassRef:
name: gpu-nodeclass
ベストプラクティス
1. 適切なデプロイメントオプションの選択
- EKS Auto Mode: 運用負荷を最小化したい場合、Kubernetes初心者チーム向け
- EKS Managed Node Groups: より細かい制御が必要な場合
- Self-Managed Nodes: 完全なカスタマイズが必要な場合
2. コスト最適化
- Pod Disruption Budgets (PDB) を適切に設定してアプリケーション可用性を維持
- SpotインスタンスとOn-Demandの組み合わせでコスト削減
- EKS Auto Modeのコスト最適化機能を活用
3. セキュリティ
- EKS Auto Modeの21日ノードライフサイクルを活用
- ネットワークポリシーで Pod間通信を制御
- IAM Roles for Service Accounts (IRSA) の使用
- Pod Identity の活用
4. モニタリングと可観測性
- Amazon CloudWatch Container Insightsの有効化
- 新しいネットワーク観測機能の活用
- メトリクスの定期的な確認とアラート設定
まとめ
2025年はAmazon EKSにとって革新的な年となりました。特にEKS Auto Modeの導入により、Kubernetesの運用が大幅に簡素化され、開発チームはアプリケーション開発により集中できるようになりました。
2025年のハイライト
- EKS Auto Mode: Kubernetesクラスター管理の完全自動化
- EKS Capabilities: Argo CD、ACK、KROの完全マネージド提供
- Provisioned Control Plane: 予測可能な高パフォーマンス
- 強化されたネットワーク機能: 観測性とセキュリティの向上
- MCP Server統合: AI駆動の運用体験
- Kubernetes 1.34サポート: 最新機能へのアクセス
これらの機能により、EKSはエンタープライズグレードのKubernetesプラットフォームとして、さらに成熟しました。2026年も引き続き、AWSはKubernetesエコシステムの進化をリードしていくことでしょう。