Skip Navigation Links
Exit Print View
| Oracle Solaris Cluster Data Services Developer's Guide Oracle Solaris Cluster 4.1

Search Scope:

- This Document
- Entire Library

## `Monitor_start` Method Code Listing

This method starts the `PROBE` program for the data service.

Example A-6 `dns_monitor_start` Method

    #!/bin/ksh
    #
    # Monitor start Method for HA-DNS.
    #
    # This method starts the monitor (probe) for the data service under the
    # control of PMF. The monitor is a process that probes the data service
    # at periodic intervals and if there is a problem restarts it on the same node
    # or fails it over to another node in the cluster. The PMF tag for the
    # monitor is $RESOURCE_NAME.monitor.

    #pragma ident   “@(#)dns_monitor_start   1.1   12/01/24”

    ###############################################################################
    # Parse program arguments.
    #
    function parse_args # [args ...]
    {
            typeset opt

            while getopts `R:G:T:' opt
            do
                    case “$opt” in
                    R)
                            # Name of the DNS resource.
                            RESOURCE_NAME=$OPTARG
                            ;;
                    G)
                            # Name of the resource group in which the resource is
                            # configured.
                            RESOURCEGROUP_NAME=$OPTARG
                            ;;
                    T)
                            # Name of the resource type.
                            RESOURCETYPE_NAME=$OPTARG
                            ;;
                    *)
              logger -p ${SYSLOG_FACILITY}.err \
                       -t [$RESOURCETYPE_NAME,$RESOURCEGROUP_NAME,$RESOURCE_NAME] \
                        “ERROR: Option $OPTARG unknown”
                         exit 1
                         ;;
                    esac
            done

    }

    ###############################################################################
    # MAIN
    #
    ###############################################################################

    export PATH=/bin:/usr/bin:/usr/cluster/bin:/usr/sbin:/usr/proc/bin:$PATH

    # Obtain the syslog facility to use to log messages.
    SYSLOG_FACILITY=`scha_cluster_get -O SYSLOG_FACILITY`

    # Parse the arguments that have been passed to this method
    parse_args “$@”

    PMF_TAG=$RESOURCE_NAME.monitor
    SYSLOG_TAG=$RESOURCETYPE_NAME,$RESOURCEGROUP_NAME,$RESOURCE_NAME

    # Find where the probe method resides by obtaining the value of the
    # RT_basedir property of the data service.
    RT_BASEDIR=`scha_resource_get -O RT_basedir -R $RESOURCE_NAME \
    -G $RESOURCEGROUP_NAMÈ

    # Start the probe for the data service under PMF. Use the infinite retries
    # option to start the probe. Pass the resource name, group, and type to the
    # probe method.
    pmfadm -c $PMF_TAG.monitor -n -1 -t -1 \
        $RT_BASEDIR/dns_probe -R $RESOURCE_NAME -G $RESOURCEGROUP_NAME \
        -T $RESOURCETYPE_NAME

    # Log a message indicating that the monitor for HA-DNS has been started.
    if [ $? -eq 0 ]; then
       logger -p ${SYSLOG_FACILITY}.info -t [$SYSLOG_TAG] \
               “${ARGV0} Monitor for HA-DNS successfully started”
    fi
    exit 0

Copyright © 2000, 2012, Oracle and/or its affiliates. All rights reserved. Legal Notices |