Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

単一クラスタ共有ネットワークのインストールCN2

概要 KubernetesトラフィックとCN2トラフィックが同じネットワークを共有する導入環境に、単一クラスタCN2をインストールする方法の例を参照してください。

単一のクラスタでネットワークを共有する場合:

  • CN2は、そのクラスター向けのネットワークプラットフォームであり、CNIプラグインです。Contrail コントローラは Kubernetes コントロール プレーンで動作し、Contrail データ プレーン コンポーネントはクラスタ内のすべてのノードで実行されます。

  • KubernetesとCN2トラフィックは、単一のネットワークを共有します。

図 1 は、単一クラスターの共有ネットワークの例に従う場合に作成するクラスターを示しています。クラスタは、単一の制御プレーン ノードと 2 つのワーカー ノードで構成されています。

表示されるすべてのノードは、VM またはベア メタル サーバーです。

図 1:単一クラスタ共有ネットワーク CN2 Single Cluster Shared Network CN2

クラスタ内のノード間、およびノードと外部サイト間のすべての通信は、単一の 172.16.0.0/24 ファブリック仮想ネットワークを介して行われます。ファブリックネットワークは、クラスターが実行されるアンダーレイを提供します。

ローカル管理者は、ゲートウェイを介して到達可能な別のネットワークに接続されているのが表示されます。これは、ローカル管理者が企業 LAN からファブリックとクラスタを管理する多くのインストールで一般的です。以下の手順では、ローカル管理者ステーションをローカルコンピューターと呼んでいます。

メモ:

すべてのクラスターノードを接続するのはデータセンターファブリックです。この例では、単一のサブネットとして示されています。実際の導入では、データセンターファブリックは、クラスターの物理接続を提供するスパインおよびリーフスイッチのネットワークです。

Apstraが管理するデータセンターでは、この接続は、基盤となるファブリックスイッチ全体で作成するオーバーレイ仮想ネットワークを通じて指定されます。

このセクションの手順は、指定されたCN2導入を作成するために、提供されたマニフェストを使用する方法の基本的な例を示しています。このセクションで説明されている導入に限定されることはなく、提供されるマニフェストの使用に限定されることもありません。CN2は、多数の導入をサポートしており、詳細には対応しません。提供された例を開始点として使用して、特定の状況に合わせて独自のマニフェストを展開します。

表 1:単一クラスタの共有ネットワークの例
カーネル モード データ プレーン DPDK データ プレーンの リリース
22.4 リリース22.4でカーネルモードデータプレーンを実行する単一クラスタ共有ネットワークCN2をインストールする リリース22.4でDPDKデータプレーンを実行する単一クラスタ共有ネットワークCN2をインストールする
メモ:

提供されるマニフェストは、リリース間で互換性がない場合があります。実行中のリリースでマニフェストを使用してください。

リリース22.4でカーネルモードデータプレーンを実行する単一クラスタ共有ネットワークCN2をインストールする

リリース22.4でカーネルモードのデータプレーンを実行している単一クラスタの共有ネットワーク導入にCN2をインストールするには、次の手順を使用します。

