Docker 安装Node-Exporter+ Prometheus Server +Grafana

下载镜像

docker pull prom/node-exporter
docker pull prom/prometheus
docker pull grafana/grafana

安装node-export

docker run -d -p 9100:9100 \
  -v "/proc:/host/proc:ro" \
  -v "/sys:/host/sys:ro" \
  -v "/:/rootfs:ro" \
  --net="host" \
  prom/node-exporter

查看端口:

[root@dev-002 ~]# netstat -anpt
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1080/sshd           
tcp        0      0 0.0.0.0:3000            0.0.0.0:*               LISTEN      1880/docker-proxy   
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1240/master         
tcp        0     52 192.168.0.152:22        192.168.2.192:59308     ESTABLISHED 1811/sshd: root@pts 
tcp6       0      0 :::9100                 :::*                    LISTEN      2180/node_exporter  
tcp6       0      0 :::22                   :::*                    LISTEN      1080/sshd           
tcp6       0      0 :::3000                 :::*                    LISTEN      1886/docker-proxy   
tcp6       0      0 ::1:25                  :::*                    LISTEN      1240/master         
tcp6       0      0 192.168.0.152:9100      172.17.0.3:54128        ESTABLISHED 2180/node_exporter 

访问url

http://192.168.0.152:9100/metrics

新建Prometheus文件夹:

mkdir /opt/prometheus
cd /opt/prometheus/
vim prometheus.yml

编辑配置文件prometheus.yml:

global:
  scrape_interval:     60s
  evaluation_interval: 60s
 
scrape_configs:
  - job_name: prometheus
    static_configs:
      - targets: ['localhost:9090']
        labels:
          instance: prometheus
 
  - job_name: linux
    static_configs:
      - targets: ['192.168.0.152:9100']
        labels:
          instance: localhost

启动prometheus

docker run  -d \
  -p 9090:9090 \
  -v /opt/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml  \
  prom/prometheus
[root@dev-002 ~]# netstat -anpt
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:9090            0.0.0.0:*               LISTEN      2013/docker-proxy   
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1080/sshd           
tcp        0      0 0.0.0.0:3000            0.0.0.0:*               LISTEN      1880/docker-proxy   
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1240/master         
tcp        0     52 192.168.0.152:22        192.168.2.192:59308     ESTABLISHED 1811/sshd: root@pts 
tcp6       0      0 :::9090                 :::*                    LISTEN      2020/docker-proxy   
tcp6       0      0 :::9100                 :::*                    LISTEN      2180/node_exporter  
tcp6       0      0 :::22                   :::*                    LISTEN      1080/sshd           
tcp6       0      0 :::3000                 :::*                    LISTEN      1886/docker-proxy   
tcp6       0      0 ::1:25                  :::*                    LISTEN      1240/master         
tcp6       0      0 192.168.0.152:9100      172.17.0.3:54128        ESTABLISHED 2180/node_exporter 

访问url

http://192.168.0.152:9090/graph

启动grafana

新建空文件夹grafana-storage,用来存储数据

mkdir /opt/grafana-storage

设置权限

chmod 777 -R /opt/grafana-storage

因为grafana用户会在这个目录写入文件,直接设置777

启动grafana

docker run -d \
  -p 3000:3000 \
  --name=grafana \
  -v /opt/grafana-storage:/var/lib/grafana \
  grafana/grafana

查看端口状态

[root@dev-002 ~]# netstat -anpt
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:9090            0.0.0.0:*               LISTEN      2013/docker-proxy   
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1080/sshd           
tcp        0      0 0.0.0.0:3000            0.0.0.0:*               LISTEN      1880/docker-proxy   
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1240/master         
tcp        0     52 192.168.0.152:22        192.168.2.192:59308     ESTABLISHED 1811/sshd: root@pts 
tcp6       0      0 :::9090                 :::*                    LISTEN      2020/docker-proxy   
tcp6       0      0 :::9100                 :::*                    LISTEN      2180/node_exporter  
tcp6       0      0 :::22                   :::*                    LISTEN      1080/sshd           
tcp6       0      0 :::3000                 :::*                    LISTEN      1886/docker-proxy   
tcp6       0      0 ::1:25                  :::*                    LISTEN      1240/master         
tcp6       0      0 192.168.0.152:9100      172.17.0.3:54128        ESTABLISHED 2180/node_exporter 

访问url:

http://192.168.91.132:3000/
​

配置:Grafana
配置数据源
在这里插入图片描述
配置:dashboards

UID:11074
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,以下是一个基于Docker Compose的搭建PrometheusGrafana、Alertmanager、Blackbox ExporterNode Exporter的示例: ```yaml version: "3" services: prometheus: image: prom/prometheus container_name: prometheus ports: - "9090:9090" volumes: - ./prometheus/prometheus.yml:/etc/prometheus/prometheus.yml command: - '--config.file=/etc/prometheus/prometheus.yml' - '--web.enable-admin-api' restart: always grafana: image: grafana/grafana container_name: grafana ports: - "3000:3000" volumes: - ./grafana:/var/lib/grafana restart: always alertmanager: image: prom/alertmanager container_name: alertmanager ports: - "9093:9093" volumes: - ./alertmanager/config.yml:/etc/alertmanager/config.yml command: - '--config.file=/etc/alertmanager/config.yml' restart: always blackbox-exporter: image: prom/blackbox-exporter container_name: blackbox-exporter ports: - "9115:9115" volumes: - ./blackbox-exporter/config.yml:/etc/blackbox-exporter/config.yml command: - '--config.file=/etc/blackbox-exporter/config.yml' restart: always node-exporter: image: prom/node-exporter container_name: node-exporter ports: - "9100:9100" restart: always ``` 需要注意的是,这里的配置文件都需要自己创建并且挂载到对应的容器中。例如,prometheus.yml、config.yml和config.yml分别对应Prometheus、Alertmanager和Blackbox Exporter的配置文件。同时,Grafana的数据目录也需要挂载到主机上以便数据持久化。 另外,需要注意的是这只是一个示例,具体的配置文件需要根据实际情况进行修改。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jockerzoo@

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值