Coding Template for SUNW.gds Based Data Services

The generic data service (GDS) coding template is released under the Common Development and Distribution License (CDDL) Version 1.0.

Solaris Cluster comes with a generic data service (resource type is SUNW.gds) that enables you to create a resource that starts, stops, and probes a custom application in a very easy and quick way. There is even a GUI based wizard for it.

Many of the existing standard data services leverage GDS, as described on the code overview page for GDS based agents. While developing those data services, we realized that GDS alone is often not enough to handle more complex applications, and that those missing functions can be shared and re-used. The result is presented on this page:

The GDS coding template is meant to be a good start for a custom data service that you want to implement to run on Solaris Cluster. After you download the compressed archive to /var/tmp, uncompress and untar it by using the following command:

# bzcat SUNCsc_template-<date>.tar.bz | tar xpf -

Please read the SUNCsc_template/README file for some guidelines and read through the workshop for an introduction to data services development, explanation of GDS and code walkthroughs on how to use the GDS template.

As a pre-requisite it is usefull to already have an understanding of the generic Solaris Cluster concepts and the functionality of the framework and its commands. The technical presentation about "How to wrap applications into a non-global zone" and "Sun Cluster and Solaris 10 Containers" can be used in combination for a more thorough understanding how the GDS template works with Solaris Container and how it leverages SMF in combination with the HA Container agent.

The GDS coding template comes with the following extensions:

  • Integrated logging of standard out/error from start, stop, validate and probe commands.
  • Debugging aids included.
  • Development on a single-node cluster possible.
  • Agent can be developed failover zone aware, leveraging the HA container agent.
  • Script based registration of the cluster resource using a single configuration file.
  • Script based packaging and repackaging.
  • Disabling of the process monitor facility (PMF) integrated, if required.
  • Extendable function library.
  • Reuse of the same functions, which are used by the supported GDS based agents.
  • Functions to reach applications running outside of a cluster in order to set up dependencies.
  • Help to integrate projects of the Solaris Resource Manger while using "su - <user>" to run the application as a different user than root.

If you have any comments, feedback, contributions or requests for enhancement, please send them to the ha-clusters-discuss mailing list.

If you write a data service by using this coding template, please consider to share it on the third party HA agent repository page.

last modified by admin on 2009/10/26 12:44
Collectives
Project


© Sun Microsystems Inc. 2009
XWiki Enterprise 1.8.2.19075 - Documentation
Terms Of Use | Privacy | Trademarks | Copyright Policy | Site Guidelines | Site map | Help
Your use of this web site or any of its content or software indicates your agreement to be bound by these Terms of Use.