Translate

Mostrar mensagens com a etiqueta Simian Army. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta Simian Army. Mostrar todas as mensagens

sábado, 14 de novembro de 2020

☕ O Holocron do Chaos Monkey

 

Bellacosa Mainframe e o Chaos Monkey

☕ O Holocron do Chaos Monkey

Como um Pequeno Macaco da Netflix Ensinou ao Mundo Algo que os Sysprogs do IBM Z Já Praticavam Há Décadas

Existe um momento curioso na jornada de todo Padawan COBOL, Sysprog, arquiteto ou profissional de infraestrutura em que ele descobre uma verdade desconfortável.

Nenhum sistema é indestrutível.

Nenhuma arquitetura é perfeita.

Nenhum diagrama bonito no PowerPoint é capaz de impedir que um disco falhe, uma fibra seja rompida, uma aplicação entre em loop, uma região CICS desapareça ou uma LPAR resolva tirar férias em plena Black Friday.

Foi exatamente dessa constatação que nasceu, em 2011, uma das ideias mais influentes da engenharia moderna de software.

Um pequeno macaco digital.

Travesso.

Imprevisível.

Sem qualquer respeito pelo conforto psicológico dos administradores de sistemas.

Seu nome era Chaos Monkey.

Criado pela Netflix como parte do projeto Simian Army, o Chaos Monkey possuía uma missão aparentemente absurda:

Derrubar servidores deliberadamente.

Mas havia uma razão bastante séria por trás dessa atitude quase sociopata.

A Netflix havia aprendido uma lição dolorosa em 2008, após sofrer problemas importantes de indisponibilidade em sua infraestrutura. A empresa percebeu que esperar que a primeira falha ocorresse naturalmente era uma péssima estratégia.

Era melhor provocar pequenos desastres controlados.

Observar.

Medir.

Aprender.

Corrigir.

Repetir.

Nascia assim o movimento conhecido como Chaos Engineering.

No entanto, enquanto boa parte do mercado enxergava aquilo como uma revolução tecnológica, muitos profissionais do IBM Z apenas levantaram uma sobrancelha, tomaram um gole de café e pensaram:

Interessante...

Nós fazemos algo parecido há décadas.

Sysprogs veteranos conhecem bem essa filosofia.

Testar GDPS.

Executar Disaster Recovery.

Parar uma região CICS.

Desligar um membro Db2 Data Sharing.

Simular perda de um Queue Manager.

Trocar caminhos FICON.

Validar políticas do WLM.

Testar SA z/OS.

Mover workloads.

Executar IPLs programadas.

No fundo, a grande diferença talvez seja apenas de nomenclatura.

A Netflix colocou um macaco sorridente em apresentações corporativas.

O Mainframe chamou isso de plano de contingência, teste de disponibilidade, procedimento operacional ou simplesmente terça-feira à tarde.

Ao longo desta série do ☕ Um Café no Bellacosa Mainframe, acompanhamos a jornada de um Padawan COBOL descobrindo que resiliência não significa impedir falhas.

Significa aprender a conviver com elas.

Automatizá-las.

Medi-las.

Compreendê-las.

E principalmente garantir que o usuário continue tomando seu café tranquilamente enquanto os engenheiros observam gráficos, métricas e dashboards piscando em uma sala de guerra.


📖 Índice do Holocron do Chaos Monkey

Parte I

O Dia em que a Netflix Soltou um Macaco no Datacenter e Descobriu Algo que os Sysprogs do IBM Z Já Sabiam Há Décadas

Nesta primeira jornada, exploramos a origem do Chaos Monkey, a crise enfrentada pela Netflix em 2008, o nascimento do Simian Army, a filosofia de Adrian Cockcroft e os princípios fundamentais do Chaos Engineering, incluindo o conceito de Steady State, hipóteses de falha e a importância de provocar pequenos desastres antes que eles ocorram naturalmente.

