Модули/Failover и pg_rewind/Итоговое задание
9

Итоговое задание

Полный цикл failover и восстановления

50 минУрок 9 из 9
Прогресс0%

Теория

В этом задании вы выполните полный цикл failover и восстановления.

Настройте автоматический failover с помощью Patroni.

Протестируйте сценарий отказа мастера.

Восстановите бывшего мастера как реплику.

Документируйте все действия для административной команды.

Практика

1. Настройка кластера

Убедитесь, что кластер настроен и работает:

Настройка кластера
Команда
patronictl list
Вывод:
  Cluster: pg-cluster
  +---------+---------+---------+---------+-----------+
  | Member  | Host    | Role    | State   | Lag       |
  +---------+---------+---------+---------+-----------+
  | node1   | 127.0.0 | Leader  | running | 0MB       |
  +---------+---------+---------+---------+-----------+

2. Имитация сбоя

Остановите мастер для имитации сбоя:

Имитация сбоя
Команда
sudo systemctl stop postgresql

3. Проверка failover

Дождитесь автоматического failover:

Проверка failover
Команда
sleep 15 && patronictl list
Вывод:
  Cluster: pg-cluster
  +---------+---------+---------+---------+-----------+
  | Member  | Host    | Role    | State   | Lag       |
  +---------+---------+---------+---------+-----------+
  | node2   | 127.0.0 | Leader  | running | 0MB       |
  +---------+---------+---------+---------+-----------+

4. Восстановление

Восстановите старого мастера как реплику:

Восстановление
Команда
sudo systemctl start postgresql

Проверка

Финальная проверка: кластер полностью восстановлен:

Проверка
Команда
patronictl list
Вывод:
  Cluster: pg-cluster
  +---------+---------+---------+---------+-----------+
  | Member  | Host    | Role    | State   | Lag       |
  +---------+---------+---------+---------+-----------+
  | node1   | 127.0.0 | Replica | running | 0MB       |
  | node2   | 127.0.0 | Leader  | running | 0MB       |
  +---------+---------+---------+---------+-----------+

Пройдите викторину

Для завершения урока необходимо пройти викторину