¿Que es un Cluster HA?
Un cluster de alta disponibilidad es un conjunto de dos o más máquinas que se caracterizan por mantener una serie de servicios compartidos y por estar constantemente monitorizándose entre sí. Podemos
¿Que es HAProxy?
HAProxy (que significa alta disponibilidad Proxy) es una solución de código abierto rápido y confiable, que es capaz de manejar el tráfico enorme y ofrece alta disponibilidad, balanceo de carga y proxy para TCP y aplicaciones basadas en HTTP. Similar a Nginx–Balancer, se utiliza un modelo orientado a eventos de un solo proceso, que consume un bajo (y estable) cantidad de memoria, lo que permite a HAProxy procesar un gran número de peticiones concurrentes al mismo tiempo, garantiza un buen equilibrio de carga con la persistencia inteligente y mitigación de DDoS.
Configuramos el archivo /etc/hosts en ambos nodos
172.20.0.10 proxyinv01.redorbita.com proxyinv01
172.20.0.11 proxyinv02.redorbita.com proxyinv02
172.20.0.12 proxyinv-vip.redorbita.com proxyinv-vip
Listamos la subcripciones
subscription-manager list –available
Añadimos la subcripción
subscription-manager list –available
subscription-manager attach –pool=8a85f981550f53aa01550fbfd43c69aa
subscription-manager repos –enable=rhel-ha-for-rhel-7-server-rpms
Instalamos la paquetería necesaria:
Dado que en mi caso lo empleare como proxy inverso tambien instalare apache.
yum install iptables-services haproxy apache pcs fence-agents-all
Habilitamos las reglas en el firewall o lo desactivamos
firewall-cmd –permanent –add-service=high-availability
firewall-cmd –add-service=high-availability
systemctl stop firewalld
ystemctl disable firewalld
systemctl mask firewalld
Activamos iptables
systemctl enable iptables
systemctl start iptables
Cambiamos la contraseña al usuario del cluster
passwd hacluster
Changing password for user hacluster.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
Iniciamos el servicio.
systemctl start pcsd.service
systemctl enable pcsd.service
Autorizar nodos y usuario, realizar en un solo nodo:
pcs cluster auth proxyinv01.redorbita.com proxyinv02.redorbita.com
Username: hacluster
Password:
proxyinv01.redorbita.com: Authorized
proxyinv02.redorbita.com: Authorized
Creamos el cluster y habilitar cluster al iniciar maquinas
pcs cluster setup –start –name clusproxyinv proxyinv01.redorbita.com proxyinv02.redorbita.com
Activamos los dos nodos
pcs cluster enable –all
Comprobamos el estado del cluster
pcs cluster status
Cluster Status:
Last updated: Thu Jun 2 11:58:37 2016 Last change: Thu Jun 2 11:38:40 2016 by hacluster via crmd on proxyinv01.redorbita.com
Stack: corosync
Current DC: proxyinv01.redorbita.com (version 1.1.13-10.el7_2.2-44eb2dd) – partition with quorum
2 nodes and 0 resources configured
Online: [proxyinv01.redorbita.com proxyinv02.redorbita.com]
PCSD Status:
proxyinv01.redorbita.com: Online
proxyinv02.redorbita.com: Online
Generamos el usuario de Fence en vmware, para ello nos vamos a Roles en el vcenter
Generamos el usuario de Fence en vmware, para ello nos vamos a Roles en el vcenter
Nos vamos a la carpeta del proyecto, botón detrecho > Add Permission…
Creamos el recurso fence
pcs stonith create fence fence_vmware_soap pcmk_host_map=»node1:proxyinv01.redorbita.com;node2:proxyinv02.redorbita.com» ipaddr=<ESXi/vCenter IP address> ssl=1 login=fenceuser passwd=fencepassword01.
Desactivamos el quorum y stonith
pcs property set no-quorum-policy=ignore
pcs property set stonith-enabled=false
Creamos los recursos
pcs resource create proxyinv-vip ocf:heartbeat:IPaddr2 ip=172.20.0.12 cidr_netmask=32 op monitor interval=30s
pcs resource create apache ocf:heartbeat:apache configfile=/etc/httpd/conf/httpd.conf op monitor interval=20s
pcs resource create HAproxy systemd:haproxy op monitor interval=5s
Configuramos el orden de inicio de los recursos.
pcs constraint order start proxyinv-vip then apache
pcs constraint order start apache then HAproxy
Creamos el grupo y añadimos los recursos a este grupo
pcs resource group add clusproxyinv proxyinv-vip apache Haproxy
Iniciamos el recurso
pcs resource enable clusproxyinv
un saludo
:wq!
2 comentarios en “Clúster de alta disponibilidad HAproxy en Red Hat 7”