4.3.3.2. 外部インフラストラクチャーを使用して KubeVirt プラットフォームでホステッドクラスターを作成する
デフォルトでは、HyperShift Operator は、ホステッドクラスターのコントロールプレーン Pod と、同じクラスター内の KubeVirt ワーカー VM の両方をホストします。外部インフラストラクチャー機能を使用すると、ワーカーノード VM をコントロールプレーン Pod とは別のクラスターに配置できます。
- 管理クラスター は HyperShift Operator を実行し、ホステッドクラスターのコントロールプレーン Pod をホストする OpenShift Container Platform クラスターです。
- インフラストラクチャークラスター は、ホステッドクラスターの KubeVirt ワーカー VM を実行する OpenShift Container Platform クラスターです。
- デフォルトでは、管理クラスターは VM をホストするインフラストラクチャークラスターとしても機能します。ただし、外部インフラストラクチャーの場合、管理クラスターとインフラストラクチャークラスターは異なります。
すべてのホステッドクラスター情報を共有名前空間に保存することは避けてください。共有名前空間にホステッドクラスターを作成し、その後ホステッドクラスターをバックアップおよび復元すると、意図せず他のホスト型クラスターを変更してしまう可能性があります。ホステッドクラスター情報を別の名前空間に保存するか、ラベルに基づいてリソースのバックアップと復元を行うようにホステッドクラスターを設定してください。
前提条件
- KubeVirt ノードをホストする外部インフラストラクチャークラスター上に namespace が必要です。
-
外部インフラストラクチャークラスター用の
kubeconfigファイルが必要です。
手順
hcpコマンドラインインターフェイスで、インフラストラクチャークラスター上に KubeVirt ワーカー仮想マシンを配置するには、次の例に示すように、--infra-kubeconfig-fileおよび--infra-namespace引数を使用します。$ hcp create cluster kubevirt \ --name <hosted-cluster-name> \ --node-pool-replicas <worker-count> \ --pull-secret <path-to-pull-secret> \ --memory <value-for-memory> \ --cores <value-for-cpu> \ --infra-namespace=<hosted-cluster-namespace>-<hosted-cluster-name> \ --infra-kubeconfig-file=<path-to-external-infra-kubeconfig>-
--name はホステッドクラスターの名前を定義します。たとえば、my-hosted-cluster です。 -
--node-pool-replicas はワーカー数を定義します。たとえば、2 です。 -
--pull-secret は、プルシークレットへのパスを定義します。たとえば、/user/name/pullsecret です。 -
--memory はメモリーの値を定義します。たとえば、6Gi などです。 -
--cores はCPU の値を定義します。たとえば、2 です。 -
--infra-namespace はインフラストラクチャーの名前空間を定義します。たとえば、clusters-example などです。 -
--infra-kubeconfig-file は、インフラストラクチャークラスターのkubeconfigファイルへのパスを定義します。たとえば、/user/name/external-infra-kubeconfig です。
コマンドを入力すると、コントロールプレーンの Pod は HyperShift Operator が動作する管理クラスター上にホストされ、KubeVirt 仮想マシンは別のインフラストラクチャークラスター上にホストされます。
-