
This video will give an overview of the entire course
Configuration and management of infrastructure is important. Equally important is the process of reporting, without which there would be no way to find out if the infrastructure is behaving the way we want it to.
PuppetDB already provides us with enormous possibilities to find out extremely granular details of our infrastructure. Puppetboard, a community project, leverages the features of PuppetDB to provide a very decent dashboard for reporting.
Puppetexplorer is another community project to assist users in reporting and displaying an attractive dashboard to use PuppetDB data.
Dashboards are definitely useful for viewing reports. However, their usefulness increases many folds as soon as we are able to manipulate data on the dashboard and integrate it with tools such as Puppet to manage the infrastructure. Foreman is one such tool.
Apart from acting as a reporting dashboard for Puppet, Foreman has additional features such as acting as an External Node Classifier for Puppet. With minimum changes to the configuration, an efficient ENC can be configured on the Foreman.
The community has huge support of all kinds and the number of resources that can be found to be used readily are overwhelming. However, at times, the need to build custom solutions is unavoidable. Puppet has support for custom reporting which can be used to create reporting mechanisms of various types.
Puppetboard and Puppetexplorer are definitely great resources for readily implementing Puppet reporting. However, Puppet is flexible enough to allow us to create our own reports from PuppetDB by querying the data.
One of the excellent dashboard platform out in the infrastructure space is the Elastic stack created with Elasticsearch, Logstash, and Kibana. It has taken data collection and dashboards to a whole new level and Puppet can also take advantage of it by sending reports to Logstash and viewing data in Kibana.
One of the oldest monitoring tool in the infrastructure space, Nagios has its exclusive Puppet types available. When used with PuppetDB, it can create a dynamic and efficient monitoring workflow.
Using Puppet to deploy changes is great but making sure that Puppet is running when it is supposed to run is one of the critical tasks to keep in mind. Using a custom script and the power of Nagios, this task can be make very simple and elegant.
In a fairly large infrastructure, making sure that only valid hosts are able to get catalogs from the Puppet server is of utmost importance. With policy based certificate signing feature of Puppet, this additional security step is possible.
Complex workflows often require that some configurations or data are kept restricted for special nodes or resources. Restricted mount points can be configured in Puppet to exactly implement this requirement by modification of few configuration files.
Tracking active changes or finding what will change without actually changing them is often a requirement in highly critical infrastructures and can also be used for audit purposes. Puppet metaparameters are extremely helpful in implementing such workflows.
Identifying vulnerable system components and then keeping them secure is one of the base requirements of any infrastructure. The enormous database of community modules provide us with a lot of modules which are specifically created to help with this process.
No tool or platform can be deployed successfully without running into errors and problems. It can be tedious to find out underlying problems from error messages. However, some of the most common problems and errors can be readily identified with some help.
Puppet is a configuration management tool that allows you to automate all your IT configurations, giving you control over what you do to each Puppet Agent in a network, and when and how you do it. In this age of digital delivery and ubiquitous internet presence, it's becoming increasingly important to implement scalable and portable solutions, not only in terms of software, but also the systems that run it.
This video course will begin by covering methods of reporting with Puppet and configuring various types of open source dashboards along with procedures to use report processors and create custom ones. You will then exploit PuppetDB to configure and create efficient Puppet reports and also to monitor Puppet changes and alert based on the same. Finally, you will learn about how to implement Nagios based monitoring using Puppet.
Towards the end of the video course, you will concentrate on Puppet security. You will also learn about procedures to secure the Puppet deployments and methods to harden infrastructure using community modules. Finally, we’ll learn how to debug errors in the Puppet environment.
About The Author
Anirban Saha is an infrastructure professional with more than six and half years of experience in infrastructure management at various industries and organizations ranging from early startups to corporate environments. He was worked extensively with configuration management and automation tools including Puppet, Chef, Ansible, Saltstack, Terraform to name a few. He has extensive experience in architecting, deployment and management of large infrastructures. He speaks at various conferences on latest technologies and is also the author of Salt Cookbook published by Packt.