GNU/Linux >> Tutoriales Linux >  >> Cent OS

Configure el clúster Squid de dos nodos con Pacemaker en CentOS 7/RHEL 7

Como todos sabemos, squid es un servidor proxy de almacenamiento en caché que admite protocolos como HTTP, HTTPS, FTP y más. En otras palabras, calamar es conocido como un servidor proxy web que ayuda a los ISP y otras organizaciones a reducir su ancho de banda y también mejora considerablemente el tiempo de respuesta, ya que almacena en caché localmente el contenido más frecuente. Cada vez que llega una nueva solicitud, Squid la sirve desde su caché si está en caché; de lo contrario, la obtendrá del servidor remoto y guardará su contenido en caché para futuras solicitudes.

En este artículo, demostraremos cómo configurar un clúster de squid (servidor proxy) de dos nodos mediante Pacemaker en el sistema CentOS 7 o RHEL 7.

Los siguientes son los detalles de mi laboratorio que he usado para este artículo,

  • Servidor Squid 1  (squid01.linuxtechi.lan) – 192.168.1.21 – CentOS 7 mínimo/RHEL 7
  • Squid Server 2  (squid02.linuxtechi.lan) – 192.168.1.22 – mínimo CentOS 7/RHEL 7
  • VIP del servidor Squid:192.168.1.20
  • Cortafuegos activado
  • SELinux habilitado

Paso:1) Agregue el nombre de host en el archivo /etc/hosts y aplique todas las actualizaciones

Agregue las siguientes líneas en el archivo /etc/hosts de ambos servidores Squid.

192.168.1.21 squid01.linuxtechi.lan squid01
192.168.1.22 squid02.linuxtechi.lan squid02

Instale todas las actualizaciones usando el comando de actualización debajo de yum y luego reinicie los nodos

[[email protected] ~]# yum update -y && reboot
[[email protected] ~]# yum update -y && reboot

Paso:2) Instalar los paquetes de agentes de esgrima y marcapasos en ambos servidores squid

Ejecute el siguiente comando yum en ambos servidores para instalar paquetes de marcapasos, pcs y esgrima,

[[email protected] ~]# yum install pcs pacemaker fence-agents-all -y
[[email protected] ~]# yum install pcs pacemaker fence-agents-all -y

Una vez que los paquetes anteriores estén instalados en ambos servidores, inicie y habilite el servicio de marcapasos (pcsd) usando los siguientes comandos,

[[email protected] ~]# systemctl start pcsd.service
[[email protected] ~]# systemctl enable pcsd.service

[[email protected] ~]# systemctl start pcsd.service
[[email protected] ~]# systemctl enable pcsd.service

Como en mi configuración de vuelta, el servicio de firewall del sistema operativo se está ejecutando y habilitado, así que configure las reglas de firewall para alta disponibilidad o servicio de agrupación, ejecute el siguiente "firewall-cmd ” comandos en los calamares,

[[email protected] ~]# firewall-cmd --permanent --add-service=high-availability
success
[[email protected] ~]# firewall-cmd --reload
success
[[email protected] ~]#
[[email protected] ~]# firewall-cmd --permanent --add-service=high-availability
success
[[email protected] ~]# firewall-cmd --reload
success
[[email protected]2 ~]#

Paso:3) Autorizar servidores squid y formar un clúster squid

Para formar un clúster, ambos nodos / servidores deben autorizarse, primero configuremos la contraseña de "hacluster ” usuario,

[[email protected] ~]# echo "password_here" | passwd --stdin hacluster
[[email protected] ~]# echo "password_here" | passwd --stdin hacluster

Ahora use el siguiente "autorización de clúster de pcs ” desde cualquiera de los servidores squid para autorizar ambos servidores usando las credenciales de hacluster.

[[email protected] ~]# pcs cluster auth squid01.linuxtechi.lan squid02.linuxtechi.lan
Username: hacluster
Password:
squid02.linuxtechi.lan: Authorized
squid01.linuxtechi.lan: Authorized
[[email protected] ~]#

Use a continuación "configuración de clúster de piezas ” desde cualquiera de los nodos para formar un clúster, en mi caso lo estoy ejecutando desde squid01 y el nombre de mi clúster es “squid_cluster

[[email protected] ~]# pcs cluster setup --start --name squid_cluster squid01.linuxtechi.lan squid02.linuxtechi.lan

La salida del comando anterior debería ser similar a la siguiente:

Habilite el servicio de clúster de pcs para que se inicie automáticamente durante el reinicio, ejecute el siguiente comando desde cualquiera de los servidores squid

[[email protected] ~]# pcs cluster enable --all
squid01.linuxtechi.lan: Cluster Enabled
squid02.linuxtechi.lan: Cluster Enabled
[[email protected] ~]#

Use los siguientes comandos para verificar el estado del clúster,

[[email protected] ~]# pcs cluster status
[[email protected] ~]# pcs status

Paso:4) Instale el paquete Squid en ambos servidores y desactive la valla

Ejecute el siguiente comando yum en ambos servidores para instalar paquetes de squid (servidor proxy),

[[email protected] ~]# yum install squid -y
[[email protected] ~]# yum install squid -y

Permita el puerto squid (3128) en el firewall del sistema operativo usando el siguiente comando

[[email protected] ~]# firewall-cmd --permanent --add-service=squid
success
[[email protected] ~]# firewall-cmd --reload
success
[[email protected] ~]#
[[email protected] ~]# firewall-cmd --permanent --add-service=squid
success
[[email protected] ~]# firewall-cmd --reload
success
[[email protected] ~]#

En mi laboratorio no tengo ningún agente o dispositivo de esgrima, así que lo estoy deshabilitando usando los siguientes comandos,

[[email protected] ~]# pcs property set stonith-enabled=false
[[email protected] ~]# pcs property set no-quorum-policy=ignore
[[email protected] ~]#

Paso:5) Configurar los recursos de Squid Cluster y el grupo de clúster

En la configuración de mi laboratorio, tengo dos discos compartidos de 1 GB y 12 GB, estos discos están asignados a ambos servidores.

En el clúster montaremos el /etc/squid (es decir, archivos de configuración de squid) sistema de archivos en un disco de 1 GB y “/var/spool/squid ” (es decir, el directorio de caché de squid) se montará en un disco de 12 GB

  • /dev/sdb (disco de 1 GB) – /etc/squid
  • /dev/sdc (disco de 12 GB) – /var/spool/squid

Como estos discos son visibles en ambos servidores Squid, cree una partición en /dev/sdb y /dev/sdc usando el comando fdisk desde cualquiera de los servidores Squid y luego formatéelos con el sistema de archivos xfs usando el comando mkfs.xfs

Actualmente, todos los archivos de configuración de squid están en la carpeta local /etc/squid. Copie los datos del sistema de archivos local /etc/squid al disco compartido (/dev/sdb1)

[roo[email protected] ~]# mount /dev/sdb1 /mnt/
[[email protected] ~]# cp -av /etc/squid/* /mnt/
[[email protected] ~]# umount /mnt/

Ahora cree dos recursos del sistema de archivos, uno para el sistema de archivos /etc/squid y otro para /var/spool/squid

Ejecute lo siguiente “pcs resource create ” desde cualquiera de los servidores squid para crear un recurso del sistema de archivos, en mi caso tomando el nombre del recurso del sistema de archivos como “squidfs1 ” &“calamares2 ” y el nombre del grupo como “squidgrp

[[email protected] ~]# pcs resource create squidfs1 Filesystem device=/dev/sdb1 directory=/etc/squid fstype=xfs --group squidgrp
[[email protected] ~]# pcs resource create squidfs2 Filesystem device=/dev/sdc1 directory=/var/spool/squid fstype=xfs --group squidgrp 
[[email protected] ~]#

Defina el recurso squid (servicio systemd) usando el comando de recursos pcs, ejecute el siguiente comando desde cualquiera de los servidores squid

[[email protected] ~]# pcs resource create proxy systemd:squid op monitor interval=10s --group squidgrp
[[email protected] ~]#

Defina squid vip para su grupo, en mi caso usaré "192.168.1.20 ” como squid vip, esta IP flotará entre estos servidores, los usuarios finales o los clientes de squid usarán esta IP como IP del servidor proxy de squid mientras configuran sus configuraciones de proxy y también usarán el puerto de squid predeterminado 3128.

[[email protected] ~]# pcs resource create squid_vip ocf:heartbeat:IPaddr2 ip=192.168.1.20 cidr_netmask=24 op monitor interval=30s --group squidgrp
[[email protected] ~]#

Ahora verifique si todos los recursos del clúster están iniciados o no. Ejecute "estado de piezas ” comando desde cualquiera de los servidores squid

[[email protected] ~]# pcs status
Cluster name: squid_cluster
Stack: corosync
Current DC: squid01.linuxtechi.lan (version 1.1.19-8.el7_6.4-c3c624ea3d) - partition with quorum
Last updated: Wed Mar 27 06:59:59 2019
Last change: Wed Mar 27 06:59:02 2019 by root via cibadmin on squid01.linuxtechi.lan

2 nodes configured
4 resources configured

Online: [ squid01.linuxtechi.lan squid02.linuxtechi.lan ]
Full list of resources:
 Resource Group: squidgrp
     squidfs1   (ocf::heartbeat:Filesystem):    Started squid01.linuxtechi.lan
     squidfs2   (ocf::heartbeat:Filesystem):    Started squid01.linuxtechi.lan
     proxy      (systemd:squid):        Started squid01.linuxtechi.lan
     squid_vip  (ocf::heartbeat:IPaddr2):       Started squid01.linuxtechi.lan

Daemon Status:
  corosync: active/enabled
  pacemaker: active/enabled
  pcsd: active/enabled
[[email protected] ~]#

Como podemos ver arriba, todos los recursos se inician en el servidor squid01. Verifiquemos el estado del servicio Squid y squid vip

[[email protected] ~]# systemctl status squid
[[email protected] ~]# ip a s

La salida de los dos comandos anteriores debería ser similar a la siguiente:

Eso es todo de este artículo, ahora puede configurar las ACL que se adapten a su entorno en el archivo /etc/squid.conf. Comparta sus opiniones y comentarios.


Cent OS
  1. Clúster de servidor web Apache de dos nodos con marcapasos en CentOS 7

  2. Configure el repositorio YUM usando DVD o CD ROM CentOS / RHEL

  3. Cómo configurar el clúster de alta disponibilidad de Nginx con Pacemaker en CentOS 7

  4. CentOS / RHEL 7:Cómo configurar el etiquetado de VLAN usando nmcli

  5. Cómo configurar un cliente solo NFSv4 usando nfsconf en CentOS/RHEL 8

Cómo instalar y configurar MySQL Cluster en CentOS 7

Cómo configurar un clúster de alta disponibilidad en CentOS 7/RHEL 7

Configurar VCS en CentOS 8 | RHEL 8 paso a paso

Cómo configurar el objetivo iSCSI usando targetcli en CentOS / RHEL 7

CentOS / RHEL 7:Cómo configurar kdump usando GUI

Cómo configurar el cliente LDAP en CentOS/RHEL 6 usando SSSD