本次使用软件包版本分别为:
prometheus-2.37.0.linux-amd64.tar.gz
node_exporter-1.3.1.linux-amd64.tar.gz
grafana-enterprise-9.0.4.linux-amd64.tar.gz
一、安装prometheus
所有prometheus相关软件下载中心地址:https://prometheus.io/download/
1、下载解压,移动至/opt目录下(目录随意)
[root@MonitorServer ~]# wget https://github.com/prometheus/prometheus/releases/download/v2.37.0/prometheus-2.37.0.linux-amd64.tar.gz
[root@MonitorServer ~]# tar -zxvf prometheus-2.37.0.linux-amd64.tar.gz
[root@MonitorServer ~]# mkdir /opt/prometheus/
[root@MonitorServer ~]# mv prometheus-2.37.0.linux-amd64/* /opt/prometheus/
2、创建用户和数据存储目录
[root@MonitorServer prometheus]# groupadd prometheus
[root@MonitorServer prometheus]# useradd -g prometheus -m -d /var/lib/prometheus -s /sbin/nologin prometheus
[root@MonitorServer prometheus]# chown -R prometheus:prometheus /opt/prometheus/
3、创建 Systemd系统启动服务
[root@MonitorServer prometheus]# vi /usr/lib/systemd/system/prometheus.service #添加以下内容
[Unit]
Description=prometheus
After=network.target
[Service]
Type=simple
User=prometheus
ExecStart=/opt/prometheus/prometheus --config.file=/opt/prometheus/prometheus.yml --storage.tsdb.path=/opt/prometheus/data --storage.tsdb.retention=15d --log.level=info
Restart=on-failure
[Install]
WantedBy=multi-user.target
4、启动,并设置开机自启动,打开 prometheus 的 web 界面,默认端口为9090
[root@MonitorServer ~]# systemctl daemon-reload #重置systemctl服务
[root@MonitorServer ~]# systemctl enable prometheus.service #开机自启动
[root@MonitorServer ~]# systemctl start prometheus.service #启动
[root@MonitorServer ~]# systemctl status prometheus.service #查看运行状态
二、安装node_exporter
与传统的监控 zabbix 来对比的话,prometheus-server 就像是 mysql,负责存储数据。只不过这是时序数据库而不是关系型的数据库。数据的收集还需要其他的客户端,在 prometheus中叫做 exporter。针对不同的服务,有各种各样的 exporter,就好比 zabbix 的 zabbix-agent一样。
采集主机的运行指标如 CPU, 内存,磁盘等信息。我们可以使用 Node Exporter。Node Exporter 同样采用 Golang 编写,并且不存在任何的第三方依赖,只需要下载,解压即可运行。
1、下载解压,移动至/opt目录下(目录随意)
[root@MonitorServer ~]# wget https://github.com/prometheus/node_exporter/releases/download/v1.3.1/node_exporter-1.3.1.linux-amd64.tar.gz
[root@MonitorServer ~]# tar -zxvf node_exporter-1.3.1.linux-amd64.tar.gz
[root@MonitorServer ~]# mkdir /opt/node_exporter/
[root@MonitorServer ~]# mv node_exporter-1.3.1.linux-amd64/* /opt/node_exporter/
2、创建 Systemd系统启动服务,node_exporter默认是 9100 端口
[root@MonitorServer ~]# vi /usr/lib/systemd/system/node_exporter.service #添加以下内容
[Unit]
Description=node_exporter
Documentation=https://prometheus.io/
After=network.target
[Service]
Type=simple
User=prometheus
ExecStart=/opt/node_exporter/node_exporter
Restart=on-failure
[Install]
WantedBy=multi-user.target
3、启用服务,并添加本机测试
[root@MonitorServer ~]# systemctl start node_exporter
[root@MonitorServer ~]# systemctl enable node_exporter
[root@MonitorServer ~]# vi /opt/prometheus/prometheus.yml #添加以下内容
- job_name: 'node-prometheus'
scrape_interval: 10s
static_configs:
- targets: ['localhost:9100']
labels:
instance: node-prometheus
[root@MonitorServer ~]# systemctl restart prometheus.service #重启服务
三、安装grafana
1、下载解压,移动至/opt目录下(目录随意)
[root@MonitorServer ~]# wget https://dl.grafana.com/enterprise/release/grafana-enterprise-9.0.4.linux-amd64.tar.gz
[root@MonitorServer ~]# tar -xf grafana-enterprise-9.0.4.linux-amd64.tar.gz
[root@MonitorServer ~]# mkdir /opt/grafana
[root@MonitorServer ~]# mv grafana-9.0.4/* /opt/grafana/
2、创建用户和数据存储目录
[root@MonitorServer ~]# groupadd grafana
[root@MonitorServer ~]# useradd -g grafana -m -d /var/lib/grafana -s /sbin/nologin grafana
[root@MonitorServer ~]# chown -R grafana:grafana /opt/grafana/
3、创建 Systemd系统启动服务,并启动grafana默认是 3000 端口,账号密码 admin/admin
[root@MonitorServer ~]# vim /etc/systemd/system/grafana-server.service
[Unit]
Description=Grafana
After=network.target
[Service]
User=grafana
Group=grafana
Type=notify
ExecStart=/opt/grafana/bin/grafana-server -homepath /opt/grafana
Restart=on-failure
[Install]
WantedBy=multi-user.target
[root@MonitorServer ~]# systemctl start grafana-server
[root@MonitorServer ~]# systemctl enable grafana-server
4、配置,添加数据源为 Prometheus
5、URL 选 http://localhost:9090/,Name 为 Prometheus,Default 默认勾选
6、导入 Grafana 模版,你可以手动创建模版
输入模板的编号,这里我使用的是9276号模板,如要使用其他的模板,请到grafana的官网去查找
评论