Página inicial da OpenText.
Tópicos técnicos

O que é Chaos Engineering?

Ilustração de itens de TI com foco em uma lâmpada

Visão geral

Pergunte a qualquer gerente de projeto, desenvolvedor ou líder de equipe. Várias coisas podem dar errado durante o ciclo de vida do desenvolvimento de software, como falhas, ataques cibernéticos e interrupções do sistema. É provável que ocorram falhas inesperadas, que podem interromper todo o processo, limitar os resultados e desperdiçar recursos vitais.

Engenharia do Caos

A engenharia do caos é uma disciplina que estuda como essas falhas podem ocorrer e fornece metodologias para ajudar a evitá-las. Ao compreender a causa raiz das falhas, os engenheiros do caos podem desenvolver planos para evitá-las ou atenuá-las.

A engenharia do caos não se trata de criar o caos; trata-se de usar experimentos controlados para identificar possíveis pontos de falha em um sistema antes que eles causem problemas. Ao fazer isso, os engenheiros do caos podem evitar proativamente interrupções e outras interrupções.

O que é exatamente o Chaos Engineering?

A engenharia do caos é a prática de injetar intencionalmente falhas em um sistema para testar sua resiliência. O objetivo é identificar possíveis pontos de falha e corrigi-los antes que causem uma interrupção real ou outra interrupção.

Há muitas maneiras de criar o caos em um sistema, mas o mais importante é ter um plano. Sem um plano, é fácil criar mais problemas do que resolvê-los. Ao criar seu plano, você precisará decidir o que deseja testar e como fará isso. Assim que tiver um plano, você poderá começar a fazer experiências.

Os desenvolvedores de software podem introduzir facilmente a engenharia do caos em seus fluxos de trabalho com o OpenText™ Professional Performance Engineering, o OpenText™ Enterprise Performance Engineering ou o OpenText™ Core Performance Engineering. Essas soluções não apenas aproveitam o teste de carga de desempenho, mas também facilitam a execução de outros experimentos de engenharia do caos diretamente no software.

Ao criar esses eventos em um ambiente controlado de não produção, é possível testar como o sistema reage e identificar possíveis problemas.

Depois de identificar os possíveis pontos de falha, você pode começar a trabalhar para atenuá-los. Isso pode envolver a adição de monitoramento ou registro para ajudar a identificar problemas quando eles ocorrerem ou a alteração do seu projeto para torná-lo mais resistente a falhas.

Quais são os princípios da Engenharia do Caos?

Os princípios da engenharia do caos são:

  • Planeje: Decida o que você quer testar e como vai fazer isso. O objetivo aqui é criar uma hipótese. O que pode dar errado em um sistema? Quais são algumas das possíveis vulnerabilidades que podem ser exploradas?
  • Faça experimentos: Injete falhas no sistema e veja como ele reage. A injeção de falhas é simplesmente o processo de introdução de um problema em um sistema existente para expor uma vulnerabilidade. É essencialmente o hábito de "jogar uma chave inglesa" em um sistema de propósito para ver o que acontece.
  • Analisar: Use os dados de seus experimentos para identificar possíveis pontos de falha.
  • Reduzir: Se encontrar um problema, você pode encerrar o experimento para se concentrar em atenuá-lo. Caso contrário, você pode dimensionar seu experimento até chegar ao ponto crucial do problema.

Quais são os benefícios da Chaos Engineering?

Então, por que uma empresa quebraria as coisas de propósito? É necessário expor as falhas do sistema para torná-lo mais robusto. O chaos engineering pode ajudá-lo a evitar interrupções e outras interrupções. Ao identificar possíveis pontos de falha e corrigi-los antes que causem problemas, você pode evitar interrupções de forma proativa.

Além disso, o chaos engineering oferece vários benefícios técnicos, comerciais e para o cliente. O principal benefício é permitir que as empresas criem produtos mais fortes que terão impacto em seus resultados e atenderão às expectativas dos clientes.

O Chaos Engineering, também conhecido como teste de resiliência, pode ajudar as empresas a cumprir a Lei de Resiliência Operacional Digital (DORA), que visa testar regularmente a resiliência dos sistemas para avaliar as vulnerabilidades.

Como o Chaos Engineering é diferente dos testes?

O chaos engineering é diferente dos testes em alguns aspectos importantes. A engenharia do caos se concentra em encontrar possíveis pontos de falha antes que eles causem problemas. Os testes, por outro lado, concentram-se em verificar se o sistema funciona conforme o esperado. Em resumo, o chaos engineering é proativo, enquanto o teste é reativo.

Os engenheiros do caos trabalham para evitar interrupções e outras interrupções, introduzindo e corrigindo falhas controladas antes que elas possam causar problemas em um ambiente real. Essas falhas controladas ajudam a identificar quais partes do sistema são mais resistentes e quais precisam de mais trabalho. Os testes só podem verificar se o sistema funciona depois de concluído.

Qual é a semelhança com o OpenText Professional Performance Engineering?

O OpenText Professional Performance Engineering é uma ferramenta que se concentra principalmente em um tipo específico de engenharia de desempenho. Usando o OpenText Professional Performance Engineering, você pode implementar testes de carga avançados que simulam condições de uso reais, o que pode ajudá-lo a identificar possíveis problemas de desempenho de carga antes que eles causem problemas.

Mas o OpenText Professional Performance Engineering não é simplesmente uma ferramenta de engenharia de desempenho que executa testes de carga em um ambiente estável; é uma ferramenta que combina engenharia de desempenho e engenharia de caos em uma única plataforma.

O OpenText Professional Performance Engineering trabalha diretamente com o Gremlin, uma renomada plataforma FaaS (failure-as-a-service) que permite criar diferentes tipos de eventos de caos, como picos de CPU, latência de rede e falha de disco. Você pode organizar e iniciar facilmente os experimentos de caos do Gremlin diretamente no OpenText Professional Performance Engineering e executar testes de carga com base em condições anormais.

De modo geral, o OpenText Professional Performance Engineering permite que você evite proativamente as interrupções de carga durante diferentes tipos de eventos de caos. Ao identificar possíveis pontos de falha antes que eles causem problemas, essa ferramenta pode ajudar a economizar tempo, dinheiro e recursos valiosos.

Coloque o Chaos Engineering em prática com soluções de engenharia de desempenho

Em última análise, a engenharia do caos é o ímpeto de qualquer projeto de software bem-sucedido. Os desenvolvedores de software podem implementar o chaos engineering para realizar projetos que resistirão ao teste do tempo.

Por meio das parcerias da OpenText com a Gremlin e a Steadybit, as soluções de engenharia de desempenho da OpenText podem testar o desempenho de sistemas sob carga e diferentes eventos de caos simultaneamente, permitindo que você encontre possíveis pontos de falha e corrija problemas de forma proativa.

Notas de rodapé