Implementação de serviço de checkpoint para arquitetura de checkpoint/restore de stateful containers no kubernetes
Autor(a) principal: | |
---|---|
Data de Publicação: | 2023 |
Tipo de documento: | Trabalho de conclusão de curso |
Idioma: | por |
Título da fonte: | Repositório Institucional da UFSC |
Texto Completo: | https://repositorio.ufsc.br/handle/123456789/253131 |
Resumo: | TCC (graduação) - Universidade Federal de Santa Catarina, Centro Tecnológico, Ciências da Computação. |
id |
UFSC_73737eba6d4a9c4f851e2c31d51c10e9 |
---|---|
oai_identifier_str |
oai:repositorio.ufsc.br:123456789/253131 |
network_acronym_str |
UFSC |
network_name_str |
Repositório Institucional da UFSC |
repository_id_str |
2373 |
spelling |
Implementação de serviço de checkpoint para arquitetura de checkpoint/restore de stateful containers no kubernetesTolerância a falhasKubernetesContêineresStateful ContainersCheckpoint/RestoreTCC (graduação) - Universidade Federal de Santa Catarina, Centro Tecnológico, Ciências da Computação.Em sistemas distribuidos, percebemos a alta difusão da utilização de virtualização leve, através de contêineres, para criação de implantação de novas aplicações, prin- cipalmente entre microsserviços e computação distribuída em serviços em nuvem. Entretanto, este método possui alguns desafios para prover alta disponibilidade dos serviços. Orquestradores de contêneires resolvem muitos dos desafios, como a esca- labilidade, a distribuições e administração de contêneires em clusters. Porém, alguns desafios persistem, como o tema deste trabalho que é a alta disponibilidade para serviços em contêineres do tipo Stateful. Estes tipos de serviços necessitam que o estado seja persistido em memória e, em uma falha, seja possível reiniciar o serviço para o mesmo estado anterior à falha. Neste trabalho, utilizamos técnicas de Check- point/Restore para realizar o salvamento do estado de um serviço e posteriormente realizar a restauração do serviço, em caso de uma falha. Juntamente com estas téc- nicas, também aplicamos as técnicas do padrão de projeto de Event Sourcing para prover diferentes tipos de recuperação no trabalho. Ainda, focamos em prover uma solução que funcione de maneira transparente no orquestrador de contêneires Kuber- netes, que é atualmente o mais utilizado. Por fim, conseguimos prover um serviço de Checkpoint/Restore para Kubernetes em contêineres do tipo Stateful através de técnicas do padrão de projeto Event Sourcing utilizando uma arquitetura agnóstica a tecnologias. Também conseguimos abordar uma forma de realizar o mesmo salva- mento do estado e posterior recuperação utilizando CRIU e buildah para construção de imagens de recuperação do estado seguindo o padrão do Open Container Initiative.The world of distributed systems is seeing the increase in the usage of lightweight virtu- alization, also known as containers, to create applications, like microservices distributed in cloud systems. But, the usage of containers for distributed system has many chal- lenges on the high availability of the service. Container orchestrators, like Kubernetes, solve this challenges by providing tools to manage containers, scale them and distribute them. Although, the high availability of Stateful containers has other challenges than Stateless containers, like the fault tolerance on achieving the same state that the previ- ous failed application, this is the focus of this work. To achieve the same state as the previous failed container, we use Checkpoint/Restore techniques and the Event Sourc- ing pattern to checkpoint the state of the application and when it fails we restore it to the previous state. The usage of the Event Sourcing pattern is to investigate a new way to achieve the Checkpoint/Restore, also we show how to achieve the same result using traditional Checkpoint/Restore on Linux with CRIU. This work creates a framework for Kubernetes for fault tolerance with Checkpoint/Restore using Event Sourcing.Florianópolis, SC.Mendizabal, Odorico MachadoUniversidade Federal de Santa Catarina.Ortiz, Gian Augusto2023-12-13T19:57:18Z2023-12-13T19:57:18Z2023-12-05info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesis80 f.application/pdfhttps://repositorio.ufsc.br/handle/123456789/253131Open Access.info:eu-repo/semantics/openAccessporreponame:Repositório Institucional da UFSCinstname:Universidade Federal de Santa Catarina (UFSC)instacron:UFSC2023-12-13T19:57:19Zoai:repositorio.ufsc.br:123456789/253131Repositório InstitucionalPUBhttp://150.162.242.35/oai/requestopendoar:23732023-12-13T19:57:19Repositório Institucional da UFSC - Universidade Federal de Santa Catarina (UFSC)false |
dc.title.none.fl_str_mv |
Implementação de serviço de checkpoint para arquitetura de checkpoint/restore de stateful containers no kubernetes |
title |
Implementação de serviço de checkpoint para arquitetura de checkpoint/restore de stateful containers no kubernetes |
spellingShingle |
Implementação de serviço de checkpoint para arquitetura de checkpoint/restore de stateful containers no kubernetes Ortiz, Gian Augusto Tolerância a falhas Kubernetes Contêineres Stateful Containers Checkpoint/Restore |
title_short |
Implementação de serviço de checkpoint para arquitetura de checkpoint/restore de stateful containers no kubernetes |
title_full |
Implementação de serviço de checkpoint para arquitetura de checkpoint/restore de stateful containers no kubernetes |
title_fullStr |
Implementação de serviço de checkpoint para arquitetura de checkpoint/restore de stateful containers no kubernetes |
title_full_unstemmed |
Implementação de serviço de checkpoint para arquitetura de checkpoint/restore de stateful containers no kubernetes |
title_sort |
Implementação de serviço de checkpoint para arquitetura de checkpoint/restore de stateful containers no kubernetes |
author |
Ortiz, Gian Augusto |
author_facet |
Ortiz, Gian Augusto |
author_role |
author |
dc.contributor.none.fl_str_mv |
Mendizabal, Odorico Machado Universidade Federal de Santa Catarina. |
dc.contributor.author.fl_str_mv |
Ortiz, Gian Augusto |
dc.subject.por.fl_str_mv |
Tolerância a falhas Kubernetes Contêineres Stateful Containers Checkpoint/Restore |
topic |
Tolerância a falhas Kubernetes Contêineres Stateful Containers Checkpoint/Restore |
description |
TCC (graduação) - Universidade Federal de Santa Catarina, Centro Tecnológico, Ciências da Computação. |
publishDate |
2023 |
dc.date.none.fl_str_mv |
2023-12-13T19:57:18Z 2023-12-13T19:57:18Z 2023-12-05 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/bachelorThesis |
format |
bachelorThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
https://repositorio.ufsc.br/handle/123456789/253131 |
url |
https://repositorio.ufsc.br/handle/123456789/253131 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
Open Access. info:eu-repo/semantics/openAccess |
rights_invalid_str_mv |
Open Access. |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
80 f. application/pdf |
dc.publisher.none.fl_str_mv |
Florianópolis, SC. |
publisher.none.fl_str_mv |
Florianópolis, SC. |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFSC instname:Universidade Federal de Santa Catarina (UFSC) instacron:UFSC |
instname_str |
Universidade Federal de Santa Catarina (UFSC) |
instacron_str |
UFSC |
institution |
UFSC |
reponame_str |
Repositório Institucional da UFSC |
collection |
Repositório Institucional da UFSC |
repository.name.fl_str_mv |
Repositório Institucional da UFSC - Universidade Federal de Santa Catarina (UFSC) |
repository.mail.fl_str_mv |
|
_version_ |
1808652271801597952 |