I did not find any information on ClusterInfo. I did find it as a find
a file ClusterInfo but that was a part of the SNMP_subagent.

I have found that I can do minor edits to the heartbeat DTD to create
a single ELEMENT described with ANY to store proprietary data. That
works well.

Then I thought about a concurrency issue. I have a way to solve it,
but I was wondering if anyone would look at this and tell me that I am
trying to put a square peg in a round hole.

Stated Goal: All Cluster wide information be stored in Linux-HA. No
shared folders, no distributed computing environment.

Setup: 2 nodes NODE1, NODE2.

Both Nodes run:
Linux HA
WebServer with an XML RPC API
CibWatch A Daemon to watch for changes in cib.xml

A command is submitted VIA XML RPC. 'node2:Create disk drive /stuff '.
In the end, I would like to have the disk drive be created on node2. I
would also like Linux-HA to be aware of this so I make proprietary
entries in the cib.

<extrastuff>
  <node name="node2">
  <diskdrives>
    <drive>/stuff></drive>
  </diskdrives>
  </node>
</extrastuff>

Why would I want to store this? Some information will be useful to an
HA cluster, some information will not be. All other solutions I have
found to this simple multi-master data issue involve major
configuration, setting up shares, database replication, etc. I want to
be able to scale from 2-8 nodes automatically. So that is why I am
thinking to store all my data in the linux HA-CIB.

However I ran into what might be a problem. Assume node1 and node2
both get a request to create a disk within a few milliseconds, both
systems create the disk, then both systems attempt to change the CIB
and only the second set of changes is stored.

My answer for this is to build some intelligence into the CibWatch
Daemon, store local data and repeatedly check to make sure the data is
placed in the CIB and continues to stay there.

Questions: Is my stated goal a bad idea to begin with consider a tool
like cfengine? Is the concurrency already there? is there a better
way, possibly using reasource agents to detect resources?

In a nutshell - in an automated cluster environment, how to keep the
Linux HA in the loop?


On Mon, Sep 1, 2008 at 5:11 AM, Andrew Beekhof <[EMAIL PROTECTED]> wrote:
> On Mon, Aug 25, 2008 at 16:26, Edward Capriolo <[EMAIL PROTECTED]> wrote:
>> I was thinking to do something like this.
>>  <node id="uuid1" uname="nodeA" type="normal">
>> 526     <instance_attributes id="uuid1:custom_attrs">
>> 527     <attributes>
>> 528     <nvpair id="uuid1:installed_ram" name="installed_ram" value="1024"/>
>> 529     <nvpair id="uuid1:my_other_attr" name="my_other_attr" value="bob"/>
>> 530     </attributes>
>> 531     </instance_attributes>
>>
>> With instance attributes, i could essentially use them for objects.
>>
>> <nvpair id="uuid1:object1:childobject:grandchild object"
>> name="installed_ram" value="1024"/>
>
> oh! if thats all you're doing then the CIB is the perfect place for that info.
> we even have a resource that does some of this for you... I think its
> called ClusterInfo
>
>>
>> However changing the DTD would be less code work for me.
>
> you'd not need to change the DTD for the above type of data
>
>> Lets assume I
>> simply add my root object as an ANY definition in DTD. Do any other
>> changes have to happen, would the rest of heartbeat ignore that
>> object? Will the cibadmin commands be able to work with the xml tree.
>> It seems like they should.
>>
>> The reason I am very interested in the CIB, is no other database
>> system I can find dynamically scales. MySQL cluster besides requiring
>> 4 nodes, will not scale on demand.  I will have to change
>> configuration files on each of the mysql servers every time a node is
>> added etc. Same problem with a clustered file system the
>> configuration. Linux HA has this interesting side effect of being a
>> mulit-master XML database that will scale dynamically
>>
>> The data will not be changing very often at all. It will be accessed
>> maybe a few changes a day. So it seems like this might be a good fit.
>>
>>
>> On Mon, Aug 25, 2008 at 6:01 AM, Andrew Beekhof <[EMAIL PROTECTED]> wrote:
>>> On Sat, Aug 23, 2008 at 18:27, Edward Capriolo <[EMAIL PROTECTED]> wrote:
>>>> I have a project that will involve two to eight nodes . A small
>>>> ammount of data needs  to be synced acoss the cluster some of it will
>>>> be used by ocf to start services.the data is transactional and needs
>>>> to be replicated quickly. I am evaluating two options mysql cluster as
>>>> well as just storing the information in the cib directly.
>>>
>>> In theory yes, but you might need to update the DTD
>>>
>>>> Can
>>>> arbitrary data be stored in cib. If so how much data is too much to
>>>> store in the cib before it begins to effect the operation of ha.
>>>
>>> Its more the rate of change that could be a problem.
>>>
>>>>  Even if you can is it smart to store arbitrary data is the cib
>>>
>>> It depends on how much and how much it changes.
>>> _______________________________________________
>>> Linux-HA mailing list
>>> [email protected]
>>> http://lists.linux-ha.org/mailman/listinfo/linux-ha
>>> See also: http://linux-ha.org/ReportingProblems
>>>
>> _______________________________________________
>> Linux-HA mailing list
>> [email protected]
>> http://lists.linux-ha.org/mailman/listinfo/linux-ha
>> See also: http://linux-ha.org/ReportingProblems
>>
> _______________________________________________
> Linux-HA mailing list
> [email protected]
> http://lists.linux-ha.org/mailman/listinfo/linux-ha
> See also: http://linux-ha.org/ReportingProblems
>
_______________________________________________
Linux-HA mailing list
[email protected]
http://lists.linux-ha.org/mailman/listinfo/linux-ha
See also: http://linux-ha.org/ReportingProblems

Reply via email to