From 36003d4c7110418bd9a5b34d1771f9283ecce500 Mon Sep 17 00:00:00 2001 From: fedy95 Date: Mon, 8 Mar 2021 13:43:39 +0300 Subject: [PATCH] format-yaml-files --- .drone.yml | 34 +- .editorconfig | 10 +- alertmanager/config.yml | 18 +- docker-compose.yml | 396 +++++++++--------- grafana/provisioning/dashboards/dashboard.yml | 20 +- .../provisioning/datasources/datasource.yml | 32 +- prometheus/prometheus.yml | 64 +-- promtail/etc/promtail/config.yml | 40 +- 8 files changed, 314 insertions(+), 300 deletions(-) diff --git a/.drone.yml b/.drone.yml index 8cd3b8a..fe384b6 100644 --- a/.drone.yml +++ b/.drone.yml @@ -1,27 +1,29 @@ +--- kind: pipeline type: ssh name: default clone: - disable: true + disable: true server: - host: - from_secret: host - user: - from_secret: user - password: - from_secret: password + host: + from_secret: host + user: + from_secret: user + password: + from_secret: password steps: - - name: release - commands: - - cd /mnt/md0/infra/monitoring - - git pull - - make restart + - name: release + commands: + - cd /mnt/md0/infra/monitoring + - git pull + - make restart trigger: - branch: - - master - event: - - push + branch: + - master + event: + - push +... diff --git a/.editorconfig b/.editorconfig index 38fe478..73069d4 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,10 +1,10 @@ root = true [*] -end_of_line = lf -insert_final_newline = true charset = utf-8 - -[*.json] +end_of_line = lf indent_style = space -indent_size = 4 +indent_size = 2 +trim_trailing_whitespace = true +insert_final_newline = true +max_line_length = 100 diff --git a/alertmanager/config.yml b/alertmanager/config.yml index 9ecad73..473dd4f 100644 --- a/alertmanager/config.yml +++ b/alertmanager/config.yml @@ -1,11 +1,13 @@ +--- route: - receiver: 'slack' + receiver: 'slack' receivers: - - name: 'slack' - slack_configs: - - send_resolved: true - text: "{{ .CommonAnnotations.description }}" - username: 'Prometheus' - channel: '#' - api_url: 'https://hooks.slack.com/services/' + - name: 'slack' + slack_configs: + - send_resolved: true + text: "{{ .CommonAnnotations.description }}" + username: 'Prometheus' + channel: '#' + api_url: 'https://hooks.slack.com/services/' +... diff --git a/docker-compose.yml b/docker-compose.yml index 39575df..442e3f1 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,204 +1,206 @@ +--- version: "3" networks: - monitor-net: - driver: bridge + monitor-net: + driver: bridge volumes: - grafana_data: {} + grafana_data: { } services: - alertmanager: - image: prom/alertmanager:v0.21.0 - container_name: alertmanager - hostname: alertmanager - restart: unless-stopped - - volumes: - - ./alertmanager:/etc/alertmanager - command: - - '--config.file=/etc/alertmanager/config.yml' - - '--storage.path=/alertmanager' - - expose: - - "9093" - networks: - - monitor-net - labels: - org.label-schema.group: "monitoring" - - cadvisor: - image: gcr.io/cadvisor/cadvisor:v0.37.0 - container_name: cadvisor - hostname: cadvisor - restart: unless-stopped - - volumes: - - /:/rootfs:ro - - /var/run:/var/run:rw - - /sys:/sys:ro - - /var/lib/docker:/var/lib/docker:ro - - expose: - - "8080" - networks: - - monitor-net - labels: - org.label-schema.group: "monitoring" - - grafana: - image: grafana/grafana:7.3.7 - container_name: grafana - hostname: grafana - restart: unless-stopped - - volumes: - - grafana_data:/var/lib/grafana - - ./grafana/provisioning:/etc/grafana/provisioning - environment: - - GF_SECURITY_ADMIN_USER=${ADMIN_USER:-admin} - - GF_SECURITY_ADMIN_PASSWORD=${ADMIN_PASSWORD:-admin} - - GF_USERS_ALLOW_SIGN_UP=false - - ports: - - "3002:3000" - networks: - - monitor-net - labels: - org.label-schema.group: "monitoring" - - loki: - image: grafana/loki:2.1.0 - container_name: loki - hostname: loki - restart: on-failure - - command: - - '-config.file=/etc/loki/local-config.yaml' - - expose: - - "3100" - networks: - - monitor-net - labels: - org.label-schema.group: "monitoring" - - nginxexporter: - image: nginx/nginx-prometheus-exporter:0.8.0 - container_name: nginxexporter - hostname: nginxexporter - restart: on-failure - - logging: - driver: json-file - options: - max-size: "10m" - max-file: "5" - - environment: - - SCRAPE_URI=http://nginx:80/nginx_status - - TELEMETRY_PATH=/metrics - - NGINX_RETRIES=10 - expose: - - "9113" - networks: - - monitor-net - labels: - org.label-schema.group: "monitoring" - - - nodeexporter: - image: prom/node-exporter:v1.0.1 - container_name: nodeexporter - hostname: nodeexporter - restart: unless-stopped - - volumes: - - /proc:/host/proc:ro - - /sys:/host/sys:ro - - /:/rootfs:ro - - ./nodeexporter/etc:/var/lib/node_exporter - command: - - '--path.procfs=/host/proc' - - '--path.sysfs=/host/sys' - - '--path.rootfs=/rootfs' - - '--collector.filesystem.ignored-mount-points=^/(sys|proc|dev|host|etc)($$|/)' - - '--collector.textfile.directory=/var/lib/node_exporter' - ports: - - "3003:9100" - networks: - - monitor-net - labels: - org.label-schema.group: "monitoring" - - prometheus: - image: prom/prometheus:v2.24.1 - container_name: prometheus - hostname: prometheus - restart: unless-stopped - - volumes: - - ./prometheus:/etc/prometheus - command: - - '--config.file=/etc/prometheus/prometheus.yml' - - '--storage.tsdb.path=/prometheus' - - '--web.console.libraries=/etc/prometheus/console_libraries' - - '--web.console.templates=/etc/prometheus/consoles' - - '--storage.tsdb.retention.time=200h' - - '--web.enable-lifecycle' - - ports: - - "3004:9090" - networks: - - monitor-net - labels: - org.label-schema.group: "monitoring" - - promtail: - image: grafana/promtail:2.1.0 - container_name: promtail - hostname: promtail - restart: on-failure - - volumes: - - ./promtail/etc/var/lib/promtail/positions:/var/lib/promtail/positions - - ./promtail/etc/promtail/config.yml:/etc/promtail/config.yml - - /var/lib/docker/containers:/var/lib/docker/containers:ro - - /var/log:/var/log - command: - - '-config.file=/etc/promtail/config.yml' - - networks: - - monitor-net - labels: - org.label-schema.group: "monitoring" - - pushgateway: - image: prom/pushgateway:v1.4.0 - container_name: pushgateway - hostname: pushgateway - restart: unless-stopped - - expose: - - "9091" - networks: - - monitor-net - labels: - org.label-schema.group: "monitoring" - - smartctl: - build: - context: ./smartctl - container_name: smartctl - hostname: smartctl - restart: on-failure - privileged: true - - volumes: - - ./nodeexporter/etc:/var/lib/node_exporter - environment: - - INTERVAL=300 - networks: - - monitor-net - labels: - org.label-schema.group: "monitoring" + alertmanager: + image: prom/alertmanager:v0.21.0 + container_name: alertmanager + hostname: alertmanager + restart: unless-stopped + + volumes: + - ./alertmanager:/etc/alertmanager + command: + - '--config.file=/etc/alertmanager/config.yml' + - '--storage.path=/alertmanager' + + expose: + - "9093" + networks: + - monitor-net + labels: + org.label-schema.group: "monitoring" + + cadvisor: + image: gcr.io/cadvisor/cadvisor:v0.37.0 + container_name: cadvisor + hostname: cadvisor + restart: unless-stopped + + volumes: + - /:/rootfs:ro + - /var/run:/var/run:rw + - /sys:/sys:ro + - /var/lib/docker:/var/lib/docker:ro + + expose: + - "8080" + networks: + - monitor-net + labels: + org.label-schema.group: "monitoring" + + grafana: + image: grafana/grafana:7.3.7 + container_name: grafana + hostname: grafana + restart: unless-stopped + + volumes: + - grafana_data:/var/lib/grafana + - ./grafana/provisioning:/etc/grafana/provisioning + environment: + - GF_SECURITY_ADMIN_USER=${ADMIN_USER:-admin} + - GF_SECURITY_ADMIN_PASSWORD=${ADMIN_PASSWORD:-admin} + - GF_USERS_ALLOW_SIGN_UP=false + + ports: + - "3002:3000" + networks: + - monitor-net + labels: + org.label-schema.group: "monitoring" + + loki: + image: grafana/loki:2.1.0 + container_name: loki + hostname: loki + restart: on-failure + + command: + - '-config.file=/etc/loki/local-config.yaml' + + expose: + - "3100" + networks: + - monitor-net + labels: + org.label-schema.group: "monitoring" + + nginxexporter: + image: nginx/nginx-prometheus-exporter:0.8.0 + container_name: nginxexporter + hostname: nginxexporter + restart: on-failure + + logging: + driver: json-file + options: + max-size: "10m" + max-file: "5" + + environment: + - SCRAPE_URI=http://nginx:80/nginx_status + - TELEMETRY_PATH=/metrics + - NGINX_RETRIES=10 + expose: + - "9113" + networks: + - monitor-net + labels: + org.label-schema.group: "monitoring" + + + nodeexporter: + image: prom/node-exporter:v1.0.1 + container_name: nodeexporter + hostname: nodeexporter + restart: unless-stopped + + volumes: + - /proc:/host/proc:ro + - /sys:/host/sys:ro + - /:/rootfs:ro + - ./nodeexporter/etc:/var/lib/node_exporter + command: + - '--path.procfs=/host/proc' + - '--path.sysfs=/host/sys' + - '--path.rootfs=/rootfs' + - '--collector.filesystem.ignored-mount-points=^/(sys|proc|dev|host|etc)($$|/)' + - '--collector.textfile.directory=/var/lib/node_exporter' + ports: + - "3003:9100" + networks: + - monitor-net + labels: + org.label-schema.group: "monitoring" + + prometheus: + image: prom/prometheus:v2.24.1 + container_name: prometheus + hostname: prometheus + restart: unless-stopped + + volumes: + - ./prometheus:/etc/prometheus + command: + - '--config.file=/etc/prometheus/prometheus.yml' + - '--storage.tsdb.path=/prometheus' + - '--web.console.libraries=/etc/prometheus/console_libraries' + - '--web.console.templates=/etc/prometheus/consoles' + - '--storage.tsdb.retention.time=200h' + - '--web.enable-lifecycle' + + ports: + - "3004:9090" + networks: + - monitor-net + labels: + org.label-schema.group: "monitoring" + + promtail: + image: grafana/promtail:2.1.0 + container_name: promtail + hostname: promtail + restart: on-failure + + volumes: + - ./promtail/etc/var/lib/promtail/positions:/var/lib/promtail/positions + - ./promtail/etc/promtail/config.yml:/etc/promtail/config.yml + - /var/lib/docker/containers:/var/lib/docker/containers:ro + - /var/log:/var/log + command: + - '-config.file=/etc/promtail/config.yml' + + networks: + - monitor-net + labels: + org.label-schema.group: "monitoring" + + pushgateway: + image: prom/pushgateway:v1.4.0 + container_name: pushgateway + hostname: pushgateway + restart: unless-stopped + + expose: + - "9091" + networks: + - monitor-net + labels: + org.label-schema.group: "monitoring" + + smartctl: + build: + context: ./smartctl + container_name: smartctl + hostname: smartctl + restart: on-failure + privileged: true + + volumes: + - ./nodeexporter/etc:/var/lib/node_exporter + environment: + - INTERVAL=300 + networks: + - monitor-net + labels: + org.label-schema.group: "monitoring" +... diff --git a/grafana/provisioning/dashboards/dashboard.yml b/grafana/provisioning/dashboards/dashboard.yml index 68ec9c9..1dd768d 100644 --- a/grafana/provisioning/dashboards/dashboard.yml +++ b/grafana/provisioning/dashboards/dashboard.yml @@ -1,12 +1,14 @@ +--- apiVersion: 1 providers: - - name: 'Prometheus' - orgId: 1 - folder: '' - type: file - disableDeletion: false - editable: true - allowUiUpdates: true - options: - path: /etc/grafana/provisioning/dashboards \ No newline at end of file + - name: 'Prometheus' + orgId: 1 + folder: '' + type: file + disableDeletion: false + editable: true + allowUiUpdates: true + options: + path: /etc/grafana/provisioning/dashboards +... diff --git a/grafana/provisioning/datasources/datasource.yml b/grafana/provisioning/datasources/datasource.yml index 233dbbd..e9b4fa9 100644 --- a/grafana/provisioning/datasources/datasource.yml +++ b/grafana/provisioning/datasources/datasource.yml @@ -1,18 +1,20 @@ +--- apiVersion: 1 datasources: - - name: Prometheus - type: prometheus - access: proxy - orgId: 1 - url: http://prometheus:9090 - basicAuth: false - isDefault: true - editable: true - - name: Loki - type: loki - access: proxy - url: http://loki:3100 - basicAuth: false - isDefault: false - editable: true + - name: Prometheus + type: prometheus + access: proxy + orgId: 1 + url: http://prometheus:9090 + basicAuth: false + isDefault: true + editable: true + - name: Loki + type: loki + access: proxy + url: http://loki:3100 + basicAuth: false + isDefault: false + editable: true +... diff --git a/prometheus/prometheus.yml b/prometheus/prometheus.yml index 14583de..c030434 100644 --- a/prometheus/prometheus.yml +++ b/prometheus/prometheus.yml @@ -1,44 +1,46 @@ +--- global: - scrape_interval: 15s - evaluation_interval: 15s + scrape_interval: 15s + evaluation_interval: 15s - external_labels: - monitor: 'docker-host-alpha' + external_labels: + monitor: 'docker-host-alpha' rule_files: - - "alert.rules" + - "alert.rules" scrape_configs: - - job_name: 'prometheus' - scrape_interval: 10s - static_configs: - - targets: ['localhost:9090'] + - job_name: 'prometheus' + scrape_interval: 10s + static_configs: + - targets: [ 'localhost:9090' ] - - job_name: 'nodeexporter' - scrape_interval: 5s - static_configs: - - targets: ['nodeexporter:9100'] + - job_name: 'nodeexporter' + scrape_interval: 5s + static_configs: + - targets: [ 'nodeexporter:9100' ] - - job_name: 'nginxexporter' - scrape_interval: 5s - static_configs: - - targets: ['nginxexporter:9113'] + - job_name: 'nginxexporter' + scrape_interval: 5s + static_configs: + - targets: [ 'nginxexporter:9113' ] - - job_name: 'cadvisor' - scrape_interval: 5s - static_configs: - - targets: ['cadvisor:8080'] + - job_name: 'cadvisor' + scrape_interval: 5s + static_configs: + - targets: [ 'cadvisor:8080' ] - - job_name: 'pushgateway' - scrape_interval: 10s - honor_labels: true - static_configs: - - targets: ['pushgateway:9091'] + - job_name: 'pushgateway' + scrape_interval: 10s + honor_labels: true + static_configs: + - targets: [ 'pushgateway:9091' ] alerting: - alertmanagers: - - scheme: http - static_configs: - - targets: - - 'alertmanager:9093' + alertmanagers: + - scheme: http + static_configs: + - targets: + - 'alertmanager:9093' +... diff --git a/promtail/etc/promtail/config.yml b/promtail/etc/promtail/config.yml index 3e6bf90..a766bbe 100644 --- a/promtail/etc/promtail/config.yml +++ b/promtail/etc/promtail/config.yml @@ -1,26 +1,28 @@ +--- server: - http_listen_port: 9080 - grpc_listen_port: 0 + http_listen_port: 9080 + grpc_listen_port: 0 positions: - filename: /tmp/positions.yaml + filename: /tmp/positions.yaml clients: - - url: http://loki:3100/loki/api/v1/push + - url: http://loki:3100/loki/api/v1/push scrape_configs: - - job_name: containers - entry_parser: docker - static_configs: - - targets: - - localhost - labels: - job: containerlogs - __path__: /var/lib/docker/containers/*/*log - - job_name: system - static_configs: - - targets: - - localhost - labels: - job: varlogs - __path__: /var/log/*log + - job_name: containers + entry_parser: docker + static_configs: + - targets: + - localhost + labels: + job: containerlogs + __path__: /var/lib/docker/containers/*/*log + - job_name: system + static_configs: + - targets: + - localhost + labels: + job: varlogs + __path__: /var/log/*log +...