Migração de microsserviços containerizados em tempo de execução

Detalhes bibliográficos
Ano de defesa: 2018
Autor(a) principal: ANDRADE, Marcos Vinicius de Araújo
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal de Pernambuco
UFPE
Brasil
Programa de Pos Graduacao em Ciencia da Computacao
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: https://repositorio.ufpe.br/handle/123456789/32481
Resumo: A arquitetura de microsserviços tem sido amplamente adotada para construir sistemas em ambientes de nuvem. Um aspecto crítico sobre aplicações baseadas em microsserviço (Apps) é sua implantação em nós/hosts num cluster devido a sua dinamicidade e facilidade. Ferramentas de gerenciamento de Apps como Kubernetes e Docker Swarm implantam microsserviços baseando-se em recursos disponíveis nos nós/hosts em tempo de implantação. Porém, operações para escalar/replicar microsserviços podem ocasionar, com o passar do tempo, uma queda de desempenho em relação ao que se tinha no momento da implantação. Por exemplo, uma operação para replicar um microsserviço pode sobrecarregar um nó/host ou intensificar significativamente a comunicação entre microsserviços implantados em nós/hosts diferentes. Essas operações acontecem sob demanda em tempo de execução. Neste trabalho, apresentamos uma solução capaz de alterar a implantação da App movendo os microsserviços considerando informações de tempo de execução que representam uma visão mais realista dos recursos disponíveis no cluster. Para avaliar a solução proposta, avaliamos o seu desempenho com as estratégias padrões usadas pelas ferramentas de gerenciamento de microsserviços, e em vários cenários diferentes.
id UFPE_b6182699258a4832e4353ebe876009d1
oai_identifier_str oai:repositorio.ufpe.br:123456789/32481
network_acronym_str UFPE
network_name_str Repositório Institucional da UFPE
repository_id_str
spelling Migração de microsserviços containerizados em tempo de execuçãoMigração de microsserviços em tempo de execuçãoSistemas distribuídosMicroserviçosDocker SwarmSchedulingA arquitetura de microsserviços tem sido amplamente adotada para construir sistemas em ambientes de nuvem. Um aspecto crítico sobre aplicações baseadas em microsserviço (Apps) é sua implantação em nós/hosts num cluster devido a sua dinamicidade e facilidade. Ferramentas de gerenciamento de Apps como Kubernetes e Docker Swarm implantam microsserviços baseando-se em recursos disponíveis nos nós/hosts em tempo de implantação. Porém, operações para escalar/replicar microsserviços podem ocasionar, com o passar do tempo, uma queda de desempenho em relação ao que se tinha no momento da implantação. Por exemplo, uma operação para replicar um microsserviço pode sobrecarregar um nó/host ou intensificar significativamente a comunicação entre microsserviços implantados em nós/hosts diferentes. Essas operações acontecem sob demanda em tempo de execução. Neste trabalho, apresentamos uma solução capaz de alterar a implantação da App movendo os microsserviços considerando informações de tempo de execução que representam uma visão mais realista dos recursos disponíveis no cluster. Para avaliar a solução proposta, avaliamos o seu desempenho com as estratégias padrões usadas pelas ferramentas de gerenciamento de microsserviços, e em vários cenários diferentes.CAPESThe Microservice architectural style has been widely adopted for building distributed systems in cloud environments. A critical aspect of microservice-based applications (Apps) is their deployment throughout nodes of a cluster due their dynamism and ease. Commonly adopted management tools like Kubernetes and Docker Swarm deploy Apps based on the resources available in the nodes at deployment time. However, traditional scale in-/out operations of Apps may lead the initial deployment to a lousy performance over time. For example, scale-in/out operation can overload a given node or put high-intensive communicating microservices in different nodes. These operations happen on-demand during runtime. In this work, we present a solution capable of changing the deployment of the App by moving the microservices considering runtime information that represents a more realistic view of available resources in the cluster. To assess the proposed solution, we compare the performance of microservices from a Apps using the proposed solution against ones adopting the default strategies available in the mentioned management tools in several different scenarios.Universidade Federal de PernambucoUFPEBrasilPrograma de Pos Graduacao em Ciencia da ComputacaoROSA, Nelson Soutohttp://lattes.cnpq.br/1561035792130867http://lattes.cnpq.br/4220236737158909ANDRADE, Marcos Vinicius de Araújo2019-09-10T21:24:18Z2019-09-10T21:24:18Z2018-09-06info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://repositorio.ufpe.br/handle/123456789/32481porAttribution-NonCommercial-NoDerivs 3.0 Brazilhttp://creativecommons.org/licenses/by-nc-nd/3.0/br/info:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFPEinstname:Universidade Federal de Pernambuco (UFPE)instacron:UFPE2019-10-26T07:09:00Zoai:repositorio.ufpe.br:123456789/32481Repositório InstitucionalPUBhttps://repositorio.ufpe.br/oai/requestattena@ufpe.bropendoar:22212019-10-26T07:09Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)false
dc.title.none.fl_str_mv Migração de microsserviços containerizados em tempo de execução
Migração de microsserviços em tempo de execução
title Migração de microsserviços containerizados em tempo de execução
spellingShingle Migração de microsserviços containerizados em tempo de execução
ANDRADE, Marcos Vinicius de Araújo
Sistemas distribuídos
Microserviços
Docker Swarm
Scheduling
title_short Migração de microsserviços containerizados em tempo de execução
title_full Migração de microsserviços containerizados em tempo de execução
title_fullStr Migração de microsserviços containerizados em tempo de execução
title_full_unstemmed Migração de microsserviços containerizados em tempo de execução
title_sort Migração de microsserviços containerizados em tempo de execução
author ANDRADE, Marcos Vinicius de Araújo
author_facet ANDRADE, Marcos Vinicius de Araújo
author_role author
dc.contributor.none.fl_str_mv ROSA, Nelson Souto
http://lattes.cnpq.br/1561035792130867
http://lattes.cnpq.br/4220236737158909
dc.contributor.author.fl_str_mv ANDRADE, Marcos Vinicius de Araújo
dc.subject.por.fl_str_mv Sistemas distribuídos
Microserviços
Docker Swarm
Scheduling
topic Sistemas distribuídos
Microserviços
Docker Swarm
Scheduling
description A arquitetura de microsserviços tem sido amplamente adotada para construir sistemas em ambientes de nuvem. Um aspecto crítico sobre aplicações baseadas em microsserviço (Apps) é sua implantação em nós/hosts num cluster devido a sua dinamicidade e facilidade. Ferramentas de gerenciamento de Apps como Kubernetes e Docker Swarm implantam microsserviços baseando-se em recursos disponíveis nos nós/hosts em tempo de implantação. Porém, operações para escalar/replicar microsserviços podem ocasionar, com o passar do tempo, uma queda de desempenho em relação ao que se tinha no momento da implantação. Por exemplo, uma operação para replicar um microsserviço pode sobrecarregar um nó/host ou intensificar significativamente a comunicação entre microsserviços implantados em nós/hosts diferentes. Essas operações acontecem sob demanda em tempo de execução. Neste trabalho, apresentamos uma solução capaz de alterar a implantação da App movendo os microsserviços considerando informações de tempo de execução que representam uma visão mais realista dos recursos disponíveis no cluster. Para avaliar a solução proposta, avaliamos o seu desempenho com as estratégias padrões usadas pelas ferramentas de gerenciamento de microsserviços, e em vários cenários diferentes.
publishDate 2018
dc.date.none.fl_str_mv 2018-09-06
2019-09-10T21:24:18Z
2019-09-10T21:24:18Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://repositorio.ufpe.br/handle/123456789/32481
url https://repositorio.ufpe.br/handle/123456789/32481
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade Federal de Pernambuco
UFPE
Brasil
Programa de Pos Graduacao em Ciencia da Computacao
publisher.none.fl_str_mv Universidade Federal de Pernambuco
UFPE
Brasil
Programa de Pos Graduacao em Ciencia da Computacao
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFPE
instname:Universidade Federal de Pernambuco (UFPE)
instacron:UFPE
instname_str Universidade Federal de Pernambuco (UFPE)
instacron_str UFPE
institution UFPE
reponame_str Repositório Institucional da UFPE
collection Repositório Institucional da UFPE
repository.name.fl_str_mv Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)
repository.mail.fl_str_mv attena@ufpe.br
_version_ 1856042112774045696