Exercice 21 - cAdvisor

Ajouter au docker-compose.yml:


  cadvisor:
    image: google/cadvisor:latest
    ports:
    - 8080:8080
    volumes:
    - "/:/rootfs:ro"
    - "/var/run:/var/run:ro"
    - "/sys:/sys:ro"
    - "/var/lib/docker/:/var/lib/docker:ro"
    - "/dev/disk/:/dev/disk:ro"
    privileged: true

Exécuter docker-compose up -d dans le dossier /opt/prometheus

Sujet

Scraper les métriques de cAdvisor

Solution

show
#file: /opt/prometheus/config/cadvisors01.yml
#file: /opt/prometheus/config/prometheus.yml

Sujet

Lister les conteneurs qui ont été vus pour la dernière fois il y a moins d'une minute :

Solution

show
(time() - container_last_seen) < 60

Sujet

Superviser la consommotion CPU, mémoire et réseau de Prometheus et lancer en parallèle la requête promql {__name__=~".+"}

Solution

show

Consommation CPU des containers

sum by (id) (irate(container_cpu_usage_seconds_total{id=~"/docker/.*"}[2m]))

Consommation RAM des containers

container_memory_usage_bytes{id=~"/docker/.*"}

Capacité RAM occupée en %

container_memory_usage_bytes{id=~"/docker/.*"} / ignoring (id, instance, job) group_left node_memory_MemTotal_bytes * 100

container_memory_usage_bytes{id=~"/docker/.*"} / container_spec_memory_reservation_limit_bytes

container_memory_usage_bytes{id=~"/docker/.*"} / (container_spec_memory_reservation_limit_bytes != 0)

container_memory_usage_bytes{id=~"/docker/.*"} / container_spec_memory_limit_bytes

container_memory_usage_bytes{id=~"/docker/.*"} / (container_spec_memory_limit_bytes != 0)

Quantité réseau utilisée en réception

irate(container_network_receive_bytes_total[2m])

Quantité réseau utilisée en émission

irate(container_network_transmit_bytes_total[2m])