採用に向く条件
選ぶ理由
- 自動スケール / 自己修復
- 宣言的で再現性が高い
- クラウド非依存の事実上の標準
製品プロフィール
Google → CNCF / コンテナオーケストレーション
大量のコンテナを自動で配置・復旧・スケールする“司令塔”。宣言的に「あるべき状態」を保ち続ける。
基本情報
選定ガイド
採用する理由と、事前に受け入れるべきトレードオフを分けて確認します。
採用に向く条件
事前に確認する条件
詳しい解説
Kubernetes(K8s)は、多数のコンテナを束ねて運用するための「コンテナオーケストレーション」基盤です。複数サーバーにまたがってコンテナを配置し、その状態を維持し続けます。
「結局なに?」を一言でいえば、コンテナを大規模に動かすための管制塔です。Docker などで作ったコンテナを、本番でまとまった台数まわすときに力を発揮します。
横にスクロール
最大の特徴は宣言的なアプローチと調整ループです。「コンテナを 3 つ動かす」といった“あるべき状態”をマニフェスト(YAML)で定義しておくと、Kubernetes が実際の状態を常にそれへ収束させ続けます。
構成は大きく 2 層に分かれます。
主な部品は、コンテナの最小単位 Pod、複製数と更新を管理する Deployment、安定した接続先を与える Service、設定・機密の ConfigMap/Secret など。これらを組み合わせて、自動スケール・自己修復・ローリング更新を実現します。
| 観点 | Docker | Kubernetes |
|---|---|---|
| 役割 | コンテナを作って動かす | 多数のコンテナを群として運用 |
| 対象規模 | 一台・少数 | 複数ノード・大規模 |
| 自動化 | 限定的 | スケール・自己修復・更新を自動 |
| 学習コスト | 低め | 高い |
Docker が「コンテナを作って動かす」のに対し、Kubernetes は「多数のコンテナを群として面倒みる」役割です。一台で少数のコンテナなら Docker のみのほうが運用は軽く済みます。
自前でコントロールプレーンを運用するのは負担が大きいため、EKS・GKE・AKS などのマネージド Kubernetes から始めると、etcd 運用やアップグレードの手間を軽減できます。監視は Prometheus、パッケージ管理は Helm、宣言運用は GitOps と組み合わせるのが定番です。
総じて Kubernetes は、宣言的な調整ループでコンテナ群を大規模・堅牢に運用する、コンテナ時代の標準オーケストレータです。
実装・運用の視点
TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。
大規模なコンテナ運用
種別: コンテナオーケストレーション / 提供元: Google → CNCF / ライセンス: オープンソース(Apache 2.0)
宣言的で再現性が高い
学習コストが非常に高い
向いている用途