07-12-2018 06:16 AM - edited 03-01-2019 04:12 AM
Hi, I'm trying to build Netconf NEDs for Cisco Nexus N3k and N9k with Pioneer (NSO version: 4.6.1).
I followed the steps in README.md and I'm stuck doing 'pioneer netconf get[-config]'.
'netconf hello' works:
admin@ncs# devices device sw-nso-poc-n9k-b.nwlab.bs.kae.de-pioneer pioneer netconf hello
hello-reply <?xml version="1.0" encoding="ISO-8859-1"?>
<hello xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<capabilities>
<capability>urn:ietf:params:xml:ns:netconf:base:1.0</capability>
<capability>urn:ietf:params:netconf:base:1.0</capability>
<capability>urn:ietf:params:netconf:capability:validate:1.0</capability>
<capability>urn:ietf:params:netconf:capability:writable-running:1.0</capability>
<capability>urn:ietf:params:netconf:capability:url:1.0?scheme=file</capability>
<capability>urn:ietf:params:netconf:capability:rollback-on-error:1.0</capability>
<capability>urn:ietf:params:netconf:capability:candidate:1.0</capability>
<capability>urn:ietf:params:netconf:capability:confirmed-commit:1.0</capability>
</capabilities>
<session-id>15164</session-id>
</hello>
'netconf get' returns the following:
admin@ncs# devices device sw-nso-poc-n9k-b.nwlab.bs.kae.de-pioneer pioneer netconf get
get-reply <?xml version="1.0" encoding="ISO-8859-1"?>
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="1">
<rpc-error>
<error-type>rpc</error-type>
<error-tag>missing-attribute</error-tag>
<error-severity>error</error-severity>
<error-message>Wrong document: namespaces not specified</error-message>
<error-info>
<bad-element>rpc</bad-element>
</error-info>
</rpc-error>
</rpc-reply>
'netconf get-config':
admin@ncs# devices device sw-nso-poc-n9k-b.nwlab.bs.kae.de-pioneer pioneer netconf get-config
get-config-reply <?xml version="1.0" encoding="ISO-8859-1"?>
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="1">
<rpc-error>
<error-type>rpc</error-type>
<error-tag>missing-attribute</error-tag>
<error-severity>error</error-severity>
<error-message>Wrong document: namespaces not specified</error-message>
<error-info>
<bad-element>rpc</bad-element>
</error-info>
</rpc-error>
</rpc-reply>
This is my device config:
admin@ncs# show running-config devices device sw-nso-poc-n9k-b.nwlab.bs.kae.de-pioneer
devices device sw-nso-poc-n9k-b.nwlab.bs.kae.de-pioneer
address $A.$B.$C.$D
port 22
ssh host-key ssh-rsa
key-data "[snip]"
!
authgroup test
device-type netconf
trace raw
state admin-state unlocked
...
How can I specify namespaces?
Regards,
Bernd
Solved! Go to Solution.
07-13-2018 04:44 AM
Ah, sorry, I meant to write NX. But you are right that when I say XR I usually mean IOS-XR.
Sorry about the confusion.
NX does not support the (optional) <get-schema> operation, so Pioneer will not be able to download any YANG modules in this case. The NX team tells me it's on the roadmap, so hang in there. In the mean time you will have to build the NED the traditional way (using ncs-make-package --netconf-ned), based on YANG modules either provided by the NX team, or that you download yourself from github: https://github.com/YangModels/yang.git
When it comes to wrong defaults and other issues in the YANGs, I'd recommend taking the very latest code. There have been dramatic improvements in each release lately. When the YANGs are broken, you may need to edit them in order to work around issues.
07-12-2018 07:24 AM
This is a missing feature in the XR implementation. It does not support a <get> of everything (a mandatory to support operation, but very useful anyway). You could figure out how to use the subtree syntax to specify a more specific filter, but let me ask you what you want to achieve? Pioneer's get-functionality is a debugging tool, so have you encountered some problem you want to debug?
07-13-2018 04:22 AM
Hi Jan,
thanks for your response!
Jan Lindblad schrieb:
This is a missing feature in the XR implementation...
What is the "XR implementation". Is this related to IOS-XR? If yes, this is not the operating system that we're targeting right now.
We ran into several issues with the Cisco-NX (CLI) NED. These issues mainly deal with the NED not supporting configuration commands that we need.
We also saw problems with wrong default values. The NED then thinks a confguration item is set, but does not receive this item from the device.
Hence it assumes the device is out of sync.
What we want to do is to build a netconf NED for Cisco Nexus devices. We hope, that the device has a YANG model available so that the NED will know exactly what the device supports.
On the Pioneer GitHub page, it says
pioneer netconf get, get-config
If hello repsonds correctly, you may want to try a simple get and get-config before proceeding to build a NETCONF NED. Here are the commands:
devices device my-netconf-device pioneer netconf get
devices device my-netconf-device pioneer netconf get-config
This is why we used the get/getconfig functionality in the first place (as part of the setup process)
The next step on the GitHub page is a "yang fetch-list"
The result of that is:
Retrieving module list from device
Device does not report support for netconf-monitoring, trying anyway
Found out the names for a total of 0 modules
hello message: 0
netconf-monitoring subtree: 0
netconf-monitoring xpath: 0
message Marked 0 modules for download, skipped 0
yang-directory /tmp/download/sw-nso-poc-n3k.nwlab.bs.kae.de-pioneer
Can you provide an example regarding the subtree syntax? We have no idea, what paths the device supports.
We suspect that the above problems with the "yang fetch-list" are related to the missing namespace. Is there any way to verify this?
07-13-2018 04:44 AM
Ah, sorry, I meant to write NX. But you are right that when I say XR I usually mean IOS-XR.
Sorry about the confusion.
NX does not support the (optional) <get-schema> operation, so Pioneer will not be able to download any YANG modules in this case. The NX team tells me it's on the roadmap, so hang in there. In the mean time you will have to build the NED the traditional way (using ncs-make-package --netconf-ned), based on YANG modules either provided by the NX team, or that you download yourself from github: https://github.com/YangModels/yang.git
When it comes to wrong defaults and other issues in the YANGs, I'd recommend taking the very latest code. There have been dramatic improvements in each release lately. When the YANGs are broken, you may need to edit them in order to work around issues.
11-20-2019 09:40 AM
Hi has there been any update to this? I am running into the same issues with pioneer. The firmware version my company uses on the their nexus 3Ks doesn't match what is currently available hence why I am using pioneer.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide