Zephyrus2 is a tool that allows computing the optimal configuration of applications to deploy in a cloud or another cluster. Zephyrus2 relies on SMT or CP solvers for the exploration of the search space. It is written in python and can be used as a microservices and deployed using docker.
Additional information: Zephyrus2 is a completely new implementation of the previous Zephyrus tool developed within the Aeolus project (https://github.com/aeolus-project/zephyrus). Zephyrus2 comes with a completely new declarative specification language to define the desired configuration and now it supports binding preferences.