NSO Installation Guide 4.4.2.3

User Manual:

Open the PDF directly: View PDF PDF.
Page Count: 30

DownloadNSO Installation Guide Guide-4.4.2.3
Open PDF In BrowserView PDF
NSO Installation Guide
First Published: April 9, 2014
Last Modified: September 1, 2017

Americas Headquarters
Cisco Systems, Inc.
170 West Tasman Drive
San Jose, CA 95134-1706
USA
http://www.cisco.com
Tel: 408 526-4000
Tel: 800 553-NETS (6387)
Fax: 408 527-0883

THE SPECIFICATIONS AND INFORMATION REGARDING THE PRODUCTS IN THIS MANUAL ARE SUBJECT TO CHANGE WITHOUT NOTICE. ALL STATEMENTS,
INFORMATION, AND RECOMMENDATIONS IN THIS MANUAL ARE BELIEVED TO BE ACCURATE BUT ARE PRESENTED WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED. USERS MUST TAKE FULL RESPONSIBILITY FOR THEIR APPLICATION OF ANY PRODUCTS.
THE SOFTWARE LICENSE AND LIMITED WARRANTY FOR THE ACCOMPANYING PRODUCT ARE SET FORTH IN THE INFORMATION PACKET THAT SHIPPED
WITH THE PRODUCT AND ARE INCORPORATED HEREIN BY THIS REFERENCE. IF YOU ARE UNABLE TO LOCATE THE SOFTWARE LICENSE OR LIMITED
WARRANTY, CONTACT YOUR CISCO REPRESENTATIVE FOR A COPY.
The Cisco implementation of TCP header compression is an adaptation of a program developed by the University of California, Berkeley (UCB) as part of UCB's public domain version of
the UNIX operating system. All rights reserved. Copyright © 1981, Regents of the University of California.
NOTWITHSTANDING ANY OTHER WARRANTY HEREIN, ALL DOCUMENT FILES AND SOFTWARE OF THESE SUPPLIERS ARE PROVIDED “AS IS" WITH ALL
FAULTS. CISCO AND THE ABOVE-NAMED SUPPLIERS DISCLAIM ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, THOSE
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OR ARISING FROM A COURSE OF DEALING, USAGE, OR TRADE
PRACTICE.
IN NO EVENT SHALL CISCO OR ITS SUPPLIERS BE LIABLE FOR ANY INDIRECT, SPECIAL, CONSEQUENTIAL, OR INCIDENTAL DAMAGES, INCLUDING, WITHOUT
LIMITATION, LOST PROFITS OR LOSS OR DAMAGE TO DATA ARISING OUT OF THE USE OR INABILITY TO USE THIS MANUAL, EVEN IF CISCO OR ITS SUPPLIERS
HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any examples, command display output,
network topology diagrams, and other figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses or phone numbers in illustrative content is
unintentional and coincidental.
Cisco and the Cisco logo are trademarks or registered trademarks of Cisco and/or its affiliates in the U.S. and other countries. To view a list of Cisco trademarks, go to this URL: http://
www.cisco.com/go/trademarks. Third-party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship
between Cisco and any other company. (1110R)
This product includes software developed by the NetBSD Foundation, Inc. and its contributors.
This product includes cryptographic software written by Eric Young (eay@cryptsoft.com).
This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit http://www.openssl.org/.
This product includes software written by Tim Hudson (tjh@cryptsoft.com).
U.S. Pat. No. 8,533,303 and 8,913,519
Copyright © 2014, 2015, 2016, 2017 Cisco Systems, Inc. All rights reserved.

ii

CONTENTS
CHAPTER 1

Introduction

1
1

Purpose

1

Prerequisites

2

NED Packages
2

Man Pages

3

Unpack NSO Installer
3

Install Types
CHAPTER 2

NSO Local Install

5
5

Introduction

5

Installation

8

NSO Upgrade

Upgrade from Local Install to System Install
NSO UnInstallation
CHAPTER 3

NSO System Install

11
11

Installation

14

NSO Upgrade

NSO Uninstallation
Other Information

17

17

FAQs
Support
Manual pages

15

17

References

CHAPTER I

9

11

Introduction

CHAPTER 4

8

18

19

ncs-installer

21

ncs-uninstall

25

NSO Installation Guide
iii

Contents

NSO Installation Guide
iv

CHAPTER

1

Introduction
Cisco Network Service Orchestrator enabled by Tail-f (NSO) version 4.4.2.3 is an evolution of the Tailf Network Control System (NCS). Tail-f was acquired by Cisco in 2014. The product has been enhanced
and forms the base for Cisco NSO. Note that the terms 'ncs' and 'tail-f' are used extensively in file
names, command-line command names, YANG models, application programming interfaces (API), etc.
Throughout this document we will use NSO to mean the product, which consists of a number of modules
and executable components. These executable components will be referred to by their command line name,
e.g. ncs, ncs-netsim, ncs_cli, etc. ncs is also used to refer to the executable, the running daemon.
• Purpose, page 1
• Prerequisites, page 1
• NED Packages, page 2
• Man Pages, page 2
• Unpack NSO Installer, page 3
• Install Types, page 3

Purpose
The purpose of the document is to describe how to Install NSO step-by-step and to explain how to perform
basic operations based on Installation.
Target Audience
• The document is intended for evaluators, developers, system administrators, end users and others who
would like to install NSO.
Installation can be performed in two ways.
1
2

