2014-10-17 4 views
4

Я не могу добавить сервер бэкэнда, так как проверка здоровья терпит неудачу с сообщениями журналаразрешение HAproxy проверка здоровья отказано

проверки здоровья для сервера мул/muleapp не удалось, причина: LAYER4 связь проблема, информация: «Общие Ошибка сокета (Permission denied) ", проверка продолжительность: 0мс, статус: 0/2 DOWN.

Я, тем не менее, могу использовать telnet в одном IP-адресе и хосте. И добавление других бэкендов работает. Я не вижу, что такое разрешение. Моя конфигурация очень упрощена

backend mule 
    balance  roundrobin 
    server  muleapp x.x.x.x:64006 check 

(заменить x на любое количество). Я работаю в режиме HTTP. Следует отметить, что соединение с локальным портом TCPMon также не работает - но тогда нет записей журнала проверки работоспособности.

ответ

9

Проблема заключается в том, что SELinux разрешает веб-серверу устанавливать исходящие подключения к ограниченному набору портов.

Fixed, выполнив:

semanage port --add --type http_port_t --proto tcp 8001

после установки semanage с

yum install policycoreutils-python

Ссылка: https://serverfault.com/questions/654599/weird-interaction-with-systemctl-with-haproxy-on-centos-7

4

В SELinux можно разрешить HAProxy для подключения ко всем удаленным бэкэндом порты:

getsebool haproxy_connect_any # by default 0 
setsebool -P haproxy_connect_any 1 

Это работает немедленно без перезапуска haproxy.