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

Interfaces de programación

Para escribir código de servicio de datos, la arquitectura de gestión de recursos proporciona una API de bajo nivel, o básica, una biblioteca de nivel superior, creada sobre la API básica, y una herramienta, SunPlex Agent Builder, que genera automáticamente un servicio de datos a partir de las entradas básicas que se aportan.

RMAPI

RMAPI (API de la gestión de recursos) proporciona un conjunto de rutinas de bajo nivel que permiten que los servicios de datos accedan a información sobre los recursos, tipos y grupos de recursos del sistema, soliciten un reinicio o una recuperación de fallos local y fijen el estado del recurso. A estas funciones se accede a través de la biblioteca libscha.so. RMAPI proporciona estos métodos de rellamada en forma de órdenes de shell y de funciones de C. Consulte scha_calls(3HA) y el Capítulo 4 para obtener más información sobre las rutinas de RMAPI. Consulte también el Capítulo 5 si desea ver ejemplos sobre cómo usar estas rutinas en métodos de rellamada de servicios de datos de ejemplo.

Biblioteca de desarrollo del servicio de datos (DSDL)

Sobre RMAPI se crea DSDL, que proporciona una estructura integrada de nivel superior, que conserva al mismo tiempo el modelo de rellamada a método subyacente de RGM. DSDL reúne varias funciones para el desarrollo de servicios de datos, por ejemplo:

Para la mayoría de las aplicaciones, DSDL proporciona casi todas las funciones necesarias para crear un servicio de datos, si no todas. Tenga presente, sin embargo, que DSDL no sustituye la API de bajo nivel, sino que la encapsula y la amplía. De hecho, muchas funciones de DSDL llaman a las funciones de libscha.so. Del mismo modo, es posible llamar directamente a las funciones libscha.so mientras se usa DSDL para codificar el grueso del servicio de datos. La biblioteca libdsdev.so contiene las funciones de DSDL.

Consulte el Capítulo 6 y la página de comando man de scha_calls(3HA) para obtener más información sobre DSDL.

SunPlex Agent Builder

Agent Builder es una herramienta que automatiza la creación de un servicio de datos. En primer lugar se introduce información básica sobre la aplicación de destino y el servicio de datos que se va a crear. A continuación Agent Builder genera un servicio de datos, junto con el código fuente y ejecutable (shells C o Korn), un archivo RTR personalizado y un paquete SolarisTM.

Con la mayoría de las aplicaciones es posible usar Agent Builder para generar un servicio de datos completo, apenas con unos cambios mínimos. Las aplicaciones con requisitos más complejos, como añadir comprobaciones de validación de propiedades adicionales, pueden requerir un trabajo que Agent Builder no es capaz realizar. Sin embargo, aun en estos casos se puede utilizar para generar el grueso del código y codificar el resto manualmente. Como mínimo, Agent Builder se puede utilizar para generar el paquete Solaris.