Local Install for evaluation and development.
System Install for production deployment.

Prerequisites
NSO Supports Linux and OS X platforms.
You need to know your system specifications (Operating System and CPU architecture) to choose the
appropriate NSO Installer.

NSO Installation Guide
1

Introduction
NED Packages

NSO is delivered as a self-extract archive which is OS/CPU specific. The archive file has the pattern nsoVERSION.OS.ARCH.installer.bin. The variables in the pattern refer to:
VERSION
OS
ARCH

The NSO version to install.
The Operating System (linux for all Linux distributions and darwin for OS X).
The CPU architecture (x86_64 or i686).

Dependencies
• Before installing NSO, ensure that a Java JDK-7.0 or higher is installed. When JDK is properly
installed the command java -version should indicate a java version of “1.7” or higher.
• Python is required, either Python2 or Python3. Python2 needs to be version 2.7.5 or higher. For
Python3, the version needs to be 3.4 or higher.
• For building NSO Examples, install:
Ant
1.7.1 or higher
• For using netconf-console, install:
Python Paramiko
1.6.4 or higher
• For NSO GUI capabilities, install one of the below browsers.
Safari
Version must be currently supported by Apple
Firefox
Version must be currently supported by Mozilla.org
Chrome
Version must be currently supported by Google
Internet Explorer Version must be currently supported by Microsoft

NED Packages
The NED Packages that are available with the NSO Installation are netsim based example NEDs. These
NEDs are used for NSO examples only.
You should fetch the Real NEDs from the download server with your download account.

Man Pages
The installation program will unpack the NSO manual pages from the documentation archive in
$NCS_DIR/man. 'ncsrc' makes an addition to $MANPATH, allowing you to use the 'man' command
to view them.
Here follows few list of the manual pages installed:
ncs(1)
ncsc(1)
ncs_cli(1)
ncs-netsim(1)
ncs-setup(1)
ncs.conf

Command to start and control the NSO daemon.
NSO Yang compiler.
Frontend to the NSO CLI engine.
Command to create and manipulate a simulated network.
Command to create an initial NCS setup.
NSO daemon configuration file format.

For example, to view the man page describing NSO configuration file you should type:
$ man ncs.conf

Apart from the man pages, extensive information about command line options can be obtained by running
ncs and ncsc with the --help (abbreviated -h) flag.

NSO Installation Guide
2

Introduction
Unpack NSO Installer

$ ncs --help
$ ncsc --help

Unpack NSO Installer
The NSO installation is delivered with a cryptographic signature to make it possible to verify that the
installation has not been altered or corrupted. This can be guaranteed since the signature was created by
using a combination of cryptographic hash and public key encryption.
Unpack of the NSO Installer, automatically verifies the digital signature.
$ sh nso-VERSION.OS.ARCH.signed.bin

The variables in the command VERSION refers to the NSO version to install, OS refers to the Operating
System (linux for any Linux distribution and darwin for OS X) and ARCH refers to the CPU
architecture (x86_64 or i686). For Example:
$ sh nso-4.2.linux.x86_64.signed.bin

Once NSO is unpacked, all the files are unpacked in the current directory.
1
2
3
4

5

Note

The NSO installer nso-VERSION.OS.ARCH.installer.bin
Signature generated for the NSO image nsoVERSION.OS.ARCH.installer.bin.signature
An enclosed Cisco signed tailf.cer x.509 end-entity certificate containing public key that is used
to verify the signature.
README.signature file which briefs you more details on the unpacked content and the steps on
"How to run the signature verification program". If you would like to manually verify the signature,
please refer to the steps in this file.
cisco_x509_verify_release.py python program that can be used to verify the 3-tier x.509
certificate chain and signature.

If you observe network connectivity issues that might impact the signature verification, you can unpack the
installer by using parameter --skip-verification. For example:
$ sh nso-4.2.linux.x86_64.signed.bin --skip-verification

Once the unpack is completed, the NSO nso-VERSION.OS.ARCH.installer.bin installation can
be performed either by Local Install or System Install as described in the next section.

Install Types
Local Install
• Use Local Install --local-install option for Development, Evaluation, proof of concept and
private lab purposes.
• All the NSO Examples and README steps provided with the installation are based on Local Install
only. You should always use Local Install for evaluation and development purposes.
• Steps for Local Installation, please follow Chapter 2, NSO Local Install.
• Local Install is possible on Linux OS and OS X.

NSO Installation Guide
3

Introduction
Install Types

System Install
• Use System Install --system-install option for production and system-wide deployment in
a central location. You need root priviliges for System Install procedure and administration of the
installed NSO. As part of System install, the NSO daemon ncs is started at boot time.
System Install should be used only for production deployment. For all other purposes, use Local
Install procedure.
• All the NCS examples and README steps are based on Local Install only. These cannot be run on
System Install.
• Steps for System Installation, Please follow Chapter 3, NSO System Install.
• NCS System Install is possible only on Linux OS.

NSO Installation Guide
4

CHAPTER

2

NSO Local Install
• Introduction, page 5
• Installation, page 5
• NSO Upgrade, page 8
• NSO UnInstallation, page 9

