Ken, Thanks. I agree with your gut feeling, but after running the first round of tests you suggested, I don't think that's it. Bandwidth is good and there are no netstat errors. (Test results at the end of this email.)
Actually, I just realized that the Puppet client on the Ubuntu box is running Puppet 2.7.11, which does not have pluginsync set to true by default (The CentOS boxes have Puppet 3.0.2, which has pluginsync set to true by default.) I watched the Ubuntu box start up, and it didn't give me a "Info: Retrieving plugin" notice like the CentOS box does. When I changed pluginsync to true on the Ubuntu box, it also took many minutes to sync the stdlib module. (I didn't time it during this run, but it was about 10 minutes. I'd be happy to actually time it, if it would help troubleshoot.) While I didn't time the entire stdlib sync on the Ubuntu box, I did time several of the individual files. It's taking about 10 seconds per file to copy it over to the client from the Puppet Master. Since there are 90 files in stdlib, it is taking many minutes to sync the plugin, even though there are only 852KB of total data. Each file is resulting in a Puppet notice like the following output: notice: /File[/var/lib/puppet/lib/puppet/parser/functions/str2bool.rb]/ensure: defined content as '{md5}ab045013031d01a0e9335af92580dde6' For my short-term needs, my solution is to change pluginsync to false on the CentOS boxes, since I'm only using the stdlib module to get the anchor definition, and that doesn't need to be on the client side. But this will not be a long-term solution, as I will probably end up developing modules that need pluginsync to be true. Is anyone else who is using stdlib with pluginsync = true seeing this same 13-14 minute sync time during the first puppet run on a machine? Here are the results of the tests: iperf on CentOS: 298 Mbits/sec iperf on Ubuntu: 2.55 Gbits/sec $ netstat -in [on CentOS - no errors] Kernel Interface table Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 0 4813366 0 0 0 3076279 0 0 0 BMRU lo 16436 0 1140661 0 0 0 1140661 0 0 0 LRU vboxnet0 1500 0 0 0 0 0 866 0 0 0 BMRU The VBoxGuestAdditions are added in the basebox generation (using veewee, another great tool!) with the following in postinstall.sh. This is resulting in the most current (and more importantly, the matching version to the host): *********** # Install vagrant keys mkdir /home/vagrant/.ssh chmod 700 /home/vagrant/.ssh cd /home/vagrant/.ssh wget --no-check-certificate 'https://raw.github.com/mitchellh/vagrant/master/keys/vagrant.pub' -O authorized_keys chown -R vagrant /home/vagrant/.ssh # Install the virtualbox guest additions VBOX_VERSION=$(cat /home/vagrant/.vbox_version) cd /tmp wget http://download.virtualbox.org/virtualbox/$VBOX_VERSION/VBoxGuestAdditions_$VBOX_VERSION.iso mount -o loop VBoxGuestAdditions_$VBOX_VERSION.iso /mnt sh /mnt/VBoxLinuxAdditions.run umount /mnt rm VBoxGuestAdditions_$VBOX_VERSION.iso *********** Thanks, Kirk On Monday, January 7, 2013 12:20:34 PM UTC-5, Ken Barber wrote: > > My immediate gut feeling on this would be network not Puppet being the > issue actually, especially if another client is having success at > doing the sync. > > Its a virt so it could be hypervisor drivers or some other issue, its > an old version of the kernel as well - its more likely to happen - > although I haven't seen it myself lately :-). Run something like > 'iperf' on both ends to confirm your getting the right kind of network > performance, compare that performance to your Ubuntu target ... and > check out netstat -in for errors etc. etc. > > Check to make sure the right VirtualBox hypervisor drivers were > installed when building your Centos vagrant box btw > (VBoxGuestAdditions) ... I'm not sure of its origin but this can be an > important step for network performance. > > > On Mon, Jan 7, 2013 at 4:50 PM, Kirk Steffensen > <ki...@steffensenfamily.com <javascript:>> wrote: > > Hi, > > > > I have a fresh CentOS 5.8 Vagrant VM that I'm using to emulate a > customer's > > server. During the first Puppet run, it takes 13 minutes and 48 seconds > to > > sync the Puppet Labs stdlib module. On a similar Ubuntu 12.04.1 Vagrant > VM, > > Puppet starts up, and almost instantly goes from plugin sync to facter > load. > > > > Is this load time for stdlib on a RHEL variant normal? It's only 580K > of > > data to transfer. It seems like it should be almost instantaneous, even > on > > an older kernel like CentOS 5.8. > > > > I've posted the relevant part of the Puppet run's output to this gist: > > https://gist.github.com/4475110 > > > > If anyone has any insight or any troubleshooting steps to try, I'd > > appreciate it. > > > > Thanks, > > Kirk > > > > -- > > You received this message because you are subscribed to the Google > Groups > > "Puppet Users" group. > > To view this discussion on the web visit > > https://groups.google.com/d/msg/puppet-users/-/jH71g1du7icJ. > > To post to this group, send email to > > puppet...@googlegroups.com<javascript:>. > > > To unsubscribe from this group, send email to > > puppet-users...@googlegroups.com <javascript:>. > > For more options, visit this group at > > http://groups.google.com/group/puppet-users?hl=en. > -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/gdGOknbXSW0J. 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.