Вы находитесь на странице: 1из 32

Requerimientos HA

Sistema Operativo Red Hat Enterprise Linux


Versin 7
Suscripcin del servidor Red Hat Enterprise
Linux 7 al Red Hat Network.
Contar con las suscripcin a los add-ons de HA
y RS.
Configuracin de resolucin de nombre

nodo1> cat /etc/hosts


127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
172.28.28.81 nodo1
172.28.28.82 nodo1

Apagado de algunos servicios y Deshabilitacin

nodo1> systemctl stop firewalld.service


nodo1> systemctl disable firewalld.service
nodo1> iptables --flush
Apagado del SELinux
nodo1> cat /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
15
SELINUX= disabled
# SELINUXTYPE= can take one of these two values:
# targeted - Targeted processes are protected,
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
Instalacin de add-ons

nodo1> yum install pcs fence-agents-all -y

nodo2> yum install pcs fence-agents-all -y


Configuracin de Cluster

Definimos el password del usuario de cluster

nodo1> passwd hacluster


Changing password for user hacluster.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

nodo2> passwd hacluster


Changing password for user hacluster.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
Iniciamos el demonio pcsd en los dos nodos

nodo1> systemctl start pcsd.service


nodo1> systemctl enable pcsd.service
ln -s '/usr/lib/systemd/system/pcsd.service'
'/etc/systemd/system/multi-user.target.wants/pcsd.service'

nodo1> systemctl start pcsd.service


nodo1> systemctl enable pcsd.service
ln -s '/usr/lib/systemd/system/pcsd.service'
'/etc/systemd/system/multi-user.target.wants/pcsd.service'
Configuracin de Cluster
Vamos a autenticar los nodos en el cluster. Con el usuario hacluster y el password

nodo1> pcs cluster auth nodo1 nodo2


Username: hacluster
Password:
nodo1: Authorized
nodo2: Authorized
Creacin de Cluster y Registro de nodos al cluster

Ahora vamos a crear el cluster llamado prueba y registro de los nodos al cluster.

nodo1> pcs cluster setup --start --name Prueba nodo1 nodo2


Shutting down pacemaker/corosync services...
Redirecting to /bin/systemctl stop pacemaker.service
Redirecting to /bin/systemctl stop corosync.service
Killing any remaining services...
Removing all cluster configuration files...
nodo1: Succeeded
nodo2: Succeeded
Starting cluster on nodes: nodo1, nodo2...
nodo1: Starting Cluster...
nodo2: Starting Cluster...
Habilitamos los nodos en el cluster

nodo1> pcs cluster enable --all


nodo1: Cluster Enabled
nodo2: Cluster Enabled
Revisamos el status del cluster

nodo1> pcs status


nodo1> pcs cluster status Cluster name: cl_imetdp
Cluster Status: Last updated: Tue Oct 18 10:23:51 2016
Last updated: Tue Oct 18 10:23:32 2016 Last change: Tue Oct 18 10:21:37 2016
Last change: Tue Oct 18 10:21:37 2016 Stack: corosync
Stack: corosync Current DC: nodo2 (2) - partition with quorum
Current DC: nodo2 (2) - partition with Version: 1.1.12-a14efad
quorum 2 Nodes configured
Version: 1.1.12-a14efad 0 Resources configured
2 Nodes configured Online: [ nodo1 nodo2 ]
0 Resources configured Full list of resources:
PCSD Status:
nodo1: Online PCSD Status:
nodo2: Online nodo1: Online
nodo2: Online
Daemon Status:
corosync: active/enabled
pacemaker: active/enabled
pcsd: active/enabled

https://nodename:2224
Creacin de Particin

A continuacin vamos a utilizar lvm en disco compartido (/dev/sdc), esta


configuracin solo se realiza en un solo nodos y despus se realiza un
escaneo (pvscan, vgscan y lvscan) en los nodos restantes para replicar la
configuracin.

Crear Physical Volume, marcarlos como LVM partition (8e)

[root@nodo1~]# pvcreate /dev/sdc

Crear Volume Group, con opciones de cluster

[root@nodo1~]# vgcreate vgcluster /dev/sdc


Crear Logical Volume

[root@nodo1~]# lvcreate -l 100%FREE -n lvcomun vgcluster

Physical Volume Scan para ver si se replica lo creado en el nodo nodo2

[root@nodo2~]# pvscan
PV /dev/sdc VG vgcluster lvm2 [400.00 GiB / 0 free]
PV /dev/sdb1 VG vg_data lvm2 [80.00 GiB / 10.00 GiB free]
PV /dev/sda2 VG vg_root lvm2 [49.80 GiB / 5.80 GiB free]
Total: 3 [529.79 GiB] / in use: 3 [529.79 GiB] / in no VG: 0 [0 ]

Volume Group Scan para ver si se replica lo creado en el nodo nodo2

[root@nodo2~]# vgscan
Reading all physical volumes. This may take a while...
Found volume group "vgcluster" using metadata type lvm2
Found volume group "vg_data" using metadata type lvm2
Found volume group "vg_root" using metadata type lvm2
Logical Volume Scan para ver si se replica lo creado en el nodo Nodo2

[root@nodo2~]# lvscan
ACTIVE '/dev/vgcluster/lvcomun' [400.00 GiB] inherit
ACTIVE '/dev/vg_data/lv_var' [10.00 GiB] inherit
ACTIVE '/dev/vg_data/lv_apachelogs' [30.00 GiB] inherit
ACTIVE '/dev/vg_data/lv_apache24' [10.00 GiB] inherit
ACTIVE '/dev/vg_data/lv_apachedocs' [10.00 GiB] inherit
ACTIVE '/dev/vg_data/lv_tmp' [10.00 GiB] inherit
ACTIVE '/dev/vg_root/lv_root' [35.00 GiB] inherit
ACTIVE '/dev/vg_root/lv_home' [5.00 GiB] inherit
ACTIVE '/dev/vg_root/lv_swap' [4.00 GiB] inherit
Revisamos que el LVM pueda ser montado en los dos nodos

Cremonos una carpeta de prueba

Nodo1> mkdir /mnt/pueba

Nodo2> mkdir /mnt/pueba

Montamos el lvm en la carpeta prueba

Nodo1> mount /dev/vgcluster/lvcomun /mnt/prueba

Nodo2> mount /dev/vgcluster/lvcomun /mnt/prueba


Deshabilitar stonith

Para la configuracin deshabilitamos el stonith y cuando


configuremos el fence volvemos a habilitarlo

nodo1> pcs property set stonith-enabled=false

Revisamos el estado del stonith

nodo1> pcs property show stonith-enabled


Cluster Properties: stonith-enabled: false
Creacin de grupo de servicio y recursos

Creacin de ipvirtual

nodo1> pcs resource create ClusterIP ocf:heartbeat:IPaddr2 ip=10.4.43.183


cidr_netmask=24 op monitor interval=30s --group IME

Iniciamos el recurso de la ip virtual


nodo1> pcs resource enable ClusterIP
Revisamos que la ip vitual este disponible
nodo1> ip a |grep inet
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
inet 10.4.43.182/24 brd 10.4.43.255 scope global dynamic br0
inet 10.4.43.183/24 brd 10.4.43.255 scope global secondary br0
inet6 fe80::84ef:2eff:fee9:260a/64 scope link

Ping a la ip virtual
nodo1> ping 10.4.43.183
PING 10.4.43.183 (192.168.203.190) 56(84) bytes of data.
64 bytes from 10.4.43.183 : icmp_seq=1 ttl=64 time=0.084 ms
64 bytes from 10.4.43.183: icmp_seq=2 ttl=64 time=0.090 ms
nodo1> pcs status
Cluster name: cl_imetdp
Last updated: Tue Nov 16 14:30:58 2016
Last change: Mon Nov 15 14:41:51 2016
Stack: corosync
Current DC: nodo2 (2) - partition with quorum
Version: 1.1.12-a14efad
2 Nodes configured
1 Resources configured

Online: [ nodo1 nodo2 ]

Full list of resources:

Resource Group: IME


ipvirtual (ocf::heartbeat:IPaddr): Started nodo1

PCSD Status:
nodo1: Online
nodo2: Online

Daemon Status:
corosync: active/enabled
pacemaker: active/enabled
pcsd: active/enabled
Instalamos el servidor web
Instale el servidor Apache en ambos nodos.

nodo1> yum install -y httpd wget

Edite el archivo de configuracin.


nodo1> vi /etc/httpd/conf/httpd.conf

Agregue el contenido al final del archivo en todos los nodos del clster.

<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from 127.0.0.1
</Location>
Creacin Filesystem

Ahora necesitamos usar almacenamiento compartido para almacenar el archivo de


contenido web (HTML). Realice la siguiente operacin en cualquiera de los nodos.

nodo1> mount /dev/vgcluster/lvcomun /var/www

nodo1> cd /var/www

nodo1> mkdir errror html cgi-bin

nodo1> vi index.html
<html>
<body>Hola a todos</body>
</html>

nodo1> umount /var/www


Agregamos el nuevo recurso al cluster

nodo1> pcs resource create webfs Filesystem device="/dev/vgcluster/lvcomun


" directory="/var/www" fstype="ext4--group IME

Iniciamos el recurso de la ip virtual

nodo1> pcs resource enable webfs


nodo1> pcs status
Cluster name: cl_imetdp
Last updated: Tue Nov 16 14:30:58 2016
Last change: Mon Nov 15 14:41:51 2016
Stack: corosync
Current DC: nodo2 (2) - partition with quorum
Version: 1.1.12-a14efad
2 Nodes configured
2 Resources configured

Online: [ nodo1 nodo2 ]

Full list of resources:

Resource Group: IME


ipvirtual (ocf::heartbeat:IPaddr): Started nodo1
webfs (ocf::heartbeat:Filesystem): Started nodo1

PCSD Status:
nodo1: Online
nodo2: Online

