サービスの改善にご協力お願いします。

お客様のご意見をお聞かせください。

アンケートの所要時間はおよそ 2 分です。

close
keyboard_arrow_left
Juniper Cloud-Native Router導入ガイド
Table of Contents Expand all
list Table of Contents

この機械翻訳はお役に立ちましたでしょうか?

starstarstarstarstar
Go to English page
免責事項:

このページは、サードパーティー製機械翻訳ソフトウェアを使用して翻訳されます。質の高い翻訳を提供するために合理的な対応はされていますが、ジュニパーネットワークスがその正確性を保証することはできかねます。この翻訳に含まれる情報の正確性について疑問が生じた場合は、英語版を参照してください. ダウンロード可能なPDF (英語版のみ).

ベアメタルサーバー向けJuniper Cloud-Native Routerのインストールと確認

date_range 04-Nov-24

概要 Juniper Cloud-Native Router(クラウドネイティブルーター)は、JCNR-Controller(cRPD)を使用してコントロールプレーン機能を提供し、JCNR-CNIを使用してコンテナネットワークインターフェイスを提供します。Juniper Cloud-Native Routerは、DPDK対応のvRouterを使用して高性能なデータプレーン機能を提供し、Syslog-NGを使用して通知機能を提供します。このセクションでは、Cloud-Native Routerのこれらのコンポーネントをインストールする方法について説明します。

Helmチャートを使用したJuniper Cloud-Native Routerのインストール

