Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

JCNR 設定のカスタマイズ

概要 Configletカスタム・リソースを使用してJCNR構成をカスタマイズする方法については、このトピックをお読みください。

コンフィグレットカスタムリソース

Juniper Cloud-Native Router(JCNR)リリース24.2以降、コンフィグレットカスタムリソースを使用したJCNR設定のカスタマイズがサポートされています。コンフィグレットは、サポートされているJunos設定の定義済みテンプレートをレンダリングするか、未加工の設定を使用して生成できます。生成された設定は検証され、1つ以上の Junos設定グループとしてJCNRコントローラ(cRPD)に展開されます。

手記:

CLIから直接JCNRコントローラ(cRPD)を設定することは推奨しません。すべての設定は、コンフィグレットのカスタムリソースを使用して実行する必要があります。cRPD CLIから直接実行された設定は、ノードの再起動やポッドのクラッシュによって持続しません。

設定例

jcnr名前空間でConfiglet種類のコンフィグレット カスタム リソースを作成します。未加工の設定をJunos setコマンドとして提供します。

crpdSelectorを使用して、コンフィグレットが適用される場所を制御します。生成された構成は、指定されたラベルのみに一致するノードのcRPDポッドにデプロイされます。crpdSelectorが定義されていない場合、設定はクラスター内のすべての cRPD ポッドに適用されます。

コンフィグレットyamlの例を以下に示します。

キーまたは変数を含むテンプレート化された configlet yaml を使用することもできます。変数の値は、 configletDataValueRef によって参照される configletDataValue カスタム リソースによって提供されます。テンプレート化されたコンフィグレットyamlの例を以下に示します。

テンプレートを使用して構成をレンダリングするには、ConfigletDataValue カスタム リソースでキーと値のペアを指定する必要があります。

生成された設定は検証され、すべてまたは選択した cRPD ポッドに Junos 設定グループとして適用されます。

コンフィグレットリソースの適用

コンフィグレットリソースを使用して、JCNRの展開時、またはcRPDポッドの稼働後に、選択したcRPDポッドまたはすべてのcRPDポッドに設定を適用できます。コンフィグレットの導入について詳しく見ていきましょう。

未加工の構成を適用する

  1. 未加工の構成コンフィグレットyamlを作成します。次の例は、cRPDでループバックインターフェイスを設定しています。

  2. kubectl apply コマンドを使用して設定を適用します。

  3. コンフィグレットを確認します。

    コンフィグレットリソースがデプロイされると、 crpdSelectorに一致するノードごとに1つずつ、追加のノードコンフィグレットカスタムリソースが作成されます。

    コンフィグレット yaml で定義された設定が無効であるか、デプロイに失敗した場合は、ノードコンフィグレットカスタムリソースの kubectl describe を使用してエラーメッセージを表示できます。

    例えば:

    次の出力は、簡潔にするためにトリミングされています。

  4. 必要に応じて、CLIモードの AccesscRPD CLI シェルで設定を確認します。この設定は、configletリソースにちなんで名付けられた設定グループとして適用されることに注意してください。

    手記:

    コンフィグレットを使用して生成された設定は、設定グループとしてcRPDに適用されます。そのため、コンフィグレットを指定する際には、設定グループを使用しないことをお勧めします。

テンプレート化された構成の適用

  1. キーと値のペアのテンプレート化されたコンフィグレット yaml とコンフィグレット データ値 yaml を作成します。

  2. kubectl apply コマンドを使用して、構成データ値 yaml から構成を適用します。

  3. コンフィグレットを確認します。

    コンフィグレットリソースがデプロイされると、 crpdSelectorに一致するノードごとに1つずつ、追加のノードコンフィグレットカスタムリソースが作成されます。

    configlet yaml で定義された設定が無効であるか、デプロイに失敗した場合は、ノード configlet カスタムリソースの kubectl describe を使用してエラーメッセージを表示できます。

    例えば:

    次の出力は、簡潔にするためにトリミングされています。

  4. 必要に応じて、CLIモードの AccesscRPD CLI シェルで設定を確認します。この設定は、configletリソースにちなんで名付けられた設定グループとして適用されることに注意してください。

コンフィグレットの変更

configlet リソースを変更するには、yaml ファイルを変更し、 kubectl apply コマンドを使用して再適用します。

既存のコンフィグレットリソースに対する変更は、cRPDの設定グループを置き換えることで調整されます。

設定グループを削除するには、 kubectl delete コマンドを使用して configlet リソースを削除します。

トラブルシューティング

問題が発生した場合は、 contrail-k8s-deployer ログを確認してください。例えば: