On 3/17/2010 8:42 PM, Luke Kanies wrote:
On Mar 16, 2010, at 4:07 AM, David Schmitt wrote:
[crossposting to puppet-dev, please trim follow-ups appropriately]
On 3/16/2010 11:52 AM, Jesús Couto wrote:
On Mon, Mar 15, 2010 at 3:18 PM, Michael DeHaan
<[email protected] <mailto:[email protected]>> wrote:
> that are very much procedural while Puppet manifest are more
> useful on a description of required software level.
Sort of.
The long story is that we don't have a really native feeling way to
model multinode deployments and workflow now, but we can think of
modeling it based on a set of checkpoint conditions.
On a complete pipe-dream, "I'm not the one with the skills to do this"
comment, I think it would be great to extend the Puppet language toward
"site" configurations. As exported resources, but more. If you could
define, say, an "application" resource that is not on a node but on
several nodes, that would model the application - this app is this and
this running on those 2 servers who are on loadbalancing and this and
that on those other 2, and the parts on the webservers requires the
parts on the appservers that requires the parts on the database
servers...dont know at what level could it be modeled to be flexible
enough and not one size "deploy" model for all, but the idea would be to
make it like Puppet goes from "let me script this" to "let me describe
how it should be", with you describing your application structucture and
relationships and such.
If you want to prototype something like this, you can use a define
outside of a node in the site.pp and use checks against $fqdn to
distribute resources among hosts.
Maybe even use the external_resource type that's currently floating
around to sequence the deployment.
Which leads me to another idea: inter-node dependencies:
| node a { mysql_db { "foo": ... } }
|
| node b { app { "x": after => A>>Mysql_db["foo"]; } }
The external resource stuff does just about exactly this, except that
it's not a special syntax. It's not as manageable as I'd like -- there's
no way, for instance, to really understand the dependencies between
hosts without reading all of the code -- but it's a good start and
should help us set the model.
Would it be possible to mark such dependencies in the graph output? I've
never looked deeply into that, but I can imagine that could be a great
addition to dashboard/foreman, displaying such dependency graphs with
higlights for used classes and intra-node dependencies.
Regards, David
--
dasz.at OG Tel: +43 (0)664 2602670 Web: http://dasz.at
Klosterneuburg UID: ATU64260999
FB-Nr.: FN 309285 g FB-Gericht: LG Korneuburg
--
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.