Puppet is a configuration management tool written in Ruby that has been around for quite a long time.
- SaaS-based Portal with local Agent Deployment
- OnPremise/Cloud Agnostic
- Application Performance Monitoring
- Server Infrastructure Monitoring
- Reasonably priced and simple to set up Log Management
- Synthetic API and Browser Testing
- Real-time User Monitoring
- Set up PuppetMaster server
- Install Puppet Agents on hosts
- Minimally, agents can trust puppetmaster by hostname
- Puppet can be extremely useful and PuppetForge provides a vast amount of services and configurations you can manage.
- It can even give ‘shortcuts’ by using ensure to infer the creation of a file if the directory doesn't exist, for example, making it rather powerful as far as CM tools go
- Easy updates via system packages
- On-Premise is open-source
- Enterprise Standard support - $112/node/year
- Enterprise Premium Support - $199/node/year
I've honestly never taken the Enterprise route. For most implementations, the free open-source product will probably suit your needs.
- Just about every flavor of Linux Operating Systems
- Windows and MacOS supported
- Puppet has its own domain-specific language; so if you aren't going to be working with it as a primary focus, there may be better qualified alternatives that won't require you or others on your team to pick up strange and unusual syntax in an emergency
- It's very easy for a company to end up with just a puppet specialist and can be difficult for others to pick up so it is not an easy thing to scale at the human-level
- PuppetForge provides many complete, extensible manifests for use and while I encourage the use of forge manifests over writing your own, beware that some are simply old and outdated