Что такое Chaos Engineering
Тестирование устойчивости через сбои
Chaos Engineering
Chaos Engineering — дисциплина намеренного внедрения сбоев в систему для проверки её устойчивости и способности восстанавливаться.
Принципы Chaos Engineering
| Принцип | Описание | |---------|----------| | Гипотеза | Сформулировать ожидаемое поведение | | Минимальный blast radius | Ограничить масштаб эксперимента | | Production first | Тестировать в реальной среде | | Автоматизация | Непрерывные эксперименты |
Типы экспериментов
- Отказ сервиса — kill pod/container
- Сетевые сбои — latency, packet loss
- Ресурсные ограничения — CPU/memory stress
- Отказ зоны доступности — AZ failure
Инструменты
- Chaos Monkey (Netflix) — классика хаоса
- Gremlin — enterprise платформа
- Litmus — Kubernetes-native
- Chaos Mesh — CNCF проект
Процесс эксперимента
- Определить стабильное состояние
- Выдвинуть гипотезу
- Внедрить сбой
- Наблюдать результат
- Улучшить систему