このセクションでは、Tanzu Kubernetes Grid (TKG) スタンドアローン管理クラスタおよび作成されるワークロード クラスタのノード仮想マシン テンプレートとして使用するカスタム マシン イメージをビルドする方法について説明します。
vSphere with Tanzu スーパーバイザー クラスタのカスタム イメージをビルドするには、「vSphere Tanzu Kubernetes Grid Image Builder リポジトリ」を参照してください。
このトピックでは、TKG カスタム イメージの背景について説明します。
注管理クラスタ ノードにカスタム マシン イメージを使用するには、構成ファイルからではなく、インストーラ インターフェイスを使用して管理クラスタを展開する必要があります。
各カスタム マシン イメージは、基本オペレーティング システム (OS) バージョンと Kubernetes バージョン、および必要に応じて追加のカスタマイズをパッケージ化して、vSphere で実行されるイメージにしたものです。Linux カスタム イメージは、AWS または Microsoft Azure インフラストラクチャでも実行できます。カスタム イメージは、Tanzu Kubernetes Grid でサポートされている OS バージョンに基づいている必要があります。基本 OS には、Red Hat Enterprise Linux (RHEL) v8 など、VMware がサポートしているが配布していない OS を使用できます。サポートされている OS のリストを表示するには、「ターゲットのオペレーティング システム」を参照してください。
Tanzu Kubernetes Grid クラスタ ノードのカスタム マシン イメージをビルドするには、アップストリームの Kubernetes Image Builder プロジェクトのコンテナ イメージを使用します。Kubernetes Image Builder はローカル ワークステーションで実行され、以下を使用します。
ISO
から Open Virtualization Archive (OVA) イメージをビルドします。vm template
としてマークします。OS バージョン、Kubernetes バージョン、およびターゲット インフラストラクチャの一般的な組み合わせのために、Tanzu Kubernetes Grid はデフォルトのマシン イメージを提供します。たとえば、1 つの ova-ubuntu-2004-v1.24.10+vmware.1-tkg
イメージが vSphere の Ubuntu v20.04 および Kubernetes v1.24.10 の OVA イメージとして機能します。
RHEL v8 OS や Windows など、OS バージョン、Kubernetes バージョン、インフラストラクチャのその他の組み合わせについては、デフォルトのマシン イメージはありませんが、ビルドすることができます。
デフォルト イメージと同じ OS バージョン、Kubernetes バージョン、およびインフラストラクチャでカスタム イメージをビルドして使用する場合、カスタム イメージはデフォルトを置き換えます。次に、Tanzu CLI はカスタム イメージを使用して新しいクラスタを作成し、OS バージョン、Kubernetes バージョン、およびターゲット インフラストラクチャの組み合わせにデフォルト イメージを使用しなくなります。
クラスタ API (CAPI) は、変更不可のインフラストラクチャの原則に基づいてビルドされます。クラスタを構成するすべてのノードは、共通のテンプレートまたはマシン イメージから取得されます。
CAPI は、マシン イメージからクラスタを作成する際に、いくつかの要素が構成されインストール済みでアクセス可能である、または実行されていることを想定します。これには、次のものが含まれます。
kubeadm
、kubelet
および kubectl
のバージョン。containerd
)。kubeadm init
および kubeadm join
に必要なすべてのイメージ。VMware によって署名されたイメージと同様に、公開されておらず、ローカルでプルされる必要があるイメージを含める必要があります。cloud-init
。イメージのビルド方法については、次のトピックを参照してください。