https://eljefemidnightlunch.blogspot.com/2020/07/o-holocron-do-chaos-monkey-o-dia-em-que.html


Parte II

Como o Macaco Escolhe suas Vítimas, o Conceito de Blast Radius e as Técnicas Secretas dos Engenheiros da Netflix

No segundo capítulo, estudamos o funcionamento interno dos experimentos de caos, aprendendo conceitos essenciais como:

  • Blast Radius;

  • Observabilidade;

  • Seleção controlada de componentes;

  • Métricas de disponibilidade;

  • Técnicas empregadas por SREs;

  • Ferramentas modernas como Gremlin, LitmusChaos, Chaos Mesh e AWS Fault Injection Simulator.

Também acompanhamos estudos de caso inspirados em arquiteturas bancárias e serviços digitais.

https://eljefemidnightlunch.blogspot.com/2020/08/o-holocron-do-chaos-monkey-como-o.html

Parte III

Quando o Macaco Entra no IBM Z: Será que o Mainframe Precisava Mesmo de um Chaos Monkey?

Na terceira etapa, levamos o Chaos Engineering para dentro do universo IBM Z.

Analisamos como os conceitos de caos podem ser aplicados em:

  • CICSplex;

  • Db2 Data Sharing;

  • MQ Queue Sharing Groups;

  • WLM;

  • Parallel Sysplex;

  • Coupling Facilities;

  • GDPS;

  • SA z/OS;

  • NetView;

  • z/OSMF;

  • Ansible for IBM Z.

Descobrimos que muitos princípios defendidos pela Netflix já eram praticados há décadas pelos Sysprogs mais experientes.

https://eljefemidnightlunch.blogspot.com/2020/09/o-holocron-do-chaos-monkey-quando-o.html


Parte IV

Os Laboratórios Bellacosa Mainframe: Como um Sysprog Pode Injetar Caos no IBM Z Sem Ser Expulso da Sala de Guerra

Encerrando o Holocron, construímos uma coleção de laboratórios práticos voltados para ambientes IBM Z.

Entre os exercícios apresentados estão:

  • Derrubar uma região CICS secundária;

  • Simular a perda de um membro Db2 Data Sharing;

  • Testar um MQ Queue Sharing Group;

  • Alterar políticas do WLM;

  • Simular indisponibilidade de uma LPAR;

  • Testar Coupling Facilities;

  • Automatizar experimentos utilizando SA z/OS, Ansible e z/OSMF.

Também apresentamos checklists, exemplos de playbooks, métricas recomendadas e um modelo de maturidade em Chaos Engineering para equipes de Sysprog.

https://eljefemidnightlunch.blogspot.com/2020/10/o-holocron-do-chaos-monkey-os.html


☕ A Última Reflexão do Bellacosa Mainframe

Talvez a maior contribuição do Chaos Monkey não tenha sido derrubar servidores.

Talvez tenha sido lembrar aos arquitetos modernos uma lição antiga que os profissionais do IBM Z conhecem há muito tempo:

Disponibilidade não é sorte.

Resiliência não é marketing.

Alta disponibilidade é a disciplina de transformar falhas inevitáveis em acontecimentos rotineiros, previsíveis e quase entediantes.

E se um pequeno macaco travesso puder nos ensinar isso, talvez ele mereça uma cadeira na próxima reunião de arquitetura... desde que fique longe do botão vermelho da produção. ☕🐵💻🚀

sábado, 15 de agosto de 2020

O Holocron do Chaos Monkey – Como o Macaco Escolhe suas Vítimas, o Conceito de Blast Radius e as Técnicas Secretas dos Engenheiros da Netflix - Parte II

 

Bellacosa Mainframe e o chaos monkey parte II

☕ Um Café no Bellacosa Mainframe

O Holocron do Chaos Monkey – Parte II

Como o Macaco Escolhe suas Vítimas, o Conceito de Blast Radius e as Técnicas Secretas dos Engenheiros da Netflix

