K8ShMiR: um framework para replicação de máquinas de estado em contêineres gerenciados pelo Kubernetes - Fernandes, Lucas Borges (2021)
Mechanisms for computing infrastructure virtualization, such as virtual machines and containers, are a fundamental part of modern computing systems. Their versatility and low cost characteristics from a computational and financial standpoint have allowed new system architectures to be popularized. One of them are microservices, small pieces of software that run in different containers, while working together as a single application. In this work, we present an architecture for state machine replication in container-based systems, providing non-intrusive fault tolerance guarantees for the replicated application and its users. This architecture, in addition to being little intrusive, is also extensible, so that it can be instantiated in different ways and with varied technologies. After describing it, we present one of its possible implementations with a framework named K8ShMiR, which works with Docker containers in Kubernetes, a container orchestrator. To guarantee total order delivery of messages, we use the Atomix framework. Finally, we executed integration tests with a local Kubernetes cluster to validate that our implementation works.