キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 
cancel
1186
閲覧回数
10
いいね!
0
コメント
Akira Iwamoto
Cisco Employee
Cisco Employee

 

 

はじめに

NSO はSouthbound接続として、以下のタイプのNEDを使用することが出来ます。

 

  • CLI NED
  • Generic NED
  • NETCONF NED
  • SNMP NED

NETCONF NED は、NETCONF対応機器と NETCONF プロトコルを使用してConfigの取得編集を行うためのNEDで、基本的にはユーザ自身で作成する必要があります。

 

本ドキュメントでは、NETCONF NED の作成方法について説明致します。

 

 

NETCONF NED 作成に必要となるデータ

NETCONF NED は、機器が使用する Yang で表現されたデータモデルを元に作成します。従って、機器ベンダーが提供する Yang ファイルを取得する必要があります。 

 

機器ベンダーはいろいろな方法でYangファイルを提供しています。

 

  • 機器ベンダーのWebsite からダウンロード
  • 機器購入時に購入者へのみオフラインでの提供

 

また、NETCONF 機器である以上、<get-schema> オペレーションをサポートしているはずですので、それを使用して Yang を機器からダウンロードすることも可能です。しかしながら、<get-schema>の実装をしていない機器も存在するため、ダウンロード出来ない場合には機器ベンダーへ問い合わせをしてください。

 

例: ASR9000 用のモデルのダウンロード

ここでは、Cisco ASR9000 上のIOS-XR 機器を例として紹介します。

https://www.cisco.com/c/en/us/td/docs/routers/asr9000/software/data-models/guide/b-data-models-config-guide-asr9000/b-data-odels-config-guide-asr9000_chapter_010.html

 

CCOでは、機器からの取得を推奨しています。これは、特定の機器の特定のバージョンに特化したモデルが存在し、"IOS-XR 用のモデル"には当該機器で使用するモデルと差分が有る場合があるからです。

 

モデルを機器からダウンロードする方法については、別記事をご確認下さい。

 

ここでは、CCOの上記記事に案内がありますように、Github 上に公開されたYangを使用します。

https://github.com/YangModels/yang/tree/master/vendor/cisco/xr/532

 

当該レポジトリを clone し、yang ファイルを取得し、一つのディレクトリに保存してください。

ここでは、yang ディレクトリに保存しました。

作成手順

 

NEDもパッケージの一つです。通常のサービスパッケージ作成と同様、ncs-make-packages コマンドを使用することが可能です。

 

$ ncs-make-package --netconf-ned yang/ iosxrned
$

 

上記コマンドでは、yang ディレクトリにダウンロードした yang ファイル群を使用して、iosxrned ディレクトリに NSO 用の NED としてパッケージを作成しています。

 

パッケージとして必要な package-meta-data.xml が生成されています。また、この yang を使用する netsimが作成されており、netsim インスタンスを作成することが可能です。

$ ls -la iosxrned/
total 4
drwxr-xr-x 5 user user 170 Jan 27 17:44 .
drwxr-xr-x 4 user user 136 Jan 27 17:44 ..
drwxr-xr-x 5 user user 170 Jan 27 17:44 netsim
-rw-r--r-- 1 user user 386 Jan 27 17:44 package-meta-data.xml
drwxr-xr-x 5 user user 170 Jan 27 17:44 src
$

src ディレクトリに、yang ファイルがコピーされていますので、この中で make します。

警告が表示される場合もありますが、それは無視して問題ありません。

$ cd src
$ make
mkdir -p ncsc-out
mkdir -p ../load-dir
mkdir -p ../shared-jar
mkdir -p ../private-jar
/tailf/releases/nso-4.5.2/bin/ncsc --ncs-compile-bundle yang \
--ncs-device-dir ncsc-out \
--ncs-device-type netconf \
&& \
cp ncsc-out/modules/fxs/*.fxs ../load-dir;

...

 

これで、NETCONF NED が出来上がりました。通常のNEDと同様、iosxrned ディレクトリをNSOのランタイムディレクトリ中のpackagesへ配置し、読み込んで使用することが出来ます。

 

admin@ncs# show packages package package-version
PACKAGE
NAME VERSION
-------------------
iosxrned 1.0

admin@ncs#

 デバイスを登録します。

admin@ncs# show running-config devices device iosxr
devices device iosxr
address 192.168.10.1
authgroup cisco
device-type netconf
state admin-state unlocked
!
admin@ncs#

Sync-from など、他のNEDと同様に使用可能になりました。

admin@ncs# devices device iosxr sync-from
result true
admin@ncs#

  サポートについて

 

自作した NETCONF NED は、Cisco TAC でのサポートを受けて頂く事は出来ません。

NETCONF NED が動作しない原因としては、NSO 側にある可能性と、機器ベンダが提供するモデル、またはリモート機器に原因がある可能性があります。

 

raw trace を取得の上、Service Requestをオープン頂ければNSO側の問題であるかといった判断はさせて頂きますが、ケースオープンの前に、切り分け頂ますようお願い致します。

 

Getting Started

検索バーにキーワード、フレーズ、または質問を入力し、お探しのものを見つけましょう

シスコ コミュニティをいち早く使いこなしていただけるよう役立つリンクをまとめました。みなさんのジャーニーがより良いものとなるようお手伝いします