Puppetserver

Puppetserver is the primary driver behind Puppet and is the only required component in open source Puppet. The Puppetserver developer dashboard is used to track the Puppet Master's ability to serve catalogs to agents. The primary area of tracking on this dashboard focuses on Puppetserver's JRubies. JRubies on the Puppetserver are simply small ruby instances contained in the Java Virtual Machine (JVM), dedicated to compiling catalogs for agents. 

You can reach the Puppetserver developer dashboard at https://<puppetserver>:8140/puppet/experimental/dashboard.html.

The dashboard contains a few live metrics about the Puppetserver, broken down into current metrics and average metrics:

  • Free JRubies: The number of available JRuby instances to serve Puppet catalogs
  • Requested JRubies: How many JRubies have been requested by agents
  • JRuby Borrow Time: The amount of time in milliseconds the Puppetserver holds for a single request from an agent
  • JRuby Wait Time: How long an agent has to wait on average for a JRuby
  • JVM Heap Memory Used: The amount of system memory the JVM containing the JRubies is consuming
  • CPU Usage: The CPU used by the Puppetserver
  • GC CPU Usage: The amount of CPU used by Garbage Collection (GC) on the Puppetserver

We can inspect this data to get quite a bit of information about the primary job of the Puppetserver, which is to compile and serve catalogs. One of the first key components to look at is JRuby Wait Time. Are our nodes often waiting in line to receive catalogs? If we find the wait time increasing, we'll need more total JRubies available to serve the agents. This can also be indicated by a low average free JRubies count, or a high current requested JRubies status. We can also inspect the JRuby Borrow Time to get an idea of how big our catalogs are and how much time each node expects to be able to talk to the Puppetserver. Finally, we have some metrics to let us know if we've allocated enough memory and CPU to the Puppetserver.

We can also get some useful data about our API usage on Top 10 Requests, letting us know which APIs are being used most heavily in our infrastructure. Top 10 Functions help to identify which Puppet functions are being used most heavily on the master, and our Top 10 Resources can help us understand our most used code in an environment.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.145.75.217