Projeto

Keda Autoscaling para Azure Kubernetes Service

implementação do Keda no cliente para os produtos utilizarem nos ambientes de lab, dev, qas e produção

#gitops#flux#keda#service bus#autoscaling#azure#kubernetes

Impacto: Meu processo de implementação do Keda no cliente para os produtos utilizarem nos ambientes de lab, dev, qas e produção

Implementando autoscaling com KEDA no AKS

Com foco em laboratório e governança

Há alguns meses, um produto de um cliente nosso trouxe um problema claro: durante o período das 7h às 17h (pico de requisições), a aplicação começava a travar e apresentar lentidão.

Contexto

Nosso ambiente roda em AKS, então desenhei uma solução baseada em autoscaling com KEDA, considerando que os serviços são orientados a eventos, como o KEDA tem autoscaling com service bus e com cpu/memory, montei toda proposta para apresentar a solução para o time.

As fases

Realizei o projeto em fase separando em ciclos em MVP (Minimum Viable Product), trazendo visibilidades nos controles dos meus testes e podendo desenvolver com mais segurança em ambientes controlados sem imprevistos

Diario do projeto

Data nao informada

fase 01

Estudos e validações

Fase 1 - Estudo e validações

Nosso ambientes são controlados em 4 ambientes, lab, dev, qas e produção, com isso eu consigo ter um controle maior de consistência de menor erro aplicando em ambiente não controláveis (lab) sem afetar os usuários finais e desenvolvedores

Então nessa fase foi mapeado no ambiente de laboratório

  • Estudo da arquitetura do KEDA
  • Possibilidades com o KEDA
  • Possibilidades de autoscaling com KEDA
  • Possibilidade integração com os nosso padrões internos

Com essas validações em mãos no mesmo ambientes eu pude validar com um serviço de teste

  • Instalação e comportamento via helm install
  • Autoscaling baseado em CPU
  • Autoscaling baseado em Service Bus
  • Validação da estrutura e da arquitetura do KEDA no cluster

Finalização dessa fase

Eu consegui objetivamente identificar o comportamento do KEDA, como ele seria benéfico para o nosso ambiente e os benefícios que ele poderia trazer não só para aquele cliente que nos reportou o a lentidão, mas sim para outros clientes que utilizam nossa infraestrutura.

Data nao informada

fase 02

Laboratório com controle de risco

Fase 2 Padronização Gitops e aplicação no ambiente de laboratório