Utilize este link para identificar ou citar este item: https://bdm.unb.br/handle/10483/35641
Arquivos neste item:
Arquivo Descrição TamanhoFormato 
2022_ArthurFernandoPedrosoLenzi_LucasViniciusMartinsNogueira_tcc.pdf3,99 MBAdobe PDFver/abrir
Título: Kubernetes autoscaling baseado em redes neurais artificiais
Autor(es): Lenzi, Arthur Fernando Pedroso
Nogueira, Lucas Vinicius Martins
Orientador(es): Amvame-Nze, Georges
Assunto: Inteligência artificial
Redes neurais (Computação)
Data de apresentação: 29-Set-2022
Data de publicação: 29-Ago-2023
Referência: LENZI, Arthur Fernando Pedroso; NOGUEIRA, Lucas Vinicius Martins. Kubernetes autoscaling baseado em redes neurais artificiais. 2022. 39 f., il. Trabalho de Conclusão de Curso (Engenharia de Redes de Comunicação) — Universidade de Brasília, Brasília, 2022.
Resumo: Hoje cada vez mais se valoriza a experiência do usuário, qualquer atraso ou indisponibilidade percebidos em aplicações refletem diretamente na qualidade da empresa e na satisfação dos clientes, para evitar esses cenários as empresas alocam mais recursos em suas aplicações aumentando a quantidade de instancias da mesma. Em contrapartida, manter diversas instâncias de uma aplicação é uma medida onerosa tanto para infraestruturas on-premises quanto para ambientes em nuvem. Esse trade-off entre disponibilidade e uso de recursos é tratado por um mecanismo chamado autoscaling, onde normalmente é ativado por um limiar de utilização de recursos. Quando uma aplicação alcança esse limite o autoscaling é ativado e realiza o devido escalonamento da aplicação, podendo aumentar seus recursos ou o número de instâncias da aplicação. Quando essa utilização de recursos cai (comumente pela baixa de requisições ou usuários) o autoscaling reduz o número de instâncias ou a quantidade de recursos disponíveis na máquina, poupando recursos computacionais e financeiros. Ter um bom mecanismo de autoscaling reflete então não só em uma boa experiencia do usuário como também em uma economia de recursos para a empresa, entretanto isso não é uma tarefa fácil por isso é comumente configurada com parâmetros fixos e sem estudos sobre o comportamento da aplicação. Essa solução pode não ser a melhor em todos os cenários pois há diversas variáveis que podem determinar o quanto uma instância da aplicação irá suportar, dentre elas, quantidade de usuários, utilização de recursos por usuário ou até utilização de recurso por funcionalidade. Este trabalho propõe realizar um estudo, criação e implementação de uma infraestrutura que seja escalável por meio de uma inteligência artificial, utilizando Kubernetes, que é um dos principais sistemas de orquestração de contêineres open-source no mercado. O objetivo da IA é garantir disponibilidade e rapidez em momentos de grande volume de acesso ou grande uso de recursos.
Abstract: Today more and more the user experience is valued, any delay or perceived unavailability in applications reflect directly on the quality of the company and in customer satisfaction, to avoid these scenarios, companies allocate more resources to their applications, increasing the number of instances of the same. In contrast, keeping multiple instances of an application is an onerous measure for both on-premises infrastructure and in the cloud. This trade-off between availability and resource usage is handled by a mechanism called autoscaling, where it is normally triggered by a resource utilization threshold. When an application reaches this limit, autoscaling is activated and performs the necessary scaling of the application, being able to increase its resources or the number of instances of the application. When this resource utilization drops (commonly due to low requests or users) the autoscaling reduces the number of instances or the amount of resources available on the machine, saving computational and financial resources. Having a good autoscaling mechanism reflects not only a good user experience but also a resource economy for the company, however this is not an easy task as it is commonly configured with fixed parameters and without studies on the application behavior. This solution may not be the best in all scenarios as there are several variables that can determine how much an application instance will support, among them, number of users, use of resources per user or even use of feature by functionality. This work proposes to carry out the study, creation and implementation of an infrastructure that is scalable through artificial intelligence, using Kubernetes, which is one of the main opensource container orchestration systems on the market. The purpose of AI is to ensure availability and speed in times of high volume of access or high use of resources.
Informações adicionais: Trabalho de Conclusão de Curso (graduação) — Universidade de Brasília, Faculdade de Tecnologia, Departamento de Engenharia Elétrica, 2022.
Licença: A concessão da licença deste item refere-se ao termo de autorização impresso assinado pelo autor que autoriza a Biblioteca Digital da Produção Intelectual Discente da Universidade de Brasília (BDM) a disponibilizar o trabalho de conclusão de curso por meio do sítio bdm.unb.br, com as seguintes condições: disponível sob Licença Creative Commons 4.0 International, que permite copiar, distribuir e transmitir o trabalho, desde que seja citado o autor e licenciante. Não permite o uso para fins comerciais nem a adaptação desta.
Aparece na Coleção:Engenharia de Redes de Comunicação



Todos os itens na BDM estão protegidos por copyright. Todos os direitos reservados.