As cloud-deployed applications became more and more mainstream, continuously more complex services started to be deployed; indeed where initially monolithic applications were simply ported to the cloud, applications are now more and more often composed of micro-services. This improves the flexibility of an application but also makes it more complex due to the sheer number of services comprising it.As deployment and runtime management becomes more complex, orchestration software are becoming necessary to completely manage the lifecycle of cloud applications. One crucial problem remaining is how these applications can be made reliable in the cloud, a naturally unreliable environment.In this paper we propose concepts and architectures which were implemented in our orchestration software to guarantee reliability. Our initial implementation also relies on Monasca, a well-known monitoring software for OpenStack, to gather proper metric and execute threshold-based actions. This allows us to show how service reliability can be ensured using orchestration and how a proper incidentmanagement software feeding decisions to the orchestration engine ensures high-availability of all components of managed applications.