Am două backend-uri care sunt același server care rulează două din aceeași imagine Docker, dar fiecare cu un port diferit. Adică, pe serverul backend, singura diferență dintre cele două este maparea portului. Echilibratorul meu de încărcare (HAProxy) este o mașină fizică separată la 10.0.0.2.
frontend http-in
lega *:80
bind *:443 ssl crt /etc/ssl/mydomain.com/both.pem
Schema de redirecționare http-request https cu excepția cazului în care { ssl_fc }
acl eighty_http hdr(host) -m beg -i eighty.
acl eightyhundred_http hdr(host) -m beg -i eightyhundred.
use_backend eighty if eighty_http
use_backend eightyhundred dacă eightyhundred_http
backend optzeci
server douăzeci 10.0.0.20:80 verificați maxconn 300
backend optzeci sute
server douăzeci 10.0.0.20:8000 verificați maxconn 300
Când sudo systemctl restart haproxy, îmi spune că "backend eightyhundred nu are niciun server disponibil!" Cu toate acestea, pot curla ambele porturi cu succes din echilibrul de încărcare.
Am pus următoarele în iptables:
sudo iptables -A OUTPUT -p tcp -d 10.0.0.0/16 --sport 8000 -j ACCEPT
...si pentru selinux:
sudo semanage port --add --type http_port_t --proto tcp 8000
niciunul nu a făcut diferența.
Ce îmi lipsește aici?