There are many computers around the house. Some of them are used by my daughters. And these I want to make sure are always up to date and fully functional. I am tired of bash scripts and PowerShell scripts… is there automation? Yes! Of course…
I was looking at Grafana (for an unrelated reason) when I was reminded of the various ways we have to configure physical hardware (at home or in the data center):
(These are the Grafana “recipes”)
a trip down memory lane
Remembering back in 2011 when at Meebo we used Puppet (to configure physical servers) and Nagios (to monitor them).
Puppet
- Back in 2012 my Google Goobuntu (Lenovo X220) laptop was certainly managed by some flavor of puppet (confirmed by this old ZDNet article)
To manage all these Goobuntu desktops, Google uses apt and Puppet desktop administration tools. This gives the Google desktop management team the power to quickly control and manage their PCs. That’s important because, “A single reboot can cost us a million dollars per instance.”Aug 29, 2012
Nagios
Nagios is an event monitoring system. Nagios offers monitoring and alerting services for servers, switches, applications and services. It alerts users when things go wrong and alerts them a second time when the problem has been resolved. Ethan Galstad and a group of developers originally wrote Nagios as NetSaint. Wikipedia
Programming language: C
Initial release: March 1, 2002; 21 years ago
License: GPLv2
What should we use?
What should we use to manage the inventory of personal machines?
- Puppet - seems old by now, but is probably well tested and reliable. (Does Google still use it? I wonder…)
- Saltstack - seems like the modern way to go about doing this
- NixOS - very attractive option - Darren has opinions (I’ll read them all(
2024-02-21
From Anders’ excellent “Screenshots from developers” page it seems that Timothee “TTimo” Besset uses SaltStack:
November 2015
‘screenshot as code’, I maintain my desktop configuration through saltstack: Commits · TTimo/linux-salted · GitHub