Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

マルチクラスターCN2の管理

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

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

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

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

この例の手順で使用するマニフェストは、 マルチクラスター/distributed_cluster_deployer_example.yamlmulti-cluster/distributed_cluster_vrouter_example.yaml です。手順では、これらのマニフェストを マニフェスト ディレクトリに 配置したことを前提としています。

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

    新しいクラスタを作成します。 「Kubernetes クラスターの作成 」の手順に従うことも、独自の方法でクラスターを作成することもできます。クラスターには、以下の特性が必要です。

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

      シークレット central-kubeconfigには名前を付けなければなりません。

      メモ:

      central-cluster-kubeconfig ファイルへの絶対パスを指定する必要があります。

    4. ワークロード クラスターで、デプロイ者マニフェストを適用します。導入者は、CN2コンポーネントのライフサイクル管理を提供します。
      このマニフェストには、前のサブステップで作成した central-kubeconfig シークレットへの参照が含まれています。
    5. Contrail-deployer が起動したことを確認します。数分かかる場合があります。
    6. ワークロード クラスターで、cert-manager マニフェストを適用します。cert-manager は、管理プレーンとコントロール プレーンのすべての接続に暗号化を提供します。
  4. 中央クラスターで、新しいワークロード クラスター用の kubemanager を作成して、新しいワークロード クラスターをアタッチします。
    1. 中央クラスターで、分散ワークロード・クラスターから kubeconfig をコピーします。ここではワークロードクラスター-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.1.0.282
      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
      定数RouteTargetNumber このワークロード クラスターのルート ターゲット。

      最初のワークロード・クラスターのルート・ターゲットを 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をアンインストールするには、リリース23.1のCN2をアンインストールするの手順に従います。

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

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

    ワークロードクラスターからCN2をアンインストールする場合は完了です。また、中央クラスタからCN2をアンインストールする場合は、次のステップに進みます。

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

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

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