Hi Lalith et al,

see my comments inline:

Lalith Suresh wrote:
> Hi everyone,
> 
> I've been developing HA-Cron using the GDS template and I've completed 
> the start(), stop(), probe(), validate() and validate_options() commands 
> so far. I've tested these individual scripts as per mentioned the 'SC 
> Agent development: Advanced GDS Methodology' workshop slides, and they 
> all seem to be working fine. I'm not using SMF for the above mentioned 
> scripts, I've tested them and they work properly regardless of whether 
> or not 'cron' is shown as 'disabled' in SMF.
> 
> My next step would be to make sure to wrap up this application for 
> non-global zones right? So here are my doubts:
> 
> 1) Since I've decided not to use SMF here, I'll need only to use the zsh 
> component right?

There might be some confusion about why the GDS template also provides 
hooks to use the sczsmf component. It only does this so that one can 
code an agent that is HA Container agent aware. This was specifically 
usefull for Sun Cluster 3.1, where the cluster framework was not 
available within non-global zones.

It is not a requirement to do this.

Instead, the agent you coded can be used when non-global zones are used 
as virtual cluster nodes (ie. they can host a resource group (RG) and 
are mentioned as <nodename>:<zonename> within the Nodelist property of 
the RG). This possibility came with Solaris Cluster 3.2 and newer.

In that sense you do not even need to use the zsh component - unless you 
want to code your agent HA Container agent aware.

Only a small subset of our standard agents do this, see
http://opensolaris.org/os/community/ha-clusters/ohac/Documentation/Agents/overviewGDSagents/

> 2) I've noticed that no other agent listed in 
> http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/gds-agents/
>  
> , is using the zone-sh component ( local_zone_zsh() ) function (the 
> search results suggested that) and they all seem to be using only the 
> zone-smf component ( local_zone_smf() ) to get the application to run in 
> the non-global zone. Any particular reason for this?

Yes, it relates to what I explained at 1). The HA Container agent was 
invented with Sun Cluster 3.1 - where the cluster framework was not 
available within non-global zones. We have choosen to use SMF in the 
combination of the HA Container agent in order to have a similar 
functionality that PMF is offering - a probe from inside (the optional 
Probe command) and outside (through the process contract monitioring 
done by SMF). More details about those design decisions can be read at
http://opensolaris.org/os/community/ha-clusters/ohac/Documentation/Technical-Presentations/HowToWrapApplicationsIntoZones.pdf

> 3) In the GDS-template, the first few lines in local_zone_zsh() are as 
> follows:
> 
> if [ ! -f ${SMFUTILDIR}/sczsmf_config ]
>     then
>         echo  ${SMFUTILDIR}/sczsmf_config does not exist. Make sure, that \
>               Sun Cluster HA for Solaris container is intalled in the 
> global zone
>         return 1
>     fi
> 
> Shouldn't this be:
> 
> if [ ! -f ${ZSHUTILDIR}/sczsh_config ]
>     then
>         echo  ${ZSHUTILDIR}/sczsh_config does not exist. Make sure, that \
>               Sun Cluster HA for Solaris container is intalled in the 
> global zone
>         return 1
>     fi
> 

Thanks for reporting. I can fix this along with some other changes found 
by someone else. Will send out a code review in the next days hopefully.

> 4) As far as making an agent for Cron is concerned, do you think I 
> should be using SMF as well?

I have not yet found time to read your proposal on how to implement the 
cron agent.

If you do not explicitly want to make your agent HA Container agent 
aware, I would recommend to not use sczsmf or sczsh.

In fact, if you think about it - if you have a crontab within a failover 
zone, the cron job will always move along with the zone. So in that case 
I see limited value of an HA cron agent.

Btw. do you plan to create an OpenSolaris project for this agent? You 
could host the documentation/design/proof of concept code/etc on it.
The required steps are documented at
http://opensolaris.org/os/community/ha-clusters/ohac/contribute/OHACDevProcess/

> Please help me out. And sorry in advance if any of the questions are too 
> noobish :)

They are not - thanks for contributing!

Greets
       Thorsten
-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   Sitz der Gesellschaft:
   Sun Microsystems GmbH, Sonnenallee 1, D-85551 Kirchheim-Heimstetten
   Amtsgericht Muenchen: HRB 161028
   Geschaeftsfuehrer: Thomas Schroeder, Wolfgang Engels, Dr. Roland Boemer
   Vorsitzender des Aufsichtsrates: Martin Haering
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Reply via email to