"A diferença entre um sistema resiliente e um sistema frágil é que o resiliente já sobreviveu ao desastre em laboratório."


O Café Esfria e o Macaco Aprende Novos Truques

O relógio marcava 01h17.

O Padawan COBOL ainda estava intrigado.

Na noite anterior, havia descoberto que a Netflix possuía um pequeno macaco virtual cuja diversão favorita era assassinar servidores em plena luz do dia.

Algo que parecia absurdo.

Algo que, para um operador acostumado a passar horas analisando mensagens DFHxxxx, DSNxxxx, IEAxxxx e $HASPxxxx, soava quase criminoso.

Ele olhou para o velho Sysprog do Bellacosa Mainframe.

— Mestre...

— Sim?

— O Chaos Monkey simplesmente escolhe qualquer servidor e aperta o botão vermelho?

O velho tomou um gole de café.

Sorriu.

E respondeu.

— Se fosse apenas isso, meu jovem Padawan, chamaríamos de estagiário em produção.

O Chaos Monkey é muito mais sofisticado.

Ele trabalha com hipóteses.

Métricas.

Estatística.

Probabilidade.

E principalmente com um conceito extremamente importante.

Blast Radius.


O Conceito de Blast Radius

Talvez a maior contribuição filosófica do Chaos Engineering seja uma pergunta simples.

Quanto estrago eu posso causar antes de me tornar um problema para a empresa?

Esse conceito recebeu o nome de:

Blast Radius

Em português poderíamos traduzir como:

Raio de Explosão

Ou

Zona de impacto controlado


Imagine uma granada.

A explosão possui um alcance limitado.

Pessoas próximas são afetadas.

Pessoas distantes permanecem seguras.

Chaos Engineering funciona da mesma forma.

Não se derruba tudo.

Derruba-se apenas uma pequena parte.

E observa-se.


Exemplo Netflix

Serviços existentes:

Catalog Service

Authentication Service

Billing Service

Streaming Service

Recommendation Engine

CDN Controller

Número total de instâncias:

300

Chaos Monkey escolhe:

2 instâncias.

Blast Radius.

0,66%

Impacto esperado:

Nenhum cliente deve perceber.


Exemplo IBM Z

Ambiente.


LPAR PROD1

LPAR PROD2

LPAR PROD3

CICSA

CICSB

CICSC

Db2A

Db2B

MQA

MQB


Experimento.

Parar CICSB.

Blast Radius.

16%

Objetivo.

Nenhum terminal 3270 deve perder sessão.

Nenhuma transação deve falhar.

Nenhum SLA deve ser violado.


Quanto Menor o Blast Radius, Melhor

Essa é uma das regras mais importantes.

Nunca comece destruindo metade do ambiente.

Comece pequeno.

Muito pequeno.

Ridiculamente pequeno.

Primeiro.

Mate uma instância.

Depois.

Mate duas.

Depois.

Uma AZ.

Depois.

Uma região.

Depois.

Teste desastre.


No mundo IBM Z.

Primeiro.

Pare uma região AOR.

Depois.

Um TOR.

Depois.

Um MQ Manager.

Depois.

Um membro Db2.

Depois.

Uma LPAR.

Somente depois.

Teste GDPS.


O Conceito de Steady State

Na Parte I falamos rapidamente sobre isso.

Agora vamos aprofundar.

Chaos Engineering não começa derrubando servidores.

Começa respondendo.

O que é comportamento normal?


Exemplo.

Sistema bancário.

TPS

8000

CPU

42%

Latência

120 ms

Erros

0,002%


Esse é o estado estável.

Steady State.


Hipótese.

Posso perder um servidor.

Mantendo.

TPS acima de 7800.

Latência abaixo de 150 ms.

Erro abaixo de 0,01%.


Agora sim.

Executamos o caos.


Como o Chaos Monkey Escolhe suas Vítimas

