Product SiteDocumentation Site

25.5.3. Резервирование сети (Redundancy)

Corosync поддерживает избыточные сетевые соединения через встроенный транспорт Kronosnet.
Для включения резервирования необходимо указать несколько каналов связи:
  • через параметры --link0, --link1 в команде pvecm;
  • либо добавив параметры ring0_addr, ring1_addr в файле corosync.conf.

Примечание

Для эффективного отказоустойчивого переключения каждый канал должен использовать отдельное физическое соединение.
Каналы используются в порядке приоритета:
# pvecm create CLUSTER \
  --link0 10.10.100.105,priority=15 \
  --link1 10.20.20.1,priority=20
В данном случае будет использоваться канал link1, поскольку его приоритет выше.
Если приоритеты не заданы, предпочтение отдаётся каналу с меньшим номером (link0 имеет более высокий приоритет, чем link1).
В штатном режиме трафик передаётся только через канал с наивысшим приоритетом. Остальные каналы используются только при отказе основного.
Для добавления резервного канала в существующий кластер необходимо внести изменения в файл /etc/pve/corosync.conf:
  1. Добавить параметр ringX_addr для каждого узла (значение X должно быть одинаково для каждого добавляемого узла и уникально для каждого узла).
  2. В секции totem добавить новый блок interface (номер ссылки должен соответсвовать числу X, выбранному выше):
    interface {
      linknumber: 1
    }
    
  3. Увеличить значение config_version.
После применения конфигурации рекомендуется проверить загрузку нового канала:
# journalctl -b -u corosync
Для тестирования можно временно отключить основной канал на одном из узлов и убедиться, что кластер остаётся в состоянии ONLINE:
# pvecm status
Состояние всех link-каналов Corosync можно просмотреть, выполнив команду:
# corosync-cfgtool -s