No replies
2 Posts

Pinned topic Keeping a node perfectly in sync - best method?

‏2009-10-10T09:02:13Z |
Hello all,

We use a modified version of CSM that we hacked about to support Fedora Core.
It works well for us in the traditional method of CSM use.
That is: provision node, update / manage from CSM server.
This, we like.

However, we have one workflow issue that I'd like to improve.
Suppose you have 1000 nodes which you initially provision.
Over time, some nodes are out of date due to being powered off whilst updates (or more usually additional new installpost scripts) were applied to all.

I.E. a node was built with a base O/S. Then installpost scripts apply 50 additional softwares. Next week, you add 10 additional installpost scripts for more software and push out to your nodes, but some nodes were down hence then 'out of date'.

Without rebuilding a node (as it's in use), or manually determining the software which a node is missing, what is a clean way to for a node or CSM to say "I'm out of date, and I need X..n packages / scripts to bring me up to date"?

I don't believe periodic SMSupdates/CFMupdatenode are the answer to this (SMSupdate only deals with RPMS and CFMupdate config files), nor leaving scripts in csminstall/csm/scripts/update (as these are run every time you update a node and could potentially overwrite changes).

I could keep a database of every script run to build the node, on the node. Then have the node check the csminstall/scripts/installpost scripts folder and then run the script itself in order to being itself up to date. However, this appears over complicated and someone messy (I.E. not clean) to me.

How do you monitor if a node is out of date? (file date/size changes, missing files / RPMS etc..)

Do you use CSM or a 3rd party / in-house tool to auto-magically bring that node up to date?

Perhaps there is a CSM solution and I should change the way I perform my CSM administration..?

Comments very appreciated.