Skip to Main Content
Service placement algorithms have been introduced to automatically manage services in distributed environments. However, most of these algorithms aim to improve service performance or to reduce operation cost and do not consider the reliability and availability of their resources. Most of them do not consider events when machines in their resource pool malfunction. These malfunctioned machines could cause services to halt or, worse, to produce transient and intermittent errors. Presently, most of the solutions proposed to improve service availability are based on having redundancy units that do not consider the amount of work and resources needed to create replicas, which greatly increases the complexity of the management of a distributed system. In this paper, we survey state-of-the-art techniques that could improve service availability in distributed environments and propose an autonomie algorithm based on team building concept that dynamically performs service placement to improve service availability even in the event of resource failures.