このセクションでは、スタンドアローン Tanzu Kubernetes Grid 管理クラスタを展開する方法について説明します。管理クラスタを展開すると、Tanzu Kubernetes Grid のインストール プロセスが完了し、Tanzu Kubernetes Grid が動作するようになります。
「スタンドアローン管理クラスタで使用する Tanzu CLI と Kubernetes CLI のインストール」で説明されている手順を実行したら、管理クラスタを vSphere 6.7、vSphere 7、vSphere 8、AWS、または Azure に展開できます。
重要vSphere 8 の vSphere with Tanzu では、Tanzu CLI を使用して組み込みのスーパーバイザーに接続し、TKG 2.x ワークロード クラスタを展開できるため、管理クラスタの展開は必要ありません。詳細については、「vSphere with Tanzu スーパーバイザーが管理クラスタである」を参照してください。vSphere with Tanzu が有効になっていない場合、スタンドアローン管理クラスタを vSphere 8 に展開することはサポートされていますが、可能であれば、vSphere with Tanzu を有効にしてスーパーバイザーを使用することを推奨します。
管理クラスタは、特定のクラウド プロバイダでクラスタ API 操作を実行し、そのプロバイダでワークロード クラスタを作成および管理する Kubernetes クラスタです。また、管理クラスタでは、ワークロード クラスタが使用する共有サービスとクラスタ内サービスを構成します。
注VMware では、次の理由により、ワークロードをスタンドアローン管理クラスタ自体に展開しないことを推奨しています。
- スタンドアローン管理クラスタとワークロード クラスタには、個別の懸念事項があります。
- スタンドアローン管理クラスタは、ワークロード クラスタのようにバックアップされません。復元性を確保するために、スタンドアローン管理クラスタの構成はコードとして管理するのが最適です。
次の図は、vSphere 6.7、7、8、AWS、Azure など、さまざまな IaaS プロバイダに管理クラスタとワークロード クラスタを展開する手順の概要と、それらの手順を実行するために使用するインターフェイスを示しています。
管理クラスタは、次の 2 つの方法で展開できます。
VSPHERE_STORAGE_POLICY_ID
によって設定されたカスタム ストレージ ポリシースタンドアローン Tanzu Kubernetes Grid 管理クラスタは、次の環境に展開および管理できます。
管理クラスタは、単一ノードの制御プレーン(開発用)、または高可用性マルチノード制御プレーン(本番環境用)として展開できます。
ブートストラップ マシンで tanzu mc create
コマンドを実行して、管理クラスタを展開します。管理クラスタを展開するには、tanzu mc create
に --ui
または --file
オプションを指定する必要があります。
インストーラ インターフェイス:tanzu mc create --ui
は、インストーラ インターフェイスを使用して管理クラスタを作成し、インストーラ入力の設定をクラスタ構成ファイル ~/.config/tanzu/tkg/clusterconfigs/UNIQUE-ID.yaml
に保存します。ここで、UNIQUE-ID
は生成されたファイル名です。インストーラは、管理クラスタの Cluster
オブジェクトに対する Kubernetes スタイルのクラスベースのオブジェクト仕様も生成します。これは、管理クラスタと同じ名前のファイルに保存されます。このクラスベースのオブジェクト仕様は情報提供のみを目的としています。クラスベースのオブジェクト仕様からの管理クラスタの展開はまだサポートされていません。TKG 2.x のクラスタ タイプの詳細については、「Tanzu Kubernetes Grid について」の「ワークロード クラスタ」を参照してください。
CLI:tanzu mc create --file
は、クラスタ構成ファイルを使用して管理クラスタを作成します。tanzu mc create
を実行する前に、クラスタ構成ファイルで INFRASTRUCTURE_PROVIDER
などの構成パラメータを設定して、--file
オプションに渡します。推奨される方法は、展開するすべてのクラスタに専用の構成ファイルを使用することです。
構成パラメータを環境変数として設定することもできます。競合するパラメータを設定した場合、環境変数は、--file
オプションに渡されるファイルで設定された構成パラメータをオーバーライドします。
~/.config/tanzu/config.yaml
の環境変数もオーバーライドします。tanzu config set
を実行して設定される ~/.config/tanzu/config.yaml
の環境変数:tanzu config unset
を実行して設定解除するまで保持されます。tanzu mc create
コマンドは、これらのソースと入力を次の優先順位で使用します。
~/.config/tanzu/tkg/providers/config_default.yaml
:このファイルにはシステムのデフォルト値が含まれています。変更しないでください。--file
オプションを使用:クラスタ構成ファイル。デフォルトは ~/.config/tanzu/tkg/cluster-config.yaml
です。このファイルは、tanzu mc create
の特定の呼び出しを構成します。複数の構成を保存するには、異なる構成ファイルを使用します。tanzu config set
を実行して設定される環境変数:~/.config/tanzu/config.yaml
ファイル。これらの変数は、すべての tanzu
コマンドに適用されます。ローカル環境変数は、~/.config/tanzu/config.yaml
からの変数をオーバーライドします。--ui
オプションを使用:インストーラ インターフェイスの入力。tanzu mc create --ui
を実行すると、インストーラはユーザー入力からすべての管理クラスタ構成値を設定します。tanzu mc create
を実行すると、ブートストラップ マシンの Kubernetes in Docker (kind
) クラスタを使用して一時的な管理クラスタが作成されます。一時的な管理クラスタをローカルに作成すると、Tanzu Kubernetes Grid はそれを使用して、選択したプラットフォームで最終的な管理クラスタをプロビジョニングします。
プロセスで、tanzu mc create
は、ローカル ブートストラップ マシンのユーザーのホーム ディレクトリで CLI 構成ファイルと状態ファイルを作成または変更します。
場所 | 内容 | 変更 |
---|---|---|
~/.config/tanzu/tkg/bom/ |
Tanzu Kubernetes Grid が特定の OS と Kubernetes バージョンでクラスタを作成するときに必要なすべてのパッケージの特定のバージョンをリストするコンポーネント情報 (BoM) ファイル。新しい Tanzu Kubernetes リリース バージョンが公開されると、Tanzu Kubernetes Grid はこのディレクトリに追加されます。 | まだ存在しない場合は追加します |
~/.config/tanzu/tkg/providers/ |
非破壊的な変更のための ytt オーバーレイで編成された、クラスタ API、クラウド プロバイダ、およびその他の依存関係の構成テンプレート ファイル。 |
まだ存在しない場合は追加します |
~/.config/tanzu/tkg/providers-TIMESTAMP-HASH/ |
以前のインストールからの /providers ディレクトリのバックアップ。 |
最初のインストールでない場合は追加します |
~/.config/tanzu/config.yaml |
Tanzu CLI が認識している管理クラスタの名前、コンテキスト、および証明書ファイルの場所。これは現在の場所です。このファイルには、Tanzu CLI プラグインの検出ソース、tanzu config set によって設定される環境変数、および Tanzu CLI でデフォルトで有効または無効になっている機能も一覧表示されます。 |
新しい管理クラスタ情報を追加し、current として設定します。 |
~/.config/tanzu/tkg/cluster-config.yaml |
–file で指定しない場合に tanzu cluster create および tanzu mc create コマンドが使用するデフォルトのクラスタ構成ファイル。 ベスト プラクティスは、各クラスタに固有の構成ファイルを使用することです。 |
空のファイルが存在しない場合は追加します。 |
~/.config/tanzu/tkg/clusterconfigs/IDENTIFIER.yaml |
tanzu mc create –ui がインストーラ インターフェイスから入力された値を書き出すフラットなクラスタ構成ファイル。IDENTIFIER は、インストーラによって生成される一意の識別子です。 |
ファイルを作成します |
~/.config/tanzu/tkg/clusterconfigs/MGMT-CLUSTER-NAME.yaml |
tanzu mc create –ui がフラットな構成ファイルに基づいて生成するクラスベースのクラスタ構成ファイル。 |
ファイルを作成します |
~/.config/tanzu/tkg/config.yaml |
Tanzu Kubernetes Grid コアとそのすべてのプロバイダの構成と場所のリスト。 | まだ存在しない場合は追加します |
~/.config/tanzu/tkg/providers/config.yaml |
~/.config/tanzu/tkg/config.yaml に似ていますが、コア Tanzu Kubernetes Grid で使用される構成ファイルではなく、~/.config/tanzu/tkg/providers ディレクトリ内のプロバイダと構成のみが一覧表示されます。 |
まだ存在しない場合は追加します |
~/.config/tanzu/tkg/providers/config_default.yaml |
プロバイダのシステム全体のデフォルト構成。 ベスト プラクティスは、このファイルを編集するのではなく、 ytt オーバーレイ ファイルを使用してプロバイダ構成を変更することです。 |
まだ存在しない場合は追加します |
~/.kube-tkg/config |
tanzu CLI が認識する管理クラスタの名前と証明書を含む管理クラスタの kubeconfig ファイル。KUBECONFIG 環境変数によってオーバーライドされた場所。 |
新しい管理クラスタ情報を追加し、クラスタを current-context として設定します。 |
~/.kube/config |
すべての管理クラスタとワークロード クラスタを含む kubectl CLI の構成と状態。これは現在のコンテキストです。 |
新しい管理クラスタ名、コンテキスト、および証明書情報を追加します。現在の kubectl コンテキストを新しいクラスタに変更しないでください。 |