Назад к вопросам
Middle+
9
Как в Patroni настроить выбор мастера, если один из узлов слабее остальных и не должен становиться primary?
Компании, где спрашивали
ФинГрад
Ответ от нейросети
sobes.tech AI
В Patroni можно настроить приоритет выбора primary (мастера) с помощью параметра tags в конфигурации каждого узла. Чтобы узел с меньшими ресурсами не становился primary, ему можно задать тег с низким приоритетом, например:
tags:
nofailover: true
noloadbalance: true
clonefrom: false
# или явно указать низкий приоритет
primary_priority: 0
Основной параметр — primary_priority (целочисленное значение, по умолчанию 100). Узлы с более высоким значением имеют больший приоритет для выбора в качестве primary. Установите на слабом узле primary_priority: 0 или другое низкое значение, чтобы Patroni не выбирал его в качестве мастера при failover.
Пример настройки для слабого узла:
scope: my_cluster
name: weak_node
restapi:
listen: 0.0.0.0:8008
connect_address: 10.0.0.3:8008
etcd:
host: 10.0.0.1:2379
postgresql:
listen: 0.0.0.0:5432
connect_address: 10.0.0.3:5432
data_dir: /var/lib/postgresql/data
tags:
primary_priority: 0
Таким образом, при выборе primary Patroni отдаст предпочтение узлам с более высоким primary_priority, исключая слабый узел из кандидатов на мастер.