En este capítulo se enumeran y describen brevemente las funciones de la API de la Biblioteca de desarrollo del servicio de datos (DSDL). Consulte las páginas de comando man individuales de 3HA para ver una descripción completa de cada una de las funciones de DSDL. DSDL ofrece sólo una interfaz C. No hay disponible una interfaz de DSDL basada en secuencias de comandos.
En este capítulo se tratan los temas siguientes:
Las funciones de esta sección proporcionan una amplia gama de usos. Estas funciones le permiten realizar las siguientes operaciones:
Inicializar el entorno de DSDL
Recuperar los nombres de grupos de recursos, tipos de recursos y recursos, y los valores de propiedades de extensión
Efectuar una recuperación ante fallos y un reinicio de un grupo de recursos y un recurso
Convertir secuencias de errores en mensajes de error
Ejecutar una orden tras un tiempo de espera
Las funciones siguientes inicializan el método de llamada:
scds_initialize(3HA): asigna recursos e inicializa el entorno de 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_type_name(3HA): recupera el nombre del tipo de recurso del programa que realiza la llamada.
scds_get_resource_name(3HA): recupera el nombre del tipo de recurso del programa que realiza la llamada.
scds_get_resource_group_name(3HA): recupera el nombre del grupo de recurso del programa que realiza la llamada.
scds_get_ext_property(3HA): recupera el valor de la propiedad de extensión especificada.
scds_free_ext_property(3HA): libera la 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 la información de estado acerca de los recursos de SUNW.HAStoragePlus utilizados por un recurso. Esta información se obtiene del estado (en línea o no) de todos los recursos de SUNW.HAStoragePlus del que depende el recurso, con las propiedades de sistema Resource_dependencies o Resource_dependencies_weak definidas para el recurso. Consulte la página de comando man SUNW.HAStoragePlus(5) para obtener más información.
Las funciones siguientes realizan operaciones de recuperación de fallos o reinician un recurso o grupo de recursos:
scds_failover_rg(3HA): efectúa una recuperación ante 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 bajo un valor de tiempo de espera.
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 almacena en caché las diversas propiedades del tipo de recurso, el recurso y el grupo de recursos pertinentes.
La página de comando man scds_property_functions(3HA) describe estas funciones, entre las que se incluyen:
scds_get_rt_property-name
scds_get_rs_property-name
scds_get_rg_property-name
scds_get_ext_property-name
Las funciones mostradas en esta sección recuperan, imprimen y liberan los recursos de red utilizados por los recursos y grupos de recursos. La función scds_get_ incluida en esta sección proporciona una forma cómoda de recuperar recursos de red sin utilizar las funciones de RMAPI para consultar las propiedades específicas como, por ejemplo, Network_resources_used y Port_list. Los valores de impresión de las funciones, scds_print_name(), de las estructuras de datos son devueltos por las funciones scds_get_name (). Las funciones scds_free_name () liberan la memoria asignada por las funciones scds_get_ name().
Las siguientes funciones administran los nombres de host:
scds_get_rs_hostnames(3HA): recupera la lista de nombres de host utilizados por el recurso.
scds_get_rg_hostnames(3HA): recupera la lista de nombres de host utilizados por los recursos de red de un grupo de recursos.
scds_print_net_list(3HA): imprime el contenido de la lista de nombres de host devuelta por scds_get_rs_hostnames () o scds_get_rg_hostnames().
scds_free_net_list(3HA): libera la memoria asignada por scds_get_rs_hostnames() o scds_get_rg_hostnames().
Las siguientes funciones administran las listas de puertos:
scds_get_port_list(3HA): recupera una lista de pares de puerto y protocolo utilizados por un recurso.
scds_print_port_list(3HA):imprime el contenido de la lista de pares de puerto y protocolo devuelta por scds_get_port_list().
scds_free_port_list(3HA): libera la memoria asignada por scds_get_port_list().
Las siguientes funciones administran las direcciones de red:
scds_get_netaddr_list(3HA): recupera una lista de direcciones de red utilizadas por un recurso.
scds_print_netaddr_list(3HA): imprime el contenido de la lista de direcciones de red devuelta por scds_get_netaddr_list().
scds_free_netaddr_list(3HA): libera la memoria asignada por scds_get_netaddr_list().
Las funciones de esta sección habilitan la supervisión basada en TCP. Normalmente, un supervisor de fallos utiliza estas funciones para establecer una conexión simple de socket a un servicio, leer y escribir datos en el servicio para determinar su estado, o desconectarse del servicio.
Entre estas funciones, se incluyen:
scds_fm_tcp_connect(3HA): establece una conexión TCP a un proceso que utiliza únicamente la asignación de direcciones IPv4.
scds_fm_net_connect(3HA): establece una conexión TCP a un proceso que utiliza la asignación de direcciones IPv4 o IPv6.
scds_fm_tcp_read(3HA): utiliza una conexión TCP para leer los datos del proceso que se está supervisando.
scds_fm_tcp_write(3HA): utiliza una conexión TCP para escribir datos en el proceso que se está supervisando.
scds_simple_probe(3HA): establece y finaliza una conexión TCP al proceso para analizarlo. Esta función administra sólo direcciones IPv4.
scds_simple_net_probe(3HA): establece y finaliza una conexión TCP al proceso para analizarlo. Esta función administra direcciones IPv4 o IPv6.
scds_fm_tcp_disconnect(3HA): finaliza la conexión al proceso que se está supervisando. Esta función gestiona sólo direcciones IPv4.
scds_fm_net_disconnect(3HA): finaliza la conexión al proceso que se está supervisando. Esta función administra direcciones IPv4 o IPv6.
Estas funciones encapsulan la utilidad de supervisor de procesos (PMF, Process Monitor Facility). El modelo de supervisión de DSDL mediante PMF crea y usa los valores tag implícitos de pmfadm. Para obtener más información, consulte la página de comando man pmfadm(1M).
La utilidad PMF también utiliza valores implícitos para Restart_interval , Retry_count y action_script (las opciones - t, -n y -a para pmfadm). Más importante aún, los archivos de DSDL vinculan el historial de fallos de procesos, determinado por PMF, al historial detectado por el supervisor de fallos para decidir ente un reinicio o una recuperación ante fallos.
Este conjunto incluye las siguientes funciones:
scds_pmf_get_status(3HA): determina si la instancia especificada se va a supervisar bajo el control de PMF.
scds_pmf_restart_fm(3HA): utiliza PMF para reiniciar el supervisor de fallos.
scds_pmf_signal(3HA): envía la señal especificada a un árbol de procesos que se está ejecutando bajo el control de PMF.
scds_pmf_start(3HA): ejecuta el programa especificado (incluido el supervisor de fallos) bajo el control de PMF.
scds_pmf_stop(3HA): finaliza un proceso que se está ejecutando bajo el control de PMF.
scds_pmf_stop_monitoring(3HA): detiene la supervisión de un proceso que se está ejecutando bajo el control de 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 junto con las propiedades Retry_count y Retry_interval.
Este conjunto incluye las siguientes funciones:
scds_fm_sleep(3HA): espera la recepción de un mensaje en el socket de control del supervisor de fallos.
scds_fm_action(3HA): realiza acciones una vez completado el análisis.
scds_fm_print_probes(3HA): escribe la información de estado del análisis en el registro del sistema.
Las siguientes funciones permiten escribir mensajes básicos y de depuración en el registro del sistema:
scds_syslog(3HA): escribe mensajes en el registro del sistema.
scds_syslog_debug(3HA): escribe mensajes de depuración en el registro del sistema.