On Mar 26, 2009, at 4:54 AM, Brice Figureau wrote:

>
> On 26/03/09 1:56, Ben wrote:
>> I use, and depend on, puppet extensively and a good portion of the
>> servers (nodes) are remote, across a WAN.
>>
>> I just started a WAN Optimization trial with some Juniper gear, one  
>> of
>> the components of WAN optimization is compression and the puppet
>> client/server communication is compressing pretty well.  According to
>> the Juniper reporting the puppet data is being compressed between  
>> 25-50%.
>>
>>
>> Is puppet using compression between client and server?
>
> No, see below.
>
>> If it is not, has it been considered?  Considering most of the data
>> exchanged between client and server would be text in the form of
>> manifests and config files i think it could achieve good compression
>> with low overhead.
>>
>> I have nginx in front of my puppetmasters, if i enable gzip  
>> compression
>> there will the puppet client still work?
>
> Puppet uses Net::HTTP on the client to connect to the puppetmaster.  
> This
> is a part of the standard Ruby lib, and only in version 1.9 did they  
> add
> content encoding Gzip support:
> http://redmine.ruby-lang.org/repositories/revision/ruby-19?rev=14187
>
> So if you run your clients with ruby 1.9, then I think you can  
> activate
> content-encoding compression in nginx.
>
> I doubt Luke would agree implementing the compression in the puppet
> layer of the protocol, because all the transfer use HTTP (especially
> when we'll move to a full REST system) and HTTP supports
> content-encoding since at least a decade.
> Now one solution to have compression in the client while running an
> older ruby interpreter version would be to dump Net::HTTP which is
> horribly slow and start using something "newer" (or simply better  
> designed).

I'm fine with a boolean to enable/disable compression, and it should  
be able to be done just like browsers, which can specify that they  
support compression so that the server knows whether it should use it,  
and even then it's optional.

It'd certainly be nice if the HTTP libraries handled all of this for  
us, of course.

-- 
Getting caught is the mother of invention. --Robert Byrne
---------------------------------------------------------------------
Luke Kanies | http://reductivelabs.com | http://madstop.com


--~--~---------~--~----~------------~-------~--~----~
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 
puppet-users+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to