HAProxy 错误:某些配置选项需要完全权限,因此无法更改 global.uid

HAProxy 错误:某些配置选项需要完全权限,因此无法更改 global.uid

将行添加到/etc/haproxy/haproxy.cfgas后创建透明代理的一部分

    source 0.0.0.0 usesrc clientip

重新启动 haproxy 开始出现错误

~# service haproxy reload
 * Reloading haproxy haproxy                                                     
       [ALERT]     230/153724 (1140) : [/usr/sbin/haproxy.main()] Some configuration options require full privileges, so global.uid cannot be changed.

我已经service haproxy reload以 身份运行root。我们还要做点什么?谢谢!

答案1

在 haproxy.cfg 中注释掉以下几行:

    user        haproxy
    group       haproxy

并重新启动haproxy。

答案2

解决此权限问题的更好方法是执行以下命令:

  1. 修复 haproxy 功能

    setcap cap_net_raw,cap_net_admin,cap_net_bind_service+eip /usr/sbin/haproxy
    
  2. 修复haproxy.pid文件权限

    touch /var/run/haproxy.pid; chown haproxy:haproxy /var/run/haproxy.pid
    
  3. 注释掉haproxy.conf

    User haproxy
    Group haproxy
    
  4. 以 haproxy 用户身份执行守护进程:

    sudo -u haproxy /sbin/haproxy -f /etc/haproxy/haproxy.cfg -p /var/run/haproxy.pid -D -q
    
  5. 检查haproxy进程

    ps -ef | grep haproxy
    

    结果应该是:

    haproxy  12800     1  0 фев12 ?     00:00:58 /sbin/haproxy -f /etc/haproxy/haproxy.cfg -p /var/run/haproxy.pid -D -q
    
  6. 您可以输入这些命令rc.local以便系统自动启动

相关内容