From 6a920532325a8b3c5188f0583227f3859ffff200 Mon Sep 17 00:00:00 2001 From: Iurii Tatishchev Date: Wed, 5 Jul 2023 17:56:52 -0700 Subject: [PATCH] monitoring: add cadvisor to prometheus --- .../prometheus_config/prometheus.yml.j2 | 4 ++ roles/common/tasks/main.yml | 10 ++++ roles/common/templates/default/cadvisor.j2 | 47 +++++++++++++++++++ 3 files changed, 61 insertions(+) create mode 100644 roles/common/templates/default/cadvisor.j2 diff --git a/roles/alpina/collections/services/monitoring/templates/prometheus_config/prometheus.yml.j2 b/roles/alpina/collections/services/monitoring/templates/prometheus_config/prometheus.yml.j2 index 5e6e512..39bf78a 100644 --- a/roles/alpina/collections/services/monitoring/templates/prometheus_config/prometheus.yml.j2 +++ b/roles/alpina/collections/services/monitoring/templates/prometheus_config/prometheus.yml.j2 @@ -14,6 +14,10 @@ scrape_configs: static_configs: - targets: ["{{ ansible_host }}:9100"] + - job_name: "cadvisor" + static_configs: + - targets: ["{{ ansible_host }}:9110"] + - job_name: "loki" static_configs: - targets: ["loki:3100"] diff --git a/roles/common/tasks/main.yml b/roles/common/tasks/main.yml index caeb3da..63e3c2e 100644 --- a/roles/common/tasks/main.yml +++ b/roles/common/tasks/main.yml @@ -1,3 +1,12 @@ +- name: Configure cadvisor + become: yes + template: + src: default/cadvisor.j2 + dest: /etc/default/cadvisor + owner: root + group: root + mode: 0644 + - name: Install Debian packages become: yes ansible.builtin.apt: @@ -6,6 +15,7 @@ - docker-compose-plugin - firewalld - prometheus-node-exporter + - cadvisor state: latest - name: Upgrade Debian packages diff --git a/roles/common/templates/default/cadvisor.j2 b/roles/common/templates/default/cadvisor.j2 new file mode 100644 index 0000000..1b35da0 --- /dev/null +++ b/roles/common/templates/default/cadvisor.j2 @@ -0,0 +1,47 @@ +# config options for cadvisor(1) +# + +# Docker endpoint to connect to +# Default: unix:///var/run/docker.sock +CADVISOR_DOCKER_ENDPOINT="unix:///var/run/docker.sock" + +# Port to listen on +# Default: 8080 +CADVISOR_PORT="9110" + +# Storage driver +# Default: none/blank +# +# Available Options: +# - +# - bigquery +# - elasticsearch +# - kafka +# - redis +# - statsd +# - stdout +CADVISOR_STORAGE_DRIVER="" + +# Storage driver host +# Default: localhost:8086" +CADVISOR_STORAGE_DRIVER_HOST="localhost:8086" + +# Storage driver password +# Default: root +CADVISOR_STORAGE_DRIVER_PASSWORD="root" + +# Storage driver secure connection +# Default: false +CADVISOR_STORAGE_DRIVER_SECURE="false" + +# Storage driver user +# Default: root +CADVISOR_STORAGE_DRIVER_USER="root" + +# Log to stderr ("true" logs to journal on systemd +# and "false" to "/var/log/cadvisor.log" on SysV) +# Default: true +CADVISOR_LOG_TO_STDERR="true" + +# Other options: +#DAEMON_ARGS=""