|
Kubernetesは、Googleが開発したオープンソースのコンテナオーケストレーションエンジンです。そのアーキテクチャと設計は、Google社内で使用されているスケジューリングツールであるBorgから派生しています。Borgは、Google社内で広く使用されている、実績のある大規模クラスタ管理システムです。Linux Container (LXC)テクノロジーをベースとし、アプリケーション指向のコンテナクラスタ展開・管理システムを提供します。Kubernetesは、物理/仮想コンピューティング、ネットワーク、ストレージインフラストラクチャのオーケストレーションの負担を軽減し、アプリケーション運用担当者と開発者がコンテナ中心のプリミティブを用いたセルフサービス運用に完全に集中できるようにすることを目的としています。Kubernetesはリソース管理を自動化し、複数のデータセンターにわたるリソース利用率を最大化します。
Kubernetesは、包括的なコンテナクラスタ管理エンジンです。アプリケーションの迅速な導入と健全な運用を保証するための様々なメカニズムとインターフェースを提供します。豊富なコマンドラインツール(CLI)とAPIインターフェースにより、クラスタとの容易な連携を実現します。同時に、Kubernetesは多層セキュリティ保護と分離メカニズム、マルチテナントアプリケーションのサポート、アプリケーションのライフサイクル管理、スケーラブルな自動リソーススケジューリングメカニズム、多粒度リソースクォータ管理機能、マルチテナント対応のための統合構成管理コンポーネント、そして複数のアベイラビリティゾーンのサポートも提供します。Kubernetesは包括的なコンテナ管理ツールセットを提供し、コンテナクラスタ管理のためのワンストップサービスを提供します。 Kubernetesアーキテクチャ Kubernetes の全体的なアーキテクチャは次の図に示されています。 Kubernetes は主に次のコア コンポーネントで構成されています。
コア コンポーネントに加えて、推奨されるアドオンをいくつか紹介します。
次の図は、ポッドを作成するオブジェクトから始まる、さまざまな Kubernetes コンポーネント間の相互作用とワークフローのシーケンスを示しています。 |