Cisco NSO
Network Services Orchestrator
Multivendor SDN Controller
Supports physical and virtual devices
Uses NETCONF and YANG
The FASTMAP algorithm is used to determine the minimum number of configuration changes required to reach the desired state. Can manage rollbacks on legacy IOS that don’t natively support rollbacks.
Network Wide Transaction - all devices need to successfully apply change or all devices will rollback.
Legacy devices that don’t support NETCONF can use NEDs (Network Element Drivers), which utilize vendor CLI or SNMP.
- Service Manager - specify services needed on the network
- Device Manager - specify devices and connections to devices
- Mapping Logic
- CDB - configuration database of all devices

Installing NSO
sudo apt update
sudo apt-get install default-jdk
sudo apt-get install ant
sudo apt-get install python3-pip
pip3 install paramiko
cd Downloads
chmod +x nso-5.5.linux.x86_64.signed.bin
./nso-5.5.linux.x86_64.signed.bin --skip-verification
./nso-5.5.linux.x86_64.installer.bin $HOME/ncs-5.5 --local-install
source $HOME/ncs-5.5/ncsrc
ncs-setup --dest $HOME/ncs-run
cd $HOME/ncs-5.5/packages/neds
cp -r * $HOME/ncs-run/packages
ncs
ncs_cli -C -u admin
show packages
connections