Use este identificador para citar ou linkar para este item: http://repositorio.utfpr.edu.br/jspui/handle/1/39096
Registro completo de metadados
Campo DCValorIdioma
dc.creatorValadares, Paula Graziela Militão-
dc.date.accessioned2025-12-16T13:38:44Z-
dc.date.available2025-12-16T13:38:44Z-
dc.date.issued2025-11-18-
dc.identifier.citationVALADARES, Paula Graziela Militão. Análise de desempenho de estratégias de autoscaling do kubernetes visando disponibilidade e tolerância a falhas. 2025. Trabalho de Conclusão de Curso (Bacharelado em Engenharia de Computação) - Universidade Tecnológica Federal do Paraná, Pato Branco, 2025.pt_BR
dc.identifier.urihttp://repositorio.utfpr.edu.br/jspui/handle/1/39096-
dc.description.abstractWith the evolution of application architectures, particularly with the adoption of the microservices paradigm and advances in server virtualization through cloud computing providers, it has become possible to dynamically allocate computing resources according to the demand. This flexibility has enabled more effective and accurate approaches to handle unexpected application behaviors, improving resource utilization by minimizing waste and preventing shortages. As a result, applications are able to maintain performance and availability even under unpredictable conditions. Application scaling refers to the ability of software to automatically adapt to variations in workload and demand, ensuring operational stability. In this context, container technologies play a key role in cloud environments and are widely used for deploying microservices. Containers can be managed manually by human operators or, more efficiently and automatically, by container orchestration platforms such as Kubernetes. In this study, it was used Kubernetes, the most widely adopted orchestrator nowadays. Within Kubernetes, containers are grouped into units called Pods, and the platform provides several Pod scaling options, known as autoscaling mechanisms. Therefore, this thesis implements different Kubernetes Pod autoscaling strategies to perform a comparative analysis of their performance under various configurations and software scenarios, highlighting the impact of each approach with a focus on availability and fault tolerance. The results showed that strategies based purely on computational resources can be effective for synchronous response applications but proved insufficient for asynchronous and event-driven applications. In event-driven scenarios, only mechanisms based on custom metrics related to specific events (such as queue size) were able to ensure performance, stability, and efficient resource management, demonstrating that the choice of autoscaling depends directly on the architecture of the software employed.pt_BR
dc.languageporpt_BR
dc.publisherUniversidade Tecnológica Federal do Paranápt_BR
dc.rightsopenAccesspt_BR
dc.rights.urihttp://creativecommons.org/licenses/by/4.0/pt_BR
dc.subjectSistemas de computação virtualpt_BR
dc.subjectSistemas operacionais (Computadores)pt_BR
dc.subjectContêinerespt_BR
dc.subjectComputação em nuvempt_BR
dc.subjectSoftwarept_BR
dc.subjectVirtual computer systemspt_BR
dc.subjectOperating systems (Computers)pt_BR
dc.subjectContainerspt_BR
dc.subjectCloud computingpt_BR
dc.subjectComputer softwarept_BR
dc.titleAnálise de desempenho de estratégias de autoscaling do kubernetes visando disponibilidade e tolerância a falhaspt_BR
dc.title.alternativePerformance analysis of kubernetes autoscaling strategies for availability and fault tolerancept_BR
dc.typebachelorThesispt_BR
dc.description.resumoCom a evolução das arquiteturas de aplicações, especialmente com a adoção do paradigma de microsserviços, e o avanço da virtualização de servidores por meio de provedores de computação em nuvem, tornou-se possível requisitar recursos computacionais de forma dinâmica conforme a demanda. Essa flexibilidade possibilitou o surgimento de abordagens mais eficazes e precisas para lidar com comportamentos inesperados nas aplicações, tornando o uso de recursos computacionais mais eficiente, reduzindo desperdícios e evitando a escassez de recursos. Dessa forma, as aplicações conseguem manter seu desempenho e disponibilidade mesmo em cenários imprevisíveis. O escalonamento de aplicações refere-se à capacidade do software de adaptar-se automaticamente a variações de carga e demanda, assegurando estabilidade operacional. Nesse contexto, as tecnologias de containers desempenham um papel fundamental em ambientes de nuvem, sendo amplamente utilizadas para a implantação de microsserviços. Os containers podem ser gerenciados manualmente por operadores humanos ou, de forma mais eficiente e automatizada, por plataformas de orquestração de containers, como o Kubernetes. Neste trabalho, utilizou-se o Kubernetes, o orquestrador mais popular da atualidade. Os containers são agrupados, dentro do Kubernetes, em unidades chamadas Pods. O Kubernetes conta com algumas opções de escalonadores de Pods, chamados de autoscalings. Portanto, neste Trabalho de Conclusão de Curso, foram implementadas estratégias de autoscalings de Pods do Kubernetes, com a finalidade de realizar um estudo comparativo do desempenho de cada autoscaling, com diferentes configurações, para determinados cenários de software, apontando os impactos de cada escolha, visando disponibilidade e tolerância a falhas. Os resultados demonstraram que estratégias baseadas puramente em recursos computacionais podem ser eficazes para aplicações de resposta síncrona, mas se mostraram insuficientes para aplicações assíncronas e orientadas a eventos. Em cenários orientados a eventos, apenas os mecanismos baseados em métricas personalizadas relacionadas ao determinado evento (como o tamanho da fila) conseguiram garantir o desempenho, a estabilidade e o bom gerenciamento de recursos alocados, provando que a escolha dos autoscalings depende diretamente da arquitetura do software utilizada.pt_BR
dc.degree.localPato Brancopt_BR
dc.publisher.localPato Brancopt_BR
dc.contributor.advisor1Favarim, Fábio-
dc.contributor.referee1Favarim, Fábio-
dc.contributor.referee2Dosciatti, Eden Ricardo-
dc.contributor.referee3Serckumecka, Adriano-
dc.publisher.countryBrasilpt_BR
dc.publisher.departmentDepartamento Acadêmico de Informáticapt_BR
dc.publisher.programEngenharia de Computaçãopt_BR
dc.publisher.initialsUTFPRpt_BR
dc.subject.cnpqCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOpt_BR
Aparece nas coleções:PB - Engenharia de Computação

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
analisedesempenhokubernetes.pdf3,91 MBAdobe PDFThumbnail
Visualizar/Abrir


Este item está licenciada sob uma Licença Creative Commons Creative Commons