Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
このページの目次
 

L2 - Cloud-Native Routerインスタンスへのカーネルアクセスを持つユーザーポッドの追加

概要 このトピックでは、カーネル アクセス インターフェイスを持つユーザー ポッドを cloud-native ルーターのインスタンスに追加する方法について説明します。

概要

クラウドネイティブ ルーターにユーザー ポッドを追加するには、次の大まかなタスクを行います。

  • ネットワーク接続定義 (NAD) が存在することを確認します。

  • ポッド YAML ファイルをクラウドネイティブ ルーター クラスターに適用します。

この例では、さまざまなオプションを指定して コマンドを使用します kubectl 。このコマンドは、ホストサーバーの CLI で実行する必要があります。

大まかな手順

この例では、これが新しくインストールした cloud-native ルーターに追加する最初のユーザー ポッドであると想定しています。そのため、クラスタに NAD を作成してから、新しいユーザ ポッドを追加する手順を示します。

以下に、この例で実行する個々の手順の一覧を示します。リスト内の各ステップは、ステップの詳細な説明へのリンクです。

  1. vRouter インターフェイス リストを表示する

  2. NAD YAML ファイルの例を調べる

  3. クラスタへの NAD の適用

  4. NAD の確認

  5. ポッド YAML ファイルの例を調べる

  6. ポッドをクラスターに適用します

  7. ポッドの確認

  8. 更新された vRouter インターフェイス リストを表示する

始める前に

vRouter-Agent CLI へのアクセス

この手順例の最初と最後のステップは、vRouter エージェントの CLI で実行します。ホスト サーバーへの 2 つの SSH (ターミナル) セッションを開くことをお勧めします。1 つのセッションを使用して vRouter エージェントで CLI コマンドを実行し、もう 1 つのセッション kubectl を使用して NAD とポッドをクラスタに展開するコマンドを実行できます。

メモ:

ここからシステムにコマンドを簡単にコピーして貼り付けることができるように、ホストサーバーからのパスまたはシェルプロンプトはコマンドリストに含まれていません。

ポッド内のcontrail-vrouter-mastersコンテナの contrail-vrouter-agent CLI にアクセスします。

1つの端末で、次のコマンドを入力します。

出力は、次のような 1 行になります。

この出力は、vRouter ポッド contrail-vrouter-masters-97v8zの名前と特定のインスタンス ハッシュ を提供します。次のコマンドでこの名前を使用して、vRouter CLI にアクセスします。vRouter ポッドの名前の末尾には、異なるハッシュが付きます。次のコマンドの代わりに <contrail-vrouter-masters-hash> 、システムのポッド名を使用します。

次のコマンドを入力します。

次の 2 行の出力が表示されます。

シェル プロンプトが、コマンドを入力したときの状態から変更されていることに注意してください。この例の作成に使用したシステムでは、プロンプトが から に変更されました[root@jcnr1 ~]#root@jcnr1:/#。このプロンプトの変更は、vRouter エージェントの CLI に正常に接続したことを示します。

これで、例を完了するための次の詳細な手順を確認できます。

詳細な手順

  1. vRouterエージェントインターフェイスリストを表示します。

    vRouter-agent CLI に接続されたターミナルセッションで、以下のコマンドを入力します。

    出力は次のようになります。

    ご覧のとおり、vRouterエージェントは5つのインターフェイスを認識しています

    • VIF0/0

    • VIF0/1

    • VIF0/2

    • VIF0/3

    • VIF0/4

    大まかなステップに戻る

  2. NAD YAML ファイルを調べます。

    この手順では、YAML 形式のコメント付き NAD ファイルを確認します。コメントはハッシュ記号 (#) で始まり、太字で表示されます。このファイルには NAD の例が含まれているため、ほとんどの値を変更する必要はありません。NAD は、ポッドがネットワークに接続できるようにする仮想デバイスのパラメータを指定します。クラウドネイティブルーターでこのサンプルファイルを使用できるのは、ファイルからコメントを削除する場合のみです。

    cat nad-kernel_access_bd3001.yaml

    NAD YAML ファイルをクラスターに適用すると、仮想デバイスが Kubernetes クラスターに表示されます。

    大まかなステップに戻る

  3. NAD をクラスタに適用します。

    NAD ファイルのバージョンに同じファイル名を使用する場合は、ホストサーバの CLI で次のコマンドを実行できます。

    コマンドの出力は次のようになります。

    networkattachmentdefinition.k8s.cni.cncf.io/nad-vswitch-bd3001 created

    大まかなステップに戻る

  4. NAD を検証します。

    ホストサーバーの CLI で、次のコマンドを発行します。

    コマンドの出力は次のようになります。

    大まかなステップに戻る

  5. ポッド YAML ファイルの例を確認します。

    NAD YAML ファイルと同様に、ポッド YAML ファイルまたはポッド定義では、作成するユーザー ポッドの構成を指定します。この例では、先ほど適用した NAD で動作する pod1-vswitch-bd3001 ポッドを作成します。クラウドネイティブルーターの導入で次のファイルを使用できます。

    cat pod-kernel-access-vlan-3001.yaml

    大まかなステップに戻る

  6. ポッドをクラスターに適用します。

    ポッド YAML ファイルに前述のファイル名を使用した場合は、ホストサーバーの CLI で次のコマンドを実行して、ポッドをクラスターに適用できます。

    コマンドの出力は次のようになります。

    pod/odu-kernel-pod-bd3001 created created

    大まかなステップに戻る

  7. ポッドを検証します。

    ホストサーバーの CLI で、次のコマンドを発行してポッドの作成を確認します。

    コマンドの出力は次のようになります。

    大まかなステップに戻る

  8. 更新された vRouter インターフェイス リストを表示します。

    vRouter-agent CLI で、以下のコマンドを発行します。

    コマンドの出力は次のようになります。

    vRouter エージェントが 6 つのインターフェイスを認識するようになりました。これは、Podがサブインターフェイスと親インターフェイスを作成したためです。上記のように、仮想VLANインターフェイス の は、 vif0/4親インターフェイス vif0/3を と表示しています。インターフェイス 、 は、 vif0/3NAD およびポッド YAML ファイルで定義されている「net1」を含む名前の仮想インターフェイスです。

    大まかなステップに戻る