以下のトピックでは、Tanzu Kubernetes Grid (TKG) 展開に関連する主な用語と概念を定義します。このセクションのその他のトピックでは、主要な TKG 要素のリファレンスと、試験的な TKG 機能について説明します。
Tanzu Kubernetes Grid (TKG) は、Kubernetes の高レベルのマルチクラウド インフラストラクチャです。Tanzu Kubernetes Grid を使用すると、開発者は Kubernetes を電力供給網のようなユーティリティとして利用できるようになります。このグリッドを使用すると、オペレータはコンテナ化されたアプリケーションをホストするための Kubernetes クラスタを作成および管理でき、開発者はアプリケーションの開発、展開、および管理を行うことができます。詳細については、「Tanzu Kubernetes Grid について」を参照してください。
管理クラスタとは、コンテナ化されたアプリケーションをホストするワークロード クラスタと呼ばれる別の Kubernetes クラスタを展開および管理する Kubernetes クラスタです。
管理クラスタの詳細については、「管理クラスタ:スーパーバイザーとスタンドアローン」を参照してください。
Tanzu Kubernetes Grid によって展開されたワークロード クラスタは、コンテナ化されたアプリケーションとパッケージ サービスが展開および実行される CNCF 準拠の Kubernetes クラスタです。
ワークロード クラスタは管理クラスタによって展開され、同じプライベートまたはパブリック クラウド インフラストラクチャで実行されます。
数多くのワークロード クラスタを持つことが可能ですが、ワークロード クラスタでは、ホストするアプリのニーズに合わせてさまざまな Kubernetes バージョンを実行でき、カスタマイズ可能なノード タイプとノード数、さまざまなオペレーティング システム、プロセッサ、ストレージ、およびその他のリソース設定と構成を含むさまざまなトポロジを使用できます。
ポッド間のネットワークの場合、ワークロード クラスタはデフォルトで Antrea を使用し、Calico を使用することもできます。
さまざまなタイプのワークロード クラスタの詳細については、「ワークロード クラスタ」を参照してください。
Tanzu Kubernetes Grid インスタンスは、Tanzu Kubernetes Grid を完全に展開したもので、管理クラスタ、展開されたワークロード クラスタ、およびクラスタが実行するパッケージ サービスが含まれます。Tanzu Kubernetes Grid は、多くのインスタンスを操作できます。たとえば、本番、ステージング、テストなどのさまざまな環境、vSphere、Azure、AWS などのさまざまな IaaS プロバイダ、そしてさまざまな障害ドメイン(Datacenter-1
、AWS us-east-2
、または AWS us-west-2
)があります。
Tanzu CLI を使用すると、TKG を展開および操作する tanzu
コマンドが有効になります。例:
tanzu cluster
コマンドは TKG 管理クラスタと通信して、コンテナ化されたワークロードをホストするワークロード クラスタを作成および管理します。tanzu package
コマンドは、ホストされたワークロードが使用するパッケージ サービスをインストールおよび管理します。tanzu apps
コマンドは、ワークロード クラスタで実行されている Tanzu Application Platform を介してホストされたワークロードを管理します。tanzu management-cluster
(または tanzu mc
)コマンドは、ターゲット インフラストラクチャ上にスタンドアローン管理クラスタを作成して TKG を展開し、スタンドアローン管理クラスタが実行されると展開を管理します。Tanzu CLI は、プラグインを使用して機能をモジュール化および拡張します。
スタンドアローン管理クラスタでは、管理クラスタが実行する Kubernetes のバージョンは Tanzu CLI で使用される Kubernetes のバージョンと同じです。
詳細については、「Tanzu CLI アーキテクチャと構成」を参照してください。
ブートストラップ マシンは、Tanzu CLI をダウンロードして実行するラップトップ、ホスト、またはサーバです。
Tanzu CLI を使用してスタンドアローン管理クラスタを展開すると、ブートストラップ マシン上に管理クラスタが kind
クラスタとして作成されてから、ターゲット インフラストラクチャに展開されます。
Tanzu CLI を既存の管理クラスタに接続する方法は、展開オプションによって異なります。
ブートストラップ マシンには、ローカル ラップトップ、ジャンプボックス、その他の物理マシンまたは仮想マシンを使用できます。
安全かつ効率的に実行するために、Kubernetes アプリケーションは通常、Kubernetes と基本 OS の両方の特定のパッチ バージョンと他のコンポーネントの互換性のあるバージョンを持つノードでホストする必要があります。これらのコンポーネント バージョンは、時間の経過とともに変化します。
最新バージョンの維持、安全性、および互換性を促進するために、Tanzu Kubernetes リリース (TKr) は、Kubernetes のパッチ バージョンと、それを実行可能な基本 OS バージョンをパッケージ化します。これには、そのバージョンの Kubernetes およびそれがホストするワークロードをサポートするバージョン管理された他のコンポーネントも含まれます。
管理クラスタは TKr を使用して、目的の Kubernetes および OS バージョンを実行するワークロード クラスタを作成します。
各 TKr には、さまざまなクラウド インフラストラクチャ上のさまざまな仮想マシン タイプで Kubernetes の特定のパッチ バージョンが動作するために必要となるものがすべて含まれています。
詳細については、「Tanzu Kubernetes リリースとカスタム ノード イメージ」を参照してください。
認証、入力方向制御、コンテナ レジストリ、可観測性、サービス検出、ログ作成などのサービスをホストされたワークロードに提供するために、Tanzu パッケージ サービスまたはパッケージを TKG クラスタにインストールできます。
スタンドアローン管理クラスターを使用する TKG では、一部のサービスを共有サービス クラスタ(他のワークロード クラスタにそのサービスを公開できる特別なワークロード クラスタ)にインストールすることをサポートしているため、複数のワークロード クラスタで同じサービスの個別のインスタンスを実行せずに済みます。
Tanzu パッケージ サービスは、Carvel imgpkg ツールにバンドルされていて、VMware により TKG 向けにテストされています。
このようなパッケージには、次のものが含まれます。
imgpkg
のダウンロードおよびインストール方法については、「Carvel ツールのインストール」を参照してください。
Tanzu Kubernetes Grid v1.x および TKG 2.x でサポートされているレガシー TKC ベースのクラスタでは、クラスタ プランはワークロード クラスタの標準化された構成です。このプランは、制御プレーン ノード、ワーカー ノード、仮想マシン タイプなどの数の設定を構成します。
TKG v1.x には、次の 2 つのデフォルト プランがあります。dev
クラスタには 1 台の制御プレーン ノードと 1 台のワーカー ノードがあり、prod
クラスタには 3 台の制御プレーン ノードと 3 台のワーカーがあります。
TKG 2.x では、「クラスベースのワークロード クラスタの構成」で説明するように、クラスタ トポロジをよりきめ細かく構成できます。
ytt
オーバーレイTKG クラスタおよびプランの構成の設定は、クラスタ API プロジェクトおよびその IaaS 固有のプロバイダ プロジェクトといったアップストリームのオープンソースのソースから取得されます。これらのソースは、設定が事前構成済みの Kubernetes オブジェクト仕様を YAML で公開します。
TKG は Carvel ytt オーバーレイをサポートし、元の YAML 仕様を保持しながら、独自のインストール向けにオブジェクトを非破壊的にカスタマイズします。これは、YAML カスタマイズ ファイルがブートストラップ マシンに存在し、それらを直接変更すると元のアップストリーム構成のローカル コピーが破棄される場合に便利です。
TKG プラグインをインストールすると、ブートストラップ マシンの ~/.config/tanzu/tkg
ディレクトリにクラスタおよびクラスタ プランの構成ファイルがインストールされ、これらの構成で ytt
オーバーレイがサポートされます。
ytt
オーバーレイは、実行可能なカスタマイズをサポートするために、ソース YAML ファイル内にあるターゲットの場所のターゲット設定を変更する方法を指定します。
詳細については、「ytt を使用した高度な TKC 構成」を参照してください。
ytt
のダウンロードおよびインストール方法については、「Carvel ツールのインストール」を参照してください。
Tanzu Kubernetes Grid インストーラは、スタンドアローン管理クラスタで TKG を展開するためにコマンド tanzu mc create --ui
を実行して起動するグラフィカル ウィザードです。インストーラ ウィザードはブートストラップ マシンで実行され、スタンドアローン管理クラスタを展開するプロセスをガイドするユーザー インターフェイスを提供します。
Tanzu CLI は、次の状況でクラスタ構成ファイルを使用してクラスタを作成します。
TKG インストーラによってスタンドアローン管理クラスタが作成されると、ユーザー インターフェイスからユーザー入力がキャプチャされ、入力した値がクラスタ構成ファイルに書き込まれます。次に、TKG インストーラはこのクラスタ構成ファイルを使用してスタンドアローン管理クラスタを展開します。
クラスタ構成ファイルでの必須の変数およびオプションの変数は、管理クラスタの展開オプションによって異なります。
TKG のアップグレードは、展開オプションに応じてその意味する内容が異なります。
tanzu management-cluster upgrade
を実行すると、スタンドアローン管理クラスタが CLI のバージョンの Kubernetes にアップグレードされます。Tanzu Kubernetes Grid でワークロード クラスタをアップグレードすると、新しいバージョンの Kubernetes を使用するベース仮想マシン イメージで実行するようにノードが移行されます。デフォルトでは、ワークロード クラスタは管理クラスタのネイティブの Kubernetes バージョンにアップグレードされますが、デフォルト以外の Kubernetes バージョンを指定し、そのバージョンにワークロード クラスタをアップグレードすることができます。
Tanzu Kubernetes Grid で使用可能な Kubernetes バージョンを確認するには、以下を参照してください。
ユーザー インターフェイス コンソールを使用して、管理クラスタを Kubernetes 管理プラットフォームである Tanzu Mission Control と統合する場合は、以下を参照してください。