このセクションでは、クラウドネイティブ・ルーター・イメージ・コンポーネントをDockerにロードし、Helmチャートを使用してクラウド・ネイティブ・ルーター・コンポーネントをインストールするために必要な手順について説明します。

  1. ベアメタル サーバーのシステム要件」セクションを確認して、クラスターに必要な構成がすべて揃っていることを確認します。
  2. 目的のJCNRソフトウェアパッケージを任意のディレクトリにダウンロードします。
    パッケージをダウンロードしてJCNRのみをインストールするか、パッケージをダウンロードしてJuniper cSRXと一緒にJNCRをインストールするかを選択できます。使用可能なパッケージの説明については、 JCNR ソフトウェア・ダウンロード・パッケージ を参照してください。Juniper cSRXを今すぐインストールしたくない場合は、後で作業中のJCNRインストールにJuniper cSRXをインストールすることをいつでも選択できます。
  3. ダウンロードしたパッケージを展開します。
    content_copy zoom_out_map
    tar xzvf <sw_package>.tar.gz
  4. ディレクトリをメインインストールディレクトリに変更します。
    • JCNRのみをインストールする場合は、次のようになります。

      content_copy zoom_out_map
      cd Juniper_Cloud_Native_Router_<release>
      このディレクトリには、JCNR の Helm チャートのみが含まれています。
    • JCNRとcSRXを同時にインストールする場合は、次のようになります。

      content_copy zoom_out_map
      cd Juniper_Cloud_Native_Router_CSRX_<release>
      このディレクトリには、JCNRとcSRXの組合せHelmチャートが含まれています。
    手記:

    インストールの残りのすべての手順では、現在の作業ディレクトリが Juniper_Cloud_Native_Router_<release> またはJuniper_Cloud_Native_Router_CSRX_<release>されていることを前提としています

  5. 現在のディレクトリの内容を表示します。
    content_copy zoom_out_map
    ls
    helmchart  images  README.md  secrets
  6. helmchart ディレクトリに移動し、Helm チャートを展開します。
    content_copy zoom_out_map
    cd helmchart
    • JCNRの場合のみ:

      content_copy zoom_out_map
      ls
      jcnr-<release>.tgz
      content_copy zoom_out_map
      tar -xzvf jcnr-<release>.tgz
      content_copy zoom_out_map
      ls
      jcnr   jcnr-<release>.tgz
      Helm チャートは jcnr ディレクトリにあります。
    • JCNRとcSRXを組み合わせた場合:

      content_copy zoom_out_map
      ls
      jcnr_csrx-<release>.tgz
      content_copy zoom_out_map
      tar -xzvf jcnr_csrx-<release>.tgz
      content_copy zoom_out_map
      ls
      jcnr_csrx   jcnr_csrx-<release>.tgz
      Helm チャートは jcnr_csrx ディレクトリにあります。
  7. 導入にはJCNRコンテナイメージが必要です。次のいずれかのオプションを選択します。
    • Juniper Networks enterprise-hub.juniper.net リポジトリからイメージをデプロイするようにクラスターを構成します。デプロイ Helm チャートでリポジトリ資格情報を構成する方法については、「 リポジトリ資格情報の構成 」を参照してください。

    • ダウンロードした JCNR ソフトウェアパッケージに含まれているイメージ tarball からイメージをデプロイするようにクラスターを構成します。ローカル コンテナー ランタイムにイメージをインポートする方法については、「 パッケージ済みイメージのデプロイ 」を参照してください。

  8. 「ライセンスのインストール」の手順に従って、JCNR ライセンスをインストールします。
  9. ホスト サーバーの root パスワードを secrets/jcnr-secrets.yaml ファイルの次の行に入力します。
    content_copy zoom_out_map
      root-password: <add your password in base64 format>
    パスワードは base64 エンコード形式で入力する必要があります。パスワードをエンコードするには、プレーンテキストのパスワードを1行に記述したファイルを作成します。次に、次のコマンドを発行します
    content_copy zoom_out_map
    base64 -w 0 rootPasswordFile
    このコマンドの出力を secrets/jcnr-secrets.yamlにコピーします。
  10. secrets/jcnr-secrets.yaml をクラスタに適用します。
    content_copy zoom_out_map
    kubectl apply -f secrets/jcnr-secrets.yaml
    namespace/jcnr created
    secret/jcnr-secrets created
  11. 必要に応じて、vRouter DPDKコンテナにコアを割り当てる方法を設定します。JCNR 転送プレーンへの CPU の割り当てを参照してください。
  12. helmchart/jcnr/values.yaml または helmchart/jcnr_csrx/values.yaml ファイルを使用して、デプロイの Helm チャートをカスタマイズします。

    Helm Chart構成の詳細は、 ベア・メタル・サーバー用のJCNR Helm Chartのカスタマイズ を参照してください。

  13. 必要に応じて、JCNR 構成をカスタマイズします。
    cRPDカスタマイズの作成と適用については、 JCNR設定のカスタマイズ を参照してください。
  14. Juniper cSRXを今すぐインストールする場合は、cSRXライセンスの適用とcSRXの設定の手順に従ってください。
  15. JCNR をインストールするノードに、nodeaffinity構成 (values.yaml で定義されている場合) に基づいてラベルを付けます。例えば:
    content_copy zoom_out_map
    kubectl label nodes ip-10.0.100.17.lab.net key1=jcnr --overwrite
  16. Helmチャートを使用してJuniper Cloud-Native Routerを導入します。
    helmchart/jcnr または helmchart/jcnr_csrx ディレクトリーに移動し、次のコマンドを実行します。
    content_copy zoom_out_map
    helm install jcnr .
    または
    content_copy zoom_out_map
    helm install jcnr-csrx .
    content_copy zoom_out_map
    NAME: jcnr
    LAST DEPLOYED: Fri Dec 22 06:04:33 2023
    NAMESPACE: default
    STATUS: deployed
    REVISION: 1
    TEST SUITE: None
  17. Juniper Cloud-Native Routerの導入を確認します。
    content_copy zoom_out_map
    helm ls

    サンプル出力:

    content_copy zoom_out_map
    NAME	NAMESPACE	REVISION	UPDATED           STATUS  	CHART             APP VERSION
    jcnr	default  	1       	<date-time>       deployed	jcnr-<version>    <version>

インストールの確認

概要 このセクションでは、JCNR のデプロイが成功したことを確認できます。
手記:

この手順例で示す出力は、クラスタ内のノード数の影響を受けます。セットアップに表示される出力は、その点で異なる場合があります。

  1. kubectl get pods -A コマンドを発行して、JCNR ポッドの状態を確認します。
    kubectl コマンドの出力には、すべての名前空間の Kubernetes クラスター内のすべてのポッドが表示されます。デプロイが成功すると、すべてのポッドが実行状態になります。この例では、Juniper Cloud-Native Router Podを 太字でマークしています。次に例を示します。
    content_copy zoom_out_map
    kubectl get pods -A
    content_copy zoom_out_map
    NAMESPACE         NAME                                           READY   STATUS    RESTARTS         AGE
    contrail-deploy   contrail-k8s-deployer-579cd5bc74-g27gs         1/1     Running   0                103s
    contrail          jcnr-0-dp-contrail-vrouter-nodes-b2jxp         2/2     Running   0                87s
    contrail          jcnr-0-dp-contrail-vrouter-nodes-vrdpdk-g7wrk  1/1     Running   0                87s
    jcnr              jcnr-0-crpd-0                                  1/1     Running   0                103s
    jcnr              syslog-ng-ds5qd                                1/1     Running   0                103s
    kube-system       calico-kube-controllers-5f4fd8666-m78hk        1/1     Running   0                4h2m
    kube-system       calico-node-28w98                              1/1     Running   0                86d
    kube-system       coredns-54bf8d85c7-vkpgs                       1/1     Running   0                3h8m
    kube-system       dns-autoscaler-7944dc7978-ws9fn                1/1     Running   0                86d
    kube-system       kube-apiserver-ix-esx-06                       1/1     Running   0                86d
    kube-system       kube-controller-manager-ix-esx-06              1/1     Running   0                86d
    kube-system       kube-multus-ds-amd64-jl69w                     1/1     Running   0                86d
    kube-system       kube-proxy-qm5bl                               1/1     Running   0                86d
    kube-system       kube-scheduler-ix-esx-06                       1/1     Running   0                86d
    kube-system       nodelocaldns-bntfp                             1/1     Running   0                86d
  2. kubectl get ds -A コマンドを発行して、JCNR デーモンセットを検査します。

    kubectl get ds -Aコマンドを使用して、デーモンセットのリストを取得します。JCNR デーモンセットは太字で強調表示されます。

    content_copy zoom_out_map
    kubectl get ds -A
    content_copy zoom_out_map
    NAMESPACE     NAME                                        DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR              AGE
    contrail      jcnr-0-dp-contrail-vrouter-nodes            1         1         1       1            1           <none>                     90m
    contrail      jcnr-0-dp-contrail-vrouter-nodes-vrdpdk     1         1         1       1            1           <none>                     90m
    jcnr          syslog-ng                                   1         1         1       1            1           <none>                     90m
    kube-system   calico-node                                 1         1         1       1            1           kubernetes.io/os=linux     86d
    kube-system   kube-multus-ds-amd64                        1         1         1       1            1           kubernetes.io/arch=amd64   86d
    kube-system   kube-proxy                                  1         1         1       1            1           kubernetes.io/os=linux     86d
    kube-system   nodelocaldns                                1         1         1       1            1           kubernetes.io/os=linux     86d
    
  3. kubectl get statefulsets -Aコマンドを発行して、JCNRステートフルセットを検証します。

    コマンドの出力は、ステートフルセットを提供します。

    content_copy zoom_out_map
    kubectl get statefulsets -A
    content_copy zoom_out_map
    NAMESPACE   NAME          READY   AGE
    jcnr        jcnr-0-crpd   1/1     27m
  4. cRPDがライセンスされており、適切な設定がなされているかどうかを確認します
    1. cRPD CLIにアクセスする手順については、「cRPD CLIへのアクセス」セクションを参照してください。
    2. cRPD CLIにアクセスしたら、CLIモードでshow system licenseコマンドを発行して、システムライセンスを表示します。例えば:
      content_copy zoom_out_map
      root@jcnr-01:/# cli
      root@jcnr-01> show system license
      License usage:
                                       Licenses     Licenses    Licenses    Expiry
        Feature name                       used    installed      needed
        containerized-rpd-standard            1        1           0    2024-09-20 16:59:00 PDT
       
      Licenses installed:
        License identifier: 85e5229f-0c64-0000-c10e4-a98c09ab34a1
        License SKU: S-CRPD-10-A1-PF-5
        License version: 1
        Order Type: commercial
        Software Serial Number: 1000098711000-iHpgf
        Customer ID: Juniper Networks Inc.
        License count: 15000
        Features:
          containerized-rpd-standard - Containerized routing protocol daemon with standard features
            date-based, 2022-08-21 17:00:00 PDT - 2027-09-20 16:59:00 PDT
    3. CLIモードでshow configuration | display setコマンドを発行して、cRPDのデフォルトおよびカスタム設定を表示します。出力は、カスタム構成とJCNR展開モードに基づきます。
      content_copy zoom_out_map
      root@jcnr-01# cli          
      root@jcnr-01> show configuration | display set 
    4. exit コマンドを入力して、ポッド シェルを終了します。
  5. vRouter インターフェイスの設定を確認します
    1. vRouter CLI にアクセスする手順については、「vRouter CLI へのアクセス」セクションを参照してください。
    2. vRouter CLI にアクセスしたら、vif --list コマンドを発行して vRouter インターフェイスを表示します。出力は、JCNR デプロイメント・モードおよび構成によって異なります。ファブリックインターフェイスを1つ設定したL3モードの導入例を以下に示します。
      content_copy zoom_out_map
      $ vif --list 
      
      Vrouter Interface Table
      
      Flags: P=Policy, X=Cross Connect, S=Service Chain, Mr=Receive Mirror
             Mt=Transmit Mirror, Tc=Transmit Checksum Offload, L3=Layer 3, L2=Layer 2
             D=DHCP, Vp=Vhost Physical, Pr=Promiscuous, Vnt=Native Vlan Tagged
             Mnp=No MAC Proxy, Dpdk=DPDK PMD Interface, Rfl=Receive Filtering Offload, Mon=Interface is Monitored
             Uuf=Unknown Unicast Flood, Vof=VLAN insert/strip offload, Df=Drop New Flows, L=MAC Learning Enabled
             Proxy=MAC Requests Proxied Always, Er=Etree Root, Mn=Mirror without Vlan Tag, HbsL=HBS Left Intf
             HbsR=HBS Right Intf, Ig=Igmp Trap Enabled, Ml=MAC-IP Learning Enabled, Me=Multicast Enabled
      
      vif0/0      Socket: unix MTU: 1514
                  Type:Agent HWaddr:00:00:5e:00:01:00
                  Vrf:65535 Flags:L2 QOS:-1 Ref:3
                  RX queue errors to lcore 0 0 0 0 0 0 0 0 0 0 0 0 0 0
                  RX packets:0  bytes:0 errors:0
                  TX packets:0  bytes:0 errors:0
                  Drops:0
      
      vif0/1      PCI: 0000:5a:02.1 (Speed 10000, Duplex 1) NH: 6 MTU: 9000
                  Type:Physical HWaddr:ba:9c:0f:ab:e2:c9 IPaddr:0.0.0.0
                  DDP: OFF SwLB: ON
                  Vrf:0 Mcast Vrf:0 Flags:L3L2Vof QOS:0 Ref:12
                  RX port   packets:66 errors:0
                  RX queue errors to lcore 0 0 0 0 0 0 0 0 0 0 0 0 0 0
                  Fabric Interface: 0000:5a:02.1  Status: UP  Driver: net_iavf
                  RX packets:66  bytes:5116 errors:0
                  TX packets:0  bytes:0 errors:0
                  Drops:0
      
      vif0/2      PMD: eno3v1 NH: 9 MTU: 9000
                  Type:Host HWaddr:ba:9c:0f:ab:e2:c9 IPaddr:0.0.0.0
                  DDP: OFF SwLB: ON
                  Vrf:0 Mcast Vrf:65535 Flags:L3L2DProxyEr QOS:-1 Ref:13 TxXVif:1 
                  RX queue errors to lcore 0 0 0 0 0 0 0 0 0 0 0 0 0 0
                  RX packets:0  bytes:0 errors:0
                  TX packets:66  bytes:5116 errors:0
                  Drops:0
                  TX queue  packets:66 errors:0
                  TX device packets:66  bytes:5116 errors:0
    3. exit コマンドを入力して、ポッド シェルを終了します。
external-footer-nav