我们已经配置了与AWS S3兼容的对象服务器,以将S3存储桶通知记录到CRDB(蟑螂数据库)中。 S3对象服务器具有配置CRDB端点的功能。 CRDB可以在分布式系统设置程序上运行-因此,我正在尝试使用haproxy作为CRDB服务器的负载平衡器。
以下是haproxy配置。从我的测试中,我注意到有时 S3事件正在影响数据库,而有时它们却丢失。当我直接在对象服务器配置中使用蟑螂数据库服务器的IP地址之一时,所有S3事件都始终能够进入数据库。这样可以将问题隔离到haproxy负载均衡器上。
任何人都可以建议(特别是在侦听psql下的服务器行)将数据和运行状况检查路由到不同的IP地址上吗?
global
maxconn 4096
log 127.0.0.1 local0
defaults
mode tcp
timeout connect 10s
timeout client 1m
timeout server 1m
option clitcpka
listen psql
bind :26257
mode tcp
balance roundrobin
option httpchk GET /health?ready=1
server roach1 192.XX.XX.1:26257 check addr 172.XX.XX.1 port 8080
server roach1 192.XX.XX.2:26257 check addr 172.XX.XX.2 port 8080
server roach1 192.XX.XX.3:26257 check addr 172.XX.XX.3 port 8080