I am setting up Foreman for the first time and getting the initial setup has gone great! The documentation is great, etc. The “problem” I am having is that after it is basically set up, having no experience with foreman or puppet, I am not quite sure how to get what I need. It may be that I am trying to use Foreman for something it isn’t meant to do, so if someone could let me know if the following is something that I can expect Foreman to do and give me some pointers on how to set it up, I would appreciate it!
I would like to use foreman to have all my servers connect to for basic stats (I think that all is good out of the box) AND to show me if any of them have outstanding updates OR obvious issues (low disk space, etc). And I would like to be notified if any of these things exist.
Except traditional machine monitoring (OS Parameters) I have this: https://github.com/marcinbojko/foreman-template - just to watch basic numbers.
Foreman has prometheus metrics already built in (enable in options), but these numbers are quite less interessting for me at this moment.
Foreman is not a monitoring tool, while it can show you facts and status of your hosts in the configuration sense (out of sync hosts, unsubscribed content hosts etc) it does not do any CPU/disk alterting out of box. And no monitoring of resources as well.
I encourage you to check out existing alerting or monitoring tools like PCP, Nagios, Prometheus and similar. There are some plugins for Foreman to ease integration with those tools (eg. when you create new host it appears in your monitoring).
It’s interesting idea to build some kind of alterting system based on reported facts. We do have a framework called “status” to show/report overall host status (OK, warning, failure), so new status could be added. This is bunch of work tho if you want this to be useful - e.g. notifications should be sent, emails on alerts, configurable tresholds, probably some ability to “script” the alerts using our templating system would also be a good idea.