Las siguientes subsecciones proporcionan una breve información general sobre cada una de las categorías de las funciones de DSDL. Sin embargo, las páginas de comando man de 3HA son la referencia definitiva para las funciones de DSDL.
Las funciones de esta sección proporcionan una amplia gama de posibilidades; Estas funciones le permiten realizar las siguientes operaciones:
Inicializar el entorno de DSDL
Recuperar recursos, tipos y nombres de grupos de recursos y valores de propiedades de extensión
Recuperaciones de fallos y reiniciar un grupo de recursos y un recurso
Convertir secuencias de errores en mensajes de error
Ejecutar un comando tras un tiempo de espera
Las funciones siguientes inicializan el método de llamada:
scds_initialize(3HA) – asigna recursos e inicia el entorno DSDL.
scds_close( 3HA) – libera recursos asignados por scds_initialize.
Las funciones siguientes recuperan información sobre recursos, tipos y grupos de recursos y propiedades de extensión:
scds_get_resource_name(3HA) – recupera el nombre del recurso para el programa que llama.
scds_get_resource_type_name(3HA) – recupera el nombre del tipo de recurso para el programa que llama.
scds_get_resource_group_name(3HA) – recupera el nombre del grupo de recursos para el programa que llama.
scds_get_ext_property(3HA) – recupera el valor de la propiedad de extensión especificada.
scds_free_ext_property(3HA) – libera memoria asignada por scds_get_ext_property.
La función siguiente recupera información del estado de los recursos de SUNW.HAStoragePlus que utiliza un recurso.
scds_hasp_check(3HA) – recupera información de estado acerca de los recursos SUNW.HAStoragePlus(5) usados por un recurso. Esta información se obtiene del estado (en línea o no) de todos los recursos de SUNW.HAStoragePlus de los que depende el recurso usando las propiedades de sistema Resource_dependencies o Resource_dependencies_weak definidas para el recurso.
Las funciones siguientes realizan operaciones de recuperación de fallos o reinician un recurso o grupo de recursos:
scds_failover_rg(3HA) – permite la recuperación de fallos de un grupo de recursos.
scds_restart_rg(3HA) – reinicia un grupo de recursos.
scds_restart_resource(3HA) – reinicia un recurso.
Las siguientes funciones ejecutan un comando tras un tiempo de espera y convierten un código de error en un mensaje de error:
scds_timerun( 3HA) – ejecuta un comando tras un tiempo de espera especificado.
scds_error_string(3HA) – convierte un código de error en una cadena de error.
Estas funciones proporcionan API convenientes para acceder a las propiedades específicas del recurso, grupos y tipos de recursos, incluidas algunas propiedades de extensión utilizadas frecuentemente. DSDL proporciona la función scds_initialize para analizar los argumentos de la línea de comandos. La biblioteca intercepta entonces las diversas propiedades del recurso, grupo de recursos y tipo de recursos.
scds_property_functions(3HA) describe estas funciones. Entre estas funciones se incluyen:
scds_get_rs_nombre_propiedad
scds_get_rg_nombre_propiedad
scds_get_rt_nombre_propiedad
scds_get_ext_nombre_propiedad
Las funciones enumeradas en esta sección recuperan, imprimen y liberan recursos de red empleados por recursos y grupos de recursos. Las funciones scds_get_* de esta sección proporcionan una forma conveniente de recuperar recursos de red sin necesidad de consultar propiedades específicas, como Network_resources_used y Port_list con las funciones de RMAPI. Las funciones scds_print_nombre() imprimen valores de las estructuras de datos devueltas por las funciones scds_get_nombre(). Las funciones scds_free_nombre() liberan la memoria asignada por las funciones scds_get_nombre().
Entre las funciones que gestionan los nombres de sistema se incluyen:
scds_get_rg_hostnames(3HA) – recupera una lista de nombres de sistema usados por los recursos de red de un grupo de recursos.
scds_get_rs_hostnames(3HA) – recupera una lista de nombres de sistema usados por el recurso.
scds_print_net_list(3HA) – imprime el contenido de la lista de nombres de sistema devueltos por scds_get_rg_hostnames() o scds_get_rs_hostnames().
scds_free_net_list(3HA) – libera memoria asignada por scds_get_rg_hostnames() o scds_get_rs_hostnames ().
Entre las funciones que gestionan las listas de puertos se incluyen:
scds_get_port_list(3HA) – recupera una lista de pares puerto-protocolo que usa un recurso.
scds_print_port_list(3HA) – imprime el contenido de la lista de pares puerto-protocolo devueltos por scds_get_port_list ().
scds_free_port_list(3HA) – libera memoria asignada por scds_get_port_list().
Entre las funciones que gestionan las direcciones de red se incluyen:
scds_get_netaddr_list(3HA) – recupera una lista de direcciones de red usadas por un recurso.
scds_print_netaddr_list(3HA) – imprime el contenido de la lista de direcciones de red devueltas por scds_get_netaddr_list .
scds_free_netaddr_list(3HA) – libera memoria asignada por scds_get_netaddr_list.
Las funciones de esta sección habilitan la supervisión basada en TCP. Generalmente, un supervisor de fallos emplea estas funciones para establecer una conexión de zócalo sencilla con un servicio, leer y escribir datos en éste para asegurarse de su estado y desconectarse después de él.
Entre estas funciones se incluyen:
scds_fm_tcp_connect(3HA) – establece una conexión TCP con un proceso que usa sólo direcciones IPv4.
scds_fm_net_connect(3HA) – establece una conexión TCP con un proceso que usa direcciones IPv4 o IPv6.
scds_fm_tcp_read(3HA) – usa una conexión TCP para leer datos desde el proceso que se está supervisando.
scds_fm_tcp_write(3HA) – usa una conexión TCP para escribir datos en el proceso que se está supervisando.
scds_simple_probe(3HA) – analiza un proceso estableciendo y terminando una conexión TCP con el proceso. Esta función gestiona sólo direcciones IPv4.
scds_simple_net_probe(3HA) – analiza un proceso estableciendo y terminando una conexión TCP con el proceso. Esta función gestiona direcciones IPv4 e IPv6.
scds_fm_tcp_disconnect(3HA) – termina la conexión con un proceso que usa direcciones IPv4 y que está siendo supervisado.
scds_fm_net_disconnect(3HA) – termina la conexión con un proceso que usa direcciones IPv4 o IPv6 y que está siendo supervisado.
Estas funciones engloban la funcionalidad PMF. El modelo de DSDL de supervisión a través de PMF crea y emplea valores implícitos de etiqueta para pmfadm(1M). El recurso PMF también emplea valores implícitos para Restart_interval, Retry_count y action_script (las opciones -t, -n y -a en pmfadm). Es más, DSDL vincula el historial de terminación del proceso, como lo encuentra PMF, con el historial de fallos de la aplicación, como lo ha detectado el supervisor de fallos, para calcular la decisión de reinicio o recuperación de fallos.
Entre estas funciones se incluyen:
scds_pmf_get_status(3HA) – determina si la instancia especificada se está supervisando bajo control PMF.
scds_pmf_restart_fm(3HA) – reinicia el monitor predeterminado usando PMF.
scds_pmf_signal(3HA) – envía la señal especificada a un árbol de procesos que se ejecuta bajo control PMF.
scds_pmf_start(3HA) – ejecuta un programa especificado (incluida una supervisión de fallos) bajo control PMF.
scds_pmf_stop( 3HA) – termina un proceso que se está ejecutando bajo control PMF.
scds_pmf_stop_monitoring(3HA) – detiene la supervisión de un proceso que se ejecuta bajo control PMF.
Las funciones de esta sección proporcionan un modelo predeterminado de supervisión de fallos, mediante el mantenimiento del historial de fallos y su evaluación en combinación con las propiedades Retry_count y Retry_interval.
Entre estas funciones se incluyen:
scds_fm_sleep( 3HA) – espera a que se muestre un mensaje acerca de un socket de control de supervisión de fallos.
scds_fm_action(3HA) – realiza acciones después de que se haya completado un análisis.
scds_fm_print_probes(3HA) – escribe información sobre el estado del análisis en el registro de sistema.
Las funciones de esta sección permiten escribir mensajes y depurar mensajes del registro del sistema. Entre estas funciones se incluyen:
scds_syslog( 3HA) – escribe mensajes en el registro de sistema.
scds_syslog_debug(3HA) – escribe un mensaje de depuración de errores en el registro de sistema.