On 05/28/09 08:21, Alan Maguire wrote: > Sangeeta Misra wrote: >> On 05/28/09 05:29, Alan Maguire wrote: >>> Sangeeta Misra wrote: >>>> >>>> >>>> In ILB project, the persistent configuration is kept in the SCF >>>> framework and a user would use svcadm to enable/disable the ILB >>>> service. My question is, in the event that the ILB service, >>>> experiences a fatal error, is there a programmatic way to put ILB >>>> service in maintainance mode ( to prevent the service from going >>>> into a cycle or restart followed by fatal error)? >>> If the ILB service daemon can detect such fatal errors >>> once it has daemonized, you can use the libscf function >>> >>> smf_maintain_instance(ILB_FMRI, SMF_IMMEDIATE) >>> >>> (where ILB_FMRI points at the ILB service instance) >>> >>> ...to kill the associated running processes and put the >>> instance into maintenance. If there are fatal conditions >>> detectable before daemonizing, simply exit with >>> errorcode 95 (SMF_EXIT_ERR_FATAL). >>> >>> Hope this helps, >>> >>> Alan >> Thanks. Also after the service automatically goes into maintainance >> mode, we would like to have the user save the ILB config ( and >> provide that to us, so we can recreate the problem) and then wipe out >> the ILB service configuration in scf to start fresh. >> Assuming this is possible with SCF, how can the user do this ? Do >> they need to save a image of a shipped ILB config ( which is really >> enpty config) before they configure ILB , so at a later time they can >> revert back to that config? >> > hmm, one approach that might be worth investigating > - assuming all the config is in properties contained > in the ILB service instance - would be the use of SMF > snapshots (read-only views of the properties > associated with an instance).
The ILB SMF manifest does not contain the config properties. Is there a way of simply wiping out the ILB service configuration using SCF commnand? Since the shipped ILB config is an empty config, I would think wiping the config out via SCF ( note by this I mean the the config of the ILB service) and restarting the service via svcadm should do the trick (??) Sangeeta > If I recall, the snapshot > interfaces (to create named snapshots and attach > to them) are private libscf functions, so I think > you'd need an ARC contract to use them, but they > might provide a useful method for archiving > and retrieving previous configuration views. > > Alan Hmm... we dont have the