无法在Cygwin上启动HAProxy

3
我正在尝试在Cygwin上启动HAProxy。当我这样做时,我会收到以下响应:
$ /usr/local/sbin/haproxy -f /usr/local/sbin/haproxy.cfg
[ALERT] 313/180006 (4008) : cannot change UNIX socket ownership 
                           (/tmp/haproxy.socket). Aborting.
[ALERT] 313/180006 (4008) : [/usr/local/sbin/haproxy.main()] 
                            Some protocols failed to start 
                            their listeners! Exiting.

看起来是由于我的配置文件中以下这行代码导致了问题,当我注释掉它时程序可以正常启动:

stats socket /tmp/haproxy.socket uid haproxy mode 770 level admin

整个配置如下:
global
log 127.0.0.1 local0 info
stats socket /tmp/haproxy.socket uid haproxy mode 770 level admin
maxconn 1000
daemon

defaults
log global
mode tcp
option tcplog
option dontlognull
retries 3
option redispatch
maxconn 1000
timeout connect 5s
timeout client 120s
timeout server 120s

listen rabbitmq_local_cluster 127.0.0.1:5555
mode tcp
balance roundrobin
server rabbit_0 127.0.0.1:5673 check inter 5000 rise 2 fall 3
server rabbit_1 127.0.0.1:5674 check inter 5000 rise 2 fall 3

listen private_monitoring 127.0.0.1:8100
mode http
option httplog
stats enable
stats uri /stats
stats refresh 5s

任何想法都会受到赞赏,谢谢!
2个回答

3
简单来说,正如我所预料的那样。在问题行中引用的我的用户“haproxy”:

stats socket /tmp/haproxy.socket uid haproxy mode 770 level admin

在本地机器上没有必要的权限。一旦设置好了,它就可以正常启动了。

1
很高兴知道它仍然可以在cygwin上运行,这是哪个版本的haproxy?顺便说一句,我不知道UNIX套接字在Windows上是否受支持。或者它们是通过命名管道模拟的?

嗨@Willy Tarreau,这是HAP 1.4.22。关于Unix套接字的问题我不太确定,因为我对此知之甚少(因此是新手问题)。我只是想设置一个本地LB来测试RabbitMQ集群和Cygwin/HAP组合作为相对容易的解决方案。我使用的配置主要是从示例中剪切和粘贴而来。如果您有任何相关知识可以分享,将不胜感激。谢谢! - swannee

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接