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

Definición del archivo de registro del tipo de recurso

El archivo de registro del tipo de recurso (RTR) de este ejemplo define la configuración estática del tipo de recurso de DNS. Los recursos de este tipo heredan las propiedades definidas en el archivo RTR.

RGM lee la información del archivo RTR cuando el administrador del clúster registra el servicio de datos de HA-DNS.

Información general del archivo RTR

El archivo RTR sigue un formato bien definido. Las propiedades del recurso se definen primero en el archivo; después se definen las propiedades del recurso definidas por el sistema; finalmente, se definen las propiedades de extensión. Consulte la página de comando man drt_reg(4) y Establecimiento del recurso y las propiedades del tipo de recurso para obtener más información.

Esta sección describe las propiedades específicas del archivo RTR de ejemplo. Proporciona listados de partes diferentes del archivo. Para un listado completo del contenido del archivo RTR de ejemplo, consulte Listado del archivo de registro del tipo de recurso.

Propiedades de tipo en el archivo RTR de ejemplo

El archivo RTR de ejemplo empieza con comentarios, seguidos de las propiedades del tipo de recurso que definen la configuración de HA-DNS, como se muestra en la lista siguiente.

#
# Copyright (c) 1998-2004 by Sun Microsystems, Inc.
# Reservados todos los derechos.
#
# Información de registro del servicio de nombres de dominio (DNS)
#

#pragma ident   “@(#)SUNW.sample   1.1   00/05/24 SMI”

RESOURCE_TYPE = “sample”;
VENDOR_ID = SUNW;
RT_DESCRIPTION = “Servicio de nombres de dominio en Sun Cluster”;

RT_VERSION =”1.0”;
API_VERSION = 2;
FAILOVER = TRUE;

RT_BASEDIR=/opt/SUNWsample/bin;
PKGLIST = SUNWsample;

START         =   dns_svc_start;
STOP          =   dns_svc_stop;

VALIDATE      =   dns_validate;
UPDATE        =   dns_update;

MONITOR_START =   dns_monitor_start;
MONITOR_STOP  =   dns_monitor_stop;
MONITOR_CHECK =   dns_monitor_check;

Consejo –

Debe declarar la propiedad Resource_type como la primera entrada del archivo RTR, de lo contrario, el registro del tipo de recurso no será satisfactorio.



Nota –

RGM no diferencia entre mayúsculas y minúsculas en los nombres de las propiedades. La convención para las propiedades en los archivos RTR suministrados por Sun, salvo los nombres de métodos, es la utilización de mayúscula en el inicio del nombre y minúscula en el resto. Los nombres de métodos (y los atributos de las propiedades) contienen sólo mayúsculas.


A continuación se incluye alguna información sobre estas propiedades.

Las propiedades del tipo de recurso que no se especifican en este archivo RTR, como Single_instance, Init_nodes y Installed_nodes tienen su valor predeterminado. Consulte la Tabla A–1 para ver una lista completa de las propiedades del tipo de recurso, incluidos sus valores predeterminados.

El administrador del clúster no puede cambiar los valores especificados para las propiedades del tipo de recurso en el archivo RTR.

Propiedades del recurso en el archivo RTR de ejemplo

Por convención, las propiedades del recurso se declaran de acuerdo con las del tipo de recurso del archivo RTR; incluyen las propiedades definidas por el sistema, proporcionadas por Sun Cluster, y las propiedades de extensión definidas por el usuario. Para ambos tipo se pueden especificar varios atributos de propiedad proporcionados por Sun Cluster, como valores mínimo, máximo y predeterminado.

Propiedades definidas por el sistema en el archivo RTR

La lista siguiente muestra las propiedades definidas por el sistema en el archivo RTR de ejemplo.

# Una lista de declaraciones de propiedades del recurso entre llaves
# sigue a las declaraciones del tipo de recurso. La declaración del nombre de propiedad
# debe ser el primer atributo tras la llave abierta de cada entrada.

# Las propiedades <método>_timeout establecen el valor en segundos tras el cual
# RGM determina que la llamada del método no ha sido satisfactoria.

