Requisitos OpenShift: Balance (ha-proxy) #
En esta entrada de blog, continuaremos con los requisitos para OpenShift. Esta vez, abordaremos la instalación y configuración del balanceador necesario para el entorno ARPOVEA de OpenShift.
Balance #
Como bien indica la documentación oficial, necesitaremos un balanceador tanto para la API de OpenShift como para las aplicaciones que OpenShift exponga.
Para ello, instalaremos el servicio haproxy, recordad que estamos utilizando el sistema operativo “Debian 12”.
Instalación y configuración de HAPROXY #
Ejecutamos el siguiente comando:
sudo apt update && sudo apt install -y haproxy
Una vez instalado, editamos el fichero de configuración /etc/haproxy/haproxy.cfg
global
log 127.0.0.1 local2
pidfile /var/run/haproxy.pid
maxconn 4000
daemon
defaults
mode http
log global
option dontlognull
option http-server-close
option redispatch
retries 3
timeout http-request 10s
timeout queue 1m
timeout connect 10s
timeout client 1m
timeout server 1m
timeout http-keep-alive 10s
timeout check 10s
maxconn 3000
listen api-server-6443
bind *:6443
mode tcp
server bootstrap bootstrap.arpovea.com:6443 check inter 1s backup
server ocpmaster1 ocpmaster1.arpovea.com:6443 check inter 1s
server ocpmaster2 ocpmaster2.arpovea.com:6443 check inter 1s
server ocpmaster3 ocpmaster3.arpovea.com:6443 check inter 1s
listen machine-config-server-22623
bind *:22623
mode tcp
server bootstrap bootstrap.arpovea.com:22623 check inter 1s backup
server ocpmaster1 ocpmaster1.arpovea.com:22623 check inter 1s
server ocpmaster2 ocpmaster2.arpovea.com:22623 check inter 1s
server ocpmaster3 ocpmaster3.arpovea.com:22623 check inter 1s
listen ingress-router-443
bind *:443
mode tcp
balance source
server ocpinfra1 ocpinfra1.arpovea.com:443 check inter 1s
server ocpinfra2 ocpinfra2.arpovea.com:443 check inter 1s
server ocpinfra3 ocpinfra3.arpovea.com:443 check inter 1s
server ocpworker1 ocpworker1.arpovea.com:443 check inter 1s
server ocpworker2 ocpworker2.arpovea.com:443 check inter 1s
server ocpworker3 ocpworker3.arpovea.com:443 check inter 1s
listen ingress-router-80
bind *:80
mode tcp
balance source
server ocpinfra1 ocpinfra1.arpovea.com:80 check inter 1s
server ocpinfra2 ocpinfra2.arpovea.com:80 check inter 1s
server ocpinfra3 ocpinfra3.arpovea.com:80 check inter 1s
server ocpworker1 ocpworker1.arpovea.com:80 check inter 1s
server ocpworker2 ocpworker2.arpovea.com:80 check inter 1s
server ocpworker3 ocpworker3.arpovea.com:80 check inter 1s
Además se ha agregado una configuración para que muestre las estadísticas y el estado de los balanceos creados:
listen stats
bind :9000 # Puedes usar el puerto que prefieras
mode http
stats enable
stats uri / # Puedes cambiar esta URL según tus preferencias
stats realm Haproxy\ Statistics
# stats auth username:password # Reemplaza 'username' y 'password' con tus credenciales deseadas si quieres añadirle una authenticación básica
Una vez tenemos la configuración lista, reiniciamos el servicio:
sudo systemctl restart haproxy
Podremos consultar las estadisticas y el estado de nuestros balanceos en:
http://{IP-BALANCEO}:9000
Con esto ya tendriamos nuestro servicio de balanceo listo para Openshift.