Muita gente imagina.

Servidor.

Sorteio.

Desliga.

Fim.

Não.

Existem estratégias.


Estratégia 1

Seleção aleatória pura

Número aleatório.

Escolha.

Encerrar.


Vantagem.

Simples.


Desvantagem.

Pode escolher servidores pouco importantes.


Estratégia 2

Weighted Random

Peso.

Criticidade.

Histórico.

Capacidade.


Exemplo.

API01

peso 30

API02

peso 10

API03

peso 60


Maior chance.

API03.


Estratégia 3

Tag Based

AWS Tags.

Kubernetes Labels.


Production

Homolog

ChaosEnabled


Exemplo.

ChaosEnabled=true

Apenas esses.

Serão vítimas.


Estratégia 4

Janela Programada

09h às 11h

Terça-feira

Equipe presente

Observabilidade ativa


Muito usada.

Na Netflix.

Google.

Spotify.


O Segredo dos SREs

Os Site Reliability Engineers possuem um mantra.

Não faça experimentos quando ninguém puder observar.

Parece óbvio.

Mas muitas empresas ignoram.


É necessário.

Logs.

Dashboards.

Tracing.

Alertas.

Equipe disponível.

Rollback.

Runbook.


Sem isso.

Chaos vira apenas.

Caos.


O Conceito de Observabilidade

Chaos Engineering depende totalmente dela.


Logs


Métricas


Tracing


Eventos


Alertas


No IBM Z.

RMF.

SMF.

OMEGAMON.

NetView.

SA z/OS.

CICS Monitoring.

Db2 Monitor.

MQ Statistics.

SDSF.

JES2.

WLM.


Exemplo Completo — Banco Digital

Arquitetura.


Load Balancer

6 APIs

Kafka

Redis

Postgres

IAM

PIX

Open Finance


Estado.

12000 TPS

85ms

Erro 0,001%


Hipótese.

Perder API04.


Chaos.

Kill.

API04.


Resultado.

Latência.

91ms.

TPS.

Erro.

0,003%


Hipótese validada.


Novo teste.

Perder Redis.


Resultado.

Latência.

650 ms.


Fila cresce.


Clientes reclamam.


Descoberta.

Redis era SPOF.


Problema corrigido.


Single Point of Failure

Talvez o maior inimigo.

SPOF.


IBM Z nasceu combatendo isso.


Redundância.


Coupling Facility.


Parallel Sysplex.


FICON redundante.


Db2 Sharing.


MQ QSG.


GDPS.


WLM.


RACF Database Sharing.


ODS.


XCF.


Sysplex Timer.


STP.


Chaos Engineering apenas tornou explícita uma filosofia que ambientes críticos praticam há décadas.


Ferramentas Modernas

Gremlin

Plataforma comercial.

CPU.

Memória.

Rede.

Disco.

DNS.

Processos.


LitmusChaos

Kubernetes.


CRDs.

Experimentos.

GitOps.


Chaos Mesh

Cloud Native.


Latência.

IO.

Kernel.


AWS FIS

Fault Injection Simulator.


Instâncias.

EBS.

Rede.


PowerfulSeal

Clusters Kubernetes.


Chaos Toolkit

Python.

Open Source.


Truques Utilizados por Equipes Experientes

Truque 1

Sempre começar em homologação.


Truque 2

Executar experimentos repetidamente.


Truque 3

Automatizar.


CI/CD.


GitOps.


Ansible.


Terraform.


Truque 4

Documentar tudo.


Hipótese.

Resultado.

Aprendizado.

Correção.


Truque 5

Criar um catálogo.

Chaos Experiments.

Versão.

Data.

Owner.


Um Sysprog Descobre o Chaos Monkey

O Padawan olhou para o mestre.

— Então...

— Sim.

— Chaos Engineering é ensinar o sistema a sofrer.

— Exatamente.

— Até ele parar de sentir dor.

