Lab software installation and device preparation

Here are the Ubuntu packages that we will install. You may already have some of the packages such pip and git:

$ sudo apt-get install -y python3-dev libxml2-dev libxslt1-dev libffi-dev libssl-dev zlib1g-dev python3-pip git python3-requests
If you are using Python 2, use the following packages instead: sudo apt-get install -y python-dev libxml2-dev libxslt1-dev libffi-dev libssl-dev zlib1g-dev python-pip git python-requests.

The ncclient (https://github.com/ncclient/ncclient) library is a Python library for NETCONF clients. We will install this from the GitHub repository so that we can install the latest version:

$ git clone https://github.com/ncclient/ncclient
$ cd ncclient/
$ sudo python3 setup.py install
$ sudo python setup.py install #for Python 2

NX-API on Nexus devices is turned off by default, so we will need to turn it on. We can either use the user that is already created (if you are using VIRL auto-config), or create a new user for the NETCONF procedures:

feature nxapi
username cisco password 5 $1$Nk7ZkwH0$fyiRmMMfIheqE3BqvcL0C1 role network-operator
username cisco role network-admin
username cisco passphrase lifetime 99999 warntime 14 gracetime 3

For our lab, we will turn on both HTTP and the sandbox configuration, as they should be turned off in production:

nx-osv-2(config)# nxapi http port 80
nx-osv-2(config)# nxapi sandbox

We are now ready to look at our first NX-API example.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset