ジュニパーネットワークスのYANGモジュールを使用する
ジュニパーネットワークスは、Junosデバイスの設定階層、RPC、状態データ、YANG拡張を定義するYANGモジュールを公開しています。このトピックでは、ジュニパーネットワークスの YANG モジュールを入手する方法と、それらを別のモジュールにインポートする方法について詳しく説明します。
ジュニパーネットワークスのYANGデータモデルを入手
ジュニパーネットワークスのYANGデータモデルは、次の方法で取得できます。
-
ジュニパーネットワークスのウェブサイト(https://www.juniper.net/support/downloads)からモジュールをダウンロードする
-
Juniper/yang GitHub リポジトリからのモジュールのダウンロード
-
ローカルまたはリモートセッションによるJunosデバイス上でのモジュールの生成
Junos OS リリース 17.1 以前では、ジュニパーネットワークス Web サイトに掲載されている Junos OS 設定およびコマンド階層用の YANG モジュールによって、その Junos OS リリースが実行されているすべてのデバイスのスキーマが定義されています。
Junos OS リリース 17.2 以降、Junos OS YANG モジュールはデバイス ファミリーに固有です。特定のOSとリリースについて、YANGモジュールのダウンロードファイルとGitHubリポジトリには、デバイスファミリごとに個別のディレクトリと 共通の ディレクトリが含まれています。各ファミリ固有のディレクトリには、そのファミリのプラットフォームでサポートされている設定および操作コマンド モジュールが含まれ、 共通 ディレクトリには、すべてのデバイス ファミリに共通のモジュールが含まれています。デバイス ファミリの詳細については、 Junos YANG モジュールについてを参照してください。
ローカルデバイスでYANGモジュールを生成する場合、モジュールにはネイティブJunosモジュールだけでなく、デバイスに追加された標準またはカスタムモジュールも含まれます。Junos OS リリース 17.4R1 以降、ローカル デバイスで生成されるネイティブ YANG モジュールには、特定のデバイス ファミリー内のすべてのデバイスで同一のファミリー固有のスキーマが含まれています。Junos OSリリース17.3以前では、ローカルデバイスで生成されたネイティブYANGモジュールには、デバイス固有のスキーマが含まれています。
Junos OS Evolvedリリース23.4R1以降、Junos OS EvolvedネイティブYANGモジュールがジュニパーネットワークスのダウンロードサイトとGitHubで公開されています。以前のリリースでは、デバイス上で YANG モジュールを生成する必要があります。
さらに、Junos OSリリース23.4R1およびJunos OS Evolvedリリース23.4R1以降、特定のOSとリリースのすべてのYANGデータモデルを、単一のダウンロードパッケージとGitHubリポジトリフォルダで提供します。パッケージとリポジトリには次のものが含まれます。
-
ネイティブ構成、状態、および RPC データ モデル
-
そのOSでサポートされているOpenConfigの構成と状態モデル
-
そのOSでサポートされているIETFモデル
ジュニパーネットワークスのYANGモジュールのダウンロード
ジュニパーネットワークスのサイトからYANGモジュールをダウンロードするには、次の手順に従います。
- https://support.juniper.net/support/downloads のダウンロードページにアクセスします。
- 製品を選択します。
- ドロップダウン メニューで、適切な OS とバージョンを選択します。
- [ツール] セクションを展開して、利用可能なダウンロードを表示します。
- [ダウンロード] 列で、ダウンロードする YANG モジュール パッケージのリンクをクリックします。
- 使用許諾契約書を確認して同意します。
- ダウンロード ページの指示に従ってファイルをダウンロードします。
ご使用の製品ページにダウンロード可能なYANGモジュールがない場合は、 Juniper/yang GitHubリポジトリからモジュールをダウンロードするか、Junosデバイスでモジュールを生成できます。
Junos デバイスでの YANG モジュールの生成
Junos CLI から YANG モジュールを生成するには、次の手順に従います。
デバイスは、指定された出力ディレクトリにYANGモジュールを生成します。
Junos OS Evolvedリリース23.4R2以降、QFXシリーズデバイスのネイティブYANGモジュールは、junos-qfxの代わりにjunosデバイスファミリー識別子を使用するようになりました。代わりに junos-qfx ファミリ識別子を使用するデバイス固有のスキーマを出力するには、[edit system services netconf yang-modules]階層レベルで device-specific ステートメントと emit-family-ns-and-module-name ステートメントを構成します。
リモートセッションからのYANGモジュールの生成
リモートセッションからYANGモジュールを生成するには:
デバイスは、指定された出力ディレクトリにYANGモジュールを生成します。
また、 <get-schema> ネットワーク設定プロトコル(NETCONF)オペレーションを使用して、デバイスからYANGモジュールを取得することもできます。詳細については、「 スキーマの取得」を参照してください。
ジュニパーネットワークスYANGモジュールのインポート
YANGベースのツールを使用して、ジュニパーネットワークスのYANGモジュールを活用することができます。カスタム YANG モジュールを開発している場合、モジュールをカスタム モジュールにインポートすることで、ジュニパーネットワークス YANG モジュールの定義を参照できます。
ジュニパーネットワークスの YANG モジュールを既存のモジュールにインポートするには、次の手順に従います。
変更履歴テーブル
機能のサポートは、使用しているプラットフォームとリリースによって決まります。 機能エクスプローラー を使用して、機能がプラットフォームでサポートされているかどうかを判断します。
junos-qfxの代わりに
junosデバイスファミリー識別子を使用するようになりました。
show system schema コマンドと
get-yang-schema RPC には、出力ファイルを生成するディレクトリを指定する
output-directory オプションを含める必要があります。以前のリリースでは、単一のモジュールにモジュールを標準出力で表示するように要求するときに、
output-directory オプションを省略できます。