This is the network automation version of the Viptela SDX Workshop. It is not meant to be an exhaustive treatment of any of the technologies presented, but an application of those technologies to a real-world use case for automation. In order to get the most from this workshop, we recommend these pre-requisites from Cisco DevNet.
- virlutils
- A Viptela license file and the Organization name associated with that license file. The Organization name should be provided where you see:
<your org name>
git clone https://github.com/ciscops/viptela-workshop.git --recursive
For more help with git, see DevNet's A Brief Introduction to Git
The purpose of this workshop is to augment the current dCloud offerings with a "from scratch" experience of the following:
- Setting up the Viptela control plane from scratch
- Using Enterprise certificates
- Bringing up the Viptela Overlay Network from scratch
- Integrating the Viptela Overlay Network with traditional infrastructure
- Setting up some common routing options
- Deploying template for automation
Enterprise has a single HQ and two remote sites. All routing at the remote sites is handled by the vEdge. The HQ does full internet peering, so the vEdge there is in a DMZ and exchanges routes with the HQ Core router via OSPF.
The Viptela control plane (i.e. vmanage1, vbond1, vsmart1) is hosted in the DMZ at the enterprise HQ.
Since this is being done in VIRL, the first interface all of devices have a connection to the flat
management network. The subsequent interfaces are put into the simulated network. For Viptela, the management interfaces are moved to VPN 512 to simulate OOB management access. The following networks are allocated to the topology:
- 192.168.0.0/16: Enterprise private
- 192.168.1.0/24: Enterprise Site 1
- 192.168.2.0/24: Enterprise Site 2
- 192.168.255.0/24: Enterprise Loopbacks/TLOCS
- 10.0.0.0/8: Enterprise routable
- 10.0.0.0/24: Enterprise HQ DMZ
- 10.0.1.0/24: Enterprise HQ DC
- 10.0.255.0/24: Enterprise HQ P-T-P links
- 172.20.0.0/16: Internet Core
There are several nodes in the topology that can be used for testing:
- server1: A server sitting in the HQ data center that can be reached both internally from within the enterprise and externally.
- service1: A server sitting in an SP data center that represents a service that is not associated with the Enterprise.
- host1/2: These hosts are sitting internal to the enterprise.
The default username/password is admin/admin
NOTE: The Topology requires images for vmanage, vbond, vsmart, vedge, and CSR1000v
Install virlutils
Create a .virlrc:
VIRL_USERNAME=guest
VIRL_PASSWORD=guest
VIRL_HOST=your.virl.server
- Exercise 2.0 - Writing your first playbook
- Exercise 2.1 - Module documentation, Registering output & tags
- Exercise 3.0 - Backing up the router configuration
- Exercise 3.1 - Restoring the backed up configuration
- Exercise 5.0 - Bring up the Viptela Control Plane
- Exercise 5.1 - Exercising the vManage REST API
- Exercise 5.2 - Bring up the Viptela Edge
- Exercise 6.0 - Configure the router configurations using NETCONF
- Exercise 6.1 - Configure the router configurations using RESTCONF
- Exercise 6.2 - An introduction to templating with Jinja2
- Exercise 6.3 - Parsing unstructured data with TextFSM
- Exercise 6.4 - Adding idempotency to REST operations
- Exercise 6.5 - An introduction to Roles
- Network Automation with Ansible Homepage
- List of Networking Ansible Modules
- Module Maintenance & Support