You are on page 1of 47

Virtualise your Lab environment

An introduction to CML

Simon Fang
Technical Solutions Specialist
9 November 2021
Simon Fang • MSc Data Science
Technical Solutions Specialist - DevNet ➢ University of Amsterdam
• Software Engineer (C++ and C#)
➢KLM Royal Dutch Airlines

• Associate Systems Engineer


➢Cisco

• Technical Solutions Specialist


➢ Cisco
📧 : sifang@cisco.com
: linkedin.com/in/fangsimon

© 2021
2019 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
1 NetDevOps

2 What is CML?

Agenda 3 CML in action

4 Q&A

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Goals for today

Vison of NetDevOps CML in the big


Introduce CML
picture

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
DevOps

Version
Control Functional The most powerful
Testing
tool we have as
engineers
developers is
automation.
- Scott Hanselman

Code
Build
Diagnostics
Testing
© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
NetDevOps
“bringing all that is good in Software DevOps and applied towards Networking”

Deploy Test
Continuous Delivery Automation SafetyNet

INFRASTRUCTURE
AS CODE

Design Operate
Collaborative Development
Validation & Monitoring

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
How CML fits into the big NetDevOps picture

Apps
Customers
Network
engineering API
Request
Cisco®
Modeling
Labs CML Use

Configure
CLI

Production
Network Ops and network
developers provisioning

Dev Ops
© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
CiscoModelingLabs
© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
CML
A multi-purpose extensible network virtualization and simulation platform

• Highly accurate models of real-world network


• Leverage real network operating systems
• Scale from small to big networks
• Lab from anywhere anytime
• See more and do it quicker

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Virtualized platforms

• IOSv / vL2 • Traffic Generator


• IOSXRv / 9000 • Containers
• NX-OS / 9000 • Servers
• ASAv • External Connector
• CSR1000v • 3rd Party

Virtualized platforms are not representations of a particular hardware


platform – no fans, no switch fabric, no ASIC models

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Whoever access from wherever

Multiuser On your own PC On a server

Clean UI Run on browser

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Features
• Virtualized devices
• Create your own images
• Packet Capture
• Remote Networks
• Paralell Environments
• Learn as you go
• Integrate with other tools

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Architecture overview
Python client library Custom apps

Swagger API documentation Rest API


HTML5 Interface CML2 Platform

Linux

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
CML at work
© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
CML automation
© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Options

REST API Python Client

Other Tools

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
REST API Swagger

Learn & Test


© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Postman

https://www.postman.com/njrusmc/workspace/public-collections/overview
© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Python

Requests

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Client

code

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Wrap-up

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
• NetDevOps in a nutshell
• Interact with pyATS through:
• GUI

Sum up! • REST API

• External Connection

• Beginning of your CI/CD


pipeline

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Resources
Julio Gomez NetDevOps Series

Q&A

blog:
https://blogs.cisco.com/develo
per/ci-cd-demo-netdevops-7
• CML DevNet Sandbox
• pyATS, Genie, CML blog:

https://blogs.cisco.com/develo
📧 : sifang@cisco.com per/automatetestingpyats01
: linkedin.com/in/fangsimon

© 2021
2019 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Cisco® Modeling Labs
key features
Server-side labs with
an easy-to-use HTML5
front end
Live topology modification ―
drag, drop, and wire networks in a running
simulation

Device persistence ―
Labs = Isolated virtual just like shutting down a real router
networks
Admin control of all labs
Configurable network { REST:API }
connectivity Ability to define and import
keyboard, video, and mouse API First Design
Console multiplexing
(KVM) images Swagger interface
Breakout client utility
Python client library

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
New! CML 2.2 offers multiuser functions and more

Create and manage groups from a new system


administration section to control lab access

More new features in 2.2


Add users and labs for read-write or read-
• Persistent browser and session only access
• Table view to search for users by username
• Ability to display link labels in the
Cisco® Modeling Labs (CML) Canvas Restrictions for read-only access

• Group membership for each lab in the dashboard


list view
Users and labs can belong to multiple groups

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Do you need multiuser or single-user labs?

Cisco® Modeling Labs - Enterprise Cisco Modeling Labs - Personal

• Supports many users who all share your • Supports a single user
Cisco Modeling Labs servers
• Best for personal learning and study
• Scalability for production environments, with expansion of
• Personal includes 20 nodes
up to 300 nodes
• Personal Plus includes 40 nodes
• Necessary for NetDevOps motions such as
multi-stream testing • Community support only, via the public
Cisco Learning Network – Personal forum
• Cisco Technical Assistance Center support from a dedicated
TAC team
• TAC speed and expertise
• TAC confidentiality

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Validate designs

Reproduce and test bugs

For network
architects and What-if scenarios

engineers
Prepare for network changes

Automation

© 2021 Cisco and/or


C97-2399206-00 © 2021
its affiliates.
Cisco and/or
All rights
its affiliates.
reserved.
All rights
Cisco Confidential
reserved. Cisco Confidential
Design virtual or hybrid physical/virtual networks

What-if scenarios

Reproduce and test bugs

For
network operations, Prepare for network changes

management,
and design Capture changes and impacts

Confirm alerts

Automation
© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Create multiple security configurations easily, and perform
comparison testing without needing multiple devices

Use off-the-shelf security scans on sample networks to prove


configuration choice

Create isolated virtual networks to test the effect of malware

For without attaching it to your physical network

network security Evaluate threats and vulnerabilities (Distributed Denial of


Service [DDoS], malware, security breaches)

Analysis and mitigation (security impacts of network changes,


risk assessment)

Automation

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Labbing to prepare for cert exams

For Quickly build and destroy


virtual networks without impacting
learning a physical network

Share your network configurations with


your friends and co-workers
to test each other’s skills

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
And then there’s NetDevOps

Apps
Customers
Network
engineering API
Request
Cisco®
Modeling
Labs CML Use

Configure
CLI

Production
Network Ops and network
developers provisioning

Dev Ops
© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
The simulation platform that keeps on giving

Design Interviews

Testing Infrastructure-as-code

Cisco®
Config validation Modeling Labs Virtual networking lab

Continuous integration/ Study and practice for


continuous delivery (CI/CD) automation certification exams

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Cisco® Modeling
Labs architecture
and features

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Labs are your networks

• All labs run on the server,


not your workstation
• Each lab is its own virtual network
• You can have independent
networks or interconnected
networks
• You can start up or shut down
whole labs or individual nodes

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
The canvas and palette – the art of network design

• Drag nodes from the palette, and


drop them anywhere on your
diagram
• “Wire” topologies by dragging a
link between them
• Use graphic or command-line
consoles
• Add, remove, and configure nodes
in running labs

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Access simulated devices many ways

• Use the Breakout tool to map


devices to any port on your
underlying Cisco® Modeling Labs
server CML2 CML2
Breakout Tool Controller
• Use external connectors to attach
PuTTY
your entire lab to your physical
network
iTerm
TLS
• Use the Open Source cmlutils app
to easily access devices from Local connection Encrypted, authenticated,
multiplexed
outside your Cisco Modeling Labs
system

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
A powerful, easy-to-use REST API

Swagger-based API documentation


• OpenAPI-based
• Swagger UI for real-time API
access/exploration
• API First design means everything
you can do in the UI, you can do
via automation

Open source Python client


• A fast start to your scripts

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
The best
Cisco® Modeling Labs
solution for you

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Multiuser Cisco Modeling Labs options

Cisco® Modeling Labs - Enterprise Cisco Modeling Labs - Education

• Available through Cisco Commerce Workspace (CCW) • Available through CCW


• Requires a Smart Account • Requires a Smart Account
• Simulate both Cisco and third-party devices • Simulate both Cisco and third-party devices
• Expansion to 300 nodes • Licensing based on number of users
• Requires internet connectivity by default • Requires Internet connectivity by default
(Specific License Reservation [SLR] licensing is supported) (SLR licensing is supported)
• Technical Assistance Center (TAC) support • TAC support
• More Enterprise features on the way!

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Cisco® Modeling Labs for every networking role
Network operations, management, and design
• Test and validate your network, management tools, and
deployments
• Design new router configurations virtually

Learning Network security


• Build and share labs for yourself • Design and test security configurations on a
and your team virtual network
• Using supplied Cisco images, build • Simulate attacks, find fail points
configurations to prepare for
certification exams

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Single user Cisco Modeling Labs options

Cisco® Modeling Labs – Cisco Modeling Labs –


Personal Personal Plus

• 20 nodes • 40 nodes!
• Available through the • Available through the CLN Store
Cisco Learning Network (CLN) Store
• Simulate both Cisco and
• Simulate both Cisco and third-party devices
third-party devices • Built for a single user
• Built for a single user
• Requires Internet connectivity
• Requires Internet connectivity • Community support only
• Community support only

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Life is good when you can lab from anywhere

Lab anywhere and Use the Cisco® Hone your skills for
Save time on
Save money on lab anytime Modeling Labs API your next
buildup and
equipment you have internet to practice certification exam -
teardown
access automation and beyond!

Visit the Cisco Learning Network Store today to buy your copy of
Cisco Modeling Labs Personal or Personal Plus

learningnetworkstore.cisco.com

CML - Personal

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Python
API demo

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Updated licensing model

Smart licensing
Cisco® Modeling Labs Personal Edition (Virtual Internet Routing
Lab [VIRL]) licensing model unchanged
Cisco Modeling Labs v2.0 is priced the same but allows more
flexibility:
• 20 nodes included in base licenses
• Expansion licenses can be purchased in any quantity
• Expansion licenses can be purchased to
co-terminate with server license
• Standard discount levels based on a combination of licensing term
(1–3 years) and number of nodes

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
Meet Cisco® Modeling Labs
Our premier platform for network simulation

Browser-based, point-and-click network design,


config, testing, troubleshooting

Fully programmable network Fast setup and tear-down


simulation and testing

Labs are persistent between Seamless connectivity with physical


sessions networks and other simulations

API-first approach Ships with Cisco images


and open-source images

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Confidential

You might also like