Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Junos PyEZのテーブルとビューについて

概要 Junos PyEZのテーブルとビューを使用して、Junosデバイスから運用データや設定データを抽出したり、Junosデバイス上の特定のリソースをプログラムによって設定したりできます。

Junos PyEZのテーブルとビューはシンプルなYAML定義で、これにより以下のことが可能になります。

  • Junosデバイスから運用情報を抽出する

  • Junos デバイスから構成データを取得する

  • Junosデバイスの設定

テーブルとビューは、複雑な操作コマンドの出力または構成データから情報を抽出し、それをPythonデータ構造にマッピングするためのシンプルで効率的な方法を提供します。テーブルとビューは YAML を使用して定義されるため、独自のテーブルとビューを作成するために複雑なコーディングは必要ありません。情報を抽出するには、定義済みまたはカスタムの表を使用して、コマンドの出力または構成データを、項目のコレクションで構成される表にマップします。各 Table 項目は、データのレコードを表し、一意のキーを持ちます。テーブルは、データ内のタグ名またはフィールドをPythonデータ構造の変数名にマッピングするために使用される特定のビューも参照します。

表 1 は、さまざまなタイプのテーブルの概要と、各タイプが最初にサポートされた Junos PyEZ リリースを示しています。Junos PyEZ運用(op)テーブルは、運用コマンドの出力から項目を選択します。Op テーブルでは、RPC を実行して構造化出力 (XML) を解析することも、コマンドを実行して非構造化出力 (CLI 形式のテキスト) を解析することもできます。Junos PyEZ設定テーブルは、特定の設定データベースの指定された階層でステートメントを選択または設定する構造化された設定リソースを定義します。

プロパティを定義する構成テーブルは、 get 構成データのみを取得できます。プロパティを定義する構成テーブルは、 set 対応するビューで定義されている構成ステートメントを取得および変更できます。Junos PyEZフレームワークに構成テーブルを追加すると、Junos PyEZはリソースの構成クラスを動的に作成し、プログラムによってデバイス上のリソースを構成することができます。

表 1: Junos PyEZ テーブルタイプ

テーブルの種類

サブセット

説明

Junos PyEZリリース

操作テーブル

構造化された出力を持つ RPC

デバイス上で RPC を実行し、構造化された XML 出力を返す

1.0

非構造化出力のコマンド

デバイスでCLIコマンドを実行するか、FPCでvtyコマンドを実行し、構造化されていないCLI形式の出力を返します

2.3

構成テーブル

get

構成データの取得

1.2

set

設定データを取得するか、対応するビューで定義されたステートメントを設定します

2.0

例えば、次のopテーブルでは、Junos OS CLIshow arp no-resolveのコマンドに対応するオプションno-resolveを使用してRPCの出力get-arp-table-informationを取得しています。テーブルは、XML 出力から要素を抽出しますarp-table-entry。対応するビューは、ユーザー定義フィールド名を、Junos XML 出力内のそのデータの位置に対応する XPath 式にマッピングすることにより、各arp-table-entry項目から 3 つのフィールドを選択します。この場合、 mac-addressip-address、および interface-name は のarp-table-entry子要素です。

操作テーブルとビューの作成と使用の詳細については、次のトピックを参照してください。

構成テーブルとビューの作成と使用の詳細については、次のトピックを参照してください。

Junos PyEZアプリケーションでのカスタムテーブルとビューの読み込みやインポート、またはファイルへのデータの保存については、以下のトピックを参照してください。