As I mentioned in my previous email, my concern is "quis custodiet ipsos custodes?". Zenoss will have to assume that role but with a sufficient timeout to prevent a similar problem as I had with svc.startd's overzealousness. :)
Thanks, Justin -----Original Message----- From: Mark Burgess [mailto:mark.burg...@iu.hio.no] Sent: Friday, April 23, 2010 12:58 PM To: Justin Lloyd Cc: Welborn, David; help-cfengine@cfengine.org Subject: Re: Solaris 10 Cfengine SMF service CFengine is designed to be independent of this kind of service. It has its own self-healing built in to the Nova release, so it's a bit like trying to keep a ship afloat by attaching a rocket to its hull ;-) You're more likely to blow a hole in the side than keep it afloat. M Justin Lloyd wrote: > So after tweaking my manifest file a bit more and playing with in on a > test system, I could be wrong but I think that Cfengine, as it is > written, won't work well as an SMF service. As soon as cf-execd is > started by enabling the service, it's getting killed and restarting over > and over. I think this may be due to how it checks for updates, killing > itself so it can restart with new config files, or something to that > effect. Here's part of /var/svc/log/cfengine, which is started when I > run either "svccfg import cfengine.xml" or "svcadm enable cfengine" if > it's already imported: > > [ Apr 23 18:15:42 Method "start" exited with status 0 ] > [ Apr 23 18:15:42 Stopping because process received fatal signal from > outside the service. ] > [ Apr 23 18:15:42 Executing stop method ("/lib/svc/method/cfengine > stop") ] > Stopping Cfengine Nova > [ Apr 23 18:15:43 Method "stop" exited with status 0 ] > [ Apr 23 18:15:44 Executing start method ("/lib/svc/method/cfengine > start") ] > Starting Cfengine Nova > [ Apr 23 18:15:46 Method "start" exited with status 0 ] > [ Apr 23 18:15:46 Stopping because all processes in service exited. ] > [ Apr 23 18:15:46 Executing stop method ("/lib/svc/method/cfengine > stop") ] > Stopping Cfengine Nova > [ Apr 23 18:15:47 Method "stop" exited with status 0 ] > [ Apr 23 18:15:47 Executing start method ("/lib/svc/method/cfengine > start") ] > Starting Cfengine Nova > etc. > > I think I'm going to go back to just an /etc/init.d/cfengine script on > Solaris. I have an RFE open with Cfengine for an official service, but > if my assumption proves to be correct, it may be more complicated than I > thought. > > However, if anyone thinks I'm wrong and knows how to fix this, I'm open > to suggestions. :) > > Justin > > > -----Original Message----- > From: help-cfengine-boun...@cfengine.org > [mailto:help-cfengine-boun...@cfengine.org] On Behalf Of Justin Lloyd > Sent: Wednesday, April 21, 2010 11:26 AM > To: Welborn, David; help-cfengine@cfengine.org > Subject: RE: Solaris 10 Cfengine SMF service > > David, > > Sorry I've taken so long to respond to this. > > * I'll use my new test environment to move the actions into the xml file > as you've done. Eliminating the method script is certainly appealing > since zones slightly complicate matters, requiring a manifest file per > zone but all zones sharing a single method script. > > * I'll personally stick with a single FMRI, site/cfengine:default, since > I only need the service to manage a single daemon, cf-execd as the > policy manages cf-serverd and cf-monitord. > > * Right now, I *am* the Cfengine team. :P However, I am working on > documentation to eventually transition it to the Unix team, to which I'm > still an adjunct (and was directly part of ever since I started at this > job). > > * What do you see as the benefit of the PATH variable in the manifest > over hard-coding the absolute path to cfengine binaries? > > Thanks for the feedback! > > Justin > > -----Original Message----- > From: Welborn, David [mailto:dwelb...@firstam.com] > Sent: Monday, April 12, 2010 2:33 PM > To: Justin Lloyd; help-cfengine@cfengine.org > Subject: RE: Solaris 10 Cfengine SMF service > > Lloyd: > > Here is the (Solaris 10) SMF Manifest I used at my site for CFEngine 2 > (attached) > > And some notes & comments (below) > > ---- ---- ---- > > * You're not doing anything terribly complicated complicated in the > "/lib/svc/method/cfengine" shell script. > I decided to put all the start/stop actions in the manifest itself. > > * My manifest does not create a default instance, it creates the > following 3 FMRIs: > > svc:/application/management/cfengine:cfservd > svc:/application/management/cfengine:cfenvd > svc:/application/management/cfengine:cfexecd > > * I took the opinion that I want CFEngine to apply the policies it > already has locally, even in the case of a network outage. (So cfservd > has a "require_all" dependency on the network, but not the other > daemons.) > > * And (just to play with) I added an action_authorization ... if, for > example, your CFEngine team is separate from your SysAdmin team. > > * Lastly, I also include a PATH variable inside the Manifest ... which > you can change with "svccfg setenv" > (hey! ... you could even use CFEngine to change the PATH via > 'shellcommands' ! ;-) > > > P.S. If you're creating a Solaris package, I am happy to share my > prototype and checkinstall as well. > The package defaults to installing the init.d scripts and links for > startup. > If checkinstall finds /var/svc/manifest it switches the package to > SMF. > > Regards, > David > > -----Original Message----- > From: help-cfengine-boun...@cfengine.org > [mailto:help-cfengine-boun...@cfengine.org] On Behalf Of Justin Lloyd > Sent: Wednesday, March 31, 2010 12:01 PM > To: help-cfengine@cfengine.org > Subject: Solaris 10 Cfengine SMF service > > Since my pilot program is wrapping up and I'll start deploying to our > entire environment soon, I've finally gotten around to needing a Solaris > 10 service since it doesn't ship with one, yet. I've adapted the files > Ryan provided long ago to Cfengine 3 and they seem to be working. > > It's worth noting that the service only starts cf-execd since SMF only > monitors and manages the processes it starts. This makes Cfengine > something of a multi-layered service, since SMF ensures cf-execd is > running and, in turn, cf-execd ensures that cf-serverd (and cf-monitord > for those of us running Nova) is running. Kill any of those off and the > appropriate watcher (svc.startd or cf-execd) will restart them > accordingly. > > I'd appreciate any critiques of the service files that would help make > them more robust. Feel free to use them at your own risk. :) > > Justin > > -----Original Message----- > From: Anderson, Ryan C (US SSA) [mailto:ryan.ander...@baesystems.com] > Sent: Wednesday, July 01, 2009 3:40 PM > To: Justin Lloyd; Robert Markula; help-cfengine@cfengine.org > Subject: RE: How do you start cfengine? > > Attached is a manifest (cfservd.xml; svccfg import cfservd.xml) and > method (cfservd; copy to /lib/svc/method). Its cfengine 2 only, but it > is a good starting point for modifying it to work for cfengine 3. > > RCA > -- > UNIX Administrator, BAE Systems EIT > desk 763-572-6684 mobile 612-419-9362 > > -----Original Message----- > From: help-cfengine-bounces+ryan.anderson=baesystems....@cfengine.org > [mailto:help-cfengine-bounces+ryan.anderson=baesystems....@cfengine.org] > On Behalf Of Justin Lloyd > Sent: Wednesday, July 01, 2009 2:05 PM > To: Robert Markula; help-cfengine@cfengine.org > Subject: RE: How do you start cfengine? > > Hi all, > > I don't have an answer for Robert as we're not implementing cfengine > until starting sometime next month, most likely, but I wanted to ask a > similar question. Has anyone written a Solaris 10 service (i.e. manifest > and method files) for cfengine 2 and/or 3? It should be straightforward > but I'd hate to go about reinventing the wheel if there's anything good > already done. > > Thanks, > Justin > > > -----Original Message----- > From: help-cfengine-bounces+jlloyd=digitalglobe....@cfengine.org > [mailto:help-cfengine-bounces+jlloyd=digitalglobe....@cfengine.org] On > Behalf Of Robert Markula > Sent: Wednesday, July 01, 2009 12:17 PM > To: help-cfengine@cfengine.org > Subject: How do you start cfengine? > > Hey guys, > I'm quite new to cfengine (using cfengine3), and at the moment I'm > trying understand the principle on how to start cfengine on the server > and on the clients. > > For the server, there are three daemons: > - cf-execd > - cf-monitord > - cf-serverd > > And for the clients, there are two: > - cf-execd > - cf-monitord > > Do you use some initscript to start these? Or do you just start cf-execd > which does the rest (what I imagine not to be a good idea, since the > daemons wouldn't gracefully terminate on shutdown)? > > And can you give me an example of an initscript for cfengine3? I tried > to brew one myself, but I experience some oddities that I don't think to > be normal. > > Cheers, > Robert > _______________________________________________ > Help-cfengine mailing list > Help-cfengine@cfengine.org > https://cfengine.org/mailman/listinfo/help-cfengine > > _______________________________________________ > Help-cfengine mailing list > Help-cfengine@cfengine.org > https://cfengine.org/mailman/listinfo/help-cfengine > > This electronic communication and any attachments may contain > confidential and proprietary > information of DigitalGlobe, Inc. If you are not the intended recipient, > or an agent or employee > responsible for delivering this communication to the intended recipient, > or if you have received > this communication in error, please do not print, copy, retransmit, > disseminate or > otherwise use the information. Please indicate to the sender that you > have received this > communication in error, and delete the copy you received. DigitalGlobe > reserves the > right to monitor any electronic communication sent or received by its > employees, agents > or representatives. > > ************************************************************************ > ****************** > This message may contain confidential or proprietary information > intended only for the use of the > addressee(s) named above or may contain information that is legally > privileged. If you are > not the intended addressee, or the person responsible for delivering it > to the intended addressee, > you are hereby notified that reading, disseminating, distributing or > copying this message is strictly > prohibited. If you have received this message by mistake, please > immediately notify us by > replying to the message and delete the original message and any copies > immediately thereafter. > > Thank you. > ************************************************************************ > ****************** > FACLD > _______________________________________________ > Help-cfengine mailing list > Help-cfengine@cfengine.org > https://cfengine.org/mailman/listinfo/help-cfengine > _______________________________________________ > Help-cfengine mailing list > Help-cfengine@cfengine.org > https://cfengine.org/mailman/listinfo/help-cfengine -- Mark Burgess ------------------------------------------------- Professor of Network and System Administration Oslo University College, Norway Personal Web: http://www.iu.hio.no/~mark Office Telf : +47 22453272 ------------------------------------------------- This electronic communication and any attachments may contain confidential and proprietary information of DigitalGlobe, Inc. If you are not the intended recipient, or an agent or employee responsible for delivering this communication to the intended recipient, or if you have received this communication in error, please do not print, copy, retransmit, disseminate or otherwise use the information. Please indicate to the sender that you have received this communication in error, and delete the copy you received. DigitalGlobe reserves the right to monitor any electronic communication sent or received by its employees, agents or representatives. _______________________________________________ Help-cfengine mailing list Help-cfengine@cfengine.org https://cfengine.org/mailman/listinfo/help-cfengine