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 ------------------------------------------------- _______________________________________________ Help-cfengine mailing list Help-cfengine@cfengine.org https://cfengine.org/mailman/listinfo/help-cfengine