patroni 是一個基於zk、etcd 、consul 等的pg ha 模版,我們可以使用這個工具,快速的搭建一套
pg 的高可用方案
環境准備
mac 操作系統
- 安裝基礎差組件
brew install postgresql etcd haproxy libyaml python
- 安裝python依賴
pip install patroni[etcd]
測試
- clone 測試代碼
git clone https://github.com/zalando/patroni.git
- 服務啟動
etcd --data-dir=data/etcd
./patroni.py postgres0.yml
./patroni.py postgres1.yml
./patroni.py postgres2.yml
- haproxy 啟動
haproxy -f haproxy.cfg
- 連接
psql --host 127.0.0.1 --port 5000 postgres
參考界面

