PostgreSQL
September 8, 2022

Запустить файловер вручную

Если производятся какие-то работы на железе, где находится мастер может понадобится переключить мастер вручную.

Поехали!

export POSTGRES=$(yc postgresql cluster get cam-postgres --format=json | jq -r ".id")
yc postgresql cluster start-failover $POSTGRES \
  --async

Посмотрим операцию:

yc operation get c9qpbjrshs40dtafdec1
id: c9qpbjrshs40dtafdec1
description: Start manual failover on PostgreSQL cluster
created_at: "2022-09-08T16:49:02.220364Z"
created_by: aje25tpsqn1111ccda0h
modified_at: "2022-09-08T16:49:32.557359Z"
done: true

Посмотрим на хосты кластера:

yc postgresql hosts list --cluster-id $POSTGRES
+-------------------------------------------+----------------------+---------+--------+---------------+-----------+--------------------+
|                   NAME                    |      CLUSTER ID      |  ROLE   | HEALTH |    ZONE ID    | PUBLIC IP | REPLICATION SOURCE |
+-------------------------------------------+----------------------+---------+--------+---------------+-----------+--------------------+
| HOST1                                     | $POSTGRES            | REPLICA | ALIVE  | ru-central1-a | true      |                    |
| HOST2                                     | $POSTGRES            | MASTER  | ALIVE  | ru-central1-b | true      |                    |
+-------------------------------------------+----------------------+---------+--------+---------------+-----------+--------------------+

Реплика стала мастером, а мастер репликой.

Готово!

Полезные ссылки.

Создали кластер здесь: https://teletype.in/@cameda/Lheee0sIIqV
Информация о хосте кластера тут: https://teletype.in/@cameda/T-niZns6Y3Y
Тестовую БД взял отсюда: https://itdoxy.com/пример-базы-данных-postgresql/
Базу demo добавил тут: https://teletype.in/@cameda/tMfCh9jdzK-
Здесь выдал доп роли для пользователя cameda: https://teletype.in/@cameda/R5_8i_jmacK
Информация про реплики: https://cloud.yandex.ru/docs/managed-postgresql/concepts/replication
Добавить реплику: https://teletype.in/@cameda/s_WvlAZ7BmK