Introduction
Local Install should always be used for evaluation and development purposes. All the NSO examples and
README steps provided with the installation are based on Local Install only. For production deployment,
use System Install.
Before installing NSO:
1
2

Choose the correct Operating System. Local Install is supported on Linux and OS X for x86_64
architecture.
Before installing NSO, ensure that Java JDK-7.0 or higher is installed. For building and running NSO
examples install applications mentioned in Chapter 1, Introduction Prerequisites section.

Installation
Procedure 2.1. Local Install Steps
Step 1

Local Install of NSO Software is performed in a single user specified directory, for example in your home directory
$HOME. It is always recommended to install NSO in a directory named as the version of the release.
$ sh nso-VERSION.OS.ARCH.installer.bin $HOME/ncs-VERSION --local-install

The variables in the command VERSION refers to the NSO version to install, OS refers to the Operating System
(linux for any Linux distribution and darwin for OS X) and ARCH refers to the CPU architecture (x86_64 or
i686). The --local-install parameter is an optional parameter. For Example:
$ sh nso-4.0.linux.x86_64.installer.bin $HOME/nso-4.0

Step 2

The installation program creates a shell script file named ncsrc in each NSO installation, which sets the
environment variables. Source this file to get these settings in your shell. You may want to add this sourcing
command to your login sequence, such as .bashrc.
For csh/tcsh users there is a ncsrc.tcsh file using csh/tcsh syntax. The example below assumes that you are using
bash, other versions of /bin/sh may require that you use . instead of source.

NSO Installation Guide
5

NSO Local Install
Installation

$ source $HOME/ncs-VERSION/ncsrc

Step 3

Create a runtime directory for NSO to keep its database, state files, logs and other files. In these instructions we
assume that this directory is $HOME/ncs-run.
$ ncs-setup --dest $HOME/ncs-run

Step 4

Start the NSO daemon ncs.
$ cd $HOME/ncs-run
$ ncs

When you start NSO, make sure that you are situated in the deployment directory since by default NSO reads its
config files from its current working directory (i.e. .).
There are a set of examples available in the installation directory $NCS_DIR/examples.ncs

Step 5

Note

Please go through the examples for information on how to create run-time directories, start ncs, and other important
NSO functionalities.
NSO uses Cisco Smart Licensing, as described in Chapter 3, Cisco Smart Licensing in NSO 4.4.2.3 Administration
Guide , to make it easy to deploy and manage NSO license entitlements. To conclude the NSO installation a license
registration token must be created using a Cisco Smart Software Manager (CSSM) account. Login credentials to
a CSSM account should have been provided by your Cisco contact and detailed instructions on how to create a
registration token can be found in Chapter 3, Cisco Smart Licensing in NSO 4.4.2.3 Administration Guide .
If you intend to use NSO instance for development purposes you should enable development mode using the
command license smart development enable. When development mode is enabled the NSO instance will only
consume a single development NSO license entitlement and nothing else.

When you have a token, start a Cisco CLI towards NSO and enter the token, i.e.
admin@ncs# license smart register idtoken YzIzMDM3MTgtZTRkNC00YjkxLTk2ODQtOGEzMTM3OTg5MG
Registration process in progress.
Use the 'show license status' command to check the progress and result.

The command show license status can be used to keep track of the registration status, e.g
admin@ncs# show license status
Smart Licensing is ENABLED
Registration:
Status: REGISTERED
Smart Account: Network Service Orchestrator
Virtual Account: Default
Export-Controlled Functionality: Allowed
Initial Registration: SUCCEEDED on Apr 21 09:29:11 2016 UTC
Last Renewal Attempt: SUCCEEDED on Apr 21 09:29:16 2016 UTC
Next Renewal Attempt: Oct 18 09:29:16 2016 UTC
Registration Expires: Apr 21 09:26:13 2017 UTC
Export-Controlled Functionality: Allowed
License Authorization:
License Authorization:
Status: IN COMPLIANCE on Apr 21 09:29:18 2016 UTC
Last Communication Attempt: SUCCEEDED on Apr 21 09:26:30 2016 UTC
Next Communication Attempt: Apr 21 21:29:32 2016 UTC
Communication Deadline: Apr 21 09:26:13 2017 UTC

NSO Installation Guide
6

NSO Local Install
Installation

Note

During Upgrades, If you find 'Communication Send Error' while license registration, please restart the Smart Agent.

Licensing activities are also logged in the NSO daemon log as described in the section called “Monitoring NSO” in
NSO 4.4.2.3 Administration Guide . For example, a successful token registration results in the following log entry:
 21-Apr-2016::11:29:18.022 miosaterm confd[8226]:
Smart Licensing Global Notification:
type = "notifyRegisterSuccess"

If no registration token is provided NSO enters a 90 days evaluation period and the remaining evaluation time is
recorded hourly in the NSO daemon log:
...
 13-Apr-2016::13:22:29.178 miosaterm confd[16260]:
Starting the NCS Smart Licensing Java VM
 13-Apr-2016::13:22:34.737 miosaterm confd[16260]:
Smart Licensing evaluation time remaining: 90d 0h 0m 0s
...
 13-Apr-2016::13:22:34.737 miosaterm confd[16260]:
Smart Licensing evaluation time remaining: 89d 23h 0m 0s
...

Upon successful registration NSO automatically requests a license entitlement for its own instance and for the
number of devices it orchestrates and their NED types. If development mode has been enabled only an development
entitlement for the NSO instance itself is requested.
The requested entitlements can be inspected using the command show license all (or by inspecting the NSO daemon
log):
admin@ncs# show license all
...
 21-Apr-2016::11:29:18.022 miosaterm confd[8226]:
Smart Licensing Global Notification:
type = "notifyRegisterSuccess",
agentID = "sa1",
enforceMode = "notApplicable",
allowRestricted = false,
failReasonCode = "success",
failMessage = "Successful."
 21-Apr-2016::11:29:23.029 miosaterm confd[8226]:
Smart Licensing Entitlement Notification: type = "notifyEnforcementMode",
agentID = "sa1",
notificationTime = "Apr 21 11:29:20 2016",
version = "1.0",
displayName = "regid.2015-10.com.cisco.NSO-network-element",
requestedDate = "Apr 21 11:26:19 2016",
tag = "regid.2015-10.com.cisco.NSO-network-element",
enforceMode = "inCompliance",
daysLeft = 90,
expiryDate = "Jul 20 11:26:19 2016",
requestedCount = 8
...

NSO Installation Guide
7

NSO Local Install
NSO Upgrade

Tip

In a situation whereas the NSO instance has no direct access to the Cisco Smart Software Manager a Cisco Smart
Software Manager satellite can be installed to manage software licenses on the premises. Install the satellite and use
the command call-home destination address http  to point to the satellite.

Note

When configuring NSO in High Availability (HA) mode the license registration token must be provided to the CLI
running on the master node. Read more about HA and master nodes in Chapter 8, High Availability in NSO 4.4.2.3
Administration Guide .

NSO Upgrade
Upgrade from Local Install to System Install
This procedure is for the users that have a Local Install in production deployment and would like to change
to System Install.
Assuming NSO is installed as mentioned in Chapter 2, NSO Local Install, and you want to do a new
installation as mentioned in Chapter 3, NSO System Install then the steps to upgrade NSO are:
Step 1

Install the new NSO version.
$ sudo sh nso-NEWVERSION.OS.ARCH.installer.bin --system-install

Step 2

Stop previously installed NSO.
$ ncs --stop

Step 3

Take a complete backup (for disaster recovery)
$ tar -czf $HOME/ncs-backup.tar.gz -C $HOME ncs-run

Step 4

Change to Super User priviliges.
$ sudo -s

Step 5

Make sure the symbolic link points to the ncs-NEWVERSION.
# cd /opt/ncs
# rm -f current
# ln -s ncs-NEWVERSION current

Step 6

Step 7

Make sure that the /var/opt/ncs/packages directory has packages that are appropriate for the new version. When
upgrading from one version of NSO to another version in the same major branch i.e x.y are unchanged in NCSx.y.z (Ex: ncs-3.0 to ncs-3.0.2), it should be possible to continue to use the same packages. But when upgrading to a
different major branch, the packages normally need to be rebuilt (or pre-built packages for the new major branch need
to be used).
Copy the CDB files from the local install to the central location.
# cp $HOME/ncs-run/ncs-cdb/*.cdb /var/opt/ncs/cdb

Step 8

Start NSO with package reload option.
# NCS_RELOAD_PACKAGES=true /etc/init.d/ncs start

Step 9

A license registration token must be created using a Cisco Smart Software Manager (CSSM) account. Follow the step
5 in System Install steps from the section called “Installation”

NSO Installation Guide
8

NSO Local Install
NSO UnInstallation

Step 10
Step 11

Verify that everything is working.
If you want to switch back to previous known/good state, start with stopping NSO.
# /etc/init.d/ncs stop

Exit from Super User priviliges.
# exit

Remove runtime dir.
$ rm -rf $HOME/ncs-run

Restore runtime dir from backup.
$ tar -xzf $HOME/ncs-backup.tar.gz -C $HOME

Setup environment for the old version.
$ source $HOME/ncs-VERSION/ncsrc

Start NSO.
$ cd $HOME/ncs-run
$ ncs

NSO UnInstallation
Uninstallation of NSO is very easy. A single delete of the NSO installation directory and runtime directory
is sufficient. Ensure to stop NSO before uninstall.

Note

To make sure that no license entitlements are consumed after you have uninstalled NSO be sure to perform
the deregister command in the CLI:
admin@ncs# license smart deregister

$ rm -rf $HOME/ncs-VERSION
$ rm -rf $HOME/ncs-run

NSO Installation Guide
9

NSO Local Install
NSO UnInstallation

NSO Installation Guide
10

CHAPTER

3

NSO System Install
• Introduction, page 11
• Installation, page 11
• NSO Upgrade, page 14
• NSO Uninstallation, page 15

Introduction
NSO System Install results in system wide Installation and Deployment. Use this Install option only for
Production deployment. For Development and Evaluation purposes, you should use only Local Install
procedure.
Before installing NSO:
1
2
3

Ensure that the root permissions are enabled.
Choose the correct Operating System (Linux). Currently only Linux OS is supported.
Ensure that Java JDK-7.0 or higher is installed.

Installation
Procedure 3.1. System Install Steps
Step 1

Use --system-install option to perform system installation. This option creates a system install of NSO,
suitable for deployment. By default, Installation Directory is created in /opt/ncs, Configuration Directory is
created in /etc/ncs, Running Directory is created in /var/opt/ncs and Log Directory is created in /var/
log/ncs.
$ sudo sh nso-VERSION.OS.ARCH.installer.bin --system-install

The variables in the command VERSION refers to the NSO version to install. OS refers to the Operating System
(linux). ARCH refers to the CPU architecture (x86_64 or i686).For example:
$ sudo sh nso-4.2.linux.x86_64.installer.bin --system-install

Here, as part of the system installation, in the Installation directory /opt/ncs “ncs-4.2” distribution is available.
A symbolic link /opt/ncs/current is created, pointing to the newly installed version, in this example /opt/
ncs/ncs-4.2

NSO Installation Guide
11

NSO System Install
Installation

In the Configuration directory /etc/ncs/ ncs.conf file, SSH keys, WebUI certificates are created. In Run
directory /var/opt/ncs ncs run-time state files, CDB database, packages are created.
In Log directory /var/log/ncs ncs log files are populated. Also init scripts are created in /etc/init.d/ncs
and system wide environment variables are created in /etc/profile.d/ncs.sh .
The installation has been configured for PAM authentication, with group assignment based on the OS group database
(e.g. /etc/group file). Users that need access to NCS must belong to either the 'ncsadmin' group (for unlimited access
rights) or the 'ncsoper' group (for minimal access rights).
To create the 'ncsadmin' group, use OS shell command:
# groupadd ncsadmin

To create the 'ncsoper' group, use OS shell command:
# groupadd ncsoper

To add an existing user to one of these groups, use OS shell command:
# usermod -a -G 'groupname' 'username'

For --system-install option, you can also choose user-defined (non-default) Installation Directory, Config Directory,
Running Directory, Log Directory with --install-dir, --config-dir, --run-dir and --log-dir parameters, and specify that
NCS should run as different user than root with the --run-as-user parameter.
For more information on ncs-installer see the ncs-installer(1) man page.
For an extensive guide to NSO deployment, please refer to Chapter 10, NSO Deployment in NSO 4.4.2.3
Administration Guide .

Note

Step 2

If you choose a non-default installation directory by using --install-dir, you need to specify --installdir for subsequent installs and also for backup and restore.
Change to Super User priviliges.
$ sudo -s

Step 3

The installation program creates a shell script file in each NSO installation which sets environment variables needed
to run NSO. With --system-install option, by default these settings are set on the shell. To explicitly set the variables,
source ncs.sh or ncs.csh depending on your shell type.
# source /etc/profile.d/ncs.sh

Step 4

Start NSO.
# /etc/init.d/ncs start

Note

Once you log on with the user that belongs to ncsadmin or ncsoper you can directly access the CLI.
$ ncs_cli -C

Step 5

NSO uses Cisco Smart Licensing, as described in Chapter 3, Cisco Smart Licensing in NSO 4.4.2.3 Administration
Guide , to make it easy to deploy and manage NSO license entitlements. To conclude the NSO installation a license
registration token must be created using a Cisco Smart Software Manager (CSSM) account. Login credentials to
a CSSM account should have been provided by your Cisco contact and detailed instructions on how to create a
registration token can be found in Chapter 3, Cisco Smart Licensing in NSO 4.4.2.3 Administration Guide .
NSO Installation Guide

12

NSO System Install
Installation

Note

If you intend to use NSO instance for development purposes you should enable development mode using the
command license smart development enable. When development mode is enabled the NSO instance will only
consume a single development NSO license entitlement and nothing else.

When you have a token, start a Cisco CLI towards NSO and enter the token, i.e.
admin@ncs# license smart register idtoken YzIzMDM3MTgtZTRkNC00YjkxLTk2ODQtOGEzMTM3OTg5MG
Registration process in progress.
Use the 'show license status' command to check the progress and result.

The command show license status can be used to keep track of the registration status, e.g
admin@ncs# show license status
Smart Licensing is ENABLED
Registration:
Status: REGISTERED
Smart Account: Network Service Orchestrator
Virtual Account: Default
Export-Controlled Functionality: Allowed
Initial Registration: SUCCEEDED on Apr 21 09:29:11 2016 UTC
Last Renewal Attempt: SUCCEEDED on Apr 21 09:29:16 2016 UTC
Next Renewal Attempt: Oct 18 09:29:16 2016 UTC
Registration Expires: Apr 21 09:26:13 2017 UTC
Export-Controlled Functionality: Allowed
License Authorization:
License Authorization:
Status: IN COMPLIANCE on Apr 21 09:29:18 2016 UTC
Last Communication Attempt: SUCCEEDED on Apr 21 09:26:30 2016 UTC
Next Communication Attempt: Apr 21 21:29:32 2016 UTC
Communication Deadline: Apr 21 09:26:13 2017 UTC

Note

During Upgrades, If you find 'Communication Send Error' while license registration, please restart the Smart Agent.

Licensing activities are also logged in the NSO daemon log as described in the section called “Monitoring NSO” in
NSO 4.4.2.3 Administration Guide . For example, a successful token registration results in the following log entry:
 21-Apr-2016::11:29:18.022 miosaterm confd[8226]:
Smart Licensing Global Notification:
type = "notifyRegisterSuccess"

If no registration token is provided NSO enters a 90 days evaluation period and the remaining evaluation time is
recorded hourly in the NSO daemon log:
...
 13-Apr-2016::13:22:29.178 miosaterm confd[16260]:
Starting the NCS Smart Licensing Java VM
 13-Apr-2016::13:22:34.737 miosaterm confd[16260]:
Smart Licensing evaluation time remaining: 90d 0h 0m 0s
...
 13-Apr-2016::13:22:34.737 miosaterm confd[16260]:
Smart Licensing evaluation time remaining: 89d 23h 0m 0s
...

NSO Installation Guide
13

NSO System Install
NSO Upgrade

Upon successful registration NSO automatically requests a license entitlement for its own instance and for the
number of devices it orchestrates and their NED types. If development mode has been enabled only an development
entitlement for the NSO instance itself is requested.
The requested entitlements can be inspected using the command show license all (or by inspecting the NSO daemon
log):
admin@ncs# show license all
...
 21-Apr-2016::11:29:18.022 miosaterm confd[8226]:
Smart Licensing Global Notification:
type = "notifyRegisterSuccess",
agentID = "sa1",
enforceMode = "notApplicable",
allowRestricted = false,
failReasonCode = "success",
failMessage = "Successful."
 21-Apr-2016::11:29:23.029 miosaterm confd[8226]:
Smart Licensing Entitlement Notification: type = "notifyEnforcementMode",
agentID = "sa1",
notificationTime = "Apr 21 11:29:20 2016",
version = "1.0",
displayName = "regid.2015-10.com.cisco.NSO-network-element",
requestedDate = "Apr 21 11:26:19 2016",
tag = "regid.2015-10.com.cisco.NSO-network-element",
enforceMode = "inCompliance",
daysLeft = 90,
expiryDate = "Jul 20 11:26:19 2016",
requestedCount = 8
...

Tip

In a situation whereas the NSO instance has no direct access to the Cisco Smart Software Manager a Cisco Smart
Software Manager satellite can be installed to manage software licenses on the premises. Install the satellite and use
the command call-home destination address http  to point to the satellite.

Note

When configuring NSO in High Availability (HA) mode the license registration token must be provided to the CLI
running on the master node. Read more about HA and master nodes in Chapter 8, High Availability in NSO 4.4.2.3
Administration Guide .

NSO Upgrade
Assuming NSO is installed as mentioned in Chapter 3, NSO System Install, then the steps to upgrade NSO
to a new version are:
Step 1

Install the new version.
$ sudo sh nso-NEWVERSION.OS.ARCH.installer.bin --system-install

Step 2

Change to Super User priviliges.
$ sudo -s

Step 3

Stop previously installed NSO.

NSO Installation Guide
14

NSO System Install
NSO Uninstallation

# /etc/init.d/ncs stop

Step 4

Take a complete backup (for disaster recovery)
# ncs-backup

Step 5

Switch to new version by updating symbolic link.
# cd /opt/ncs
# rm -f current
# ln -s ncs-NEWVERSION current

Step 6

Step 7

Make sure that the /var/opt/ncs/packages directory has packages that are appropriate for the new version. When
upgrading from one version of NSO to another version in the same major branch i.e x.y are unchanged in NCS-x.y.z
(Ex: ncs-4.1 to ncs-4.2), it should be possible to continue to use the same packages. But when upgrading to a different
major branch, the packages normally need to be rebuilt (or pre-built packages for the new major branch need to be
used).
Start NSO with package reload option.
# NCS_RELOAD_PACKAGES=true /etc/init.d/ncs start

Step 8
Step 9
Step 10

A license registration token must be created using a Cisco Smart Software Manager (CSSM) account. Follow the step
5 in System Install steps from the section called “Installation”
Verify that everything is working.
If you want to switch back to previous known/good state, start by stopping NSO.
# /etc/init.d/ncs stop

Then restore from backup.
# ncs-backup --restore

Move back symbolic link
# cd /opt/ncs
# rm -f current
# ln -s ncs-VERSION current

And restart NSO.
# /etc/init.d/ncs start

NSO Uninstallation
• NSO can be uninstalled using the ncs-uninstall(1) option only if NSO is installed with --systeminstall option. Either part of the static files or full installation can be removed using ncsuninstall option. Ensure to stop NSO before Uninstall.
Note

To make sure that no license entitlements are consumed after you have uninstalled NSO be sure to
perform the deregister command in the CLI:
admin@ncs# license smart deregister

• # ncs-uninstall --all
Removes the Installation directory /opt/ncs including symbolic links, Configuration directory
/etc/ncs, Run directory /var/opt/ncs, Log directory /var/log/ncs, init scripts from /
etc/init.d and user profile scripts from /etc/profile.d

NSO Installation Guide
15

NSO System Install
NSO Uninstallation

• For more information on ncs uninstall, see the ncs-uninstall(1) man page.

NSO Installation Guide
16

CHAPTER

4

Other Information
• References, page 17
• FAQs, page 17
• Support, page 18

References
After successful installation, to get started with NSO refer to "NSO Getting Started Guide" available with
NSO Installer. Also available in $NCS_DIR/doc/ncs_getting_started.pdf
Refer to "NSO Users Guide" for detailed information on NSO. Available in $NCS_DIR/doc/
ncs_user_guide.pdf
In addition to the User Guide, we recommend you to browse through the variety of useful examples found
under $NCS_DIR/examples.ncs. Each example has a README file explaining its purpose and usage.
For NSO System Administration details refer to " NSO Administration Guide" available in $NCS_DIR/
doc/ncs_admin_guide.pdf

FAQs
Below you can find few frequently asked questions or common mistakes by customers.
1.
2.

3.

4.

Is there a dependency between the NSO Installation Directory and Runtime Directory?
No, there is no such dependency.
Do you need to source the ncsrc file before starting NSO?
Local Install - Yes.
System Install - No. (By default, the environment variables are configured and set on the shell
while system install).
Can you start NSO from a directory, which is not a NSO runtime directory?
Local Install - No (To start NSO, you need to point to the Run directory).
System Install - Yes.
Can you stop NSO from a directory, which is not a NSO runtime directory?
Local Install - Yes.
System Install - Yes.

NSO Installation Guide
17

Other Information
Support

5.

6.

For evaluation and development purposes, instead of Local Install you made a System Install. Now
you cannot build or run NSO examples as described in README files. How can you proceed
further?
The easiest method is to Uninstall system installation using ncs-uninstall --all and do
a Local Install from scratch.
Can we move NSO Installation from one folder to another ?
Local Install - Yes.
You can move the directory where you installed NSO to a new location in your directory tree.
Simply move NSO's root directory to the new desired location, and update this file: $NCS_DIR/
ncsrc (and ncsrc.tcsh if you want) This is a small and handy script that sets up some
environment variables for you. Update the paths to the new location. The $NCS_DIR/bin/
ncs and $NCS_DIR/bin/ncsc scripts will determine the location of NCS's root directory
automatically.
System Install - No.

Support
• If you are evaluating NSO, you should have a designated support contact. You are also welcome to
mail  or 
• If you have a NSO support agreement, please use the support channels specified in the agreement.
• In either case, please do not hesitate to send us any questions or feedback you may come up with.

NSO Installation Guide
18

Manual pages

19

20

Name
ncs-installer — NCS installation script

Synopsis
ncs-VSN.OS.ARCH.installer.bin [--local-install] LocalInstallDir
ncs-VSN.OS.ARCH.installer.bin --system-install [--install-dir InstallDir] [--config-dir
ConfigDir] [--run-dir RunDir] [--log-dir LogDir] [--run-as-user User] [--keep-ncs-setup] [--noninteractive]

DESCRIPTION
The NCS installation script can be invoked to do either a simple "local installation", which is convenient
for test and development purposes, or a "system installation", suitable for deployment.

LOCAL INSTALLATION
[ --local-install ]
LocalInstallDir

When the NCS installation script is invoked with this option, or
is given only the LocalInstallDir argument, NCS will be
installed in the LocalInstallDir directory only.

SYSTEM INSTALLATION
--system-install

[ --install-dir
InstallDir ]

[ --config-dir ConfigDir
]
[ --run-dir RunDir ]

When the NCS installation script is invoked with this option, it will
do a system installation that uses several different directories, in
accordance with Unix/Linux application installation standards. The
first time a system installation is done, the following actions are
taken:
• The directories described below are created and populated.
• An init script for start of NCS at system boot is installed.
• User profile scripts that set up $PATH and other environment
variables appropriately for NCS users are installed.
• A symbolic link that makes the installed version the currently
active one is created (see the --install-dir option).
This is the directory where static files, primarily the code
and libraries for the NCS daemon, are installed. The actual
directory used for a given invocation of the installation script is
InstallDir/ncs-VSN, allowing for coexistence of multiple
installed versions. The currently active version is identified by a
symbolic link InstallDir/current pointing to one of the
ncs-VSN directories. If the --install-dir option is omitted, /
opt/ncs will be used for InstallDir.
This directory is used for config files, e.g. ncs.conf. If the -config-dir option is omitted, /etc/ncs will be used for
ConfigDir.
This directory is used for run-time state files, such as the CDB data
base and currently used packages. If the --run-dir option is
omitted, /var/opt/ncs will be used for RunDir.

21

[ --log-dir LogDir ]

[ --run-as-user User ]

This directory is used for the different log files written by NCS. If
the --log-dir option is omitted, /var/log/ncs will be used
for LogDir.
By default, the system installation will run NCS as the root user.
If a different user is given via this option, NCS will instead be run
as that user. The user will be created if it does not already exist.
This mode is only supported on Linux systems that have the setcap
command, since it is needed to give NCS components the required
capabilities for some aspects of the NCS functionality.
When the option is used, the following executable files (assuming
that the default /opt/ncs is used for --install-dir) will be
installed with elevated privileges:
/opt/ncs/current/lib/
ncs/lib/core/pam/priv/
epam

/opt/ncs/current/lib/
ncs/erts/bin/ncs /opt/
ncs/current/lib/ncs/
erts/bin/ncs.smp

/opt/ncs/current/lib/
ncs/bin/ip

22

Setuid to root. This is
typically needed for PAM
authentication to work with
a local password file. If
PAM authentication is not
used, or if the local PAM
configuration does not require
root privileges, the setuid-root
privilege can be removed by
using chmod u-s.
Capability
cap_net_bind_service.
One of these files (normally
ncs.smp) will be used as the
NCS daemon. The files have
execute access restricted to
the user given via --runas-user. The capability is
needed to allow the daemon
to bind to ports below 1024
for northbound access, e.g.
port 443 for HTTPS or port
830 for NETCONF over SSH.
If this functionality is not
needed, the capability can be
removed by using setcap -r.
Capability
cap_net_admin. This
is a copy of the OS ip(8)
command, with execute
access restricted to the user
given via --run-as-user.
The program is not used
by the core NCS daemon,
but provided for packages
that need to configure IP
addresses on interfaces (such
as the tailf-hcc package).

/opt/ncs/current/lib/
ncs/bin/arping

Note

[ --keep-ncs-setup ]

[ --non-interactive ]

If no such packages are used,
the file can be removed.
Capability cap_net_raw.
This is a copy of the OS
arping(8) command, with
execute access restricted to
the user given via --runas-user. The program is
not used by the core NCS
daemon, but provided for
packages that need to send
gratuitous ARP requests (such
as the tailf-hcc package).
If no such packages are used,
the file can be removed.

When the --run-as-user option is used, all OS commands
executed by NCS will also run as the given user, rather than as
the user specified in e.g. clispec(5) definitions for custom CLI
commands.
The ncs-setup command is not usable in a "system installation", and
is therefore by default excluded from such an installation to avoid
confusion. This option instructs the installation script to include ncssetup in the installation despite this.
If this option is given, the installation script will proceed with
potentially disruptive changes (e.g. modifying or removing existing
files) without asking for confirmation.

23

24

Name
ncs-uninstall — Command to remove NCS installation

Synopsis
ncs-uninstall --ncs-version [Version] [--install-dir InstallDir] [--non-interactive]
ncs-uninstall --all [--install-dir InstallDir] [--non-interactive]

DESCRIPTION
The ncs-uninstall command can be used to remove part or all of an NCS "system installation", i.e. one that
was done with the --system-install option to the NCS installer (see ncs-installer(1)).

OPTIONS
--ncs-version [ Version
]

--all

[ --install-dir
InstallDir ]
[ --non-interactive ]

Removes the installation of static files for NCS version Version.
I.e. the directory tree rooted at InstallDir/ncs-Version
will be removed. The Version argument may also be given as
the filename or pathname of the installation directory, or, unless -non-interactive is given, omitted completely in which case
the command will offer selection from the installed versions.
Completely removes the NCS installation. I.e. the whole directory
tree rooted at InstallDir, as well as the directories for config
files (option --config-dir to the installer), run-time state files
(option --run-dir to the installer), and log files (option --logdir to the installer), and also the init script and user profile scripts.
Specifies the directory for installation of NCS static files, like the
--install-dir option to the installer. If this option is omitted, /
opt/ncs will be used for InstallDir.
If this option is used, removal will proceed without asking for
confirmation.

25

26



Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
Linearized                      : No
Page Count                      : 30
Profile CMM Type                : lcms
Profile Version                 : 2.1.0
Profile Class                   : Display Device Profile
Color Space Data                : RGB
Profile Connection Space        : XYZ
Profile Date Time               : 1998:02:09 06:49:00
Profile File Signature          : acsp
Primary Platform                : Apple Computer Inc.
CMM Flags                       : Not Embedded, Independent
Device Manufacturer             : IEC
Device Model                    : sRGB
Device Attributes               : Reflective, Glossy, Positive, Color
Rendering Intent                : Perceptual
Connection Space Illuminant     : 0.9642 1 0.82491
Profile Creator                 : lcms
Profile ID                      : 0
Profile Copyright               : Copyright (c) 1998 Hewlett-Packard Company
Profile Description             : sRGB IEC61966-2.1
Media White Point               : 0.95045 1 1.08905
Media Black Point               : 0 0 0
Red Matrix Column               : 0.43607 0.22249 0.01392
Green Matrix Column             : 0.38515 0.71687 0.09708
Blue Matrix Column              : 0.14307 0.06061 0.7141
Device Mfg Desc                 : IEC http://www.iec.ch
Device Model Desc               : IEC 61966-2.1 Default RGB colour space - sRGB
Viewing Cond Desc               : Reference Viewing Condition in IEC61966-2.1
Viewing Cond Illuminant         : 19.6445 20.3718 16.8089
Viewing Cond Surround           : 3.92889 4.07439 3.36179
Viewing Cond Illuminant Type    : D50
Luminance                       : 76.03647 80 87.12462
Measurement Observer            : CIE 1931
Measurement Backing             : 0 0 0
Measurement Geometry            : Unknown
Measurement Flare               : 0.999%
Measurement Illuminant          : D65
Technology                      : Cathode Ray Tube Display
Red Tone Reproduction Curve     : (Binary data 2060 bytes, use -b option to extract)
Green Tone Reproduction Curve   : (Binary data 2060 bytes, use -b option to extract)
Blue Tone Reproduction Curve    : (Binary data 2060 bytes, use -b option to extract)
Language                        : en
Format                          : application/pdf
Title                           : NSO Installation Guide
Creator                         : Tail-f Systems
Date                            : 2017:09:01 14:00:50Z
PDF Version                     : 1.4
Producer                        : Apache FOP Version 2.1
Create Date                     : 2017:09:01 14:00:50Z
Creator Tool                    : DocBook XSL Stylesheets with Apache FOP
Metadata Date                   : 2017:09:01 14:00:50Z
Page Mode                       : UseOutlines
Author                          : Tail-f Systems
EXIF Metadata provided by EXIF.tools

Navigation menu