Daemon Status:
corosync: active/enabled
pacemaker: active/enabled
pcsd: active/enabled
Creacin Servidor apache

Cree un recurso apache que supervisar el estado del servidor apache y mover el
recurso a otro nodo en caso de cualquier fallo.

nodo1> pcs resource create webs apache configfile="/etc/httpd/conf/httpd.conf"


statusurl="http://127.0.0.1/server-status" --group IME

Iniciamos el recurso apache

nodo1> pcs resource enable webs


nodo1> pcs status
Cluster name: cl_imetdp
Last updated: Tue Nov 16 14:30:58 2016
Last change: Mon Nov 15 14:41:51 2016
Stack: corosync
Current DC: nodo2 (2) - partition with quorum
Version: 1.1.12-a14efad
2 Nodes configured
3 Resources configured

Online: [ nodo1 nodo2 ]

Full list of resources:

Resource Group: IME


ipvirtual (ocf::heartbeat:IPaddr): Started nodo1
webfs (ocf::heartbeat:Filesystem): Started nodo1
webs (ocf::heartbeat:apache): Started nodo1

PCSD Status:
nodo1: Online
nodo2: Online

Daemon Status:
corosync: active/enabled
pacemaker: active/enabled
pcsd: active/enabled
Administracion

Movamos los recursos de nodo1 a nodo2 En este caso, no necesitamos mover cada uno
de los recursos manualmente. Slo necesitamos mover el grupo de recursos.

nodo1> pcs resource move IME nodo2

Cmo detener el grupo de recursos del Pacemaker?

nodo1> pcs resource disable IME

Cmo iniciar el grupo de recursos?

nodo1> pcs resource enable IME

Lista de Recursos del cluster

nodo1> pcs resource


Comprobando el estado del nodo.

nodo1> pcs status nodes

utilizar crm_mon para supervisar el estado del clster en tiempo real. Control + C
para terminar
nodo1> crm_mon

Poner en standby un nodo


nodo1> pcs cluster standby nodo2

Habilitar el nodo que estuvo en standby

nodo1> pcs cluster unstandby nodo2

Compruebe la propiedad de clster


nodo1> pcs property list

Archivo de configuracin

Nodo1 > pcs cluster cib


evitar que el recurso se mueva de un nodo a otro.

nodo1> pcs resource defaults resource-stickiness=100

nodo1> pcs resource defaults


resource-stickiness: 100

Configurar orden y preferencia


Los recursos estn agrupados y en orden de creacin, para asegurar el orden de los
servicios es opcional.

nodo1> pcs constraint order webfs then ClusterIP


nodo1> pcs constraint order ClusterIP then webs

Para asignar preferencia al grupo de servicios sobre un nodo (por defecto es


infinito)

nodo1> pcs constraint location IME prefers nodo1=50


nodo1> pcs constraint location IME prefers nodo2=0
Configuracin de Fencing

Habilitamos el stonith
nodo1> pcs property set stonith-enabled=true

Revisamos el estado del stonith


nodo1> pcs property show stonith-enabled
Cluster Properties: stonith-enabled: true

nodo1> pcs config show | grep Properties

Nodo1 > pcs property set stonith-action=poweroff

Revisamos la lista de fence diponibles

nodo1> pcs stonith list

Filtramos el fence que vamos a usar

nodo1> pcs stonith list | grep fence_vmware_soap


Ver lista de servidores

Nodo1 >fence_vmware_soap -z -l vmwareuser -p passwd -a esxhost -o list --ssl-insecure


Creamos el recurso fence en los dos nodos

Nodo1 > pcs stonith create fence_nodo1 fence_vmware_soap ipaddr="esxhost"


login="vmwareuser" passwd="passwd" ssl=1 port="NODO1" action="reboot" ssl_insecure=1
pcmk_host_list="nodo1"

Nodo2 >pcs stonith create fence_nodo2 fence_vmware_soap ipaddr="esxhost"


login="vmwareuser" passwd="passwd" ssl=1 port="NODO2" action="reboot" ssl_insecure=1
pcmk_host_list="nodo2"

Agregamos los niveles de fence a los dos recursos creados

pcs stonith level add 1 nodo1 fence_nodo1


pcs stonith level add 1 nodo2 fence_nodo2

Revisando el status del nodo usando fence_vnware_soap

Nodo1 >fence_vmware_soap -o status -a vcenter.example.com -l cluster-admin -p


<password> -z -n <vm name>
Nodo01 > pcs stonith fence nodo2

Nodo01 > fence nodo stonith_admin --reboot nodename

https://access.redhat.com/solutions/82333
https://access.redhat.com/solutions/917813
https://www.mankier.com/8/fence_vmware_soap
Administracion Web

https://nodo1:2224
De forma predeterminada, no habr ningn clster agregado al portal. Dado que
tenemos un clster configurado, vamos a agregar a esta interfaz web. Haga clic en el
enlace "+ Aadir existente".
Introduzca una de las direcciones IP del nodo del clster y haga clic en "Agregar existente".
Este proceso automticamente extraer la informacin del clster a la interfaz web.

Вам также может понравиться