external node classifier with a back-end

213 views
Skip to first unread message

Stuart Cracraft

unread,
Dec 4, 2013, 4:33:51 PM12/4/13
to puppet...@googlegroups.com

Hi everybody!

Anyone have a back-ended external node classifier to a Postgres database
they could throw my way?

Stuart


Dan White

unread,
Dec 4, 2013, 5:03:10 PM12/4/13
to puppet...@googlegroups.com
Isn't that what PuppetDB is ?

“Sometimes I think the surest sign that intelligent life exists elsewhere in the universe is that none of it has tried to contact us.”
Bill Waterson (Calvin & Hobbes)


From: "Stuart Cracraft" <smcra...@gmail.com>
To: puppet...@googlegroups.com
Sent: Wednesday, December 4, 2013 4:33:51 PM
Subject: [Puppet Users] external node classifier with a back-end
--
You received this message because you are subscribed to the Google Groups "Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/7781bed3-7e5a-46e2-8949-e00bfac0fbd0%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Stuart Cracraft

unread,
Dec 4, 2013, 5:10:23 PM12/4/13
to puppet...@googlegroups.com
Hi Ygor/Dan,

Postgres has better DR.

We like Postgres.

Stuart

Ken Barber

unread,
Dec 4, 2013, 8:52:30 PM12/4/13
to Puppet Users
>>> Anyone have a back-ended external node classifier to a Postgres database
>>> they could throw my way?
>>
>> Isn't that what PuppetDB is ?
>
> Postgres has better DR.
>
> We like Postgres.

PuppetDB is not an ENC, also FWIW and to be clear it uses PostgreSQL.

ken.

Dan White

unread,
Dec 4, 2013, 10:38:06 PM12/4/13
to Puppet Users Mailing List
Thanks for that clarification.
I was fairly certain it uses PostgreSQL

Stuart Cracraft

unread,
Dec 4, 2013, 11:06:02 PM12/4/13
to puppet...@googlegroups.com

And if you do not want to store secretive (complete) company data in
PuppetDB but instead an alternative securable database, what then pray tell?

xav

unread,
Dec 4, 2013, 11:50:51 PM12/4/13
to puppet...@googlegroups.com
Your original question wasn't about security at all. It was much more
vague than that, so perhaps you could restate the question more clearly?

Going back to your original post, the Puppet Dashboard and/or Foreman
are excellent candidates as ENC's that are backed by Postgresql. Both
play nicely if you're wanting the functionality of Puppetdb as well.

However, if your query is about storing data securely, you're looking at
something else entirely such as hiera-gpg or hiera integrated with eyaml
- although that's not an ENC solution, the encryption might be more what
you're after. I've had good results using hiera-gpg to store passwords
etc., and find editing yaml files and storing them in git a bunch easier
than stuffing around in an ENC gui.

Alternately if you're wanting to use something for exported resources,
how about encrypting that before exporting it so that what's stored is
secured? Just a thought.

To restate previous clarifications - PuppetDB uses a Postgresql database
to store data. There's an api to access it, but it's reasonably locked
down.

Jason Antman

unread,
Dec 5, 2013, 7:16:10 AM12/5/13
to puppet...@googlegroups.com
PuppetDB isn't an ENC. PuppetDB does, however, use Postgres (unless you use the embedded database, which you shouldn't). Puppet Dashboard is an ENC, but ironically, uses MySQL not Postgres.

Stuart,

Starting *another* ENC thread a day later isn't likely to get you many more responses than the two to your last question. I assumed, given your lack of response to my reply, that you're not terribly interested in sharing what you need an ENC to do... As I mentioned, I'm working on getting a Python/Django (Postgres-backed) ENC ready for release... if you want to see the current code, that could be arranged, though it's not really up to the "just run this puppet module and it installs the ENC" stage yet.

-jantman


On 12/04/2013 05:10 PM, Stuart Cracraft wrote:
Hi Ygor/Dan,

Postgres has better DR.

We like Postgres.

Stuart

On Wednesday, December 4, 2013 2:03:10 PM UTC-8, Ygor wrote:
Isn't that what PuppetDB is ?

�Sometimes I think the surest sign that intelligent life exists elsewhere in the universe is that none of it has tried to contact us.�

Bill Waterson (Calvin & Hobbes)


From: "Stuart Cracraft" <smcra...@gmail.com>
To: puppet...@googlegroups.com
Sent: Wednesday, December 4, 2013 4:33:51 PM
Subject: [Puppet Users] external node classifier with a back-end


Hi everybody!

Anyone have a back-ended external node classifier to a Postgres database
they could throw my way?

Stuart


--
You received this message because you are subscribed to the Google Groups "Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/7781bed3-7e5a-46e2-8949-e00bfac0fbd0%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
--
You received this message because you are subscribed to the Google Groups "Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-users...@googlegroups.com.

Stuart Cracraft

unread,
Dec 6, 2013, 12:59:29 PM12/6/13
to puppet...@googlegroups.com
HI Jason,

No I have no hesitations at all and yes, I would enjoy seeing your Postgres code
and learning from it and can share back.

So the thought here is to have all the configuration data, client data, node data, in
a Postgres database (the one on the Puppet Master) and used downline by all the various
Linux apps which need it, including Puppet.

I take it (hopefully) this is not too unusual and bizarre in the world of Puppet.

Jason Antman

unread,
Dec 7, 2013, 10:22:05 AM12/7/13
to puppet...@googlegroups.com, smcra...@gmail.com
So you're looking to put Puppet data and "other data" for other applications in ONE database? That doesn't sound terribly safe...

How is this data getting into the database? What types of functionality do you need? Just something like Dashboard with nodes and groups that can have params and classes? Inheritance? Exclusions?

If all you want is a database that stores classes/params for nodes, and uses them on a 1:1 basis, this is a trivial problem and is really just an issue of writing a tool to get data into the database. The "hard" part of an ENC is handling things like groups, multiple inheritance, overrides, exclusions, etc.

I'm still not clear on the functionality and interface that you want for this, and I'm also unclear on the distinction between what you call "configuration data", "client data" and "node data".

-Jason

Jason Antman

unread,
Dec 31, 2013, 7:06:30 AM12/31/13
to puppet...@googlegroups.com
Stuart,

I know this took a while, but there were some bureaucratic hoops to be jumped through first.

Our Python/Django (Postgres-backed) ENC, or what exists of it so far, is now at https://github.com/coxmediagroup/nodemeister

Be advised this is horribly Alpha, doesn't really have any tests yet, and relies on an internal python module. In other words, for the time being, it's really there as code to look at only, I wouldn't expect you to get it installed and running without some serious Python knowledge.


-Jason

On 12/06/2013 12:59 PM, Stuart Cracraft wrote:

Stuart Cracraft

unread,
Dec 31, 2013, 10:19:00 AM12/31/13
to puppet...@googlegroups.com
Great Jason - I'll take a look (have done a ton of Python.) 

Happy new year.

You received this message because you are subscribed to a topic in the Google Groups "Puppet Users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/puppet-users/4lwPsp4gv7M/unsubscribe.
To unsubscribe from this group and all its topics, send an email to puppet-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/52C2B346.1050500%40jasonantman.com.
Reply all
Reply to author
Forward
0 new messages