cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2483
Views
12
Helpful
6
Replies
branblac@cisco.com
Enthusiast

Sync-from error: Device does not have a Network Element Driver registered

Hey NSO Folks,

We are seeing working on an NSO 4.4.2 RHEL deployment and keep hitting issues with a portion our IOS devices with IOS-Ned 5.4.2

We have associated a NED inside device-type with the proper NED and ports but when we go to sync from numerous devices pipe back: Device does not have a Network Element Driver registered

We have yet to find a commonality between the devices other than IOS, wanted to ask if anyone of this mailer has seen this issue or similar?


Also, when issuing a package reload we see:

reload-result {

    package cisco-ios

   result false

    info --ERROR--

}

reload-result {

    package cisco-iosxr

    result false

    info --ERROR--

}

reload-result {

    package cisco-nx

    result false

    info --ERROR--

}

reload-result {

    package dell-ftos

    result false

    info --ERROR--

}

reload-result {

    package juniper-junos

    result true

}

Thanks,

Brandon    

1 ACCEPTED SOLUTION

Accepted Solutions
Jan Lindblad
Cisco Employee

The issue here is very likely related to the JavaVM, since all the Java packages are failing, while the Junos NETCONF NED (which doesn't use any Java) is fine. Since you have quite a few NEDs, and some large ones, the issue is almost certainly that the JavaVM is out of memory/heap space.

You might see some more detailed error messages if you do a

show packages package oper-status

In order to increase the Java heap size, there are a couple of options. You could

- set the environment variable   NCS_JAVA_VM_OPTIONS=-Xmx 1G   (the default is 512MB) right before you launch ncs

- edit the   bin/ncs-start-java-vm   NSO JavaVM start script to use this number by default

- use the   java-vm start-command   to configure NSO to use some home made script to start a JavaVM, where you pass the -Xmx option to the actual JavaVM

View solution in original post

6 REPLIES 6
Jan Lindblad
Cisco Employee

The issue here is very likely related to the JavaVM, since all the Java packages are failing, while the Junos NETCONF NED (which doesn't use any Java) is fine. Since you have quite a few NEDs, and some large ones, the issue is almost certainly that the JavaVM is out of memory/heap space.

You might see some more detailed error messages if you do a

show packages package oper-status

In order to increase the Java heap size, there are a couple of options. You could

- set the environment variable   NCS_JAVA_VM_OPTIONS=-Xmx 1G   (the default is 512MB) right before you launch ncs

- edit the   bin/ncs-start-java-vm   NSO JavaVM start script to use this number by default

- use the   java-vm start-command   to configure NSO to use some home made script to start a JavaVM, where you pass the -Xmx option to the actual JavaVM

View solution in original post

Hi Jan,

I'm working with Brandon to resolve this issue. I'm attempting option two of editing the ncs java vm options file, for our red hat vm would you be able to be a bit more specific of where I would modify within the file?

Regards,

Elliot Wise

Maybe add the below just after the opts= line?

opts="${NCS_JAVA_VM_OPTIONS}"

# Next line added by me; to increase JavaVM heap size to support more NEDs

opts=`add_if_not_contains "${opts}" "-Xmx" "" "1G"`

Having same issues:

 

admin@ncs# devices connect

connect-result {

    device r0

    result false

    info Device r0 does not have a Network Element Driver registered

}

 

 

admin@ncs# show packages package oper-status   

                                                                                        PACKAGE               

                         PROGRAM                                                        META     FILE         

                         CODE                        JAVA           BAD NCS  PACKAGE  PACKAGE  CIRCULAR    DATA     LOAD   ERROR 

NAME                 UP  ERROR    UNINITIALIZED  VERSION  NAME     VERSION  DEPENDENCY  ERROR    ERROR  INFO  

---------------------------------------------------------------------------------------------------------------

cisco-iosxr-cli-3.5  -   -                    X             

admin@ncs# show packages

packages package cisco-iosxr-cli-3.5

package-version 3.5.0.7

description     "NED package for Cisco IOS XR"

ncs-min-version [ 3.2.2 3.3 ]

directory       ./state/packages-in-use/1/cisco-iosxr-cli-3.5

component cisco-ios-xr

  ned cli ned-id  cisco-iosxr-cli-3.5

  ned cli java-class-name com.tailf.packages.ned.iosxr.IosxrNedCli

  ned device vendor Cisco

NAME      VALUE     

---------------------

show-tag  interface 

 

build-info date "2019-10-16 16:22:13"

build-info file cisco-iosxr-cli-3.5-source-3.5.0.7.tar.gz

build-info arch .linux.x86_64

build-info java "compiled Java class data, version 50.0"

build-info package name cisco-iosxr-cli-3.5

build-info package version 3.5.0.7

build-info package ref 3.5.0.7

build-info package sha1 This_Is_An_Example_NED

build-info ncs version 5.2.1_HEAD

build-info ncs sha1 This_NED_should_not_be_used

oper-status java-uninitialized

 

 

sbarvick
Cisco Employee

The ncs-java-vm.log often has the answer too (if the memory issue is not it).   It could also be the packages compiled under a new JDK version or dependent libraries that weren't in the packages or packages that were not actually compiled.

raranjee
Cisco Employee

I also received this error "Device ECI-API does not have a Network Element Driver registered"

 

# check the sync status of device

root@ncs# devices device ECI-API check-sync
result error
info Device ECI-API does not have a Network Element Driver registered

 

# Java JDK version was also ok    openjdk version "1.8.0_252"

 

# I was getting java uninitialized for most of the installed packages .

root@ncs# show packages package oper-status

output attached - Java uninitialized - NSO.png

 

# Check the ncs status 

------------------------------------------

[root@sit-rfs2 init.d]# ncs --status | grep status
status: started
id=get-rpc-status ** not registered
id=get-service-status ** not registered
id=link-status-ap ** not registered

---------------------------------------------

 

# I tried starting java-vm which failed to start 

----------------------------------
root@ncs# show java-vm status
java-vm status timeout

root@ncs# show java-vm start-status
java-vm start-status failed

------------------------------------

 

# Lastly i stop start NCS deamon which solved the problem and device was in-sync .

------------------------

/etc/init.d/ncs status
/etc/init.d/ncs stop
/etc/init.d/ncs start

---------------------

 

# Again check the status of sync for device

root@ncs# devices device ECI-API check-sync
result in-sync

 

Thanks 

Ranjeet