MiCADO is an auto-scaling framework for Docker containers orchestrated by Kubernetes. It supports autoscaling at two levels. At virtual machine (VM) level, a built-in Kubernetes cluster is dynamically sized by adding/removing cloud virtual machines. At the container level, the number of replicas tied to a specific Kubernetes Deployment can be increased/decreased.

MiCADO takes as input a TOSCA-based Application Description Template that describes the application to be deployed in three sections:

  1. the definition of the individual containers making up the broader application,
  2. the specification of the virtual machines to be provisioned on a given cloud middleware and
  3. the implementation of policies for scaling, monitoring and security as they apply to both levels of the application.

The format and syntax of the Application Description Template for MiCADO is detailed in the User's Documentation.

To use MiCADO, first the MiCADO core services must be deployed on a virtual machine (the MiCADO Master node). This is done via an easy-to-use Ansible playbook. The MiCADO Master runs the Kubernetes control-plane, the Docker runtime, Terraform and/or Occopus (to provision and scale VMs), Prometheus (for monitoring), the MiCADO Policy Keeper (for automated scaling) and the MiCADO Submitter (the submission endpoint). Where possible, these components are themselves deployed to Kubernetes in a microservices architecture.

At run-time, MiCADO workers (realised on new VMs) are provisioned and instantiated on-demand and run the Prometheus Node Exporter and Google cAdvisor to collect a default set of metrics used for scaling the infrastructure. The newly instantiated MiCADO workers join the Kubernetes cluster managed by the MiCADO Master and application containers are appropriately scheduled across those workers.

The actual duration of the Innovation Action COLA was from January 2017 to September 2019. More information about the MiCADO framework can be found on its product page and on the website of the distribution and service partner cloudSME, former COLA project partner. If you have questions that are left open, contact cloudSME, they are happy to answer your questions. You can easily use the contact form provided, or give them a quick call.

Logo University of Westminster

The COLA project was coordinated by Dr. Tamas Kiss, University of Westminster, (t.kiss (at) westminster.ac.uk) and managed by Dr. Gábor Terstyánszky (G.Z.Terstyanszky (at) westminster.ac.uk).



cloudSME is represented by:

Andreas Ocklenburg (CEO)
Phone: +49 (0)203 3639 9955