Prometheus
一、基础简介
1.1.prometheus简介
1.2.数据模型
1.3.指标类型
1.4.Jobs和Instances
二、安装部署
2.1.rpm部署监控组件
2.2.docker部署监控组件
三、PromSQL
3.1.PromQL基本使用
3.2.Prometheus基础查询
3.3.查询操作符
3.4.内置函数
3.5.在HTTPAPI中使用PromQL
3.6.最佳实践
四、告警处理
4.1.告警简介
4.2.自定义Prometheus告警规则
4.3.常见告警规则
4.4.部署Alertmanager
4.5.Alertmanager配置概述
4.6.基于标签的告警处理路由
4.7.使用Receiver接收告警信息
4.8.自定义告警模板
4.9.屏蔽告警通知
4.10.使用RecodingRules优化性能
五、Exporter
5.1.exporter
5.2.NodeExporter
5.3.ProcessExporter
5.4.cAdvisor
5.5.MysqlExporter
5.6.BlackboxExporter
5.7.ProcessExporter
5.8.Ipmiexport
5.9.Pushgateway
PostgresExporter
六、Grafana
6.1.grafana基本概念
6.2.创建dashboard与Panel
6.3.变化趋势:Graph面板
6.4.graph面板常用操作
6.5.分布统计:Heatmap面板
6.6.当前状态:SingleStat面板
6.7.变量
6.8.grafana报警
七、集群高可用
7.1.本地存储
7.2.远程存储
7.3.联邦集群
7.4.prometheus高可用
7.5.Alertmanager高可用
八、服务发现
8.1.Prometheus与服务发现
8.2.基于文件的服务发现
8.3.标签管理
九、Operator
9.1.什么是PrometheusOperator
9.2.PrometheusOperator自定义监控项
9.3.配置PrometheusRule
十、AlterManager
10.1.基础入门
10.2.配置详解
本文档使用 MrDoc 发布
-
+
home page
2.1.rpm部署监控组件
# 一、安装go 1. [下载链接](https://studygolang.com/dl) 1. 解压安装 ``` # tar -C /usr/local/ -xvf go1.14.1.linux-amd64.tar.gz ``` 2. 配置环境变量 ```bash # vim /etc/profile export PATH=$PATH:/usr/local/go/bin # source /etc/profile ``` 3. 验证  # 二、安装prometheus - [下载链接](https://prometheus.io/download/) 1. 安装 ```bash mkdir -p /usr/local/prometheus/{bin,etc} wget https://github.com/prometheus/prometheus/releases/download/v2.43.0/prometheus-2.43.0.linux-amd64.tar.gz tar -xvf prometheus-2.43.0.linux-amd64.tar.gz mv prometheus-2.43.0.linux-amd64/* /usr/local/prometheus mv /usr/local/prometheus/prometheus /usr/local/prometheus/bin/ mv /usr/local/prometheus/promtool /usr/local/prometheus/bin/ mv /usr/local/prometheus/prometheus.yml /usr/local/prometheus/etc/ ``` 2. 创建服务脚本 ```bash tee > /usr/lib/systemd/system/prometheus.service <<EOF [Unit] Description=Prometheus Documentation=https://prometheus.io After=network.target [Service] # Type设置为notify时,服务会不断重启 Type=simple User=root Group=root # --storage.tsdb.path是可选项,默认数据目录在/data目录下 # --web.enable-lifecycle 允许通过API接口实现热更新 ExecStart=/usr/local/prometheus/bin/prometheus \ --config.file=/usr/local/prometheus/etc/prometheus.yml \ --web.enable-lifecycle --log.level=info \ --storage.tsdb.path=/data/prometheus/tsdb Restart=on-failure [Install] WantedBy=multi-user.target EOF ``` 3. 启动prometheus ``` systemctl daemon-reload systemctl enable prometheus.service systemctl start prometheus.service systemctl status prometheus ``` 4. 验证 浏览器打开 IP:9090 端口即可打开普罗米修斯自带的监控页面 <br /> # 三、安装Grafana 1. [下载链接](https://grafana.com/grafana/download) 1. 安装 ``` yum install -y https://dl.grafana.com/enterprise/release/grafana-enterprise-11.1.4-1.x86_64.rpm ``` 2. 启动 ``` systemctl enable grafana-server.service systemctl start grafana-server.service ``` 3. 访问grafana 浏览器访问 IP:3000端口 即可打开grafana页面 默认用户名密码都是 `admin` 初次登录会要求修改默认的登录密码 <br /> 4. 添加prometheus数据源 - 点击主界面的“Add data source”  - 选择prometheus  - 添加url地址并保存  - 添加dashboard  - 查看仪表盘  # 四、使用node-exporter监控linux主机 1. 被监控的机器安装node-exporter ```bash wget https://github.com/prometheus/node_exporter/releases/download/v1.8.2/node_exporter-1.8.2.linux-amd64.tar.gz tar -zxf node_exporter-*.linux-amd64.tar.gz mv node_exporter-*.linux-amd64/node_exporter /usr/local/prometheus/bin/ ``` 2. 创建服务脚本 ```bash tee > /usr/lib/systemd/system/node_exporter.service <<EOF [Unit] Description=node_exporter After=network.target [Service] Type=simple User=root ExecStart=/usr/local/prometheus/bin/node_exporter Restart=on-failure [Install] WantedBy=multi-user.target EOF ``` 3. 启动node_exporter ```bash systemctl daemon-reload systemctl enable node_exporter.service systemctl start node_exporter.service systemctl status node_exporter.service ``` 4. prometheus服务端添加监控项,然后重启prometheus ```bash # vim /usr/local/Prometheus/prometheus.yml os_full=$([ -f /etc/os-release ] && awk -F'[= "]' '/PRETTY_NAME/{print $3,$4,$5}' /etc/os-release) if [[ $os_full =~ 'Ubuntu' ]]; then IpCommand='/bin/ip';elif [[ $os_full =~ 'CentOS' ]]; then IpCommand='/sbin/ip';fi localIP=`$IpCommand address|grep $(cat /proc/net/dev|awk '{print $1,$10}'|grep -Ev 'Inter|lo|face'|sort -rn -k2|head -1|awk -F: '{print $1}')|grep inet.*global|tail -1|awk '{print $2}'|awk -F/ '{print $1}'` cat >> /usr/local/prometheus/etc/prometheus.yml <<EOF - job_name: "node-${localIP}" static_configs: - targets: ["${localIP}:9100"] EOF systemctl restart prometheus.service ``` 添加后的配置文件示例  5. 查看prometheus web界面——status——targets  6. grafana导入自定义的dashboard - [参考链接](https://grafana.com/grafana/dashboards/8919) - 创建自定义dashboard,选择导入  - 配置数据源,dashboard名称  - 查看dashboard   # 五、监控windows机器(wmi-exporter) - [下载地址](https://github.com/martinlindhe/wmi_exporter/releases)(下载msi格式安装包) 1. 被监控windows机器安装wmi-exporter,会自动创建一个开机自启的服务 <br /> 2. prometheus服务端添加监控项,然后重启prometheus ``` # vim /usr/local/Prometheus/prometheus.yml ``` <br /> 3. 查看prometheus web界面——status——targets  4. grafana导入自定义的dashboard - [参考链接](https://grafana.com/grafana/dashboards/10467)
Nathan
Aug. 25, 2024, 10:43 a.m.
转发文档
Collection documents
Last
Next
手机扫码
Copy link
手机扫一扫转发分享
Copy link
Markdown文件
PDF文件
Docx文件
share
link
type
password
Update password