我们在多进程环境( nbproc 20 )中使用 haproxy 。我们希望在不重新启动的情况下从 haproxy 中禁用某些服务器。我们可以在nbproc = 1
echo "disable server Backend/ServerName" | socat stdio /var/run/haproxy/haproxy.sock
nbproc > 1
时我们如何做同样的事。
答案 0 :(得分:0)
您需要为每个nbproc
创建单独的套接字stats socket /var/run/haproxy.1.stats mode 600 level admin process 1
stats socket /var/run/haproxy.2.stats mode 600 level admin process 2
stats socket /var/run/haproxy.3.stats mode 600 level admin process 3
然后使用for循环或最适合你的方式将socat / nc命令重定向到所有/var/run/haproxy.*.stats
for socket in /var/run/haproxy*.stats; do
echo "set server <FARM NAME>/<HOST NAME> stat maint" | socat stdio $socket
done
如果你想要ipv4 @sockets,同样适用。
欢呼声!!