cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
874
Views
0
Helpful
3
Replies

Deployment of Cisco NSO Service Package in HA environment

DTtb
Level 1
Level 1

Hi all,

during the deployment of a NSO service package in HA environment, I faced some issues.

I want to ask for some advice:

 

1. For a master/slave-sync, the CDB schema of a package needs to be identical.

What does exactly mean CDB schema?
Is the CDB schema the sum of the compiled FXS-files files (due to "make clean all") of every installed NSO package?
In that case, i can compare the checksum of the FXS-files, right?

 

2. What are the dependencies of a CDB schema?
Does depend the CDB schema of the process arch, like x86, the NSO version and the YANG model?
For example: I have installed a NSO service package on NSO 5.2, but on different server types. Would HA work?

Or would I get a different compilation of same NSO package on different server.

 

It is a interesting aspect for continuous deployment.

 

Thanks.

1 Accepted Solution

Accepted Solutions

lmanor
Cisco Employee
Cisco Employee

Since NSO is a user-space program running on linux, there should be no dependence on the Linux OS.

Generally, building an NSO package on this Linux and loading it to NSO on another Linux should not be a problem - this is done frequently, when the NSO NEDs are provided to customers already compiled for the correct NSO version by Tail-f (there is no target Linux specified). 

However, you do need to watch out for the version of tools, specifically Java across, the compiling Linux and the target Linux environments.  Example: NEDs packages provided by the BU are now compiled using Java 8 - when applied directly to NSO on Linux env still using Java 7 will fail (java.lang.UnsupportedClassVersionError: ) until re-compiled on the target using Java 7.

View solution in original post

3 Replies 3

lmanor
Cisco Employee
Cisco Employee

Hello,

 

Right, to deploy HA, both NSO version and the packages in both the Master and Slave NSO service must be identical.

Copying (scp -r) the nso run-time packages directory from one service to the other will achieve this.

The yang specified in each of the packages determines what the CDB schema looks like, the schema needs to be identical for NSO to do HA CDB sync across Master/Slave.

 

Curious what other server types other than x86 you are using?

Other than Macbook native to linux baremetal/VM I have not tried others.

HA, as far as CDB replication should work fine across platform.

Thanks for the fast respone.

You are right. We are using only x86.

I rather meant, if there could be some different compilation with different OS, or at least with different OS version (like Oracle Linux 7 and Oracle Linux 8). If there is some dependencies from compilation tool to OS.

 

I want to check, if is it possible to compile package code with right NSO version in CI/CD chain and copy the compiled package code directly to NSO environment.

 

Thanks.

lmanor
Cisco Employee
Cisco Employee

Since NSO is a user-space program running on linux, there should be no dependence on the Linux OS.

Generally, building an NSO package on this Linux and loading it to NSO on another Linux should not be a problem - this is done frequently, when the NSO NEDs are provided to customers already compiled for the correct NSO version by Tail-f (there is no target Linux specified). 

However, you do need to watch out for the version of tools, specifically Java across, the compiling Linux and the target Linux environments.  Example: NEDs packages provided by the BU are now compiled using Java 8 - when applied directly to NSO on Linux env still using Java 7 will fail (java.lang.UnsupportedClassVersionError: ) until re-compiled on the target using Java 7.

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the NSO Developer community: