Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

マルチクラスタCN2の管理

概要 マルチクラスターインストールに固有のライフサイクル管理タスクを実行する方法について説明します。

このセクションでは、マルチクラスター・インストールに固有のタスクについて説明します。マルチクラスタインストール内の特定のクラスタで管理タスク(クラスタ内のノードの追加と削除、クラスタのアップグレードなど)を実行する場合は、 単一クラスタCN2の管理を参照してください。

ワークロードクラスターのアタッチ

この手順を使用して、分散ワークロードクラスター (カーネルモードデータプレーンを実行) を作成し、中央クラスターに接続します。DPDKデータ プレーンを実行する場合は、このドキュメントのDPDKの例から推定します。

この手順の例で使用するマニフェストは、 k8s/multi-cluster/distributed_cluster_deployer_example.yamlk8s/multi-cluster/distributed_cluster_vrouter_example.yaml です。この手順では、これらのマニフェストが manifests ディレクトリに配置されていることを前提としています。

  1. インストールの前にの説明に従って、分散ワークロードクラスターを準備します。
  2. 分散ワークロードクラスターを作成します。

    新しいクラスターを作成します。 ランチャーRKE2クラスターの作成 の手順に従うか、独自の方法を使用してクラスターを作成できます。クラスターには、次の特性が必要です。

    • クラスタにはCNIプラグインはありません。
    • マルチクラスターのセットアップでは、クラスターごとに異なるポッドとサービス サブネットを構成する必要があります。これらのサブネットは、マルチクラスター全体で一意である必要があります。
    • 複数クラスターのセットアップでは、各クラスター内のノードに異なるノード名を構成する必要があります。ノード名は、マルチクラスター全体で一意である必要があります。
  3. 分散ワークロードクラスターにCN2コンポーネントをインストールします。
    1. ワークロード クラスターで、中央クラスターから kubeconfig をコピーします。ここでは、これを中央クラスターkubeconfigと呼びます。
    2. ワークロード クラスターで、contrail-deploy 名前空間を作成します。
    3. ワークロード クラスターで、中央クラスターの kubeconfig から Kubernetes シークレットを作成し、そのシークレットcentral-kubeconfigに という名前を付けます。
      メモ:

      シークレット central-kubeconfigに名前を付ける必要があります。

      メモ:

      中央クラスター kubeconfig ファイルへの絶対パスを指定する必要があります。

    4. ワークロードクラスターで、デプロイ機能マニフェストを適用します。デプロイヤーは、CN2コンポーネントのライフサイクル管理を提供します。
      このマニフェストには、前のサブステップで作成したシークレットへの central-kubeconfig 参照が含まれています。
    5. Contrailデプロイ機能が起動していることを確認します。これには数分かかる場合があります。
    6. ワークロード クラスターで、証明書マネージャー マニフェストを適用します。cert-manager は、すべての管理プレーン接続とコントロール プレーン接続の暗号化を提供します。
  4. 中央クラスターで、新しいワークロード クラスターの kubemanager を作成して、新しいワークロード クラスターを接続します。
    1. 中央クラスターで、分散ワークロード クラスターから kubeconfig をコピーします。ここでは、これを workload-cluster-kubeconfig と呼びます。
    2. 中央クラスターで、分散ワークロードクラスターkubeconfigからKubernetesシークレットを作成し、シークレットのわかりやすい名前(例:workload-kubeconfig)を選択します。
    3. 次の内容の kubemanager マニフェストを作成します。マニフェストにわかりやすい名前 ( kubemanager-cluster1.yaml など) を選択します。
      テーブル 1 設定する必要があるパラメーターについて説明します。
      表1:Kubemanager CRD
      パラメーター の意味の例
      名前 カスタム リソースの名前。 kubemanager-cluster1
      イメージ イメージを取得するリポジトリ enterprise-hub.juniper.net/contrail-container-prod/contrail-k8s-kubemanager:23.2.0.156
      podV4Subnet 分散ワークロードクラスター用に以前に構成した IPv4 ポッドサブネット。

      このサブネットは、マルチクラスター全体で一意である必要があります。

      10.234.64.0
      serviceV4Subnet 分散ワークロードクラスター用に以前に設定したIPv4サービスサブネット。

      このサブネットは、マルチクラスター全体で一意である必要があります。

      10.234.0.0/18
      podV6Subnet 分散ワークロードクラスター用に以前に構成した IPv6 ポッドサブネット。

      このサブネットは、マルチクラスター全体で一意である必要があります。

      FD85:EE78:D8A6:8608::1:0000/112
      serviceV6Subnet 分散ワークロードクラスター用に以前に構成したIPv6サービスサブネット。

      このサブネットは、マルチクラスター全体で一意である必要があります。

      FD85:EE78:D8A6:8608::1000/116
      クラスタ名 ワークロード クラスターの名前。 ワークロード クラスター
      kubeconfigSecretName ワークロード クラスターの kubeconfig トークンを含むシークレットの名前。 workload-kubeconfig
      enableNad true または false (ネットワーク アドレス定義を有効にするかどうか) True
      リスナーポート Contrail コントローラーがこのワークロード クラスターとの通信をリッスンするポート。

      最初のワークロードクラスターのポートを19446に設定し、後続のワークロードクラスターごとに1ずつ増やします。

      19446
      定数ルートターゲット番号 このワークロード クラスターのルート ターゲット。

      最初のワークロード クラスターのルート ターゲットを 7699 に設定し、後続のワークロード クラスターごとに 100 ずつ増分します。

      7699
    4. 中央クラスターで、先ほど作成した kubemanager マニフェストを適用します。
    5. 中央クラスターで、ワークロード クラスターの名前空間が表示されていることを確認します。

      名前空間の形式は次のとおりです。 <kubemanager-name>-<workload-cluster-name>-<namespace>例えば:

  5. 最後に、ワークロード クラスターに vRouter をインストールします。
