This site best when viewed with a modern standards-compliant browser. We recommend Firefox Get Firefox!.

Linux-HA project logo
Providing Open Source High-Availability Software for Linux and other OSes since 1999.

USA Flag UK Flag

Japanese Flag

Homepage

About Us

Contact Us

Legal Info

How To Contribute

Security Issues

This web page is no longer maintained. Information presented here exists only to avoid breaking historical links.
The Project stays maintained, and lives on: see the Linux-HA Reference Documentation.
To get rid of this notice, you may want to browse the old wiki instead.

1 February 2010 Hearbeat 3.0.2 released see the Release Notes

18 January 2009 Pacemaker 1.0.7 released see the Release Notes

16 November 2009 LINBIT new Heartbeat Steward see the Announcement

Last site update:
2018-04-25 15:32:26

15) LarsMarowskyBree: Discussion of virtual resources.

  • We have only briefly discussed this, but we wanted to have support for virtual resources; resources which are present in the cluster, and which we can base dependencies on, but which are not for us to manage - we can only find out their status.

    I would argue that for a certain kind of resources, the LocalResourceManager should keep track of them, and only tell the ClusterResourceManager about them when queried. Examples are:

    • Fake resources which are auto-discovered by the nodes at bootup; ie, Connection to FC RAID backend FOOBAZ found, or I am a ia64 CPU

    • The ping nodes might fall into this category: Yes, I can ping them

    • Additional flags / fake resources which the administrator wants to associate with a node.

    • Some of these may be auto-discovered (such as the hardware types), or manually set by the administrator either persistently (requiring state to be kept!) or just until the next reboot.

    As these are all local to a given node, it sort of makes sense to me to have the LRM handle them, maybe as a separate ResourceAgentClass. Of course, this might be another RedHerring ;)

    AlanRobertson replies: The LocalResourceManager can handle any resource which has a ResourceAgent. That agent can be smart or dumb. It can be a psuedo-resource or a real resource. In heartbeat, there are already several kinds of psuedo-resources. It is usually necessary for a pseudo-resoruce to keep state. But, the kind and nature and persistency of the state depends on the resource - so the ResourceAgent for the psuedo-resource has to keep this state. In many cases real resource agents keep state too. For example, pid files, etc. This does not require the LocalResourceManager to keep persistent state of the resources - since any given resource needs to respond to stop, start and status correctly. [In particular it needs to respond to status]. The LocalResourceManager does not have any particular requirements on a resource and what operations it supports. If you aren't going to ask a resoruce to perform an unsupported operation (like start or stop), then we aren't either. Therefore, we don't care. It is worth noting that such resources are illegal resources according to the OCF resource agent definition. But, if you don't care, the LRM won't care. In fact, the LRM won't care no matter whether you care or not ;-) To get on my soapbox on a related subject: If it's not a cluster resource, then what we do to monitor it should not be cluster-specific but should work for single nodes as well. This is the recovery manager issue we've talked about before. I consider this issue resolved. If you agree, please move it to resolved issues.