Установка Grafana+Telegraf+InfluxDB

Установка Grafana на VPS-хостинг

# apt-get install -y apt-transport-https
# apt-get install -y software-properties-common wget
# wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -
# echo "deb https://packages.grafana.com/oss/deb stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list
# apt-get update
# apt-get install grafana
# /bin/systemctl daemon-reload
# /bin/systemctl enable grafana-server
# systemctl start grafana-server

Grafana-Server активен на порту 3000.

Конфигурация Nginx реверс-прокси для Grafana

/etc/nginx/sites-available/grafana.bds.su.conf

map $http_upgrade $connection_upgrade {
 default upgrade;
 '' close;
}

server {
   listen 80;
   server_name grafana.bds.su;

   # Enforce HTTPS
   return 301 https://$server_name$request_uri;
}

server {
   listen 443      ssl http2;
   server_name grafana.bds.su;
   access_log  /var/log/nginx/grafana.bds.su-access.log;
   error_log  /var/log/nginx/grafana.bds.su-error.log warn;

   ssl_certificate /etc/letsencrypt/live/grafana.bds.su/fullchain.pem;
   ssl_certificate_key /etc/letsencrypt/live/grafana.bds.su/privkey.pem;
   include /etc/letsencrypt/options-ssl-nginx.conf;
   ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;

   add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload;" always;
   client_max_body_size 64M;
   fastcgi_buffers 64 4K;

   proxy_connect_timeout 600;
   proxy_send_timeout 600;
   proxy_read_timeout 600;
   send_timeout 600;

   gzip on;
   gzip_vary on;
   gzip_comp_level 4;
   gzip_min_length 256;
   gzip_proxied expired no-cache no-store private no_last_modified no_etag auth;
   gzip_types application/atom+xml application/javascript application/json application/ld+json application/manifest+json application/rss+xml application/vnd.geo+json appl
ication/vnd.ms-fontobject application/x-font-ttf application/x-web-app-manifest+json application/xhtml+xml application/xml font/opentype image/bmp image/svg+xml image/x-ic
on text/cache-manifest text/css text/plain text/vcard text/vnd.rim.location.xloc text/vtt text/x-component text/x-cross-domain-policy;

   add_header Referrer-Policy                      "no-referrer"   always;
   add_header X-Content-Type-Options               "nosniff"       always;
   add_header X-Download-Options                   "noopen"        always;
   add_header X-Frame-Options                      "SAMEORIGIN"    always;
   add_header X-Permitted-Cross-Domain-Policies    "none"          always;
   add_header X-Robots-Tag                         "none"          always;
   add_header X-XSS-Protection                     "1; mode=block" always;

   fastcgi_hide_header X-Powered-By;

   root /var/www/vhosts/grafana.bds.su;
   index index.html index.htm;

   location / {
     proxy_set_header Host $http_host;
     proxy_pass http://localhost:3000/;
   }

   # Proxy Grafana Live WebSocket connections.
   location /api/live {
     rewrite  ^/(.*)  /$1 break;
     proxy_http_version 1.1;
     proxy_set_header Upgrade $http_upgrade;
     proxy_set_header Connection $connection_upgrade;
     proxy_set_header Host $http_host;
     proxy_pass http://localhost:3000/;
   }

}

Установка InfluxDB

# wget -qO- https://repos.influxdata.com/influxdb.key | gpg --dearmor > /etc/apt/trusted.gpg.d/influxdb.gpg
# export DISTRIB_ID=$(lsb_release -si); export DISTRIB_CODENAME=$(lsb_release -sc)
# echo "deb [signed-by=/etc/apt/trusted.gpg.d/influxdb.gpg] https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" > /etc/apt/sources.list.d/influxdb.list
# apt-get update && sudo apt-get install influxdb
# systemctl enable influxdb && systemctl start influxdb

Создание базы данных метрик для Grafana

# influx
Connected to http://localhost:8086 version 1.8.10
InfluxDB shell version: 1.8.10
> CREATE USER admin WITH PASSWORD 'PASSWORD-SECRET' WITH ALL PRIVILEGES
> CREATE DATABASE grafana_metrics
> exit

Установка Telegraf

# apt-get install telegraf
# systemctl enable telegraf.service && systemctl start telegraf.service

Конфигурация Telegraf

Необходимо указать логин-пароль базы данных

Похожие записи

Интеграция Nextcloud с Keycloak через OpenID Connect: пошаговое руководство по настройке SSO

Nextcloud — отличное решение для хранения файлов, но управление пользователями вручную становится головной болью при масштабировании. Keycloak позволяет централизовать аутентификацию, обеспечивая безопасность, поддержку MFA (двухфакторной аутентификации) и удобный вход через…

Установка и оптимизация WordPress на Ubuntu 24.04 (LEMP + Redis) на VPS с ограниченным объёмом RAM

Пакеты в Ubuntu по умолчанию настроены на работу с серверами, имеющими довольно много оперативной памяти. Нам нужно жёстко ограничить потребление памяти для работы на Mikro VPS. Запускать будем мой блог…

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Читать еще статьи

Интеграция Nextcloud с Keycloak через OpenID Connect: пошаговое руководство по настройке SSO

Интеграция Nextcloud с Keycloak через OpenID Connect: пошаговое руководство по настройке SSO

Установка и оптимизация WordPress на Ubuntu 24.04 (LEMP + Redis) на VPS с ограниченным объёмом RAM

Установка и оптимизация WordPress на Ubuntu 24.04 (LEMP + Redis) на VPS с ограниченным объёмом RAM

Интеграция Gitea и Keycloak: пошаговое руководство

Интеграция Gitea и Keycloak: пошаговое руководство

Настройка VS Code AI Chat для работы со сторонним OpenAI провайдером.

Настройка VS Code AI Chat для работы со сторонним OpenAI провайдером.

ProxyChains специфическая работа с прокси-серверами в UNIX/Linux-системах

ProxyChains специфическая работа с прокси-серверами в UNIX/Linux-системах

Полное руководство по установке и настройке мониторинга с Grafana и Prometheus: от установки до первого дашборда

Полное руководство по установке и настройке мониторинга с Grafana и Prometheus: от установки до первого дашборда