# El valor MIN para todos los tiempos de espera de los métodos es de 60 segundos.
# Así se impide que los administradores definan tiempos de espera menores, que no mejoran
# el rendimiento de las operaciones de conmutación/recuperación de fallos y pueden provocar
# acciones indeseadas de RGM (recuperaciones de fallos falsas, rearranque de nodo o
# desplazamiento del grupo de recursos a un estado ERROR_STOP_FAILED que requiera la
# intervención de un operador). Definir tiempos de espera demasiado cortos provoca una
# *disminución* en la disponibilidad global del servicio de datos.
{
   PROPERTY = Start_timeout;
   MIN=60;
   DEFAULT=300;
}

{
   PROPERTY = Stop_timeout;
   MIN=60;
   DEFAULT=300;
}
{
        PROPERTY = Validate_timeout;
        MIN=60;
        DEFAULT=300;
}
{
        PROPERTY = Update_timeout;
        MIN=60;
        DEFAULT=300;
}
{
        PROPERTY = Monitor_Start_timeout;
        MIN=60;
        DEFAULT=300;
}
{
        PROPERTY = Monitor_Stop_timeout;
        MIN=60;
        DEFAULT=300;
}
{
        PROPERTY = Thorough_Probe_Interval;
        MIN=1;
        MAX=3600;
        DEFAULT=60;
        TUNABLE = ANYTIME;
}

# El número de reintentos que se va a realizar en un determinado periodo antes de
# determinar que la aplicación no se puede iniciar satisfactoriamente en este nodo.
{
        PROPERTY = Retry_Count;
        MIN=0;
        MAX=10;
        DEFAULT=2;
        TUNABLE = ANYTIME;
}

# Definir Retry_Interval como múltiplo de 60, porque se convierte de segundos
# a minutos, en un redondeo. Por ejemplo, un valor de 50 (segundos)
# se convierte en 1 minuto. Utilizar esta propiedad para cronometrar el número
# de reintentos (Retry_Count).
{
        PROPERTY = Retry_Interval;
        MIN=60;
        MAX=3600;
        DEFAULT=300;
        TUNABLE = ANYTIME;
}

{
        PROPERTY = Network_resources_used;
        TUNABLE = AT_CREATION;
        DEFAULT = ““;
}

Aunque Sun Cluster proporciona las propiedades definidas por el sistema, es posible definir diferentes valores predeterminados con los atributos de propiedades del recurso. Consulte Atributos de las propiedades de recursos para ver una lista completa de los atributos disponibles para aplicarlos a las propiedades del recurso.

Tenga presente lo siguiente sobre las propiedades de los recursos definidas por el sistema en el archivo RTR de ejemplo:

Propiedades de extensión en el archivo RTR

Al final del archivo RTR de ejemplo se encuentran las propiedades de extensión:

# Propiedades de extensión

# El administrador del clúster debe definir el valor de esta propiedad para que apunte al
# directorio que contiene los archivos de configuración que utiliza la aplicación.
# Para esta aplicación, DNS, la ruta del archivo de configuración de DNS se especifica en
# PXFS (normalmente, named.conf).
{
   PROPERTY = Confdir;
   EXTENSION;
   STRING;
   TUNABLE = AT_CREATION;
   DESCRIPTION = “La ruta al directorio de configuración”;
}

# Valor de tiempo de espera en segundos, antes de declarar que el análisis no ha sido
# satisfactorio.
{
        PROPERTY = Probe_timeout;
        EXTENSION;
        INT;
        DEFAULT = 120;
        TUNABLE = ANYTIME;
        DESCRIPTION = “Valor de tiempo de espera del análisis (segundos)”;
}

El archivo RTR de ejemplo define dos propiedades de extensión, Confdir y Probe_timeout. La primera especifica la ruta al directorio de configuración de DNS que contiene el archivo in.named necesario para que el DNS funcione satisfactoriamente. Los métodos Start y Validate del servicio de datos de ejemplo utilizan esta propiedad para verificar que el directorio de configuración y el archivo in.named sean accesibles antes de iniciar el DNS.

Cuando el servicio de datos está configurado, el método Validate verifica si el nuevo directorio es accesible.

El método PROBE del servicio de datos de ejemplo no es un método de rellamada de Sun Cluster, sino un método definido por el usuario. Por tanto, Sun Cluster no proporciona una propiedad Probe_timeout para él. El desarrollador ha definido una propiedad de extensión en el archivo RTR para permitir que un administrador del clúster configure un valor Probe_timeout.