Blog Post

Desenvolvedores BR
5 MIN READ

FinOps para AKS: Um Guia para Otimização de Custos

DiegoCardoso's avatar
DiegoCardoso
Icon for Microsoft rankMicrosoft
Aug 12, 2024

Finops for containers in AKS

 

No cenário em constante evolução da computação em nuvem, gerenciar custos de forma eficaz enquanto se mantém o desempenho ideal é um desafio que muitas organizações enfrentam. Os Serviços Kubernetes do Azure (AKS) oferecem uma plataforma poderosa para orquestração de contêineres, mas sem práticas adequadas de operações financeiras (FinOps), os custos podem rapidamente sair de controle.

Aqui estão algumas recomendações para implementar FinOps no AKS para garantir crescimento sustentável e otimização de custos:

 

Add-in de Análise de Custos para Cluster AKS

 

O Add-in de Análise de Custos do Azure é uma ferramenta poderosa que fornece insights detalhados sobre o consumo de recursos e os custos associados ao seu cluster AKS. Com ele, você pode identificar rapidamente onde estão ocorrendo os maiores gastos e tomar decisões informadas sobre como reduzi-los. Por exemplo, você pode ajustar o tamanho e o número de nós do cluster, escolher SKUs de VM mais econômicas ou identificar e eliminar recursos subutilizados. A análise de custos ajuda a garantir que você esteja aproveitando ao máximo seu investimento no Azure, mantendo os custos sob controle.

 

Scale-to-zero com KEDA

 

Atualmente, kubernetes não tem suporte nativo ao scale-to-zero, ou seja, ela manterá o número de replicas em iddle mesmo que o workload não esteja em uso. Ai que entra o KEDA ( Kubernetes Event-Driven Autoscaling), uma solução que permite escalonamento baseada em eventos. Com o KEDA, você pode configurar o escalonamento automático de seus contêineres com base na demanda real de eventos, garantindo que você utilize recursos apenas quando necessário. Isso não apenas melhora a eficiência operacional, mas também reduz os custos, pois você paga apenas pelo que usa.

Além disso, o KEDA suporta uma ampla gama de fontes de eventos, tornando-o uma ferramenta versátil para diversas aplicações.

Aqui você pode encontrar mais detalhes KEDA e pros/contras.

 

Backup do Azure Kubernetes Service (AKS)

 

A prévia privada do Backup do AKS é outra ferramenta a considerar. Ela oferece uma maneira de proteger seu ambiente AKS, garantindo que, em caso de desastre, suas cargas de trabalho possam ser restauradas, evitando assim perdas financeiras devido a tempo de inatividade.

 

FinOps como parte da cultura com processos automatizados

 

No meu primeiro artigo da serie FinOps, foi comentado em detalhes mas abaixo trago alguns dos itens importantes sobre cultura e processo:

Implemente políticas de governança: Estabeleça políticas de governança para garantir que os recursos sejam provisionados de acordo com as melhores práticas e alinhados com os objetivos financeiros da empresa.

Automatize processos: Automatize a alocação de recursos, o dimensionamento automático e outras tarefas operacionais para otimizar a eficiência e reduzir o erro humano.

Reveja e melhore continuamente: Realize revisões periódicas dos custos e do uso, ajuste as estratégias de otimização conforme necessário e mantenha uma mentalidade de melhoria contínua.

A Microsoft Azure oferece recursos e ferramentas para ajudar as organizações a otimizar seus gastos com o ambiente de nuvem. O framework de adoção de nuvem e os frameworks bem arquitetados estabelecem práticas recomendadas, definem estratégia de nuvem e oferecem um framework de ponta a ponta para gerenciar o ambiente de nuvem de forma eficaz. Ferramentas como Azure Advisor, política de gerenciamento de custos e grupos de gerenciamento permitem recomendações sobre o uso de recursos, identificação de gastos em diferentes grupos de recursos e definição de políticas para restringir o uso de recursos ou para criar uma exigência para, por exemplo, marcar recursos com um centro de custo específico.

Além disso, com o FinOps toolkit, você vai encontrar muito assets para acelerar os processos de FinOps da sua empresa.

 

Automatizar Start-stop de NodePools

 

Talvez você não precise executar continuamente suas cargas de trabalho do AKS (Serviço de Kubernetes do Azure). Por exemplo, você pode ter um cluster de desenvolvimento que só usa durante o horário comercial. Isso significa que há momentos em que seu cluster pode estar ocioso, executando apenas os componentes do sistema. Você pode reduzir o volume do cluster colocando todos os pools de nós User em escala 0 :

 

Automatizar Start-Stop do Cluster

 

Mesmo desligando todos os os pools de nós User, ainda sim seu cluster terá custo dado node pools de sistema. Para otimizar melhor os custos durante esses períodos, você pode desativar ou interromper seu cluster. Essa ação interrompe o painel de controle e os nós de agente, permitindo que você economize em todos os custos de computação e ainda mantenha todos os objetos, exceto os pods autônomos:

 

Suporte a Node Pools com ARM64

 

Com a introdução do suporte a pool de nós ARM64 no AKS, as organizações agora podem criar nós agentes ARM64 Ubuntu e misturar nós de arquitetura Intel e ARM dentro de um cluster. Essas VMs ARM são projetadas para executar cargas de trabalho dinâmicas e escaláveis de forma eficiente, oferecendo até 50% de melhor desempenho de preço do que VMs baseadas em x86 comparáveis para cargas de trabalho de expansão. Isso é particularmente benéfico para servidores de bancos de dados de código aberto, aplicativos nativos da nuvem, servidores de jogos e muito mais.

 

SKUs Otimizadas para GPU

 

Para cargas de trabalho intensivas de computação, como renderização de gráficos, treinamento de grandes modelos e inferência, considere o uso de VMs otimizadas para computação, memória, armazenamento ou unidades de processamento gráfico (GPU). Os tamanhos de VM de GPU são VMs especializadas disponíveis com uma, várias ou frações de GPUs, mais adequadas para pools de nós Linux habilitados para GPU no AKS.

 

Variações de Custo Regional

 

É importante notar que o custo de computação varia entre as regiões. Ao selecionar uma região menos cara para executar cargas de trabalho, esteja ciente do impacto potencial da latência e dos custos de transferência de dados.

 

Conclusão

 

Implementar práticas recomendadas de FinOps no AKS é crucial para a otimização de custos e crescimento sustentável. Nao é um trabalho simples e rápido mas, ao combinar as recomendações acima, vai ajuda-lo a alcançar um equilíbrio entre desempenho e custo.

 

Este é o terceiro artigo da serie FinOps. Você pode acessar os artigos anteriores pelo links:

Updated Aug 12, 2024
Version 1.0
No CommentsBe the first to comment