TL;DR

コンテナ化されたワークロードとサービスを管理する、移植性と拡張性のあるオープンソースのプラットフォーム。宣言的な設定と自動化の両方を支える。K8s とも略す。

なぜ必要か

公式ドキュメントによると、Kubernetes は分散システムを回復力をもって動かすための枠組みを提供する。アプリケーションのスケーリングやフェイルオーバーを引き受け、デプロイのパターンも提供する。

主な機能として、サービスディスカバリと負荷分散、ストレージのオーケストレーション、自動的なロールアウトとロールバック、自己修復、Secret と設定の管理、水平スケーリングが挙げられている。

仕組み

Kubernetes は、互いに独立して組み合わせられる制御プロセスの集まりである。各プロセスは、現在の状態を、利用者が宣言した望ましい状態へ継続的に近づける。

注意点

Kubernetes は何でもそろった従来の PaaS ではない。ソースコードのデプロイやアプリケーションのビルドはせず、データベースやキャッシュのようなアプリケーションレベルのサービスも組み込みでは提供しない。

名前はギリシャ語で「操舵手」や「パイロット」を意味する。K8s は、K と s の間にある 8 文字を数えた略である。Google が 2014 年にオープンソース化した。

関連

出典