Verificación de la configuración del Cluster con Cluvfy

El utilitario Cluster verification Utility (cluvfy) permite ejecutar validaciones de preinstalación y posinstalación en varias etapas del proceso de instalación de una base RAC. El utilitario cluvfy esta disponible para Oracle 10g Release 2. Para verificar si la configuración del cluster esta lista para la instalación de Oracle Clusterware:

runcluvfy.sh stage -post hwos -n all -verbose

Utilización de particiones raw en Oracle RAC

Si bien las versiones de Linux suelen proveer un LVM (Logical Volume Manager), no siempre soportan clusters. Por esta razón Oracle no soporta el uso de Logical Volumes en RAC.
Para crear las particiones raw requeridas habrá que seguir los siguientes pasos:

1) Instalar los discos compartidos y reiniciar el sistema
2) Identificar los nombres de los dispositivos de disco que se utilizarán para la base:

/sbin/fdisk -l

3) Particionar los dispositivos. Utilice los siguientes lineamientos para la creación de particiones:

  • utilice el comando p para listar la tabla de particiones del dispositivo
  • utilice el comando n para crear una particion
  • utilice el comando w para escribir la modificación en la tabla de particiones del disco

Una vez creadas las particiones, deberá hacerse el bind entre particiones y raw devices:

1) Antes de proceder hay que determinar si ya existen raw devices en esta situación. Para determinarlo ejecutar el siguiente comando:

/usr/bin/raw -qa

Los raw devices tienen nombres del tipo
/dev/raw/rawn donde n es el número que identifica al raw device.

2) Luego habrá que abrir el archivo /etc/sysconfig/rawdevices y agregar una fila por cada partición creada. Por ejemplo:

/dev/raw/raw1 /dev/sda1

especificando raw devices no utilizados para cada partición creada.

3) Para el raw device creado para el Oracle Cluster Registry (OCR) es necesario ejecutar los siguientes comandos a fin de configurar dueño, grupo y permisos del archivo de dispositivo

chown root:dba /dev/raw/rawn
chmod 640 /dev/raw/rawn

4) Por cada raw device especificado en el archivo rawdevices es necesario ejecutar los siguientes comandos a fin de configurar dueño, grupo y permisos de cada archivo de dispositivo

chown oracle:oinstall /dev/raw/rawn
chmod 660 /dev/raw/rawn

5) Por último se hará el binding entre las particiones y los raw devices con la ejecución del siguiente comando:

/sbin/service rawdevices restart

A fin de que el Database Configuration Assistant (DBCA) pueda identificar adecuadamente la particion raw para cada datafile, es necesario crear un archivo de mapeo de raw devices de la siguiente manera:

1) Crear un subdirectorio en el directorio ORACLE_BASE y configurar el dueño, grupo y permisos apropiados:

mkdir -p $ORACLE_BASE/oradata/dbname
chown -R oracle:oinstall $ORACLE_BASE/oradata
chmod -R 775 $ORACLE_BASE/oradata

2) En el directorio dbname crear el archivo dbname_raw.conf y agregarle por ejemplo las siguientes lineas:

SYSTEM=/dev/raw/raw1
SYSAUX=/dev/raw/raw2
TEMP=/dev/raw/raw3
…………
…………

3) Grabar el archivo y configurar la variable de entorno DBCA_RAW_CONFIG especificando el path completo hacia ese archivo.

Obtención del software OCFS

Si se ha decidido utilizar Oracle Cluster File System como parte de la solución RAC, habrá que obtener la versión compilada del producto de http://oss.oracle.com/products/ocfs/
Para el caso de Linux, habrá que obtener e instalar los siguientes packages rpm:

  • ocfs-support-1.0-n.i386.rpm
  • ocfs-tools-1.0-n.i386.rpm

Por último habrá que obtener el modulo kernel ocfs-2.4.21-4typeversion.rpm
(la variable typeversion indica  el tipo y versión de kernel que se utiliza). En RedHat, por ejemplo, para determinar el tipo y versión instalado en su máquina puede ejecutar

uname -a

El identificador alfanumérico que aparece al final del nombre del kernel indica la versión del kernel que se esta utilizando. Obtenga el módulo de kernel que corresponda para esa versión.

Tareas de preinstalación de Oracle Clusterware

Antes de instalar Oracle Clusterware hay que asegurarse de que la combinación sistema operativo y versión del software de Oracle estén certificados. Esto se puede verificar a través de Metalink.
Habrá que verificar también que el interconnect del cluster funcione correctamente.
Por último habrá que decidir la opción de storage a utilizar y configurar el storage compartido. Oracle recomienda utilizar ASM y OMF u Oracle cluster File System. También habrá que mapear los raw devices para el voting file y el OCR file si se decide configurarlos sobre raw devices.

Configuración de parámetros del sistema operativo para Oracle RAC

La configuración de parámetros para el sistema operativo dependerá del sistema operativo con el cual se este trabajando. En el caso de Linux, por ejemplo, puede ver los valores que deben tomar los parámetros haciendo click aqui

Directorios requeridos para el software Oracle

El directorio ORACLE_BASE actúa como directorio de alto nivel a partir del cual se instalan todos los productos de Oracle.

Para los sistemas Unix, la recomendación OFA (Optimal Flexible Architecture) sugiere la siguiente ubicación:

/mount_point/app/oracle_sw_owner

Por ejemplo,

/u01/app/oracle

Para el directorio del inventario Oracle (OraInventory) se recomienda el siguiente path:

$ORACLE_BASE/OraInventory

OUI crea el directorio y lo configura con el dueño, grupo y permisos correspondientes.

Luego viene el directorio HOME para Oracle Clusterware. Allí se instalará todo el software del cluster. El dueño de este directorio debe ser root. OUI solicita especificar el path para este directorio, como asi tambien su nombre. Un nombre recomendado es por ejemplo

/u01/crs1020

Luego viene el directorio ORACLE_HOME. Deberán existir distintos directorios ORACLE_HOME para los distintos productos o releases del mismo producto. Oracle recomienda utilizar un nombre del siguiente tipo:

ORACLE_BASE/product/10.2.0/db_1

Si se utiliza ASM habrá que considerar la creación de un directorio HOME separado para ASM. Por ejemplo

ORACLE_BASE/product/10.2.0/asm

Configuración del ambiente para la instalación remota de Oracle RAC

Oracle Universal Installer (OUI) detecta si el host en el que se está ejecutando OUI es parte del cluster. Si es parte del cluster, propone que se seleccionen aquellos nodos en los que se desea instalar el producto. Para que esto funcione adecuadamente es necesario configurar la equivalencia de usuario a nivel del sistema operativo (user equivalence) para el usuario oracle en cada nodo del cluster.
Para habilitar la equivalencia de usuario hay que asegurarse de que exista el archivo /etc/hosts.equiv en cada nodo. El archivo debe tener una entrada para cada host miembro del cluster. Por ejemplo, si el cluster está compuesto por los nodos nodo1 y nodo2, en ambos servidores deberá existir el archivo /hosts.equiv con las siguientes entradas:
nodo1
nodo2

OUI también soporta ssh y scp (openSSH) para las instalaciones remotas. Para conectarse a un servidor openSSH desde un cliente , deben estar instalados los packages openSSH en la máquina cliente. Para verificar si están instalados:

rpm-qa | grep openssh

Asumiendo que el cluster está compuesto por nodo1 y nodo2 podemos seguir los siguientes pasos para configurar ssh utilizando DSA en el cluster:

  • Con el usuario oracle, crear las claves públicas y privadas en ambos nodos (aceptar las ubicaciones por defecto; y cuando se solicite pass phrase, presionar enter)
    • /user/bin/ssh-keygen -t dsa
  • Concatenar los contenidos del archivo id_dsa.pub de cada nodo en el archivo authorized_keys del primer nodo
  • Copiar el archivo authorized_keys al segundo nodo (misma ubicación que en nodo1)
  • Testear la configuración