Cada experimento é um CRD nativo do Kubernetes. Todos os controles de
segurança são declarativos e auditáveis, garantindo que chaos experiments
nunca afetem workloads críticos sem aprovação explícita.
Chaos Engineering no Contexto AIOps
Validação de Remediações
Após corrigir um incidente, re-injete a falha para confirmar que a
remediação automática funciona.
Testes de Resiliência
Execute experimentos recorrentes para garantir que a plataforma detecta
e responde a falhas conhecidas.
Game Days Automatizados
Agende experimentos via cron para simular game days regulares sem
intervenção manual.
Baseline de Recovery
Meça tempos de recuperação reais para estabelecer SLOs e identificar
gargalos.
Correlação Automática (GAP-04 fix, 2026-05-23)
Issues que disparam enquanto umChaosExperiment está em estado Running (ou nos primeiros 2 minutos após Completed/Aborted — janela de recuperação) são automaticamente correlacionados com o experimento. O AnomalyReconciler consulta FindActiveChaosExperiment(target) ao criar o Issue e, quando encontra match no mesmo namespace+kind+name, aplica os labels:
Recomendação: configure suas
NotificationPolicy com regras separadas para chaos drills (ex: canal Slack de chaos-drills só para ops) e filtre o label source=chaos-experiment nas regras de PagerDuty/email. A plataforma já suprime escalação automaticamente; isso é uma camada extra para evitar ruído em canais primários.ChaosExperiment CRD
Especificação Completa
7 Tipos de Experimento
1. Pod Kill
Deleta pods aleatoriamente usando o algoritmo Fisher-Yates shuffle comcrypto/rand para seleção verdadeiramente aleatória.
2. Pod Failure
Deleção graceful de pods, respeitando oterminationGracePeriodSeconds configurado no PodSpec.
3. CPU Stress
Cria um podstress-ng no mesmo node do pod alvo para simular contenção de CPU.
4. Memory Stress
Cria um podstress-ng que aloca memória no mesmo node do alvo.
5. Network Delay
Simula latência de rede usando annotations nos pods alvo. O sidecar ou CNI plugin interpreta a annotation para injetar delay.6. Network Loss
Simula perda de pacotes de rede via annotations.7. Disk Stress
Cria um podstress-ng que gera I/O intenso no disco do mesmo node.
Resumo dos Tipos
Safety Checks
Os safety checks são a camada de proteção que impede que experimentos de chaos causem danos reais.MinHealthyPods
Garante que um número mínimo de pods permaneça saudável durante o experimento.MaxConcurrentExperiments
Previne chaos storms limitando o número de experimentos simultâneos no namespace.AbortOnIssueDetected
Se a AIOps detectar uma nova issue não relacionada ao experimento durante a execução, o experimento é abortado imediatamente.RequireApproval
Integra com o sistema deApprovalRequest para exigir aprovação humana antes de executar o experimento.
ApprovalRequest CR e aguarda aprovação antes de prosseguir:
AllowedNamespaces / BlockedNamespaces
- AllowedNamespaces
- BlockedNamespaces
Lista branca de namespaces onde experimentos podem ser executados. Se
definida, apenas estes namespaces são permitidos.
Verificação Pós-Experimento
VerifyRecovery
Após o experimento completar, o controller verifica se o deployment voltou ao estado saudável.RecoveryTimeout
Tempo máximo de espera para verificação de recuperação. Se o deployment não voltar ao estado saudável dentro deste período, o experimento é marcado comoFailed.
RunRemediationTest
Quando habilitado em conjunto comlinkedIssueRef, o controller:
1
Re-injeta a falha
Executa o mesmo experimento novamente para recriar o cenário do incidente
original.
2
Aguarda detecção
Espera que a plataforma AIOps detecte a anomalia automaticamente.
3
Verifica remediação
Confirma que a remediação automática foi disparada e resolveu o problema.
4
Registra resultado
Atualiza o
ChaosExperiment.Status com o resultado da validação.Máquina de Estados
DryRun Mode
O modo DryRun executa toda a lógica do experimento (safety checks, seleção de pods, geração de comandos) sem aplicar nenhuma mudança real no cluster.Schedule (Experimentos Recorrentes)
O camposchedule aceita expressões cron padrão para execução recorrente:
Cada execução agendada cria um novo
ChaosExperiment CR com sufixo de timestamp.
LinkedIssueRef
O campolinkedIssueRef conecta o experimento a um incidente específico, permitindo validar que a remediação aplicada realmente funciona.
linkedIssueRef é definido, o controller:
- Busca o
IssueCR e oRemediationPlanassociado - Registra a conexão no status do experimento
- Se
runRemediationTest: true, válida que a AIOps detecta e remedia automaticamente - Atualiza o
IssueCR com o resultado da validação
Exemplos YAML Completos
Pod Kill com Safety Checks
Pod Kill com Safety Checks
CPU Stress Semanal Agendado
CPU Stress Semanal Agendado
Validação Pós-Remediação
Validação Pós-Remediação
DryRun para Validação de Configuração
DryRun para Validação de Configuração
Métricas
O módulo de chaos engineering expõe métricas Prometheus para observabilidade e tracking de resiliência.Exemplo de Alertas
Boas Práticas
1
Comece com DryRun
Sempre execute um DryRun antes de experimentos reais para validar safety
checks e seleção de alvos.
2
Staging Primeiro
Execute experimentos em staging antes de habilitar em ambientes de maior
tier. Use
allowedNamespaces para enforcement.3
Safety Checks Conservadores
Configure
minHealthyPods com margem. Se o deployment tem 5 réplicas
e precisa de 3 para operar, configure minHealthyPods: 3.4
Agende Game Days
Use
schedule para experimentos recorrentes. Resiliência não é um teste
único — é uma prática contínua.5
Valide Remediações
Após corrigir um incidente, use
linkedIssueRef + runRemediationTest
para confirmar que a correção funciona sob falha.Próximos Passos
Motor de Decisão
Entenda como os resultados de chaos influenciam o Pattern Store e a
confiança do motor.
Federação Multi-Cluster
Execute chaos experiments em clusters específicos com políticas por tier.
Auditoria e Compliance
Todos os experimentos geram AuditEvents imutáveis para rastreabilidade
completa.
AIOps Platform
Retorne à visão geral da plataforma AIOps.