Pular para o conteúdo principal

Documentation Index

Fetch the complete documentation index at: https://docs.mka1.com/llms.txt

Use this file to discover all available pages before exploring further.

MKA1 segue um modelo de implantação alinhado ao GitOps, onde o repositório Git é a fonte única da verdade para toda a infraestrutura e estado das aplicações. Cada implantação é uma transação atômica do Helm: se algum recurso não se tornar saudável, todo o release é revertido automaticamente, sem intervenção manual.

O que está ativo

Git como fonte única da verdade

Toda a plataforma MKA1 é definida como um único Helm chart (mka1-platform) armazenado no repositório Git infra-resources. Nenhuma alteração chega ao cluster sem antes ser commitada e revisada via pull request.
  • Helm chart e arquivos de valores definem todas as workloads, serviços, templates de segredos, HPA e PDB da plataforma.
  • Overrides específicos por ambiente separam as configurações de staging e produção, compartilhando a mesma definição de chart.
  • Segredos criptografados são gerenciados com SOPS e commitados junto com o chart, garantindo que até configurações sensíveis sejam rastreadas no histórico do Git.

Deploys atômicos com Helm

Os releases do Helm são executados com o parâmetro --atomic, que envolve toda a atualização em uma transação. Se algum recurso do release falhar na verificação de prontidão, o Helm reverte automaticamente todo o release para a última revisão conhecida como estável.
helm upgrade --install mka1 mka1-platform \
  --atomic \
  --wait \
  --timeout 15m \
  -f values.yaml
  • --atomic — Se a atualização falhar em qualquer ponto, o Helm deleta os novos recursos e restaura o release anterior. O cluster nunca fica em um estado parcialmente implantado.
  • --wait — O Helm espera que todos os Pods, Serviços e outros recursos estejam prontos antes de marcar o release como bem-sucedido.
  • --timeout 15m — Um limite configurável impede que os deploys fiquem travados indefinidamente. Se a prontidão não for atingida dentro do tempo, o release é considerado falho e revertido.

Reconciliação automatizada via CI/CD

Workflows do GitHub Actions são acionados automaticamente a cada push no main que modifica caminhos de infraestrutura. O pipeline autentica com a AWS, configura o kubectl para o cluster EKS alvo e aplica o estado desejado definido no Git:
  1. Um desenvolvedor faz merge de um pull request no main.
  2. O GitHub Actions detecta a alteração e aciona o workflow de implantação.
  3. O workflow faz checkout do repositório no SHA do commit mesclado.
  4. helm upgrade --install --atomic reconcilia o cluster para corresponder ao estado desejado definido no Git.
  5. Se o estado desejado não puder ser alcançado, o rollback atômico garante que o cluster permaneça na última revisão bem-sucedida.

Histórico de deploys imutável

Cada release do Helm cria uma revisão versionada armazenada no cluster. Isso fornece uma trilha completa de auditoria do que foi implantado, quando e a partir de qual commit do Git.
helm history mka1-platform
helm rollback mka1-platform <revision>
Combinado com o histórico de commits do Git, isso oferece rastreabilidade total da alteração de código até o estado implantado.

Como validamos

Validamos o fluxo GitOps inspecionando o estado do release Helm implantado e confirmando que ele corresponde à configuração definida no Git.
helm list
kubectl rollout status deployment/<name>
helm get values mka1-platform
O próprio pipeline CI/CD serve como validação contínua: todo push no main aciona um ciclo completo de reconciliação. Se o estado do cluster divergir do estado desejado definido no Git, a próxima execução do pipeline corrige o desvio.

Evidências

Fluxo de upgrade atômico do Helm

O exemplo a seguir demonstra o comportamento do deploy atômico. Quando todos os recursos ficam saudáveis, o release é bem-sucedido:
Release "mka1-platform" has been upgraded. Happy Helming!
NAME: mka1-platform
LAST DEPLOYED: 2026-04-01 18:32:05
NAMESPACE: default
STATUS: deployed
REVISION: 42
Quando um recurso falha na verificação de prontidão, todo o release é revertido automaticamente:
Error: UPGRADE FAILED: release mka1-platform failed, and has been rolled back
  due to atomic being set: timed out waiting for the condition
Nenhum estado parcial é deixado para trás — o cluster permanece na última revisão saudável.

Histórico de releases do Helm

REVISION  UPDATED                   STATUS      DESCRIPTION
40        2026-03-28 14:10:22       superseded  Upgrade complete
41        2026-03-30 09:45:11       superseded  Upgrade complete
42        2026-04-01 18:32:05       deployed    Upgrade complete
Cada revisão é um snapshot do momento da configuração implantada, permitindo rollback instantâneo para qualquer estado anterior.