Refactor code structure for improved readability and maintainability

This commit is contained in:
ada
2025-08-22 22:16:55 +03:00
parent 6ea0858f6e
commit 61c42be7b9
7 changed files with 323 additions and 6 deletions
@@ -0,0 +1,47 @@
---
title: "Split-brain"
layout: single
---
**Split-brain** — ситуация, при которой узлы кластера теряют связь друг с другом и каждый считает себя активным. В результате возникает конфликт за управление ресурсами.
---
## ⚠️ Почему это опасно
- Два узла работают с одним ресурсом одновременно
- Возможна потеря, дублирование или порча данных
- Нарушение целостности и доступности системы
---
## 🧪 Типовой сценарий
1. Узлы теряют связь между собой
2. Каждый считает, что другой "упал"
3. Оба активируют сервисы
4. Сервис работает параллельно на двух узлах → конфликт
---
## 🛠️ Способы предотвращения
- **Quorum (кворум)** — решение принимает большинство узлов
- **STONITH (Shoot The Other Node In The Head)** — принудительное выключение "лишнего" узла
- **Arbiter (арбитр)** — третий узел/устройство для голосования
- **Shared storage lock** — блокировка доступа на уровне хранилища
---
## 🧰 Примеры технологий с защитой от split-brain
- Pacemaker + Corosync (STONITH, quorum)
- Ceph (кворум через CRUSH)
- Galera Cluster (wsrep-cluster)
- DRBD (dual-primary блокировка)
---
## 🔗 См. также:
- [[Кластеры высокой доступности]]
- [[Геораспределённые кластеры и ЦОД]]