As you might have noticed, this is definitely not a sizing issue. My master has 2GB of RAM and 2 allocated vCPU, but the Puppet master rack process starts consuming all resources as soon as I re-enable Directory Environments.
When I want to use Directory Environments, the only thing I do is commenting the [development] and [production] sections in my puppet.conf file, and adding this to the [main] section: environmentpath = $confdir/environments
Let me describe my configuration:
-----------------puppet.conf--------------
[main]
logdir = /var/log/puppet.
rundir = /var/run/puppet
ssldir = $vardir/ssl
privatekeydir = $ssldir/private_keys { group = service }
hostprivkey = $privatekeydir/$certname.pem { mode = 640 }
autosign = $confdir/autosign.conf { mode = 664 }
[master]
autosign = $confdir/autosign.conf { mode = 664 }
reports = foreman
external_nodes = /etc/puppet/node.rb
node_terminus = exec
ca = true
ssldir = /var/lib/puppet/ssl
storeconfigs = true
storeconfigs_backend = puppetdb
[development]
modulepath = /etc/puppet/environments/development/modules:/usr/share/puppet/modules
manifest = /etc/puppet/environments/development/manifests/site.pp
config_version =
[production]
modulepath = /etc/puppet/environments/production/modules:/usr/share/puppet/modules
manifest = /etc/puppet/environments/production/manifests/site.pp
config_version =
--------------------------------------------------
--------------directory tree--------------
/etc/puppet/environments/
|-- development
| |-- manifests
| | `-- site.pp
| `-- modules
| |-- activemq
| |-- apache
| |-- apt
| |-- concat
| |-- datacat
| |-- environment
| |-- epel
| |-- erlang
| |-- firewall
| |-- java
| |-- java_ks
| |-- mcollective
| |-- postfix
| |-- profiles
| |-- rabbitmq
| |-- repos
| |-- stdlib
| `-- tomcat
`-- production
|-- manifests
| `-- site.pp
`-- modules
|-- activemq
|-- apache
|-- apt
|-- concat
|-- datacat
|-- environment
|-- epel
|-- erlang
|-- firewall
|-- inifile
|-- java
|-- java_ks
|-- mcollective
|-- mysql
|-- ntp
|-- postfix
|-- postgresql
|-- profiles
|-- puppetdb
|-- rabbitmq
|-- repos
|-- stdlib
|-- tomcat
`-- vsftpd
--------------------------------------------------
Can anybody reproduce this it on any platform? Thank you in advance for your help!
Toni
Hi Eric,
thank you for pointing me to this feature, and sorry for the answer time.
I managed to outline the problematic parts in the Puppet run: the final POST method takes forever when Directory Environments is enabled (1) and the catalog compilation is overall much slower (1.3./4|5|6/)
I triggered a run on the same node, with and without the feature enabled. Here are the corresponding profiling logs:
Thanks Josh,
This seems to work better indeed, although I can still observe a decrease in performances. The config retrieval time is higher than with config-based environments (9 sec -> 26 sec on average), and CPU-wise I can also notice an increase but this is hard to quantify without prolonged monitoring, I'll let it run for 24 extra hours before giving any conclusion. But, well, nothing compared to v3.5.1 fortunately, so I believe this RC1 is promising!
Feel free to ask if you need any data or extra feedback from me.
--
Toni
On Tuesday, May 6, 2014 10:55:24 PM UTC+2, Josh Partlow wrote:Hi Antoine,There is a Puppet 3.6.0-rc1 available in the pre-release repos which has environment cacheing that we think will take care of the slowdown you are seeing with directory environments. Would you be able to test that? (See Eric's 3.6.0-rc1 announcement for details on obtaining the packages)thanks,Josh
On Tuesday, April 22, 2014 11:26:47 AM UTC-7, Eric Sorenson wrote:
On Tuesday, April 22, 2014 5:25:55 AM UTC-7, Antoine Cotten wrote:Hi Eric,
thank you for pointing me to this feature, and sorry for the answer time.
I managed to outline the problematic parts in the Puppet run: the final POST method takes forever when Directory Environments is enabled (1) and the catalog compilation is overall much slower (1.3./4|5|6/)
I triggered a run on the same node, with and without the feature enabled. Here are the corresponding profiling logs:Thanks, this is great information.The reason the POST looks slow is because it's an aggregate of all the steps that came before it, as you see the profile step numbers pop out a level, that line aggregates the times of everything inside it. So the POST is the aggregate of all the steps to compilation.I am looking at this more closely and I have opened https://tickets.puppetlabs.com/browse/PUP-2337 to track it.--eric0
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/0008dd5d-fab6-4d01-b206-6a1994236b42%40googlegroups.com.--
You received this message because you are subscribed to a topic in the Google Groups "Puppet Users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/puppet-users/wzy8NPWauu4/unsubscribe.
To unsubscribe from this group and all its topics, send an email to puppet-users...@googlegroups.com.
To be continued...
--
You received this message because you are subscribed to a topic in the Google Groups "Puppet Users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/puppet-users/wzy8NPWauu4/unsubscribe.
To unsubscribe from this group and all its topics, send an email to puppet-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/7ed02dd8-8dfe-4ea2-bcc1-d864132aa761%40googlegroups.com.