Publicação: K8ShMiR: um framework para replicação de máquinas de estado em contêineres gerenciados pelo Kubernetes
Carregando...
Arquivos
Tipo do documento
Data
Direito de acesso
Área do conhecimento
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO::ARQUITETURA DE SISTEMAS DE COMPUTACAO
Título da Revista
ISSN da Revista
Título de Volume
Autores
Orientador
Coorientador
Resumo
Mecanismos para virtualização de infraestruturas de computação, como por exem-
plo máquinas virtuais e contêineres, são parte fundamental de sistemas de computação
modernos. Suas características versáteis e baratas do ponto de vista computacional e fi-
nanceiro permitiram que novas arquiteturas de sistemas fossem popularizadas. Uma delas
são os microsserviços, onde módulos de um software executam em contêineres diferentes,
mas que em conjunto funcionam como uma única aplicação. Neste trabalho, apresenta-
mos uma arquitetura para replicação de máquinas de estado em sistemas baseados em
contêineres, provendo garantias de tolerância a falhas de forma pouco intrusiva para a
aplicação replicada e seus usuários. Essa arquitetura, além de pouco intrusiva é também
extensível, de forma que pode ser instanciada de diversas formas e com tecnologias va-
riadas. Após a descrevermos, apresentamos uma de suas possíveis implementações com
um framework nomeado K8ShMiR, que funciona com contêineres Docker no Kubernetes,
um orquestrador de contêineres. Para garantias de difusão totalmente ordenada de men-
sagens, utilizamos o framework Atomix. Por fim, realizamos testes integrados com um
cluster Kubernetes local para validar que nossa implementação funciona.
Abstract
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.
Palavras-chave
Replicação de Máquinas de Estad, Contêiner, Difusão atômica, Microsserviços, Tolerância a falhas, Kubernetes, State Machine Replication, Container, Atomic Broadcast, Microservices, Fault Tolerance
Citação
FERNANDES, Lucas Borges.K8ShMiR: um framework para replicação de
máquinas de estado em contêineres gerenciados
pelo Kubernetes. 2021. 82f. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal de Uberlândia, Uberlândia, 2021. DOI https://doi.org/10.14393/ufu.di.2022.583
Avaliação
Revisão
Suplementado Por
Referenciado Por
Licença Creative Commons
Exceto quando indicado de outra forma, a licença deste item é descrita como Acesso Aberto
