5.3 マネージドK8s比較
Managed Kubernetes Comparison
AWS EKS、Azure AKS、Google GKEは、各クラウドが提供するマネージドKubernetesサービスである。Control Planeの管理をクラウドに委託し、ワーカーノードの運用に集中できる。
責任分界
@startuml
skinparam backgroundColor #FEFEFE
rectangle "マネージドK8sの責任分界" as Resp {
rectangle "プロバイダ管理" as Provider #D1FAE5 {
rectangle "Control Plane" as CP #6EE7B7 {
rectangle "API Server" as API #34D399
rectangle "etcd" as ETCD #34D399
rectangle "Scheduler" as Sched #34D399
}
rectangle "Control Plane\nアップグレード" as Upgrade #6EE7B7
rectangle "高可用性" as HA #6EE7B7
}
rectangle "ユーザー管理 (EC2/VM型)" as User #DBEAFE {
rectangle "Worker Node" as Node #93C5FD
rectangle "ノードOS\nパッチ適用" as Patch #93C5FD
rectangle "アプリケーション" as App #93C5FD
}
rectangle "プロバイダ管理 (Fargate/Autopilot型)" as Serverless #FEF3C7 {
rectangle "ノードインフラ" as NodeInfra #FDE68A
rectangle "Pod単位課金" as PodBilling #FDE68A
}
}
@enduml
図1: マネージドKubernetesの責任分界
| コンポーネント | セルフマネージド | マネージドK8s | サーバーレス |
|---|---|---|---|
| Control Plane | ユーザー | プロバイダ | プロバイダ |
| Worker Node | ユーザー | ユーザー | プロバイダ |
| OSパッチ | ユーザー | ユーザー | プロバイダ |
| アプリケーション | ユーザー | ユーザー | ユーザー |
3大クラウド比較
@startmindmap skinparam backgroundColor #FEFEFE * マネージドK8s ** EKS (AWS) *** Control Plane有料 ($0.10/時) *** Fargate統合 *** IAM統合 (IRSA) *** VPC CNI *** AWS統合に強み ** AKS (Azure) *** Control Plane無料 *** Entra ID統合 *** Virtual Nodes (ACI) *** Azure CNI *** Windows Node対応 ** GKE (Google) *** Autopilotモード *** K8s開発元の先進性 *** Workload Identity *** GKE Dataplane V2 *** マルチクラスタ管理 @endmindmap
図2: EKS/AKS/GKE の特徴
| 項目 | EKS | AKS | GKE |
|---|---|---|---|
| Control Plane料金 | $0.10/時 | 無料 | 無料 (Standard) |
| サーバーレスオプション | Fargate | Virtual Nodes | Autopilot |
| ID統合 | IAM (IRSA) | Entra ID | Workload Identity |
| K8sバージョン | やや遅め | 標準 | 最速 |
| Windows対応 | ○ | ◎ | ○ |
選択基準
EKSを選ぶ場合
既存のAWS環境との統合、IAMベースのセキュリティ、AWS全体での一貫した運用を重視する場合。
既存のAWS環境との統合、IAMベースのセキュリティ、AWS全体での一貫した運用を重視する場合。
AKSを選ぶ場合
Control Plane無料によるコスト重視、Azure ADとの統合、.NET/Windows ワークロードがある場合。
Control Plane無料によるコスト重視、Azure ADとの統合、.NET/Windows ワークロードがある場合。
GKEを選ぶ場合
最新K8s機能の早期利用、Autopilotによる運用負荷軽減、BigQueryなどGCPサービスとの統合を重視する場合。
最新K8s機能の早期利用、Autopilotによる運用負荷軽減、BigQueryなどGCPサービスとの統合を重視する場合。
いずれのサービスも標準Kubernetes APIに準拠しており、アプリケーション自体の移植性は高い。ただし、ロードバランサやストレージなどクラウド固有の統合部分は移行時に調整が必要となる [1]。
出典
[1] CNCF. Kubernetes Conformance. https://www.cncf.io/certification/software-conformance/
[2] AWS EKS Documentation. https://docs.aws.amazon.com/eks/
[3] Azure AKS Documentation. https://docs.microsoft.com/azure/aks/
[4] Google GKE Documentation. https://cloud.google.com/kubernetes-engine/docs/
[2] AWS EKS Documentation. https://docs.aws.amazon.com/eks/
[3] Azure AKS Documentation. https://docs.microsoft.com/azure/aks/
[4] Google GKE Documentation. https://cloud.google.com/kubernetes-engine/docs/