Issue #2906 has been updated by Nigel Kersten.

Matt Wise wrote:
> Any update on this? Its even more important when your puppet servers are 
> behind a load balancer and one gets updated before another. It causes 
> failures because the client may get its manifest from ServerA  while not 
> actually downloading its files from ServerA...

Hey Matt.

So if you've got a load balancer in place already, I generally find that 
configuring IP affinity on the load balancer itself is a much more flexible 
solution than the old keepalive support we had in Puppet originally.

The point you raise is also true of environments where you only have a single 
puppet master and you're pulling updates from version control. You may be in 
the middle of an update while an agent connects to your master, and unless your 
synchronization scripts are operating atomically on a per-environment basis, 
you still have the problem of pulling manifest changes while files are still 
updating (and vice-versa).

We do want to address that specific problem in Puppet itself, but our general 
recommendation is to implement a change management window by means of a pre_run 
command, to ensure that agents aren't updating while the synchronization script 
is in progress.

Ultimately I don't see us implementing keepalive, but instead moving towards 
the "static compiler" work that has been prototyped recently, and that we're 
looking to roll into Telly. In that model the agent will synchronize a local 
filebucket with all the remote file sources at the same time as it fetches the 
catalog, and will thus the actual application of that catalog will be entirely 
self-contained, removing all the chatter between the agent and the master 
during the course of the catalog application.

I'm keenly interested in knowing whether that proposal is a sufficient 
replacement for those of you who have registered interest in the keepalive 
feature.
----------------------------------------
Feature #2906: keepalive support in puppetd
https://projects.puppetlabs.com/issues/2906

Author: konrad rzentarzewski
Status: Accepted
Priority: High
Assignee: 
Category: fileserving
Target version: 2.7.0
Affected Puppet version: 0.25.1
Keywords: 
Branch: 


puppetd should keepalive 1 connection for all fileserver.* actions, and shedule 
them at beginning, so that manifests are not applied if some of the actions 
fail and puppetmaster load is less (1 connection per server per session).


-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" 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-bugs?hl=en.

Reply via email to