— Não.

O velho sorriu.

— Até ele continuar funcionando mesmo sentindo.

Porque a disponibilidade perfeita não existe.

Hardware quebra.

Fibra rompe.

Discos falham.

Firmware possui bugs.

Aplicações vazam memória.

Operadores cometem erros.

Pessoas esquecem procedimentos.

O objetivo nunca foi impedir falhas.

O objetivo sempre foi algo muito mais ambicioso.

Fazer com que as falhas se tornem acontecimentos comuns, previsíveis e entediantes.

E foi nesse momento que o Padawan percebeu algo curioso.

Talvez o Chaos Monkey nunca tivesse sido realmente uma invenção revolucionária.

Talvez fosse apenas uma nova linguagem para explicar uma velha sabedoria dos Sysprogs do IBM Z:

Não espere o desastre ensinar sua arquitetura. Ensine sua arquitetura a sobreviver ao desastre antes que ele aconteça.


Continua na Parte III

No próximo capítulo do Holocron do Chaos Monkey, entraremos definitivamente no território do IBM Z:

  • Existe um Chaos Monkey para z/OS?

  • Como testar falhas em CICSplex, Db2 Data Sharing e MQ QSG.

  • O papel do WLM, Sysplex, XCF e GDPS.

  • Como construir experimentos de caos seguros para Sysprogs.

  • Técnicas usando SA z/OS, NetView, z/OSMF e Ansible Automation Platform.

  • Laboratórios Bellacosa Mainframe com exemplos práticos para Padawans e Sysprogs Seniores.

sábado, 18 de julho de 2020

O Holocron do Chaos Monkey – O Dia em que a Netflix Soltou um Macaco no Datacenter e Descobriu Algo que os Sysprogs do IBM Z Já Sabiam Há Décadas - Parte I

 

Bellacosa Mainframe e o chaos monkey parte i

☕ Um Café no Bellacosa Mainframe

O Holocron do Chaos Monkey – Parte I

O Dia em que a Netflix Soltou um Macaco no Datacenter e Descobriu Algo que os Sysprogs do IBM Z Já Sabiam Há Décadas

"Existem duas categorias de administradores de sistemas: os que já perderam servidores em produção e os que ainda não descobriram que já perderam."

— Provérbio não oficial dos Sysprogs que já passaram por uma IPL às três da manhã.


O Café, o Padawan e a Pergunta Incômoda

Era quase meia-noite.

O jovem Padawan COBOL observava sua tela ISPF iluminada enquanto uma caneca de café começava lentamente a esfriar.

No SDSF, milhares de jobs terminavam normalmente.

No RMF, os gráficos permaneciam estáveis.

No Db2 Data Sharing, todos os membros estavam ativos.

MQ respondia.

CICS aceitava transações.

WLM parecia satisfeito.

RACF não reclamava.

Tudo parecia perfeito.

Foi então que o velho Sysprog do Bellacosa Mainframe fez uma pergunta aparentemente simples.

— E se eu desligar uma LPAR agora?

O Padawan arregalou os olhos.

— Em produção?

— Não.

— Em homologação?

— Talvez.

— Em laboratório?

— Definitivamente.

— Mas... por quê?

O velho Sysprog sorriu.

— Porque sistemas que nunca foram testados sob falha não são sistemas resilientes.

São apenas sistemas que tiveram sorte.

E foi exatamente essa pergunta que levou uma empresa de streaming de vídeos a criar um dos conceitos mais influentes da engenharia moderna de software.

Um pequeno macaco digital.

Travesso.

Imprevisível.

E absolutamente genial.

Seu nome era Chaos Monkey.


Antes do Macaco Existia o Trauma

Para compreender a origem do Chaos Monkey precisamos voltar alguns anos.

Mais especificamente para 2008.

Naquela época a Netflix ainda não era a gigante que conhecemos.

Ela era uma empresa em transição.

