Prometheus介绍与安装
Promethues概述:官网文档
1.1.1 什么是Prometheus?
- Prometheus是一个开源系统监控和警报工具包,最初是在SoundCloud上构建的,它现在是一个独立的开源项目,独立于任何公司进行维护。为了强调这一点,并澄清项目的治理结构,Prometheus与2016年加入了云原生计算基金会,作为继Kubernetes之后的第二个托管项目。
- Prometheus 是一款时序(time series) 数据库, 但他的功能却并非支部与 TSDB(Time Series Database)简单的理解为.一个优化后用来处理时间序列数据的软件,并且数据中的数组是由时间进行索引的) , 而是一款设计用于进行目标 (Target) 监控的关键组件
- 结合生态系统内的其他组件, 例如: Pushgateway, Altermanager, Grafana等,可构成一个完整的IT监控系统
1.1.2 Prometheus的特征
Prometheus的主要特点是:
- 一个多维数据没醒,具有由指标名称和键值对标识的时间序列数据
- PromQL,一种利用这种维度的灵活查询语言
- 不依赖分布式存储;单个服务器节点是自治的
- 时间序列收集通过HTTP上的拉模型发生
- 通过中间网关支持推送时间序列
- 通过服务发现或静态配置发现目标
- 多种图形和仪表板支持模式
1.1.3 Prometheus 生态系统
- Prometheus 主服务,用来抓取和存储时序数据
- client library 用来构造应用或 exporter 代码 (go,java,python,ruby)
- push 网关可用来支持短连接任务
- 可视化的dashboard (两种选择,promdash 和 grafana.目前主流选择是 grafana
- 一些特殊需求的数据出口(用于HAProxy, StatsD, Graphite等服务
- 实验性的报警管理端(alartmanager,单独进行报警汇总,分发,屏蔽等
1.1.4 官方结构图
Prometheus安装部署:
1.下载软件:
安装包下载地址:https://prometheus.io/download/
tar xf prometheus-2.29.1.linux-amd64.tar.gz -C /opt/
cd /opt/
ln -s prometheus-2.29.1.linux-amd64 prometheus
2、准备启动文件
cat > /usr/lib/systemd/system/prometheus.service << EOF
[Unit]
Description="prometheus"
Documentation=https://prometheus.io/
After=network.target
[Service]
Type=simple
ExecStart=/opt/prometheus/prometheus --config.file=/opt/prometheus/prometheus.yml --storage.tsdb.path=/opt/prometheus/data --web.enable-lifecycle
Restart=on-failure
RestartSecs=5s
SuccessExitStatus=0
LimitNOFILE=65536
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=prometheus
[Install]
WantedBy=multi-user.target
EOF
3、启动服务
systemctl start prometheus
systemctl status prometheus
4、浏览器访问
http://localhost:9090/
5、热重启
#命令行开启 --web.enable-lifecycle