安装Prometheus
要在Ubuntu 18.04上安装Prometheus,您可以按照以下步骤进行:
sudo apt-get update
安装依赖:
sudo apt-get install wget tar
下载最新的Prometheus版本:
wget https://github.com/prometheus/prometheus/releases/download/v2.30.3/prometheus-2.30.3.linux-amd64.tar.gz
解压下载的文件:
tar xvf prometheus-*.tar.gz
进入解压后的目录,执行
cd prometheus-*
./prometheus
将Prometheus设置为服务,以便在系统启动时自动运行
-
创建一个新的systemd服务文件,例如prometheus.service,在/etc/systemd/system/目录下:
sudo nano /etc/systemd/system/prometheus.service
-
在打开的编辑器中,粘贴以下内容:
[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target
[Service]
User=metax
Group=metax
Type=simple
ExecStart=/home/metax/prometheus-2.30.3.linux-amd64/prometheus \
--config.file=/home/metax/prometheus-2.30.3.linux-amd64/prometheus.yml
WorkingDirectory=/home/metax/prometheus-2.30.3.linux-amd64/prometheus
[Install]
WantedBy=multi-user.target
请将/path/to/your/prometheus/directory/替换为您的Prometheus二进制文件和配置文件的实际路径。
-
保存并关闭文件。
-
重新加载systemd以使其识别新服务:
sudo systemctl daemon-reload
- 启动Prometheus服务
sudo systemctl start prometheus
- 验证Prometheus服务是否正在运行:
sudo systemctl status prometheus
- 如果一切正常,您可以设置Prometheus在启动时自动运行:
sudo systemctl enable prometheus
修改Prometheus配置文件
打开/home/metax/prometheus-2.30.3.linux-amd64目录,修改prometheus.yml文件,添加以下内容,
- job_name: node
static_configs:
- targets: ['localhost:9100']
- job_name: 'video_ai'
static_configs:
- targets: ['video_ai_host:video_ai_port'] # video_ai_host 和 video_ai_port 是 video_ai 进程的地址和端口
然后重启
systemctl restart prometheus
打开prometheus主页
http://10.7.124.63:9090
安装监控服务Node
下载并安装最新的node_exporter
https://github.com/prometheus/node_exporter/releases
wget https://github.com/prometheus/node_exporter/releases/download/v*/node_exporter-*.*-amd64.tar.gz
tar xvfz node_exporter-*.*-amd64.tar.gz
cd node_exporter-*.*-amd64
配置Node为服务及开机启动
vim /etc/systemd/system/node_exporter.service
#添加以下内容
[Unit]
Description=Prometheus node_exporter
[Service]
User=nobody
WorkingDirectory=/home/metax/node_exporter-1.6.1.linux-amd64/
ExecStart=/home/metax/node_exporter-1.6.1.linux-amd64/node_exporter
[Install]
WantedBy=default.target
设置开机启动
#1.加载系统服务
systemctl daemon-reload
#2.启动服务
systemctl start node_exporter.service
#3.设置为系统自启动
systemctl enable node_exporter.service
Node查看监控的数据
http://10.7.124.63:9100/metrics
安装process-exporter
wget https://github.com/ncabatoff/process-exporter/releases/download/v0.5.0/process-exporter-0.5.0.linux-amd64.tar.gz
tar -xvf process-exporter-0.5.0.linux-amd64.tar.gz -C /usr/local/
gitlab 地址
https://github.com/ncabatoff/process-exporter
配置Node为服务及开机启动
[Unit]
Description=Prometheus process_exporter
[Service]
User=nobody
WorkingDirectory=/home/metax/process-exporter-0.5.0.linux-amd64/process-exporter-0.5.0.linux-amd64/
ExecStart=/home/metax/process-exporter-0.5.0.linux-amd64/process-exporter-0.5.0.linux-amd64/process-exporter -config.path process-name.yaml
[Install]
WantedBy=default.target
#1.加载系统服务
systemctl daemon-reload
#2.启动服务
systemctl start process-exporter.service
#3.设置为系统自启动
systemctl enable process-exporter.service
监控多个进程
Process-Exporter的做法是配置需要监控的进程的名称,他会去搜索该进程从而得到其需要的监控信息,其实也就是我们常做的“ps -efl | grep xxx”命令来查看对应的进程。
配置文件一开始是不存在的
,需要我们创建,名字可以自定义:
vim process-name.yaml
process_names:
- name: "{{.Matches}}"
cmdline:
- 'nginx'
- name: "{{.Matches}}"
cmdline:
- 'zombie'
./process-exporter -config.path process-name.yaml &
查看数据:
curl http://localhost:9256/metrics
Grafana监控进程的模板配置
https://grafana.com/grafana/dashboards/249-named-processes/
https://grafana.com/grafana/dashboards/715-named-processes-stacked/
249模板效果:
监控数据查看
http://10.7.124.63:9256/metrics
网络教程
https://blog.csdn.net/u012599988/article/details/102929269
安装Grafana
-
更新系统软件包
sudo apt update
-
安装grafana
sudo apt install -y grafana //如果报错:No apt package "grafana", but there is a snap with that name. Try "snap install grafana" //执行 sudo apt install snapd sudo snap install grafana //查看grafana 服务名称 systemctl list-units --type=service //找到grafana服务名称 //查看服务状态 systemctl status snap.grafana.grafana //设置开启启动 systemctl enable snap.grafana.grafana
-
启动grafana服务
sudo systemctl start grafana-server
-
配置Grafana服务在系统启动时自动运行:
sudo systemctl enable grafana-server
-
在Web浏览器中访问Grafana的默认端口(3000):http://localhost:3000
-
使用默认的用户名和密码(admin/admin)登录到Grafana。
-
在首次登录后,您将被要求更改密码。
-
配置数据源:在Grafana中,您需要配置至少一个数据源才能显示和查询数据。您可以根据您的需求选择不同的数据源,例如Graphite、Prometheus、InfluxDB等。请参考Grafana官方文档中的数据源配置指南。
-
创建仪表板:在Grafana中,您可以创建仪表板来可视化和监控数据。您可以根据您的需求创建自定义的仪表板,添加面板、图表和警报等。请参考Grafana官方文档中的仪表板创建指南。
请注意,这只是一个基本的安装和使用Grafana的指南。根据您的具体需求和环境,可能需要进行更多的配置和调整。您可以参考Grafana官方文档以获取更详细的指导和示例。
打开grafanaweb页面,添加dashboards 及 Node Exporter Full模板
//模板地址
https://grafana.com/grafana/dashboards/1860-node-exporter-full/
官网下载grafana(推荐安装方式)
进入官网:
https://grafana.com/grafana/dashboards/?dataSource=prometheus&pg=hp&plcmt=lt-box-dashboards&orderBy=downloads&direction=desc
点击右上角Downloads->self-managed->Grafana->Download->指定版本->下载deb包
https://grafana.com/grafana/download/9.4.7?pg=get&plcmt=selfmanaged-box1-cta1
安装步骤:
sudo apt-get install -y adduser libfontconfig1
wget https://dl.grafana.com/enterprise/release/grafana-enterprise_9.4.7_amd64.deb
sudo dpkg -i grafana-enterprise_9.4.7_amd64.deb
systemctl status grafana-server
systemctl enable grafana-server
systemctl restart grafana-server
打开grafanaweb页面
-
在Web浏览器中访问Grafana的默认端口(3000):http://localhost:3000
-
使用默认的用户名和密码(admin/admin)登录到Grafana。
-
在首次登录后,您将被要求更改密码。
添加dashboards 及 Node Exporter Full模板
//模板地址
https://grafana.com/grafana/dashboards/1860-node-exporter-full/
完整网络教程
带截图的网络教程,该教程是以docker部署的,可以借鉴
https://segmentfault.com/a/1190000040083213#item-5
QA
- Grafana下载dashboards模板时,web会报错eg:
Templating init failed
e.replace is not a function
这种一般是因为grafana版本问题,官网的模板一般都会标注版本信息, 比如: