VK Cloud logo

Prometheus, Node exporter және Grafana көмегімен Redis мониторингі

Prometheus — процестерден (exporters) алынатын метрикаларды жинауға және сақтауға арналған сервер. Жиналған деректерді Prometheus веб-интерфейсі арқылы да, жеке визуализация құралдары арқылы да, мысалы, Grafana арқылы қарауға болады.

Бұл нұсқаулық мыналарға көмектеседі:

  • VK Cloud ішіндегі CentOS 8.4 операциялық жүйесінде Prometheus 2.45.1 серверін өрістетуге;
  • Single конфигурациясындағы Redis 5 ДҚБЖ-ға Node exporter кеңейтімін орнатуға;
  • Redis-тен алынған деректерді Prometheus және Grafana 10 жүйелерінде визуализациялауды баптауға.

Prometheus сервері, ДҚБЖ және Grafana бөлек ВМ-дерде өрістетіледі.

Дайындық қадамдары

  1. Виртуалды желі жасаңыз, мысалы, monitoring-net.

  2. Prometheus сервері үшін ВМ жасаңыз:

    • атауы: Centos_8_5_Prometheus;
    • операциялық жүйе: CentOS 8.4;
    • желі: monitoring-net;
    • жария IP мекенжайы: оны тағайындаңыз, мысал ретінде 87.239.239.239 келтірілген;
    • қауіпсіздік топтары: default, all.

    Жасалған инстанстың ішкі IP мекенжайы: 10.0.3.7.

  3. ДҚ инстансын жасаңыз:

    • атауы: Redis-5;
    • ДҚБЖ: Redis 5;
    • конфигурация түрі: Single;
    • желі: monitoring-net;

    Жасалған инстанстың ішкі IP мекенжайы: 10.0.3.13.

  4. monitoring-net желісінде Grafana 10 өрістетіңіз.

2. Prometheus орнатыңыз және баптаңыз

  1. Redis-5 ДҚ инстансы үшін Node exporter кеңейтімін орнатыңыз. Орнату кезінде listen_port = 9100 параметрін көрсетіңіз.

  2. Centos_8_5_Prometheus ВМ-не қосылыңыз.

  3. Prometheus-ті жүктеп алып, жүктелген архивті ашыңыз:

    sudo suexport VERSION="2.45.1"wget https://github.com/prometheus/prometheus/releases/download/v$VERSION/prometheus-$VERSION.linux-amd64.tar.gz -O - | tar -xzv -C /tmp
  4. prometheus-2.45.1.linux-amd64 репозиторийінің мазмұнын көшіріңіз:

    mkdir /etc/prometheusmkdir /var/lib/prometheuscp /tmp/prometheus-$VERSION.linux-amd64/prometheus /usr/local/bincp /tmp/prometheus-$VERSION.linux-amd64/promtool /usr/local/bincp -r /tmp/prometheus-$VERSION.linux-amd64/consoles /etc/prometheuscp -r /tmp/prometheus-$VERSION.linux-amd64/console_libraries /etc/prometheuscp /tmp/prometheus-$VERSION.linux-amd64/prometheus.yml /etc/prometheus/
  5. (Опционалды) Уақытша директориядан файлдарды жойыңыз:

    rm -rf /tmp/prometheus-$VERSION.linux-amd64
  6. prometheus тобын және пайдаланушысын жасаңыз, оған байланысты репозиторийлерге құқықтар тағайындаңыз:

    groupadd --system prometheususeradd --system -g prometheus -s /bin/false prometheuschown -R prometheus:prometheus /var/lib/prometheus /etc/prometheuschown prometheus:prometheus /usr/local/bin/prometheus /usr/local/bin/promtool
  7. /etc/prometheus/prometheus.yml файлының scrape_configs блогына мазмұнды қосыңыз:

    - job_name: "node"  scrape_interval: 10s  static_configs:    - targets: ["10.0.3.13:9100"]
  8. Келесі мазмұнмен Prometheus-ті іске қосу сценарийін /etc/systemd/system/prometheus.service жасаңыз:

    [Unit]Description=PrometheusWants=network-online.targetAfter=network-online.target[Service]User=prometheusGroup=prometheusExecStart=/usr/local/bin/prometheus \    --config.file /etc/prometheus/prometheus.yml \    --storage.tsdb.path /var/lib/prometheus \    --web.console.templates=/etc/prometheus/consoles \    --web.console.libraries=/etc/prometheus/console_librariesExecReload=/bin/kill -HUP $MAINPID[Install]WantedBy=default.target
  9. Prometheus-ті іске қосыңыз:

    systemctl daemon-reloadsystemctl start prometheus.servicesystemctl enable prometheus.service
  10. Prometheus дұрыс жұмыс істеп тұрғанына көз жеткізіңіз:

    systemctl status prometheus.service

    Команда шығысында active күйі болуы керек.

  11. Деректер жиналуы үшін бірнеше минут күтіңіз.

  12. http://87.239.239.239:9090 мекенжайына өтіңіз.

    Prometheus серверінің веб-интерфейсі ашылады.

  13. (Опционалды) Қолжетімді деректермен танысыңыз:

  14. (Опционалды) Centos_8_5_Prometheus ВМ-нен Floating IP-мекенжайын ажыратыңыз.

3. Grafana жүйесінде деректерді визуализациялауды баптаңыз

  1. Grafana веб-интерфейсіне өтіңіз.
  2. Жаңа деректер көзін (data source) қосыңыз: Prometheus server URL өрісінде http://10.0.3.7:9090 көрсетіңіз.
  3. Алынатын деректерді визуализациялау үшін графиктер жиындарын орнатыңыз, мысалы, дайын нұсқаны — Node Exporter Full импорттау арқылы.

4. (Опционалды) Сынақ жүктемесінен кейін мониторинг деректерін тексеріңіз

  1. Redis-5 ВМ-не өзіңізге ыңғайлы тәсілмен сынақ жүктемесін жасаңыз.

  2. Grafana графиктеріндегі көрсеткіштердің өзгергеніне көз жеткізіңіз.

Пайдаланылмайтын ресурстарды жойыңыз

Құрылған ресурстар тарификацияланады және квоталарды жұмсайды. Егер олар енді қажет болмаса:

  1. Өрістетілген виртуалды машиналарды жойыңыз.
  2. Grafana бар виртуалды машинаны жойыңыз.
  3. Centos_8_5_Prometheus виртуалды машинасына тағайындалған Floating IP-мекенжайын жойыңыз.
  4. Виртуалды IP мекенжайы тағайындалған портты жойыңыз.
  5. monitoring-net желісін жойыңыз.