... boosting your innovation with engineering and manufacturing solutions in the cloud...
MiCADO supports the automated deployment and run-time management of microservices-based applications in multi-cloud and edge/fog computing environments.
MiCADO is an application-level cloud-agnostic orchestration and auto-scaling framework. MiCADO supports the entire life-cycle of microservice-based cloud applications. An application in MiCADO is a set of microservices that are deployed in Docker containers. One application can include as many microservices as required. The developer describes the application topology (i.e. all containers, virtual machines hosting these containers and their possible dependencies) in a TOSCA-based (Topology and Orchestration Specification for Cloud Applications) Application Description Template (ADT). The ADT also includes the various policies (e.g. scaling or security policies) that govern the operation of the application during runtime. At deployment time, MiCADO receives the ADT and deploys all the necessary virtual machines and containers, as described in the ADT. During the application’s lifetime, MiCADO constantly monitors its execution and adjusts the resources (e.g. allocates more or less containers or virtual machines to fulfil the policies defined in the ADT), as required. A number of cloud service providers and middleware are supported by MiCADO, including both commercial clouds such as Amazon AWS, Microsoft Azure, Google Cloud Platform, or Oracle Cloud Services, as well as private cloud systems based on OpenStack or OpenNebula. MiCADO is fully open source and implements a microservices architecture in a modular way.
MiCADO has been applied in several European projects to deploy applications as cloud-based services. Application examples and use-cases can be found by following the below links:
MiCADO is open-source (Apache-2 license) and based on widely-used open-source solutions, such as Kubernetes, Docker, Prometheus, Terraform or Occopus. There are not dependencies exposed.