GithubHelp home page GithubHelp logo

Comments (6)

dmuhamedagic avatar dmuhamedagic commented on July 18, 2024

@kskmori: issue opened as promissed :)

from resource-agents.

kskmori avatar kskmori commented on July 18, 2024

Regarding to IPaddr2 at least, I think that OCF_ERR_INSTALLED does not make sense.

I don't think that it is a realistic situation that an user specified, say, eth2 "correctly" but actually the user "forgot" to install the third NIC device :) It must be more likely the user mistook the interface name. Anyway it is impossible to distinguish between them essentially.

Also, unlike apache or pgsql, IPaddr2 does not require an extra software package that the RA is monitoring to.

So I think it is sane that IPaddr2/findif.sh only returns OCF_ERR_CONFIGURED in such parameter checking.
The previous version of the findif binary returns OCF_ERR_CONFIGURED only, too.

By looking at the current code, IPaddr2 returns OCF_ERR_INSTALLED only when the platform is not Linux:)

from resource-agents.

dmuhamedagic avatar dmuhamedagic commented on July 18, 2024

Thanks for the explanation. I'm not sure under which circumstances the NIC can disappear. For instance, are there NIC failures which can cause that it disappears from the system? If so, then returning OCF_ERR_CONFIGURED would prevent pacemaker from starting the resource on any node in the cluster. I'm still not sure if that can happen at all, but it's worth considering.

from resource-agents.

kskmori avatar kskmori commented on July 18, 2024

OK, now I see your point. I will reconsider it...

from resource-agents.

kskmori avatar kskmori commented on July 18, 2024

To the best of my knowledge, NIC can disappear when 1) ifdown 2) unplug a USB NIC etc. and it should not disappear when a "normal" failure, but nobody can guarantee it...

How about doing the findif.sh check only on start and validate-all since the purpose of the check is just a sanity check of the parameters specified by an user and not necessarily doing it on every monitor?

By the way, in the case of #320 a fail over was exercised with the scenario below:

  • an IPaddr2 detected a transient failure and returned OCF_ERR_CONFIGURED
  • Pacemaker tried to stop the upper resources which take some time
  • meanwhile, the failed IPaddr2 was monitored again and now succeeded.
  • Pacemaker started to move the resources because the fail-count is not 0. No record of OCF_ERR_CONFIGURED any more.

How lucky I was:)

from resource-agents.

dmuhamedagic avatar dmuhamedagic commented on July 18, 2024

On Fri, Oct 11, 2013 at 01:30:09AM -0700, Keisuke MORI wrote:

How about doing the findif.sh check only on start and validate-all since the purpose of the check is just a sanity check of the parameters specified by an user and not necessarily doing it on every monitor?

Agreed. The less code we need to execute in monitor the better.

By the way, in the case of #320 a fail over was exercised with the scenario below:

  • an IPaddr2 detected a transient failure and returned OCF_ERR_CONFIGURED

Oops.

  • Pacemaker tried to stop the upper resources which take some time
  • meanwhile, the failed IPaddr2 was monitored again and now succeeded.
  • Pacemaker started to move the resources because the fail-count is not 0. No record of OCF_ERR_CONFIGURED any more.

How lucky I was:)

Indeed :)

from resource-agents.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.