When will CML 2 support clustering?
This was the question we heard most when we released Cisco Modeling Labs (CML) 2.0 — and it was a great one, at that. So, we listened. CML 2.4 now offers a clustering feature for CML-Enterprise and CML-Education licenses, which supports the scaling of a CML 2 deployment horizontally.
But what does that mean? And what exactly is clustering? Read on to learn about the benefits of Cisco Modeling Labs’ new clustering feature in CML 2.4, how clustering works, and what we have planned for the future.
CML clustering benefits
When CML is deployed in a cluster, a lab is no longer restricted to the resources of a single computer (the all-in-one controller). Instead, the lab can use resources from multiple servers combined into a single, large bundle of Cisco Modeling Labs infrastructure.
In CML 2.4, CML-Enterprise and CML-Education customers who have migrated to a CML cluster deployment can leverage clustering to run larger labs with more (or larger) nodes. In other words, a CML instance can now support more users with all their labs. And when combining multiple computers and their resources into a single CML instance, users will still have the same seamless experience as before, with the User Interface (UI) remaining the same. There is no need to select what should run where. The CML controller handles it all behind the scenes, transparently!
How clustering works in CML v2.4 (and beyond)
A CML cluster consists of two types of computers:
- One controller: The server that hosts the controller code, the UI, the API, and the reference platform images
- One or more computes: Servers that run node Virtual Machines (VMs), for instance, the routers, switches, and other nodes that make up a lab. The controller controls these machines (of course), so users will not directly interact with them. Also, a separate Layer 2 network segment connects the controller and the computes. We chose the separate network approach for security (isolation) and performance reasons. No IP addressing or other services are required on this cluster network. Everything operates automatically and transparently through the machines participating in the cluster.
This cluster network serves many purposes, most notably:- serving all reference platform images, node definitions, and other files from the controller via NFS sharing to all computes of a cluster.
- transporting networking traffic in a simulated network (which spans multiple computes) on the cluster network between the computes or (in case of external connector traffic) to and from the controller.
- conducting low-level API calls from the controller to the computes to start/stop VMs, for example, and operating the individual compute.
Defining a controller or a compute during CML 2.4 cluster installation
During installation, and when multiple network interface cards (NICs) are present in the server, the initial setup script will ask the user to choose which role this server should take: “controller” or “compute.” Depending on the role, the person deploying the cluster will enter additional parameters.
For a controller, the important parameters are its hostname and the secret key, which computes will use to register with the controller. Therefore, when installing a compute, the hostname and key parameters serve to establish the cluster relationship with the controller.
Every compute that uses the same cluster network (and knows the controller’s name and secret) will then automatically register with that controller as part of the CML cluster.
CML 2.4 scalability limits and recommendations
We have tested clustering with a bare metal cluster of nine UCS systems, totaling over 3.5TB of memory and more than 630 vCPUs. On such a system, the largest single lab we ran (and support) is 320 nodes. This is an artificial limitation enforced by the maximum number of node licenses a system can hold. We currently support CML cluster deployments with one controller and up to eight computes.
Plans for future CML releases
While some limitations still exist in this release in terms of features and scalability, remember this is only Phase 1. This means the functionality is there, and future releases promise even more features, such as the:
- ability to de-register computes.
- ability to put computes in maintenance mode.
- ability to migrate node VMs from one compute to another.
- central software upgrade and management of computes.
Learn more
For more details about CML 2.4, please review the latest release notes or leave a comment or question below. We are happy to help!
Follow Cisco Learning & Certifications
Twitter | Facebook | LinkedIn | Instagram
Use #CiscoCert to join the conversation.
WOO HOO! Great job team!
Wonderful blog.
Excelente blog e información
Thanks for the update on clustering in CML.
Great Job!!!
Great work
No IPs in the Cluster Network?! Pow! My mind is blown… LOL!
There are, of course, IP addresses in use on the cluster network. But we use IPv6 SLAAC addresses (stateless address auto-configuration). So, from the admin’s point of view, there’s nothing to configure — it’s all auto-magic.
Love seeing the advances CML is making. Still VIRL to me 🙂
thanks! On the name “VIRL”: same here… ?
Thanks for the update on clustering in CML.
Excited to try out this new functionality! My current CML host frequently maxes out resources so it will be great to have the capability to add more compute nodes to scale to larger simulations. Great work!
Great news, thank you for sharing! Will the cost of it remain unchanged?
Awesome
I didnt think that CML still had educational prices. Have they come back again?
There’s academic licensing available… But this is intended for institutions, not individuals.
Good read!
Great stuff!
Nice to see the clustering enhancements! Seems I need to check out CML again.
CML seems to be great to use in labs, and is scalable
Thanks for the update on clustering in CML.
Looks like CML is awesome
Nice
Great Job!!!
Really cool!
Thank you for your information!
Very usefull feature for large education companies.
A great update – glad to see CML continuing to be developed and improved.
Nice
Great advance on this simulation tool.
Good stuff
Sounds good.
Excellent blog and information.
This is a great feature that has been added
CML sounds interesting
I am so appreciative of the update.
fantastic source of information! Well done!
nice work great reading it , and excellent information.
Nice Blog
Excellent Study
CML sounds great. I’m going to try deploy at work to experiment with upcoming changes to our network (dot1x for wired in a hospital).
Thanks for the clustering information !!
Great job
Thank you for sharing this useful topic.
Central software mand management of computes.
Way to go .
Better more advanced tools for learning. Nice job!
Interesting! Great job.
Netconf and Rest API is now the new standards – better get moving!
You can use NETCONF and RESTCONF with Cisco network devices inside of a CML lab. They are standards, sure. As in “ratified by a standards body”. Whether they are “the” new standards depends on adoption.
Nice to hear you can create clustering in CML now.
Looks Awesome!
Thank you
Great job team!
I hope to have opportunity to test this solution. Thank you
Modeling labs make a great test environment!
Looking forward to our migration from v2.2 to v2.4. The cluster ability sounds like a great way to give new life to some server resources that would’ve otherwise been decom’d.
This is awesome!
interesting but this feature appears limited to non-individual users
Interesting Feature – not sure if/how it applies to individual user licences. Appears to be aimed at speciifc licence/deployment types of CML.
This is correct. Clustering is a “non-personal edition” feature, it requires either an “enterprise” or an “academic use” license.
Sounds promising, I will upgrade it this week probably.
Modeling labs make a great test environment!
Very nice blog!!
Great series
Great Job!
Very interesting!
We’ve been waiting for it!
This is great news and is definitely a next level upgrade! Now I have an excuse to purchase more hardware and computing power.
Thanks for the update on clustering in CML
Excellent
Great, thanks
Distributing the computational load across multiple hardware systems would provide increased computational capacity, which would be useful when attempting to simulate all of the functionality of networking hardware. Compared to Cisco Modeling Labs, Cisco Packet Tracer is limited as a simulator, because it lacks the feature of clustering.
Great work!
Awesome 🙂
Good information on CML updates.
Another step in to the future, excellent work!
A good information, very happy to see that new development and improment.
Awesome Blog. Keep it up Team.. Cheers
Amazing job team!!!!
Excellent information!
Great Job. Nice information
I think this is great feature to help people test and learn at a fraction of the cost of doing it with real equipment
Thanks for the update on clustering in CML
Thank you for the information
Thanks for the update!
Great news!
Great addition!
It is good information about CML which is new to me
Very insightful