Oracle Clusterware es el software de clúster multiplataforma necesario para ejecutar la opción Real Application Clusters (RAC) de Oracle Database . Proporciona los servicios básicos de clúster a nivel del sistema operativo que permiten que el software de Oracle Database se ejecute en modo clúster. En versiones anteriores de Oracle (versión 9i y anteriores), RAC requería un software de clúster proporcionado por el proveedor, como Sun Cluster o Veritas Cluster Server (excepto cuando se ejecutaba en Linux o en Microsoft Windows ).
Componentes de Oracle Clusterware
Oracle Clusterware es el software que permite que los nodos se comuniquen entre sí, formando un clúster que se comporta como un único servidor lógico. Oracle Clusterware se ejecuta mediante Cluster Ready Services (CRS), que consta de dos componentes clave: Oracle Cluster Registry (OCR), que registra y mantiene la información de pertenencia al clúster y a los nodos; y el disco de votación , que consulta la información de latidos de todos los nodos mientras el clúster está en funcionamiento y actúa como desempate en caso de fallos de comunicación.
El servicio CRS tiene cuatro componentes, cada uno de los cuales gestiona diversas funciones: el demonio Cluster Ready Services (CRSd), el demonio Oracle Cluster Synchronization Service (OCSSd), el demonio Event Volume Manager (EVMd) y el demonio Oracle Process Clusterware (OPROCd). Un fallo o la caída del demonio CRS puede provocar un fallo en un nodo , lo que desencadena reinicios automáticos de los nodos para evitar la corrupción de datos (debido a un posible fallo de comunicación entre ellos), también conocido como fencing . El demonio CRS se ejecuta como "root" ( superusuario ) en plataformas UNIX y como un servicio en plataformas Windows .
CRSd
El demonio Oracle Cluster Ready Services (CRSd) proporciona las siguientes funciones:
- CRS se instala y se ejecuta desde un ORACLE_HOME diferente, conocido como ORA_CRS_HOME, que es independiente de ORACLE_HOME.
- CRSd gestiona los recursos, como iniciar y detener los servicios y gestionar la conmutación por error de los recursos de la aplicación. Para ello, crea procesos independientes que gestionan dichos recursos.
- El demonio CRS tiene dos modos de ejecución: durante el arranque y después de un apagado. Durante el arranque planificado del software de clúster, se inicia en modo de reinicio. Tras un apagado no planificado, se inicia en modo de reinicio.
- En el modo de reinicio, inicia automáticamente todos los recursos bajo su gestión. En el modo de reinicio, mantiene el estado anterior y restaura los recursos a su estado anterior al apagado.
- Administra el Registro de clúster de Oracle y almacena el estado actual conocido en el Registro de clúster de Oracle.
- Se ejecuta como 'root' en sistemas Unix y como 'LocalSystem' en Windows, y se reinicia automáticamente en caso de fallo.
- CRS requiere la interfaz pública, la interfaz privada y la IP virtual (VIP) para su funcionamiento. Todas estas interfaces deben estar activas y en funcionamiento, y deben poder comunicarse entre sí mediante ping antes de iniciar la instalación de CRS. Sin la infraestructura de red mencionada, no se puede instalar CRS.
OCSSd
El demonio Oracle Cluster Synchronization Services (OCSSd) proporciona soporte básico para servicios de grupo. Los servicios de grupo son un sistema distribuido de pertenencia a grupos que permite a las aplicaciones coordinar actividades para lograr un resultado común. Por lo tanto, proporciona servicios de sincronización entre nodos, acceso a la información de pertenencia a nodos y habilita servicios básicos de clúster, incluidos los servicios de grupo de clúster y el bloqueo de clúster. También puede ejecutarse sin integración con software de clúster de proveedores. Un fallo de OCSSd provoca el reinicio de la máquina para evitar una situación de división de clúster. Esto también es necesario en una configuración de instancia única si se utiliza Automatic Storage Management (ASM). ASM fue una nueva característica de Oracle 10g . OCSSd se ejecuta como el usuario "oracle".
El demonio de servicios de sincronización de clúster de Oracle (OCSSd) proporciona las siguientes funciones:
- 'Group Services' utiliza los servicios de grupo de clusterware proporcionados por el proveedor cuando estos están disponibles, pero también es capaz de funcionar de forma independiente si no lo están.
- 'Lock Services' proporciona las funciones básicas de bloqueo de serialización en todo el clúster y utiliza un mecanismo FIFO para gestionar el bloqueo.
- 'Node Services' utiliza OCR para almacenar datos de estado y actualiza la información durante la reconfiguración. También gestiona los datos de OCR, que de otro modo serían estáticos.
EVMd
El tercer componente de OCS es el demonio Event Volume Management Logger (EVMd). EVMd crea un proceso hijo permanente llamado "evmlogger" y genera eventos. Este proceso hijo crea nuevos procesos hijos bajo demanda y examina el directorio de llamadas para invocarlas. Se reinicia automáticamente en caso de fallos, y la finalización del proceso EVMd no detiene la instancia. EVMd se ejecuta como el usuario "oracle".
OPROCd
OPROCd proporciona la solución de aislamiento de servidores para Oracle Clusterware. Es el monitor de procesos de Oracle Clusterware y utiliza el temporizador de comprobación de bloqueo o el temporizador de vigilancia (según la implementación) para garantizar la integridad del clúster. OPROCd se bloquea en la memoria y se ejecuta como un proceso en tiempo real . Este proceso se suspende durante un tiempo fijo y se ejecuta como el usuario "root". Un fallo en el proceso OPROCd provoca el reinicio del nodo. OPROCd es tan importante que incluso está siendo monitorizado por un proceso llamado OCLSOMON, que provoca el reinicio de un nodo del clúster si OPROCd se bloquea.
Referencias
- Guía de administración e implementación de software en clúster
Enlaces externos
- Guía del administrador de Oracle Real Application Clusters
- Manual de Oracle Database 10g Real Application Clusters - Oracle Press
- Cómo usar srvctl para administrar su base de datos RAC 10g : incluye una descripción de los componentes de Oracle Clusterware.
- Software Oracle
- computación en clúster