pgoneproxy提供了vip功能來保證可以不間斷的對外部提供服務。下面來說解下pgoneproxy中VIP功能的使用方法。數據庫
環境:網絡
pgoneproxy主機:172.30.12.10 172.30.12.11ui
pgoneproxy業務主機:172.30.12.8debug
配置:code
172.30.12.10 和 172.30.12.11 兩臺主機的配置以下所示:server
/usr/local/pgoneproxy/pgoneproxy \ --keepalive=1 \ --vip-address=172.30.12.122/em1:0 \ --log-level=debug \ --proxy-address=:2000 \ --proxy-master-addresses=172.30.12.12:5432@data1 \ --proxy-slave-addresses=172.30.12.9:5432@data1 \ --proxy-user-list=db_user/949059A4C1F0294785A2F453D9367838B73158A3@pgbench \ --proxy-user-group=data1:db_user/DC3F3EA7387BA90D2051477E6711C3A5F81BE8E7@pgbench \ --proxy-part-tables=$(pwd)/hashpart.txt \ --event-threads=16 \ --proxy-httpserver=:8080 \ --proxy-trans-debug=1 \ --log-file=/home/huih/test/log/oneproxy.log \ --pid-file=/home/huih/test/log/oneproxy.pid &
使用vip關鍵配置項是:keepalive, vip-address這兩個必定要配置。若是這兩個配置了,那麼業務主機和pgoneproxy所在的主機能夠是同一臺主機,若是不配置keepalive那麼業務就不能和pgoneproxy放在同一臺主機上面。ip
vip-address=172.30.12.122/em1:0,其中172.30.12.122是vip地址,em1:0表明在網卡em1上面創建一個虛擬的網卡em1:0。故em1須要根據實際的網絡名稱進行設置,多是eth0,也多是其餘的。hash
執行狀況:event
在172.30.12.8主機上面直接查詢數據庫,若是pgoneproxy任意一臺掉線都不影響查詢。table
若是接受短暫的拒絕提供服務,那麼能夠直接經過配置keepalive便可。這樣當pgoneproxy掉線後,自動重啓。