普罗米修斯监控安装
- 安装
1、下载监控软件路径
监控下载URL:https://github.com/prometheus/prometheus/releases/
2、下载监控软件包
[root@prometheus ~]# mkdir /prometheus
[root@prometheus /opt]# cd /prometheus/
[root@prometheus /prometheus]# wget https://github.com/prometheus/prometheus/releases/download/v2.25.0/prometheus-2.25.0.linux-amd64.tar.gz
3、监控软件包解压
[root@prometheus /prometheus]# tar xf prometheus-2.25.0.linux-amd64.tar.gz
[root@prometheus /prometheus]# cd prometheus-2.25.0.linux-amd64/
[root@prometheus /prometheus/prometheus-2.25.0.linux-amd64]# mv ./* ../
[root@prometheus /prometheus]# rm -rf prometheus-2.25.0.linux-amd64*
4、创建监控用户名授权监控文件
[root@prometheus /prometheus]# useradd -s /sbin/nologin prometheus -M
[root@prometheus /prometheus]# chown -R prometheus.prometheus /prometheus
5、添加监控环境变量
[root@prometheus /prometheus]# vim /etc/profile.d/prometheus.sh
export PATH=/prometheus:$PATH
6、配置systemd服务管理
[root@prometheus ~]# vim /usr/lib/systemd/system/prometheus.service
[Unit]
Description=prometheus server daemon #服务器守护程序
[Service]
ExecStart=/prometheus/prometheus --config.file=/prometheus/prometheus.yml
Restart=on-failure
[Install]
WantedBy=multi-user.target
# 重新加载启动列表
[root@prometheus ~]# systemctl daemon-reload
7、启动监控并设置开机自启
[root@prometheus ~]# systemctl start prometheus.service
# 开机自启
[root@prometheus ~]# systemctl enable prometheus.service
8、访问测试
http://10.32.0.10:9090/
- 监控配置文件说明
1、安装包下文件说明
[root@prometheus /prometheus]# ls
console_libraries --->控制台函数库
consoles --->控制台
data --->数据存放目录
LICENSE --->许可证
NOTICE --->通知
prometheus --->启动脚本
prometheus.yml --->主配置文件
promtool --->系统工具
2、配置文件说明
[root@prometheus /prometheus]# cat prometheus.yml
#全局配置 (如果有内部单独设定,会覆盖这个参数)
global: --->全局变量
scrape_interval: 15s # 抓取时间间隔,每隔15秒去抓取一次
evaluation_interval: 15s # 监控数据评估间隔
#告警插件定义。这里会设定alertmanager这个报警插件。
alerting:
#告警规则。 按照设定参数进行扫描加载,用于自定义报警规则,其报警媒介和route路由由alertmanager插件实现。
rule_files:
#采集配置。配置数据源,包含分组job_name以及具体target。又分为静态配置和服务发现
static_configs:
- targets: ['localhost:9090','nginx01:9100','10.32.0.11:9100'] --->定义监控节点
scrape_configs:
- job_name: 'prometheus' --->定义job名字
#用于远程存储写配置
remote_write:
#用于远程读配置
remote_read: