Oracle Clusterware


Oracle Clusterware es el software de clúster multiplataforma necesario para ejecutar la opción Real Application Clusters (RAC) para Oracle Database . Proporciona los servicios de agrupación en clúster básicos a nivel del sistema operativo que permiten que el software de base de datos Oracle se ejecute en modo de agrupación. En versiones anteriores de Oracle (lanzamiento 9i y anteriores), RAC requería un clusterware proporcionado por el proveedor como Sun Cluster o Veritas Cluster Server (excepto cuando se ejecuta en Linux o en Microsoft Windows ).

Oracle Clusterware es el software que permite que los nodos se comuniquen entre sí, lo que les permite formar el grupo de nodos que se comporta como un único servidor lógico. Oracle Clusterware es ejecutado por Cluster Ready Services (CRS) que consta de dos componentes clave: Oracle Cluster Registry (OCR), que registra y mantiene la información de membresía de clústeres y nodos; disco de votación , que sondea para obtener información coherente de los latidos de todos los nodos cuando el clúster se está ejecutando y actúa como un elemento de desempate durante las fallas de comunicación.

El servicio CRS tiene cuatro componentes, cada uno de los cuales maneja una variedad de funciones: Demonio de servicios listos para clúster (CRSd), Demonio de servicio de sincronización de clúster de Oracle (OCSSd), Demonio de administrador de volumen de eventos (EVMd) y Demonio de Oracle Process Clusterware (OPROCd). La falla o muerte del demonio CRS puede causar falla en el nodo , lo que desencadena reinicios automáticos de los nodos para evitar la corrupción de datos (debido a la posible falla de comunicación entre los nodos), también conocido como cercado . El demonio CRS se ejecuta como "root" ( superusuario ) en plataformas UNIX y se ejecuta como servicio en plataformas Windows .

El demonio de Oracle Cluster Synchronization Services (OCSSd) proporciona soporte básico de 'servicios grupales'. Group Services es un sistema de membresía grupal distribuida que permite que las aplicaciones coordinen actividades para lograr un resultado común. Como tal, proporciona servicios de sincronización entre nodos, acceso a la información de pertenencia a los nodos y habilita los servicios de clúster básicos, incluidos los servicios de grupo de clúster y el bloqueo de clústeres. También se puede ejecutar sin integración con el clusterware del proveedor. La falla de OCSSd hace que la máquina se reinicie para evitar una situación de cerebro dividido. Esto también es necesario en una configuración de instancia única si se utiliza la Gestión automática de almacenamiento (ASM). ASM fue una característica nueva en Oracle 10g . OCSSd se ejecuta como usuario "oracle".

El tercer componente de OCS es el demonio Event Volume Management Logger (EVMd). EVMd genera un proceso hijo permanente llamado "evmlogger" y genera eventos. El proceso secundario de EVMd 'evmlogger' genera nuevos procesos secundarios a pedido y escanea el directorio de llamadas para invocar las llamadas. Se reiniciará automáticamente en caso de fallas y la muerte del proceso EVMd no detiene la instancia. EVMd se ejecuta como usuario "oracle".

OPROCd proporciona la solución de cercado de servidores para Oracle Clusterware. Es el monitor de proceso para Oracle Clusterware y utiliza el temporizador de verificación de bloqueo o el temporizador de vigilancia (según la implementación) para la integridad del clúster. OPROCd está bloqueado en la memoria y se ejecuta como un proceso en tiempo real . Duerme durante un tiempo fijo y se ejecuta como usuario "root". La falla del proceso OPROCd hace que el nodo se reinicie. OPROCd es tan importante que incluso está siendo monitoreado por un proceso llamado OCLSOMON y hace que un nodo del clúster se reinicie si OPROCd está bloqueado.