Durante muito tempo seu negócio principal havia sido enviar DVDs pelo correio.

Milhões de DVDs.

Milhões de envelopes vermelhos.

Milhões de assinantes.

Mas o streaming começava a crescer.

E isso trouxe um problema monumental.


O Datacenter que Quase Matou a Netflix

Em agosto de 2008 ocorreu um incidente importante.

A base de dados principal da Netflix sofreu corrupção.

Diversos serviços ficaram indisponíveis.

A recuperação foi lenta.

Custosa.

Dolorosa.

A empresa percebeu algo desconfortável.

Seu sistema era robusto.

Mas não era antifrágil.

Era eficiente.

Mas dependia demais de componentes específicos.

A pergunta passou a assombrar os arquitetos:

O que acontece se um servidor morrer?

E se um rack inteiro desaparecer?

E se perdermos uma zona de disponibilidade?

E se um datacenter simplesmente sumir?

E se tudo isso acontecer numa sexta-feira às 18h?

Perguntas semelhantes já eram familiares para administradores IBM Z.

Um Sysprog veterano talvez reformulasse:

  • E se perdermos um CF?

  • E se uma região CICS cair?

  • E se um membro Db2 sair do grupo?

  • E se um CHPID apresentar erro?

  • E se uma LPAR inteira desaparecer?

A Netflix precisava responder a perguntas equivalentes.


Conhecendo Adrian Cockcroft

Uma das figuras centrais dessa história é Adrian Cockcroft.

Na época ele era arquiteto de cloud da Netflix.

Cockcroft possuía uma visão bastante pragmática.

Ele defendia uma ideia simples.

Falhas não são exceções.

Falhas são eventos normais.

Portanto:

Se você sabe que algo vai falhar, por que esperar que aconteça sozinho?

Por que não provocar a falha?

Em ambiente controlado.

Sob observação.

Durante o horário comercial.

Com engenheiros atentos.

Antes que a natureza faça isso às três horas da manhã.

Essa filosofia mudaria para sempre a maneira como sistemas distribuídos seriam projetados.


O Nascimento do Simian Army

Em 2011 surgiu um conjunto de ferramentas chamado:

Simian Army

A tradução seria algo como:

Exército dos Símios

Cada "macaco" tinha uma função específica.


Chaos Monkey

Mata instâncias aleatoriamente.


Janitor Monkey

Remove recursos abandonados.


Conformity Monkey

Verifica aderência às políticas.


Security Monkey

Audita vulnerabilidades.


Doctor Monkey

Detecta máquinas defeituosas.


Chaos Gorilla

Simula perda de uma zona inteira.


Chaos Kong

Simula perda de uma região completa.

Era uma abordagem brilhante.

Em vez de esperar desastres...

Eles ensaiavam desastres.

Como bombeiros.

Como pilotos.

Como astronautas.

Como equipes de recuperação de desastres em grandes bancos.

Algo bastante familiar para profissionais IBM Z.


O Macaco que Derruba Servidores

O Chaos Monkey original era relativamente simples.

Seu trabalho consistia basicamente em:

Selecionar uma instância.

Escolher aleatoriamente.

Desligá-la.

E observar.

Nada mais.

Nada menos.

Mas por trás dessa simplicidade existia uma filosofia extremamente sofisticada.


O Conceito de Steady State

Primeira pergunta:

Como sabemos que o sistema está saudável?

Precisamos definir métricas.

Exemplos:

Tempo médio de resposta.

Número de transações.

Erros HTTP.

Latência.

TPS.

CPU.

Consumo de memória.

No IBM Z poderíamos medir:

SMF 30

SMF 72

RMF

OMEGAMON

CICS Monitoring

Db2 Accounting

MQ Statistics

WLM Service Classes


A Hipótese

Exemplo.

Hipótese:

Posso perder um servidor API sem impacto ao cliente.

Hipótese IBM Z:

Posso perder uma região TOR sem indisponibilidade.

