vault backup: 2026-05-24 15:03:28
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
---
|
||||
status: stable
|
||||
type: concept
|
||||
tags:
|
||||
- devops
|
||||
- kubernetes
|
||||
created: 2025-12-17
|
||||
updated: 2026-05-07
|
||||
title: Алгоритм консенсуса raft
|
||||
---
|
||||
|
||||
# Алгоритм консенсуса raft
|
||||
|
||||
**Raft** — алгоритм консенсуса, применяющийся в распределенных системах, и обеспечивающий безопасную и согласованную репликацию данных между всеми участниками.
|
||||
|
||||
Состоит из двух фаз:
|
||||
1) Выбор лидера (**leader election**)
|
||||
2) Репликация данных (**log replication**)
|
||||
|
||||
Каждый участник в любой момент времени находится только в одном состоянии:
|
||||
1) Лидер (**leader**) - только один;
|
||||
2) Кандидаты в лидеры (**candidate**);
|
||||
3) Ведомый (**follower**).
|
||||
|
||||
*Raft* в фазе выбора лидера опирается на понятие кворума (**quorum**) - большинства.
|
||||
Из-за этого, в частности, есть рекомендация: *количество master-node должно быть нечетным*.
|
||||
|
||||
Визуализация алгоритма консенсуса Raft: http://thesecretlivesofdata.com/raft/
|
||||
Reference in New Issue
Block a user