08-01-2019 05:27 AM - edited 08-01-2019 05:29 AM
Hello Cisco Community,
I'm searching a solution to deploy a NSO service in CFS/RFS mode. I already did a RFS service that manage my equipment like i want.
For creating CFS, here is the solution provided by a colleague :
- Create RFS NED by the command ncs-make-package --no-netsim --netconf-net <myPackage>/src/yang <rfs-ned-package name>.
- Create a new service for upper-nso with option "service-skeleton python-and-template' that will manage our rfs-service using RFS NED that we created
- Copy RFS service YANG file in our newly created service, and convert leafref type in string.
- Manage XML template in order to configure RFS Service in lower-nso by just copying all the variable from CFS to RFS.
Example : (vars in red below)
<config-template xmlns="http://tail-f.com/ns/config/1.0"> <devices xmlns="http://tail-f.com/ns/ncs"> <device> <name>{$RFSNODE}</name> <config> <myrfsservice> <ipAddress>{/ipAddress}</ipAddress> <mask>{/mask}</mask> .... </myrfsservice> </config> </device> </devices> </config-template>
I have no problem with this solution, cause it works well when the configuration is OK.
I 'm just a bit curious cause i saw an option --lsa by typing "ncs-make-package --help" command (in red below) that could make apparently LSA packages:
nso@nso:~$ ncs-make-package --help Usage: ncs-make-package [options] package-name ncs-make-package --netconf-ned DIR package-name ncs-make-package --snmp-ned DIR package-name [...] LSA PACKAGES ncs-make-package --lsa PATH base-name ncs-make-package --lsa-upper PATH base-name ncs-make-package --lsa-lower PATH TYPE base-name Where PATH is the path of a YANG file. For LSA packages the resulting name of the package will be: --lsa: <base-name> --lsa-upper: lsa-upper-<base-name> --lsa-lower: lsa-lower-<base-name> For LSA packages the name used in the YANG data model will be: --lsa: <base-name> --lsa-upper: lsa-<base-name> --lsa-lower: lsa-<base-name> See manpage for ncs-make-package(1) for more info.
What's this option stand for ? Could it be useful for making CFS/RFS services ? Is anyone have a case example of using this command ?
Thank you,
Regards,
Solved! Go to Solution.
08-02-2019 12:49 AM
Hey,
the lsa commands are just slightly tweaked netconf-ned and service-skeleton commands to serve the lsa idea.
lsa - your CFS <- this is where you will also have to place your dispatch logic in
lsa-upper - NED your colegue told you about
lsa-lower - your RFS
You don't necessarily need to use these commands... you will get by with the old netconf-ned, service-skeleton commands as well, however they are there so it is dead obvious what you can pick when doing LSA.
08-02-2019 12:24 AM - edited 08-02-2019 12:30 AM
Hey,
first lsa option is basically a CFS package template. This is also where you will place your dispatch logic ( basically some sort of mapping between device names and RFN names so that CFS knows where to send the service).
lsa-upper is the ned that your colleague told you about.
lsa-lower is basically a RFS package.
These commands basically just generate tweaked package skeletons for your standard netconf ned and service packages to fit lsa idea as far as I understand. That doesn't mean you necessary have to use them if you want to do LSA.
08-02-2019 12:49 AM
Hey,
the lsa commands are just slightly tweaked netconf-ned and service-skeleton commands to serve the lsa idea.
lsa - your CFS <- this is where you will also have to place your dispatch logic in
lsa-upper - NED your colegue told you about
lsa-lower - your RFS
You don't necessarily need to use these commands... you will get by with the old netconf-ned, service-skeleton commands as well, however they are there so it is dead obvious what you can pick when doing LSA.
02-20-2023 08:52 PM
what package are u referring here: <myPackage>/src/yang
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