Forum Discussion

justinfay's avatar
10 years ago

RESNOTOFF not triggered.

Hi, I am following the veritas cluster server administrators guide for linux and trying to trigger the resnotoff script. From the documentation it is my understanding that is a resource faults and...
  • Sunil_Yadav's avatar
    10 years ago

    Hi,

     

    1. “resnotoff” trigger is invoked on the system if a resource in a service group does not go offline even after issuing the offline command to the resource. For the scenario you described, “resnotoff” is not right trigger.

    2.

    From the documentation it is my understanding that is a resource faults and the clean command returns 1, resnotoff should be triggered.

    No. Not “resnotoff”. In this case, “resfault” trigger is invoked.

    3. Resource if marked FAULTED if clean entry point succeeds after the unexpected offline. If clean entry point fails, resource is marked ADMIN_WAIT. Same behavior is observed in engine log too. Clean entry point has failed and thus resource Res_App_c1_fmmed1_testapplication was marked ADMIN_WAIT(not FAULTED).
    This scenarios is neither “resnotoff”, nor “resfault”. In this case, "resadminwait" trigger will be invoked(if configured).

     

    Thanks & Regards,
    Sunil Y

  • mikebounds's avatar
    10 years ago

    I have had a look at the documentation in 6.1 with regards resfault and resnotoff and it is misleading at best in some places and clearly wrong in other places, but there are so many mistakes, I will try to write an article as too long to document all here. 

    But your issue is a little simpler:

    If an ONLINE resource reports offline, then VCS will call clean, but the monitor reported offline and so resNOToff is not applicable as resource IS offline and so by the clean returning 1 you are indicating to VCS that you are unable to clean up the resource (example process is down, but can't remove shared memory segments) so as VCS cannot make the resource clean then VCS goes into ADMIN_WAIT.

    If VCS offlines a resource and after it runs the offline the resource is still NOT offline AND then after the clean runs, the resource is still NOT offline, then this is where the resnotoff trigger is called.  However, in this scenario, if you are using the Application agent then the CleanProgram must exit 0, even though it is unsuccesful as the Bundled agents says for the Application agent:

    Note: If the CleanProgram executable returns a non-zero value, the agent treats it as a clean failure and the resource will not fault.

    If you write an agent from scratch then I pretty sure VCS passes the clean reason to the agent frame work and so you can exit non-zeo when clean fails when called for "resource fault" and exit zero when clean fails when called for "offline failed", but the Application agent CleanProgram is not passed clean reason, so probably better to always exit 0.

    If this doesn't help with what you are trying to achieve, then please explain what you are trying to achieve with a real scenerio you want VCS to react to.

    Mike