CML Guide



Cisco Modeling Labs is an official virtual lab environment made as a yearly subscription by cisco.

It was made to compete with products such as GNS3 and ENE-NG and has more features than Cisco Packet Tracer such as but not limited to more devices and commands. It also allows the use of custom nodes such as Juniper vSwitch/vRouter.

I have created a page on how to create and use these here: CML Custom Images/Nodes


CML is run as a virtual machine and accessed through a web interface. It can be run in VMware workstation, ESXI or as a baremetal hypervisor. Most ways to run it as a VM work.


The recommended installation is using VMware workstation.


I prefer the install on baremetal but if you are unfamiliar with mounting ISOs through a Linux command line you will want to stick with VMware workstation or ESXI as you will need to mount the supplemental ios image ISOs by hand to import them. Running through VMware workstation on a headless windows or linux itx machine is how I have been doing it for some time now.

System Requirements:
  • 8GB of ram
  • 4+ cores with virtualization enabled on an Intel processor*
  • 32GB or storage

*It notes that Intel processors are required, and AMD is not supported however it is known to work on modern AMD CPUs with virtualization.

These system requirements are the minimum and most CML labs will require more with the biggest limiting factor being available RAM.


My Current setup is an i9 7960x and 48gb of ram in an itx case. If you are just using regular IOS routers and L2/3 switches this may be enough memory. However, if you are trying to do labs with multiple Nexus 9000 switches or very large routing tables this will not be enough. Trying to boot up 3 of these at once crashed because I ran out of ram; and none of them even finished booting. Max I can boot is 2, which for most labs is OKAY at least for ENCOR.

You can edit the node definitions to allow them to use less ram but if you go too low, they will not boot. I have found that 10gb is fine on the nexuses.

128GB of ram was enough for me to boot 5x Nexus 9ks (used about 60GB with no configurations).

Licensing

Cisco offers 3 tiers of access to consumers.

CML Free: Free but has a node (device, does include all nodes not just cisco) limit of 5
CML Personal: ~200 a year with a node limit of 20
CML Personal Plus: ~350 a year with a node limit of 40

They do offer enterprise licenses which allow multiple users to the CML dashboard, but I don't believe it is offered to consumers.

I won't go over the install process for baremetal or vmware here because the guide that cisco gives is actually really good; however, I will go over installing in proxmox and issues I had that you may encounter and how to get around them specific to that and in general. 

I also will go over the different processes to install the reference platform ISOs as it is different depending on install.


Issues

When running the VM on windows myself and other users could not get Windows 11 to work as a host due to virtualization settings affecting nested hosting in the VM.

Windows 10/Linux or baremetal hosting is the only solution at the time of writing.

The second issue was with using VMware workstation as a host. When booting from the normal boot ISO and not the vm image provided you will need to lie to the host and say it is a windows (10) guest.

This is because at this time only windows hosts can use EFI and CML does require this to boot.

The third issue is when registering make sure you choose the correct license (free, personal or personal plus) if you do not choose the correct one it will not authenticate but it will not tell you the reason. It will just say to de-register and re-register which is actually not the fix.

The only fix once you do this is to login to the cockpit interface and reset licensing services.

Reference Platform ISOs

The reference platform ISOs are used to put nodes and images for use in the labs. If they are not installed, you will not be able to use the system. Custom nodes do count however but only having those defeats the purpose.

These can be installed in different ways.

In a VM they can be mounted as a CD drive on boot of the install, and it will take care of itself, you can also add them as a CD drive later on after the install and use the cockpit to copy them.

On a baremetal install they will need to be copied over through scp.


I have a page for this here: CML Reference Platform ISO Install

Usage


There are two web interfaces that you will need to access.

"cockpit" admin interface: http://"address":9090

and

CML web server: http://"address"

The "Cockpit" admin interface is where you will want to go first. This area will be used to do things such as but not limited to expanding storage volume, adding NFS vols, resetting services (licensing).


                        



The CML web server is where you will spend most of your time.

Once you login using the account made at install you will be dropped into a lab. The dashboard button is where you will want to go first (top right).

This will show the labs that you have created and options to edit them; this page is fairly basic. The tools tab will have admin pages and guides.

                        




When in a lab the top bar will be basic controls and is similar to packet tracer. It has options for creating annotations, adding "nodes" or devices, stopping and starting the topology (it's off by default).



                  




Right clicking on devices in the topology will bring up a menu with important functions such as adding links and console access and wiping/stopping.

Right clicking on links will allow you to do packet capture (that link only).


Devices in CML are their own VMs. When deleting a device that has been started you will need to wipe the device beforehand. This will remove the associated VM.






Desktops

The default desktop login is cisco for user and password.

When using the linux desktops the following commands are needed for basic function:

These can also be added to the startup config located on the config tab when left clicking the device.


sudo ip addr add "address/xx" dev "interface"

sudo route add default gw "gateway" "interface"


This is the bare minimum for the VM to work. If you want to use link aggregation, then you will need to know how to setup link aggregation in Linux.


External Connectors

Use bridge mode and give the drive connected to it an address inside whatever LAN you have The CML host connected to. In my case it was just my 192.168.0.x/24 network.


Downloading/Importing Labs

Link for the labs page: Labs


When downloading labs some devices will hold configurations such as IOS routers and switches. Nexus devices will not hold configurations after importing.

Importing labs will not override any that have the same name.


Proxmox Install

Installing CML on proxmox is similar to installing as a VM on other products.

*This section will be continued*
































Popular posts from this blog