RDBU| Repositório Digital da Biblioteca da Unisinos

Elergy: elasticidade em nuvem para gerenciar desempenho e energia em aplicações baseadas na arquitetura de microsserviços

Mostrar registro simples

Autor Nardin, Igor Fontana de;
Lattes do autor http://lattes.cnpq.br/7410972883809204;
Orientador Righi, Rodrigo da Rosa;
Lattes do orientador http://lattes.cnpq.br/2332604239081900;
Instituição Universidade do Vale do Rio dos Sinos;
Sigla da instituição Unisinos;
País da instituição Brasil;
Instituto/Departamento Escola Politécnica;
Idioma pt_BR;
Título Elergy: elasticidade em nuvem para gerenciar desempenho e energia em aplicações baseadas na arquitetura de microsserviços;
Resumo A arquitetura de microsserviços baseia-se na divisão das funcionalidades de uma aplicação em diversos pequenos serviços, visando que cada microsserviço seja escalado, distribuído, avaliado e implementado individualmente. Isso quer dizer que cada microsserviço pode ser escrito utilizando um framework ou linguagem diferente, pode possuir um número de nós diferente e pode possuir regras de elasticidade diferente. Essa arquitetura pode ser distribuída usando cloud computing, já que cada microsserviço pode ser distribuído em um container Docker. Utilizando elasticidade é possível alocar e desalocar recursos conforme algumas métricas, como CPU, visando melhorar o desempenho da aplicação. Existem diversos trabalhos que utilizam elasticidade para melhorar o desempenho da aplicação, porém são poucos os que visam melhorar o custo energético. Além disso, a maioria dos trabalhos baseiam-se na elasticidade reativa, onde as ações são executadas quando alguma métrica é atingida. Já na elasticidade proativa é utilizado alguma abordagem de predição, como por exemplo machine learning e séries temporais, para prever valores futuros de uma métrica e tomar decisões de antemão. Desta forma, o presente trabalho propõe o modelo Elergy, que combina elasticidade proativa de recursos com gerenciamento energético, visando melhorar o desempenho energético de aplicações submetidas à nuvem. Para a elasticidade proativa foi utilizado o modelo de séries temporais ARIMA, que visa prever uma métrica para tomar decisões de alocação e desalocação de containers de acordo com a carga de trabalho. Para o gerenciamento energético, o sistema migra containers entre servidores, visando permitir desativar máquinas que estão com baixa utilização. Além disso, apresenta-se um modelo de aplicação baseado em microsserviço que será a forma de implementação suportada pelo Elergy. Foram modeladas quatro cargas de trabalho que foram utilizadas na avaliação do modelo: constante, onda, crescente e decrescente. Em seguida, são demonstrados os resultados da predição de valores com a simulação de cargas de trabalhos reais. Para cada carga de trabalho avaliou-se o melhor modelo do ARIMA para predição. Este trabalho apresenta basicamente duas contribuições. A primeira é prover elasticidade proativa de aplicações que executam em microsserviços. A segunda é uma heurística para decisões de elasticidade visando redução do consumo energético com o mínimo impacto no desempenho. Para avaliar o impacto das decisões do Elergy, foram medidos os tempos de execução, índice energético e custo, com e sem o modelo comparando os resultados. Os resultados demonstram que obteve-se uma redução energética de até 27,92% em comparação com as outras execuções. Em relação ao custo, foi possível obter um custo 17,44% inferior.;
Abstract The microservice architecture divides the application functionalities into several small services. This allows a manager to scale, distribute, evaluate and implement each microservice individually. This means that a developer can write each microservice using a different framework or language, may have a number of different nodes and may have different rules of elasticity. This architecture is suitable for cloud computing since each Docker container packaged a microservice. Using elasticity, it is possible to allocate and deallocate resources according to some metrics, such as CPU, in order to improve application performance. There are several studies that use elasticity to improve the performance of the application, but few works that aim to improve the energy cost. In addition, most solutions use reactive elasticity. In this form of elasticity, when some metric reaches, one action performs. Already in proactive elasticity, some prediction algorithm, such as machine learning and time series, predicts future values of a metric and make decisions in advance. In this way, this work proposes the EnergyElastic model, a model that combines proactive resource elasticity with energy management. For the proactive elasticity, the model uses the ARIMA time series model, which aims to predict a metric to make allocation decisions and deallocation of containers according to the workload. For energy management, the system will migrate containers between servers in order to deactivate machines that are underutilized. In addition, we demonstrated a micro-service-based application model which will be the implementation supported by Elergy. We modeled four workloads that will be used to evaluate the model: constant, wave, increasing and decreasing. Finally, we show preliminary values prediction results with the simulation of real workloads. For each workload, we demonstrate the best ARIMA model. They are basically two expected contributions. The first is to provide proactive elasticity of applications that run on microservices. The second is a heuristic for elasticity decisions aimed at reducing energy consumption with minimal impact on performance. To evaluate the impact of the Elergy decisions, we mensured the execution time, energy index and cost, with and without the model, comparing the results. The results show that Elergy reduced up to 27.92% the energy. Regarding the cost, it was possible to obtain a lower cost of 17.44%.;
Palavras-chave Elasticidade; Energia; Desempenho; Computação na nuvem; Microsserviços; Elasticity; Energy; Performance; Cloud computing; Microservices;
Área(s) do conhecimento ACCNPQ::Ciências Exatas e da Terra::Ciência da Computação;
Tipo Dissertação;
Data de defesa 2020-02-27;
Agência de fomento CAPES - Coordenação de Aperfeiçoamento de Pessoal de Nível Superior;
Direitos de acesso openAccess;
URI http://www.repositorio.jesuita.org.br/handle/UNISINOS/9506;
Programa Programa de Pós-Graduação em Computação Aplicada;


Arquivos deste item

Este item aparece na(s) seguinte(s) coleção(s)

Mostrar registro simples

Buscar

Busca avançada

Navegar

Minha conta

Estatística