Every platform has limits, workstations and physical servers have resource boundaries, APIs may be rate-limited, and even the perceived endlessness of the virtual public cloud enforces limitations that protect the platform from overuse or misuse. You can learn more about these limitations by visiting our documentation, “Azure subscription and service limits, quotas, and constraints.” When working on scenarios that take platforms to their extreme, those limits become real and therefore thought should be put into overcoming them.
The following post includes essential notes taken from a colleague's work with Mike Kiernan, Mayur Dhondekar, and Idan Shahar. It also covers some iterations where they try to reach a limit of 10K virtual machines running on Microsoft Azure and explores the pros/cons of the different implementations.
Read more about all the details of the solution in the blog post, “To Infinity and Beyond (or: The Definitive Guide to Scaling 10k VMs on Azure).” You can also see the solution code and deployment scripts on GitHub.