Hipótese Db2:

Posso perder um membro Data Sharing.

Hipótese MQ:

Posso perder um Queue Manager.


O Experimento

Agora o macaco trabalha.

Servidor API-03.

Encerrar.

Pronto.

Observar.


Resultado

Usuário percebeu?

Latência aumentou?

Filas cresceram?

CPU disparou?

Alarmes tocaram?

Se tudo continuou funcionando...

Excelente.

Sistema resiliente.

Se não...

Descobrimos um problema.

Antes do cliente.

Antes do auditor.

Antes do jornal.

Antes do diretor ligar perguntando:

Quem derrubou o banco?


Um Exemplo Passo a Passo

Suponha um ambiente com:

4 servidores Web

3 APIs

2 bancos

Redis

MQ

Load Balancer


Estado inicial.

Web01

Web02

Web03

Web04

API01

API02

API03

DB01

DB02


Métrica.

99,99%

TPS = 5000

Latência = 80 ms


Chaos Monkey escolhe.

API02.


Comando.

Shutdown.


Balanceador detecta.

Remove API02.


API01 assume.

API03 assume.


Usuários continuam navegando.

Nenhum impacto.

Experimento aprovado.


Caso contrário:

Erro 500.

Sessões perdidas.

Timeout.

Fila congestionada.

Problema descoberto.

Correção necessária.


O Conceito Mais Importante: O Sistema Já Está Quebrado

Talvez a principal lição do Chaos Engineering seja esta:

O sistema não é confiável porque nunca falhou.

Ele é confiável porque já falhou centenas de vezes.

Em laboratório.

Em homologação.

Sob controle.

Com métricas.

Com observabilidade.

Com aprendizado.

Isso é extremamente próximo da cultura tradicional do IBM Z.

Sysprogs experientes sempre fizeram algo semelhante.

Trocar caminhos.

Testar GDPS.

Executar DR.

Parar regiões.

Mover workloads.

Fazer IPL programada.

Testar fallback.

Treinar operadores.

A diferença é que a Netflix deu um nome elegante para algo que muitas equipes de infraestrutura críticas já praticavam intuitivamente havia décadas.


Curiosidades Sobre o Chaos Monkey

Algumas curiosidades interessantes:

O Chaos Monkey original foi desenvolvido principalmente para a infraestrutura AWS.

Muitas equipes tinham medo de habilitá-lo.

Alguns executivos perguntavam:

Vocês estão pagando engenheiros para derrubar servidores?

A resposta era:

Sim.

Porque a alternativa é deixar que os clientes descubram os problemas.

Atualmente, dezenas de empresas utilizam princípios derivados do Chaos Engineering.

Entre elas:

Google.

Microsoft.

Amazon.

LinkedIn.

Spotify.

Uber.

Shopify.

Salesforce.

E, cada vez mais, instituições financeiras que operam ambientes híbridos envolvendo IBM Z.


O Que Aprenderemos na Próxima Parte?

Na Parte II do Holocron do Chaos Monkey, o Padawan descobrirá:

  • O conceito de Blast Radius;

  • Como SREs escolhem vítimas para os experimentos;

  • Técnicas avançadas utilizadas por equipes do Google e Netflix;

  • Como criar hipóteses de falha inteligentes;

  • Ferramentas modernas como Gremlin, LitmusChaos, Chaos Mesh e AWS Fault Injection Simulator;

  • Um estudo de caso completo de um banco digital submetido a experimentos de caos;

  • E por que um pequeno macaco digital pode ensinar mais sobre arquitetura resiliente do que dezenas de diagramas coloridos em apresentações corporativas.


No Bellacosa Mainframe costumamos dizer que a alta disponibilidade não nasce quando tudo funciona. Ela nasce quando alguma coisa quebra, todos observam atentamente, aprendem com a experiência e descobrem que o sistema continua servindo café para os usuários como se nada tivesse acontecido.