Комментарии 9
Restart=no
в patroni.service. Можете прояснить этот момент?Есть же уже всё с ансиблом и поэтессами:
https://github.com/vitabaks/postgresql_cluster
Такого много и моё аналогичное решение (часть, которая касается БД) на ansible не исключение. https://github.com/timlok/otus-highload Patroni/postrgresql 11.6, кластер consul вместо etcd, vip-manager вместо haproxy, пулер соединений odyssey от Яндекса.
Интересует такое же решение, но для докер. Я пытался установить spilo от Флант (на чистый докер, не кубернетес хелм чарт) https://hub.docker.com/r/flant/spilo, но зашел в тупик уже на первом шаге - создать кластер etcd из трех нод. В документации в разделе переменные есть только ETCD_HOSTS (это переменная только для клиента patroni), но нет например ETCD_INITIAL_CLUSTER
Автор, спасибо за статью.
Но нашел несколько недочетов.
1) Наверно многим, как и мне, было бы проще, если в разделе установки кластера etcd вставить уточнение, что перед командой systemctl restart etcd надо выполнить установку и настройку на всех узлах кластера. Плюс под спойлером закоментить строки про member, предупреждение и cluster
2) Скрипт по установке, если он запускается от рута, то наверное все будет работать. Но при построчном выполнении есть ошибки
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add -
должно быть sudo apt-key add -в строке chmod 700 /data/patroniпо опечатка. Должно быть chmod 700 /data/patroni
Построение кластера PostgreSQL высокой доступности с использованием Patroni, etcd, HAProxy