We use Ansible to install/configure Postgres, Memcached, Redis, Nginx and a bunch of other services.
Now we want to use Ansible to setup monitoring (Monit) and metrics collection (CollectD).
Monit and CollectD each use ‘service plugins’. Plugin configuration can all reside in a single config file, or broken into a master config with separate include files for each plugin. We could setup monitoring/metrics to operate from a single role, or use separate roles for Monit and CollectD, or embed monitoring/metrics as tasks in each service role. As we update configurations, we need to account for install dependencies and service restarts.
Does Ansible have a built-in solution for these type of cross-cutting services? Where can I find examples that show best practice for configuring tools like Monit and CollectD?