Instalación y configuración de Veritas Cluster Server (sfha) en GNU/Linux Red Hat

¿Que es Veritas Cluster?

VCS (Veritas cluster server)

Software de clúster de gran disponibilidad desarrollado por Symantec para plataformas UNIX, Linux y Windows.

Una solución de clústeres de sistemas abiertos que elimina el tiempo fuera de servicio planeado e imprevisto, simplifica la consolidación de servidores y permite la administración eficaz de una amplia gama de aplicaciones en entornos de varias plataformas.

Requisitos previos a la instalación:

Configuración de red:

  • Una dirección IP en la VLAN de servicio de las máquinas
  • Dos direcciones IP en la VLAN de heartbeat ( la VLAN en la que estén conectadas las interfaces de heartbeat )

Preparación del sistema operativo Linux

Realizamos un backup del archivo de configuración del GRUB

[root@vcs01 /]#  cp /etc/grub.conf /etc/grub.conf-bck

Editamos el grub añadiendo las siguientes lineas: crashkernel=auto elevator=deadline (Ambos nodos)

Ejemplo:

    kernel /vmlinuz-2.6.32-642.13.1.el6.x86_64 ro root=/dev/mapper/vg_vcs01-lv_root rd_NO_LUKS rd_LVM_LV=vg_vcs01/lv_root  KEYBOARDTYPE=pc KEYTABLE=es rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto elevator=deadline  LANG=es_ES.UTF-8 rd_LVM_LV=vg_vcs01/lv_swap rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-642.13.1.el6.x86_64.img

Activamos la resolución de nombres sólo por fichero (Ambos nodos)

para ello tenemos que modificar el fichero /etc/nsswitch.conf. En  el debemos configurar hosts y networks de la siguiente forma

hosts:          files dns
networks:       files dns

Permitimos el acceso de root directo entre nodos, generando relación de confianza entre ambos:

Debemos permitir el acceso mediante SSH por root sin contraseña, para ello copiamos la clave RSA:

[root@vcs01 ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory ‘/root/.ssh’.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
cf:9e:38:55:ed:3f:b0:a3:18:34:3c:6b:2b:04:fd:99 root@vcs01
The key’s randomart image is:
+–[ RSA 2048]—-+
|                 |
|                 |
|      .      .   |
|     . ..   . .  |
|      . S=o. .   |
|       ..E=  ..  |
|      .  =o   o. |
|       .oo+. o ..|
|        o+o.. . .|
+—————–+

[root@vcs01 ~]# ssh-copy-id -i .ssh/id_rsa.pub root@192.168.1.205
The authenticity of host ‘192.168.1.205 (192.168.1.205)’ can’t be established.
RSA key fingerprint is 07:c1:7d:32:68:37:7d:c4:35:5f:9c:a3:1c:de:fa:13.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added ‘192.168.1.205’ (RSA) to the list of known hosts.
root@192.168.1.205’s password:
Now try logging into the machine, with “ssh ‘root@192.168.1.205′”, and check in:

.ssh/authorized_keys

to make sure we haven’t added extra keys that you weren’t expecting.

 

Agregamos en el fichero /etc/hosts los servidores.  (Ambos servidores)

[root@vcs01 ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.1.200 vcs01 vcs01.redorbita.com
192.168.1.205 vcs02 vcs02.redorbita.com

 

Instalar los paquetes necesarios

[root@vcs01 /]#  yum install bc coreutils ed findutils glibc.x86_64 glibc.i686 kmod-oracleasm.x86_64 kmod-rtsx_pci.x86_64 ksh libacl.i686 libacl.x86_64 libgcc.x86_64 libgcc.i686 libstdc++.x86_64 libstdc++.i686 ncurses-libs nss-softokn-freebl.i686 nss-softokn-freebl.x86_64 pam parted pcre policycoreutils xz-libs pam.i686 perl.x86_64

Configuramos el iscsi (Ambos nodos)

[root@vcs01 /]#  yum -y install iscsi-initiator-utils

 

Iniciamos el servicio y lo añadimos al arranque

[root@vcs01 /]#  service iscsi start
[root@vcs01 /]#  chkconfig iscsi on

mediante el comando iscsiadm utilizamos el descubrimiento de iSCSI

[root@vcs01 /]#  iscsiadm -m discovery -t st -p 192.168.1.20
192.168.1.20,1 iqn.2013-07.com.purestorage:flasharray
192.168.1.21:3260,1 iqn.2013-07.com.purestorage:flasharray
192.168.1.22:3260,1 iqn.2013-07.com.purestorage:flasharray
192.168.1.23:3260,1 iqn.2013-07.com.purestorage:flasharray
192.168.1.24:3260,1 iqn.2013-07.com.purestorage:flasharray
192.168.1.25:3260,1 iqn.2013-07.com.purestorage:flasharray
192.168.1.26:3260,1 iqn.2013-07.com.purestorage:flasharray
192.168.1.27:3260,1 iqn.2013-07.com.purestorage:flasharray

Realizamos la conexión

[root@vcs01 /]#  iscsiadm -m node -L automatic

Rescaneamos

[root@vcs01 /]#  iscsiadm -m session –rescan

 

Instalación Veritas Cluster Server (En solo un nodo)

Descomprimimos el software

[root@vcs01 ~]# tar xvf VRTS_SF_HA_Solutions_6.1_RHEL.tar.gz

Accedemos a la carpeta

[root@vcs01 ~]# cd dvd1-redhatlinux/rhel6_x86_64/

*NOTA: para las personas las cuales quieran instalarlo en CentOS 6 tienen que configurar el archivo redhat-release de la siguiente forma:

[root@vcs01 ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.*Santiago

 

Ejecutamos el script de instalación

[root@vcs01 rhel6_x86_64]# ./installer

Inicia el asistente de instalación y presionamos I para comenzar a instalar

Seleccionamos la opción 4 (Symantec Storage Foundation and High Availability (SFHA) ) y aceptamos los términos de licencia.

Instalamos todos los paquetes (opción 3) y añadimos los diferentes nodos de vuestro cluster separado por un espacio.

Realiza los chequeos de dependencias (En mi caso me faltaba por instalar el pam y el perl)

Verifica el sistema. 

Muestra un listado de todos los paquetes que instalará.

Comienza a instalar todo el software.

Dado que esto es un laboratorio y no dispongo de licencia voy a seleccionar la opción 2.

Escogemos la versión que queremos, yo en mi caso SF Standard HA (1), No queremos replicación y añadimos que si queremos empezar a configurar el Cluster.

Seleccionamos un nombre para nuestro Cluster

Configuramos la interfaz de Hearbeat, Opción 4.

Añadimos el ID por defecto que nos indica.

Nos lista las tarjetas de red, si la información es correcta Y

Configuramos la interfaz de red

Aceptamos si el direccionamiento es correcto.

Nos pregunta si queremos configurar VCS en modo seguro, indicamos que NO.

Creamos el usuario

Si los datos son correctos aceptamos.

En mi caso no quiero notificaciones SMTP, por lo tanto NO

Para el proceos SFHA

Nos da la opción de configurar el Fence,  nos vamos a salir del asistente de configuración y vamos a pasar a configurar los recursos de cluster mediante comandos.

Vemos el estado de los discos

[root@vcs01 /]#  vxdisk -e list
DEVICE       TYPE           DISK        GROUP        STATUS               OS_NATIVE_NAME   ATTR
aluadisk0_1  auto:none      –            –           online invalid       sdc              –
sda          auto:LVM       –            –           online invalid       sda              –

Inicializamos la ALUA:

[root@vcs01 /]#  /etc/vx/bin/vxdisksetup -i aluadisk0_1 format=cdsdisk

[root@vcs01 /]# vxdisk -e list
DEVICE       TYPE           DISK        GROUP        STATUS               OS_NATIVE_NAME   ATTR
aluadisk0_1  auto:cdsdisk   –            –           online               sdc              –
sda          auto:LVM       –            –           online invalid       sda

Creamos el Disk group asociado a la aluna aluadisk0_1

[root@vcs01 /]#  vxdg init vcsvol disk1vcsvol=aluadisk0_1

Creamos el LV y le damos formato

[root@vcs01 /]#  vxassist -g vcsvol make lvnfs 500M

[root@vcs01 /]#  mkfs -t ext4 /dev/vx/dsk/vcsvol/lvnfs

Configurar los recursos:

Creamos el servicio:

[root@vcs01 /]# haconf -makerw

[root@vcs01 /]#  hagrp -add Clusthttpd

[root@vcs01 /]#  hagrp -modify Clusthttpd SystemList vcs01 0 vcs02 1

[root@vcs01 /]#  hagrp  -modify Clusthttpd AutoStartList vcs01

Configuramos la IP de cluster:

[root@vcs01 /]#  hares -add Clusthttpd-vip IP Clusthttpd
[root@vcs01 /]#  hares -modify Clusthttpd-vip Device eth0
[root@vcs01 /]#  hares -modify Clusthttpd-vip Address “192.168.1.191”
[root@vcs01 /]#  hares -modify Clusthttpd-vip NetMask “255.255.255.0”
[root@vcs01 /]#  hares -modify Clusthttpd-vip Enabled 1

Creamos el recurso del volumen.

[root@vcs01 /]# hares -add Clusvol Mount Clusthttpd
[root@vcs01 /]# hares -modify Clusvol  Critical 0
[root@vcs01 /]# hares -modify Clusvol BlockDevice /dev/vx/dsk/vcsvol/lvnfs
[root@vcs01 /]# hares -modify Clusvol MountPoint /data
[root@vcs01 /]# hares -modify Clusvol FSType ext4
[root@vcs01 /]# hares -modify Clusvol  FsckOpt %-y
[root@vcs01 /]# hares -modify Clusvol Enabled 1

Ahora falta agregarle el proceso, en mi caso voy a configurar un apache

[root@vcs01 /]# hares -add  httpd Apache  Clusthttpd
[root@vcs01 /]# hares -modify httpd Critical 0
[root@vcs01 /]# hares -modify httpd httpdDir /usr/sbin
[root@vcs01 /]# hares -modify httpd PidFile /var/run/httpd/httpd.pid
[root@vcs01 /]# hares -modify httpd ConfigFile /etc/httpd/conf/httpd.conf
[root@vcs01 /]# hares -modify httpd EnvFile /etc/sysconfig/httpd

Inicializamos los servicios

[root@vcs01 ~]# hares -modify httpd  Enabled 1
[root@vcs01 ~]# hares -modify Clusthttpd-vip  Enabled 1
[root@vcs01 ~]# hares -modify Clusvol  Enabled 1

Linkeamos los recursos

[root@vcs01 /]# hares -link Clusvol Clusthttpd-vip
[root@vcs01 /]# hares -link httpd Clusvol

Guardamos la configuración

[root@vcs01 /]# haconf -dump -makero

Iniciamos el servicio

[root@vcs01 /]# hagrp -online Clusthttpd -sys vcs01

Comprobamos que inicia correctamente

[root@vcs01 ~]# hastatus -sum

— SYSTEM STATE
— System               State                Frozen

A  vcs01                RUNNING              0
A  vcs02                RUNNING              0

— GROUP STATE
— Group           System               Probed     AutoDisabled    State

B  ClusterService  vcs01                Y          N               ONLINE
B  ClusterService  vcs02                N          N               OFFLINE
B  Clusthttpd      vcs01                Y          N               ONLINE
B  Clusthttpd      vcs02                N          N               OFFLINE

— RESOURCES FAILED
— Group           Type                 Resource             System

D  ClusterService  NIC                  csgnic               vcs02

— RESOURCES NOT PROBED
— Group           Type                 Resource             System

E  ClusterService  IP                   webip                vcs02
E  Clusthttpd      IP                   Clusthttpd-vip       vcs02

Intentamos balancear los dos recursos para comprobar que funciona correctamente:

[root@vcs01 /]#  hagrp -switch  ClusterService -to vcs02

[root@vcs01 /]#  hagrp -online Clusthttpd -sys vcs02

En mi caso me dio un error al balancear el recurso, el cual indicaba que en el vcs02 no encontraba el disco: /dev/vx/dsk/vcsvol/lvnfs

Para solventar esto ejecute los siguientes comandos en el vcs02:

[root@vcs01 /]#  vxdisk clearimport vcsvol

[root@vcs01 /]#  vxdg -C import vcsvol

[root@vcs01 /]#  vxdg -f import vcsvol

Una vez ejecutado me dejo balancear el recurso al nodo vcs02

[root@vcs01 /]# hastatus -sum

— SYSTEM STATE
— System               State                Frozen

A  vcs01                RUNNING              0
A  vcs02                RUNNING              0

— GROUP STATE
— Group           System               Probed     AutoDisabled    State

B  ClusterService  vcs01                Y          N               OFFLINE
B  ClusterService  vcs02                Y          N               ONLINE
B  Clusthttpd      vcs01                Y          N               OFFLINE
B  Clusthttpd      vcs02                Y          N               ONLINE
[root@vcs01 ~]# hastatus -sum

— SYSTEM STATE
— System               State                Frozen

A  vcs01                RUNNING              0
A  vcs02                RUNNING              0

— GROUP STATE
— Group           System               Probed     AutoDisabled    State

B  ClusterService  vcs01                Y          N               OFFLINE
B  ClusterService  vcs02                Y          N               ONLINE
B  Clusthttpd      vcs01                Y          N               OFFLINE
B  Clusthttpd      vcs02                Y          N               ONLINE

Un saludo.

:wq!

One thought on “Instalación y configuración de Veritas Cluster Server (sfha) en GNU/Linux Red Hat

  1. Pingback: Instalación y configuración de Veritas Cluster Server (sfha) en GNU/Linux Red Hat | PlanetaLibre

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*