node_exporter+prometheus+grafana实现主机监控

概要

本文介绍运维常用的主机监控解决方案,node_exporter+prometheus+grafana实现主机监控
应用服务器安装node_exporter,node_exporter将主机信息发到prometheus,经prometheus数据处理后在grafana进行页面展示
下面是具体实施步骤

步骤

1、安装grafana

docker run -d -p 3000:3000 grafana/grafana

通过ip:3000可以访问到grafana
node_exporter+prometheus+grafana实现主机监控_第1张图片


2、安装prometheus

docker run -d --name=prometheus -p 9090:9090 -v /etc/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus


3、在应用服务器安装node_exporter

上传文件node_exporter-1.1.2.linux-amd64.tar.gz到 /usr/local/src/下,执行下面的代码,9100端口启动,就说明node_exporter安装成功(不同的操作系统安装方法略有不同,下面代码适合centos7,ubuntu)
node_exporter-1.1.2.linux-amd64.tar.gz可以到官网下载

#上传文件node_exporter-1.1.2.linux-amd64.tar.gz到 /usr/local/src/下
NODE_PATH='/data/prometheus/node_exporter/'
mkdir -p ${NODE_PATH}
useradd prometheus
cd /usr/local/src/
tar -xvf node_exporter-1.1.2.linux-amd64.tar.gz
cp node_exporter-1.1.2.linux-amd64/node_exporter ${NODE_PATH}
chown -R prometheus.prometheus ${NODE_PATH}
 
#下面适合centos7,ubuntu
#此命令可以区别操作系统:cat /etc/redhat-release
cat > /lib/systemd/system/node_exporter.service <<EOF
[Unit]
Description=node_exporter
Documentation=https://prometheus.io/
After=network.target
  
[Service]
Type=simple
User=prometheus
ExecStart=/data/prometheus/node_exporter/node_exporter
ExecStop=/usr/bin/killall node_exporter
MemoryLimit=300M
CPUQuota=100%
Restart=on-failure
  
[Install]
WantedBy=multi-user.target
EOF
 
systemctl daemon-reload
systemctl enable node_exporter.service
systemctl start node_exporter.service
 
sleep 3
netstat -plntu |grep 9100

4、将node_exporter接入prometheus

vim /etc/prometheus/prometheus.yml 修改prometheus配置文件,其中的ip是已经安装node_exporter的服务器ip

global:
  scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.

scrape_configs:
  - job_name: 'prometheus'
    static_configs:
    - targets: ['127.0.0.1:9090']
  - job_name: 'job1'
    static_configs:
      - targets: ['ip1:9100']
  - job_name: 'job2'
    static_configs:
      - targets: ['ip2:9100']

5、重启prometheus

dockers restart prometheus


6、grafana接入prometheus数据源
node_exporter+prometheus+grafana实现主机监控_第2张图片


7、下载prometheus展示模板

在https://grafana.com/grafana/dashboards/
挑选一个好看的prometheus模板,下载下来,是一个json文件


8、在grafana导入json模板,选择步骤6接入的prometheus数据源
node_exporter+prometheus+grafana实现主机监控_第3张图片


9、最后效果

你可能感兴趣的