Sun Cluster: Guía del desarrollador de los servicios de datos del sistema operativo Solaris

Métodos de rellamada de control e inicialización

Los métodos primarios de rellamada de control e inicialización inician y detienen un recurso. Otros métodos ejecutan un código de inicialización y terminación en un recurso.

Start

Este método obligatorio se invoca en un nodo del clúster cuando el grupo de recursos que contiene el recurso se pone en línea en ese nodo. Este método activa el recurso en ese nodo.

Un método Start no debe salir hasta que el recurso que activa se haya iniciado y esté disponible en el nodo local. Por tanto, antes de salir, el método Start debe interrogar al recurso para determinar si ya se ha iniciado. Se debe establecer un valor de tiempo de espera suficientemente largo para este método. Por ejemplo, algunos recursos, como daemons de base de datos, tardan más tiempo en empezar, por lo que el valor del tiempo de espera de estos métodos debe ser mayor.

La forma en que RGM responde a un fallo del método Start depende de la configuración de la propiedad Failover_mode.

La propiedad START_TIMEOUT del archivo de registro del tipo de recurso establece el valor de tiempo de espera para un método Start de un recurso.

Stop

Este método obligatorio se invoca en un nodo del clúster cuando el grupo de recursos que contiene el recurso se pone fuera de línea en ese nodo. Este método desactiva el recurso si está activo.

Un método Stop no debe salir hasta que el recurso que controla haya detenido completamente toda su actividad en el nodo local y después de que haya cerrado todos los descriptores de archivos. En caso contrario, dado que RGM asume que el recurso se ha detenido, cuando en realidad sigue activo, se puede producir una corrupción de los datos. La forma más segura de evitar que los datos se corrompan es terminar todos los procesos en el nodo local relacionado con el recurso.

Antes de salir, el método Stop deberá interrogar al recurso para determinar si ya se ha detenido. Se debe establecer un valor de tiempo de espera suficientemente largo para este método. Por ejemplo, algunos recursos, como daemons de base de datos, tardan más tiempo en detenerse, por lo que el valor del tiempo de espera de estos métodos debe ser mayor.

La forma en que RGM responde a un fallo del método Stop depende de la configuración de la propiedad Failover_mode (consulte la Tabla A–2).

La propiedad STOP_TIMEOUT del archivo de registro del tipo de recurso establece el valor del tiempo de espera para un método Stop del recurso.

Init

Este método opcional se invoca para realizar una inicialización del recurso una sola vez, cuando éste pase a ser gestionado, tanto cuando el grupo de recursos al que pertenece pasa de un estado no gestionado a un estado gestionado como cuando se crea en un grupo de recursos que ya está gestionado. El método lo invoca en los nodos determinados la propiedad de recurso Init_nodes.

Fini

Este método opcional se invoca para realizar una reorganización detrás del recurso, cuando éste deja de estar gestionado, tanto cuando el grupo de recursos al que pertenece pasa a un estado no gestionado como cuando el recurso se elimina de un grupo de recursos gestionado. El método lo invoca en los nodos determinados la propiedad de recurso Init_nodes.

Boot

Este método opcional, similar a Init, se invoca para inicializar el recurso en los nodos que se unen al clúster después de que el grupo de recursos al que pertenece dicho recurso se haya puesto bajo la gestión de RGM. El método lo invoca en los nodos determinados la propiedad de recurso Init_nodes. El método Boot se invoca cuando el nodo se une o se vuelve a unir al clúster, tras un arranque o un rearranque.


Nota –

Un fallo en los métodos Init, Fini o Boot hace que la función syslog() genere un mensaje de error, pero no afecta de ningún otro modo a la gestión del recurso por parte de RGM.