开源监控黄金组合 Grafana + Prometheus + NodeExporter 监控 VPS 服务器

为什么要监控VPS服务器

掌握服务器的运行状态,保障在用服务的正常运行

监控服务器的方案

用过的服务器监控方案有:

  • Nezha,特点:实时监控服务器试试运行状态,部署容易,有报警消息推送,有主题,可以css定制主题
  • Uptime Kuma,特点:监控服务器试试运行状态,部署简单,有消息推送,主题简洁大气
  • Grafana+Prometheus/Zabbix:广泛应用于各类生产环境,插件丰富多样,出了监控服务器状态外,还可以监控如Docker,K8s,网络等内容。直接在Linux下部署稍显麻烦,最近研究了Docker部署方式,可一键部署,遂献给大家。

Grafana+Prometheus+NodeExporter部署步骤

部署Docker和Docker-Compose环境

Docker 部署

curl -sSL https://get.daocloud.io/docker | sh
systemctl start docker
systemctl enable docker

Docker-Compose 部署

curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose && ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

编辑 Docker-Compose 文件

新建Grafana目录:

mkdir Grafana

进入Grafana目录,在目录下新建 docker-compose.yml 文件:

cd Grafana
nano docker-compose.yml

把下面的内容复制进 docker-compose 中:

version: '3.3'

services:

  grafana:
    image: grafana/grafana:latest
    container_name: grafana
    depends_on:
      - renderer
      - prometheus
    ports:
      - 3000:3000
    environment:
      GF_RENDERING_SERVER_URL: http://renderer:8081/render
      GF_RENDERING_CALLBACK_URL: http://grafana:3000/
      GF_LOG_FILTERS: rendering:debug
    volumes:
      - ./data/grafana/grafana_data:/var/lib/grafana
  renderer:
    image: grafana/grafana-image-renderer:latest
    ports:
      - 8081
  node_exporter:
    image: quay.io/prometheus/node-exporter:latest
    container_name: node_exporter
    hostname: node_exporter
    command:
      - '--path.rootfs=/host'
    network_mode: host
    pid: host
    restart: unless-stopped
    volumes:
      - '/:/host:ro,rslave'
  prometheus:
    image: prom/prometheus:v2.26.0
    restart: always
    container_name:  prometheus
    hostname:  prometheus
    ports:
      - 9090:9090
    volumes:
      - ./data/prometheus/conf/prometheus.yml:/etc/prometheus/prometheus.yml
    command: --config.file=/etc/prometheus/prometheus.yml

新建 grafana 数据目录并修改权限:

mkdir -p data/grafana/grafana_data && chmod 777 data/grafana/grafana_data

新建 promtheus 的配置文件,并编辑内容:

mkdir -p data/prometheus/conf && nano data/prometheus/conf/prometheus.yml

把下面的内容复制进 promtheus 配置文件中:

global:
  scrape_interval: 5s # pull metrics interval

scrape_configs:
  - job_name: 'node_http'
    static_configs:
            - targets: ["127.0.0.1:9100"]

启动docker-compose:

docker-compose up -d

登录界面:

加载监控图形界面

输入网址 http://服务器IP:3000 ,用户名 admin,密码 admin,然后登录

开源监控黄金组合 Grafana + Prometheus + NodeExporter 监控 VPS 服务器

配置数据库:选择 Configuration -> Datasource

开源监控黄金组合 Grafana + Prometheus + NodeExporter 监控 VPS 服务器

选择 Prometheus

开源监控黄金组合 Grafana + Prometheus + NodeExporter 监控 VPS 服务器

Promethues 的配置页面中,填入URL,http://localhost:9090 ,点击 Save and Test

开源监控黄金组合 Grafana + Prometheus + NodeExporter 监控 VPS 服务器

开源监控黄金组合 Grafana + Prometheus + NodeExporter 监控 VPS 服务器

点选 DashBoard 中的 Browse

开源监控黄金组合 Grafana + Prometheus + NodeExporter 监控 VPS 服务器

点击 Import

开源监控黄金组合 Grafana + Prometheus + NodeExporter 监控 VPS 服务器

输入面板编号 8919,点击 Import

选择 Promethues数据库,点 Import

开源监控黄金组合 Grafana + Prometheus + NodeExporter 监控 VPS 服务器

大功告成.

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
WordPressWordpress主题

WordPress Sakura主题

2021-12-13 14:23:08

计算机网络

什么是CDN?CDN能为我们做什么?我们为什么要了解他?

2022-8-8 22:17:20

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
搜索