Please use this identifier to cite or link to this item: https://hdl.handle.net/10316/107889
Title: Scaling of Applications in Containers
Other Titles: Scaling Automático de Aplicações Containerizadas
Authors: Martins, Diogo Valente
Orientador: Araújo, Filipe João Boavida Mendonça Machado de
Neves, Pedro Miguel Naia
Keywords: Kubernetes; Containers; Scaling; Custos; Kubernetes; Containers; Scaling; Costs
Issue Date: 18-Jul-2023
Serial title, monograph or event: Scaling of Applications in Containers
Place of publication or event: Altice Labs
Abstract: Com os avanços na Internet e nas telecomunicações, a quantidade de dados que precisam de ser processados está a aumentar, tornando difícil estimar os requi sitos de hardware necessários para os processar ao longo do tempo. Além disso,numa instalação tradicional de software, o hardware necessário é sempre esti mado para o pior caso, o que significa que uma grande parte do tempo é subu tilizada. Uma das formas de reduzir os custos é instalar estas aplicações na cloud, atribuindo o mínimo de recursos necessários ou partilhando o hardware com outras plataformas que tenham necessidades de processamento em momen tos diferentes. Para que isto seja possível, é necessário que exista um mecan ismo de previsão dos recursos necessários num determinado momento e que o software esteja preparado para ser ativado ou desativado através de mecanismos automáticos, ou seja, que o software esteja preparado para ser redimensionado. A plataforma ACM recebe milhões de eventos por dia em tempo real de várias fontes (ex.: registos de chamadas, carregamentos pré-pagos, eventos de geolocal ização, etc.) e desencadeia acções (proposta de ofertas, ativação/desativação deofertas, etc.) de acordo com regras pré-definidas. Esta plataforma está atualmente a ser preparada para suportar estes mecanismos, de modo a poder ser instanci ada com custos de infraestrutura mais baixos. De momento a plataforma é in stanciada utilizando containers, no entanto, ainda não suporta a instanciação em Kubernetes. Este estágio curricular tem como objetivo fazer um primeiro deployment da plataforma em Kubernetes, identificar que componentes da plataforma podem ser instanciados múltiplas vezes, identificar que métricas são importantes para a decisão de aumentar/diminuir o número de instâncias de cada compo nente, implementar e testar uma prova de conceito.
With advances in the Internet and telecommunications, the amount of data that needs to be processed is increasing, making it difficult to estimate the hardware requirements needed to process them over time. Additionally, in a traditional software installation, the required hardware is always estimated for the worst case, which means that a large part of the time is underused. One of the ways to reduce costs is to install these applications in the cloud allocating the minimum of required resources or to share the hardware with other platforms that have processing requirements at different times. For this to be possible, it is necessary to have a mechanism to predict the resources needed at a given time and that the software be prepared to be activated or deactivated using automatic mecha nisms, that is, that the software is prepared to be rescaled. The Active Campaign Manager (ACM) platform receives millions of events per day in real time from various sources (eg call logs, prepaid topups, geolocation events, etc) and trig gers actions (proposal of offers, activation/ deactivation of offers, etc) according to pre-defined rules. This platform is currently being prepared to support these mechanisms in order to be able to be instantiated with lower infrastructure costs. At the moment the platform is instantiated using containers, however, it does not yet support instantiation in Kubernetes. This curricular internship aims to make a first deployment of the platform in Kubernetes, identify which platform com ponents can be instantiated multiple times, identify which metrics are important for the decision to increase/decrease the number of instances of each component, implement and test a concept proof.
Description: Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia
URI: https://hdl.handle.net/10316/107889
Rights: openAccess
Appears in Collections:UC - Dissertações de Mestrado

Files in This Item:
File SizeFormat
Diogo_Martins_Thesis.pdf2.08 MBAdobe PDFView/Open
Show full item record

Page view(s)

26
checked on Apr 24, 2024

Google ScholarTM

Check


This item is licensed under a Creative Commons License Creative Commons