-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hmm, this seems like a good idea overall to me.
Thinking about it, I think that stored configs has two main issues:
1) You can't selectively store things, it just stores everything (to my
knowledge). It would be quite nice to be able to set refresh limits on
things. I.e. refresh NIC information once a day, etc...
2) There doesn't seem to be a database cache on each node. I think that
using a caching scheme (MySQL replication, replicated LDAP, ???) may
alleviate most of the scaling issues with stored configs.
I do like the idea of the hash-based access though.
Trevor
On 07/15/2010 06:22 AM, R.I.Pienaar wrote:
> hello,
>
> I'm toying with attempting to build an alternate way to gain information
> about nodes. I don't personally find stored confs a good idea reasons thats
> OT for this post so need something else.
>
> I'll give a quick overview of what I want to build so you can understand the
> scope of my question. I essentially want to use a document database to store
> facts, classes list and some other information and then make that availble to
> puppet in a query system.
>
> in manifests:
>
> Get a list of all my centos/redhat machines, simple array gets returned:
> $nodes = search("{'facts.operatingsystem' : { \$in: ['CentOS', 'Redhat']}}")
>
> For puppet 2.6 get a hash containing all the data for a node:
> $node = node_data("{'hostname': '$name'}")
>
> in ruby manifests and templates:
>
> Util.search({"classes" => "apache::monitor"}).each do |node|
> # make nagios checks node will be a object holding all
> # the stored info about a node with hash like access
> end
>
> My question is how to integrate this best, i need some utility classes, i
> need a db connection that will hopefully be shared between multiple catalog
> compiles in the same master process and between various invocations of the
> parser functions, utility classes etc. And I need configuration information
> - where to find the db.
>
> - Ideally this would be a plugin ala plugins in modules
> - Config would be ideal in puppet.conf, but I dont believe plugins can access
> random data in there, especially ones puppet has in its code base i cant
> extend it?
> - I need some var/pool that is accessible by the utility classes and that
> holds open a connection to a db
>
> Any hints?
>
- --
Trevor Vaughan
Vice President, Onyx Point, Inc.
email: [email protected]
phone: 410-541-ONYX (6699)
pgp: 0x6C701E94
- -- This account not approved for unencrypted sensitive information --
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
iQEcBAEBAgAGBQJMPuWHAAoJECNCGV1OLcypAEEIAIwCwA66yroEgQG5NmHlJxd8
8Tp+TtW3NkGLlWesN3utozjoyzXQ6YQFywoDh3d8UIDHaBi65GmT9GJ5470km2UG
RCZWiECzzJ5qnhS6XQivxh6vdqr6q6y+Pgk9AuODxxi63aVXGHxDQrEE3jAh9HWv
cpXUaGubqyLGuBzAVSSgzPObELkASeXUPD2gpd2Cess9kBBRqFnXEhjLsQ0B9aEy
MDrjPanKgSylz05De1eWy0+4L6OW39HLJm4IhecawEwhaPiIry2ZYvN8cQPb1zug
00iBLZ0hcysjamivLaKCnZPt8D+/vrGBMpHSf5sRvQxLhkvtuQopE9EjZvjxHUs=
=b8Gt
-----END PGP SIGNATURE-----
--
You received this message because you are subscribed to the Google Groups
"Puppet Developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/puppet-dev?hl=en.
<<attachment: tvaughan.vcf>>
