dc.contributorROSA, Nelson Souto
dc.contributorCAVALCANTI, George Darmiton da Cunha
dc.contributorhttp://lattes.cnpq.br/1210288228838960
dc.contributorhttp://lattes.cnpq.br/4220236737158909
dc.contributorhttp://lattes.cnpq.br/8577312109146354
dc.creatorSANTOS, Wellison Raul Mariz
dc.date2020-08-14T18:14:21Z
dc.date2020-08-14T18:14:21Z
dc.date2020-02-27
dc.date.accessioned2022-10-06T17:20:25Z
dc.date.available2022-10-06T17:20:25Z
dc.identifierSANTOS, Wellison Raul Mariz. Adaptação de aplicações baseadas em microsserviços usando aprendizagem de máquina. 2020. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal de Pernambuco, Recife, 2020.
dc.identifierhttps://repositorio.ufpe.br/handle/123456789/37651
dc.identifier.urihttp://repositorioslatinoamericanos.uchile.cl/handle/2250/3986356
dc.descriptionOs microsserviços têm sido amplamente utilizados para criar aplicações complexas baseadas na nuvem. Nos sistemas baseados em nuvem, um dos requisitos essenciais é a escalabilidade. Sistemas escaláveis se adaptam às mudanças na carga de trabalho usando recursos de hardware adicionais, ou seja, dimensionamento automático. No entanto, o gerenciamento de recursos envolve o monitoramento da carga de trabalho para determinar quando as adaptações são necessárias, seguida de uma ação corretiva rápida e precisa para evitar problemas como indisponibilidade ou baixo desempenho da aplicação. Como consequência, essas aplicações devem ser gerenciadas continuamente para que o ajuste de seus recursos atenda à demanda atual. Dessa maneira, as aplicações buscam manter a qualidade do serviço fornecido. As soluções existentes descrevem vários mecanismos que aplicam técnicas de dimensionamento automático para adaptar Microservice-Based Applications (MBAs). Porém, a adaptação somente é efetuada após um problema ocorrer, e.g., a adição de recursos adicionais a um microsserviço operando com consumo de CPU em 95%, quando deveria usar no máximo 80%. No entanto, poucos trabalhos tratam o gerenciamento de recursos que ajusta o sistema antes que o problema ocorra e as consequências de sua adoção. Nesse contexto, este trabalho propõe um novo ambiente proativo que usa modelos de aprendizagem de máquina para prever cargas de trabalho no futuro próximo, e os usa para ajudar nas decisões de provisionamento de recursos. Esses modelos foram integrados a um feedback loop MAPE-K, responsável pela adaptação da MBA. Essa pesquisa serve ainda como um passo-a-passo de como usar modelos de aprendizado de máquina para o desenvolvimento de soluções adaptativas proativas no mundo de microsserviços. Para avaliar o ambiente proposto, experimentos foram realizados para compará-la com os mecanismos reativos existentes no Kubernetes. No final, o ambiente proposto mostrou um melhor desempenho para adaptar MBAs.
dc.descriptionFACEPE
dc.descriptionMicroservices have been used extensively to create complex cloud-based applications. In cloud-based systems, one of the essential requirements is scalability. Scalable systems adapt to changes in workload using additional hardware resources, i.e., autoscaling. However, resource management involves monitoring the workload to determine when adaptations are needed, followed by quick and accurate corrective action to avoid problems such as unavailability or poor application performance. As a consequence, these applications must be managed continuously so that the adjustment of their resources meets the current demand. In this way, applications seek to maintain the quality of the service provided. Existing solutions describe various mechanisms that apply autoscaling techniques to adapt the Microservice-Based Applications (MBAs). However, the adaptation only is made after a problem occurs, e.g., the addition of additional resources to a microservice operating with 95% CPU consumption, when it should use a maximum of 80%. However, few of them address the use of resource management to adjust the system before the problem occurs and the consequences of their adoption. In this context, this work proposes a new proactive environment that uses machine learning models to predict near-future workloads and uses them to help in resource provisioning decisions. These models were integrated into a MAPE-K feedback loop, responsible for adapting the MBA. This research also serves as a step-by-step guide on how to use machine learning models for the development of proactive adaptive solutions in the world of microservices. The proposed environment was evaluated through experiments that compared it to the existing reactive mechanisms in Kubernetes. In the end, the proposed environment showed the better performance to adapt MBAs.
dc.formatapplication/pdf
dc.languagepor
dc.publisherUniversidade Federal de Pernambuco
dc.publisherUFPE
dc.publisherBrasil
dc.publisherPrograma de Pos Graduacao em Ciencia da Computacao
dc.rightsopenAccess
dc.rightsAttribution-NonCommercial-NoDerivs 3.0 Brazil
dc.rightshttp://creativecommons.org/licenses/by-nc-nd/3.0/br/
dc.subjectRedes de computadores
dc.subjectAprendizagem de máquina
dc.titleAdaptação de aplicações baseadas em microsserviços usando aprendizagem de máquina
dc.typemasterThesis


Este ítem pertenece a la siguiente institución