У меня есть тест с HAproxy в качестве балансировщика нагрузки. Я его установил и тоже настроил, даже лог с rsyslog. Я проверил конфигурацию с haproxy -c -f /etc/haproxy/haproxy.cnf
и с haproxy -d -f /etc/haproxy.cnf
. Вроде бы все нормально, но после запуска haproxy systemctl start haproxy
, Я казнил systemctl status haproxy
, он показал мне это:
haproxy.service - HAProxy Load Balancer
Loaded: loaded (/usr/lib/systemd/system/haproxy.service; enabled)
Active: inactive (dead) since jue 2015-07-02 14:47:13 CDT; 7s ago
Process: 29832 ExecStart=/usr/sbin/haproxy-systemd-wrapper -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid (code=exited, status=0/SUCCESS)
Main PID: 29832 (code=exited, status=0/SUCCESS)
systemd[1]: Started HAProxy Load Balancer.
haproxy-systemd-wrapper[29832]: haproxy-systemd-wrapper: executing /usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -Ds
haproxy-systemd-wrapper[29832]: [ALERT] 182/144713 (29833) : Could not open configuration file /etc/haproxy/haproxy.cfg : Permission denied
haproxy-systemd-wrapper[29832]: haproxy-systemd-wrapper: exit, haproxy RC=256
Логически это должно указывать на права доступа к файлам, поэтому у меня было 777 прав доступа к haproxy.cnf с тем же результатом. Я тестировал chown haproxy: haproxy, результат тот же.
У меня было много очков, но я не нашел решения этой проблемы.
Возможно, есть некоторая неправильная конфигурация в Selinux (если вы используете дистрибутив на основе Redhat) или в apparmor (если вы используете ubuntu).
Попробуйте остановить их, чтобы проверить, не в этом ли проблема. Вы также можете попробовать прочитать файл конфигурации с помощью пользователя, запустившего демон haproxy, используя команду:
sudo -u <haproxy_user> cat /etc/haproxy/haproxy.cfg