0 added
0 removed
Original
2026-01-01
Modified
2026-02-19
1
<p>Ранее<a>затрагивали тему</a><a>Chaos Engineering,</a>давайте подробнее.</p>
1
<p>Ранее<a>затрагивали тему</a><a>Chaos Engineering,</a>давайте подробнее.</p>
2
<p>Все знают: прод может сломаться в любой момент. Сервер упадёт, сеть ляжет, база зависнет... Если система к этому не готова, случится катастрофа. Но настоящий SRE не ждёт, когда что-то сломается случайно. Он сам создаёт хаос, чтобы проверить, выживет ли система.</p>
2
<p>Все знают: прод может сломаться в любой момент. Сервер упадёт, сеть ляжет, база зависнет... Если система к этому не готова, случится катастрофа. Но настоящий SRE не ждёт, когда что-то сломается случайно. Он сам создаёт хаос, чтобы проверить, выживет ли система.</p>
3
<p><strong>Это и есть Chaos Engineering - методология, которая помогает намеренно создавать сбои, чтобы:</strong></p>
3
<p><strong>Это и есть Chaos Engineering - методология, которая помогает намеренно создавать сбои, чтобы:</strong></p>
4
<ul><li>понять, как ведёт себя система под нагрузкой;</li>
4
<ul><li>понять, как ведёт себя система под нагрузкой;</li>
5
<li>найти слабые места до того, как они приведут к реальному инциденту;</li>
5
<li>найти слабые места до того, как они приведут к реальному инциденту;</li>
6
<li>улучшить отказоустойчивость и снизить риски.</li>
6
<li>улучшить отказоустойчивость и снизить риски.</li>
7
</ul><p><strong>Какие хаотичные тесты можно делать?</strong></p>
7
</ul><p><strong>Какие хаотичные тесты можно делать?</strong></p>
8
<p>❗️ Убить случайный сервер - выживут ли остальные?</p>
8
<p>❗️ Убить случайный сервер - выживут ли остальные?</p>
9
<p>❗️ Отключить базу данных - что будет с приложением?</p>
9
<p>❗️ Отключить базу данных - что будет с приложением?</p>
10
<p>❗️ Замедлить сеть - справятся ли микросервисы?</p>
10
<p>❗️ Замедлить сеть - справятся ли микросервисы?</p>
11
<p>❗️ Увеличить нагрузку - начнёт ли прод троттлить запросы или ляжет целиком?</p>
11
<p>❗️ Увеличить нагрузку - начнёт ли прод троттлить запросы или ляжет целиком?</p>
12
<p><strong>Инструменты для Chaos Engineering:</strong></p>
12
<p><strong>Инструменты для Chaos Engineering:</strong></p>
13
<ul><li>Chaos Monkey - убивает случайные инстансы в проде.</li>
13
<ul><li>Chaos Monkey - убивает случайные инстансы в проде.</li>
14
<li>Gremlin - симуляция сетевых задержек, отказов CPU, отключений серверов.</li>
14
<li>Gremlin - симуляция сетевых задержек, отказов CPU, отключений серверов.</li>
15
<li>LitmusChaos - хаос-тестирование для Kubernetes.</li>
15
<li>LitmusChaos - хаос-тестирование для Kubernetes.</li>
16
<li>Pumba - хаос-инструмент для Docker.</li>
16
<li>Pumba - хаос-инструмент для Docker.</li>
17
</ul><p><strong>Правила безопасного хаоса:</strong></p>
17
</ul><p><strong>Правила безопасного хаоса:</strong></p>
18
<p>1️⃣<em>Сначала тестируйте на staging!</em>Никто не любит, когда прод падает "по приколу".</p>
18
<p>1️⃣<em>Сначала тестируйте на staging!</em>Никто не любит, когда прод падает "по приколу".</p>
19
<p>2️⃣ Ограничивайте радиус эксперимента. Ломать всё сразу не лучшая идея.</p>
19
<p>2️⃣ Ограничивайте радиус эксперимента. Ломать всё сразу не лучшая идея.</p>
20
<p>3️⃣ Мониторинг обязателен. Без него вы просто создаете проблемы, а не изучаете их.</p>
20
<p>3️⃣ Мониторинг обязателен. Без него вы просто создаете проблемы, а не изучаете их.</p>
21
<p>4️⃣ Знайте, когда остановиться. Если тест пошёл не так, должен быть способ быстро откатиться.</p>
21
<p>4️⃣ Знайте, когда остановиться. Если тест пошёл не так, должен быть способ быстро откатиться.</p>
22
<p>Хаос неизбежен. Либо вы контролируете хаос, либо он контролирует вас. SRE-инженеры используют Chaos Engineering, чтобы узнать слабые места заранее и подготовить систему к реальным сбоям.</p>
22
<p>Хаос неизбежен. Либо вы контролируете хаос, либо он контролирует вас. SRE-инженеры используют Chaos Engineering, чтобы узнать слабые места заранее и подготовить систему к реальным сбоям.</p>