これで、分散ワークロードクラスターが作成され、中央クラスターにアタッチされました。

ワークロードクラスターのデタッチ

この手順を使用して、分散ワークロードクラスターを中央クラスターからデタッチします。
  1. 中央クラスターで、関連付けられている kubemanager を削除します。
  2. 削除する分散ワークロードクラスターで、vRouter を削除します。
  3. 中央クラスターで、分散ワークロードクラスターの名前空間を削除します。
    名前空間をリストし、分散ワークロードクラスターに関連付けられているすべての名前空間を削除します。
  4. 中央クラスターで、デタッチするワークロードクラスターに関連付けられているシークレットを削除します。
    ここで <secret-name>、 は、前にワークロードクラスターを中央クラスターにアタッチしたときに作成したシークレットです。この例では、これを workload-kubeconfigと呼びました。

CN2のアンインストール

この手順を使用して、中央クラスターとワークロードクラスターからCN2をアンインストールします。
  1. ワークロードクラスターのデタッチの 手順に従って、削除する ワークロードクラスターをデタッチ します。
  2. ワークロードクラスター内のCN2をアンインストールします。
    1. 「CN2 のアンインストール」 の手順に従って、ワークロード クラスター内の CN2 をアンインストール します。

      これらのリソースは既に削除されているため、NotFound エラーは無視してください。

    2. ワークロードクラスター で、分散ワークロードクラスターのデフォルトのポッドネットワーク名前空間に関連するすべてのリソースがなくなったことを確認し、contrail 名前空間に関連するすべてのリソースがなくなったことを確認します。

    ワークロード クラスターから CN2 をアンインストールするだけなら、完了です。中央クラスタからCN2もアンインストールする場合は、次の手順に進みます。

  3. 中央クラスタでCN2をアンインストールします。
    1. CN2のアンインストールの 手順に従って、中央クラスタの CN2をアンインストール します。

      これらのリソースは既に削除されているため、NotFound エラーは無視してください。

    2. 中央クラスターで、contrail、contrail-system、contrail-deploy 名前空間に関連するすべてのリソースが削除されていることを確認します。