この例の手順で使用するマニフェストは 、シングルクラスター/single_cluster_deployer_example.yaml です。この手順では、このマニフェストを マニフェスト ディレクトリに配置したことを前提としています。

  1. Kubernetes クラスタを作成します。例の手順に従って Kubernetes クラスターを作成または他のメソッドを使用できます。以下の特性を持つクラスタを作成します。
    • クラスターにCNIプラグインはありません。
    • ノードローカルDNSを無効にします。
  2. Contrail 導入者マニフェストを適用します。

    ノードとポッドが立ち上がるまでに数分かかる場合があります。

  3. 展開を確認するには、標準的な kubectl コマンドを使用します。
    1. ノードのステータスを表示します。
      ノードが立ち上がっていることがわかります。ノードが稼働していない場合は、数分間待ってから、もう一度確認してください。
    2. ポッドのステータスを表示します。

      すべてのポッドのステータスが [実行中] になりましょう。そうでない場合は、ポッドが立ち上がるまで数分待ちます。

    3. 一部のポッドがダウンしている場合は、通常通り導入をデバッグします。コマンドをkubectl describe使用して、ポッドが立ち上がらない理由を確認します。ノードがジュニパーネットワークスリポジトリに到達できなくなるネットワークまたはファイアウォールの問題があります。

      これがDNSの問題の例です。

      問題のある各ノードにログインし、 enterprise-hub.juniper.net の名前解決を確認します。例えば:

      メモ:

      enterprise-hub.juniper.net は ping に応答するように設定されていませんが、ping コマンドを使用してドメイン名の解決を確認できます。

      この例では、ドメイン名は解決されていません。ドメイン名サーバーの構成が正しいことを確認します。

      たとえば、Ubuntuシステムが実行されている systemd resolved場合は、ネットワークに対してDNSエントリが正しいことを確認 /etc/systemd/resolved.conf します。設定を更新した後、DNSサービスを再起動します。

    4. 解決できない問題が発生した場合、またはインストール中に間違いを犯した場合は、CN2をアンインストールして最初からやり直してください。CN2をアンインストールするには、 CN2のアンインストールを参照してください。
  4. (オプション)ポストフライトチェックを実行します。「プレフライト チェックとポストフライト チェックの実行」を参照してください

リリース22.4でDPDKデータプレーンを実行する単一クラスタ共有ネットワークCN2をインストールする

リリース22.4でDPDKデータプレーンを実行している単一クラスタの共有ネットワーク導入にCN2をインストールするには、次の手順を実行します。

この例の手順で使用するマニフェストは 、シングルクラスター/single_cluster_deployer_example.yaml です。この手順では、このマニフェストを マニフェスト ディレクトリに配置したことを前提としています。

  1. Kubernetes クラスタを作成します。例の手順に従って Kubernetes クラスターを作成または他のメソッドを使用できます。以下の特性を持つクラスタを作成します。
    • クラスターにCNIプラグインはありません。
    • ノードローカルDNSを無効にします。
    • multus バージョン 0.3.1 を有効にします。
  2. DPDK ノードを指定します。
    DPDK を実行しているノードごとに、次のようにラベル付けします 。この方法でノードにラベルを付けることで、CN2 はマニフェストで指定された DPDK 構成を使用します。
  3. Contrail 導入者マニフェストを適用します。

    ノードとポッドが立ち上がるまでに数分かかる場合があります。

  4. 展開を確認するには、標準的な kubectl コマンドを使用します。
    1. ノードのステータスを表示します。
      ノードが立ち上がっていることがわかります。ノードが稼働していない場合は、数分間待ってから、もう一度確認してください。
    2. ポッドのステータスを表示します。

      すべてのポッドのステータスが [実行中] になりましょう。そうでない場合は、ポッドが立ち上がるまで数分待ちます。

    3. 一部のポッドがダウンしている場合は、通常通り導入をデバッグします。コマンドをkubectl describe使用して、ポッドが立ち上がらない理由を確認します。ノードがジュニパーネットワークスリポジトリに到達できなくなるネットワークまたはファイアウォールの問題があります。

      これがDNSの問題の例です。

      問題が発生している各ノードにログインし、 enterprise-hub.juniper.net の名前解決を確認します。例えば:

      メモ:

      enterprise-hub.juniper.net は ping に応答するように設定されていませんが、ping コマンドを使用してドメイン名の解決を確認できます。

      この例では、ドメイン名は解決されていません。ドメイン名サーバーの構成が正しいことを確認します。

      たとえば、Ubuntuシステムが実行されている systemd resolved場合は、ネットワークに対してDNSエントリが正しいことを確認 /etc/systemd/resolved.conf します。設定を更新した後、DNSサービスを再起動します。

    4. 解決できない問題が発生した場合、またはインストール中に間違いを犯した場合は、CN2をアンインストールして最初からやり直してください。CN2をアンインストールするには、 CN2のアンインストールを参照してください。
  5. (オプション)ポストフライトチェックを実行します。「プレフライト チェックとポストフライト チェックの実行」を参照してください