-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Ceri Storey wrote:
> For some background, we're essentially using puppet in much the same
> way you would use the ssh-and-a-for-loop method. I know it's well,
> fundamentally missing the point, but the thing is, there are a few
> constraints that we're currently otherwise unable to satisfy.
> 
> Essentailly, we have a large number of nigh upon homogeneous servers
> organised into clusters of about 10 machines each. These are entirely
> customer-facing, so we need to be able to ensure that the cluster
> overall doesn't go down when we're doing software deployments. So, to
> do this, we follow a process rather like this:
> 
> Disable server inload balancer -> Take server out of monitoring -> run
> puppet -> Put server back in monitoring -> Enable server inLoad
> balancer
> 
> Combined with smoketesting of the server once it's been upgraded, and
> ensuring that it comes back up in monitoring; and ensuring that only
> N/M servers are out of service at any one time. In fact, this is more
> or less what Luke himself suggested when I met him.
> 
> The problem therefore, is that currently, puppet can only say "Make X
> look like Y", not "While doing A make X look like Y and otherwise Z".
> So we could say something like:
> 
> loadbalancer { $ipaddress: ensure => enabled }
> semaphore { $cluster_name: ensure => none }
> 
> with-temporary-state {
>  ensuring => {
>     LoadBalancer[$ipaddress] { ensure => disabled }
>     Semaphore[$cluster_name] { ensure => aquired }
>     }
>  package { wibble: ensure => "1.0.1" }
> }
> 
> So here, puppet would know  that when entering the
> with-temporary-state block it needs to ensure that ensure on the
> loadbalancer resource is set to enabled and the semaphore resource is
> aquired, and that at all other times, they are set to enabled / none
> respectively. Also, if the changing of the state fails, then we'd need
> to skip the block (as puppet does with failed dependencies).
> 
> I suppose what I'm asking, is firstly, is anyone else doing anything
> like this themselves? I imagine someone must be. If so, are they using
> wrapper scripts (as we do) or some other mechanism?
> 
> Secondly, if my company were to sponsor development of such a feature
> (ie: let me develop it at work), what would we have to do to get it
> into the mainline release of puppet? I fully imagine that it'll need a
> bit of discussion first, as of course, it's a bit of a shift in how
> puppet models resources.

Ceri

I don't think anyone is working on this at this time.  Some prior
discussions have been held on/around this concept - check the list
archives for some of the keywords you've used.

I've cc'ed this to the -dev list where this sort of discussion is best held.

Regards

James Turnbull

- --
Author of:
* Pulling Strings with Puppet
(http://www.amazon.com/gp/product/1590599780/)
* Pro Nagios 2.0
(http://www.amazon.com/gp/product/1590596099/)
* Hardening Linux
(http://www.amazon.com/gp/product/1590594444/)

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFJIrxk9hTGvAxC30ARAh0NAJ9nG2N8Xw05HCb+wpBzwgx+bqWd1gCfTKs5
FJMW53n6KMEo6b79DcGRfgk=
=L7V5
-----END PGP SIGNATURE-----

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to