编辑
2024-02-29
Prometheus
0
请注意,本文编写于 475 天前,最后修改于 436 天前,其中某些信息可能已经过时。

目录

一、普罗米修斯概述
二、时间序列数据
1、什么是序列数据
2、时间序列数据特点
3、Prometheus的主要特征
4、普罗米修斯原理架构图
三、安裝
1、获取安装包
2、解压
3、运行
4、啟動端口號修改
5、重載配置模式

一、普罗米修斯概述

Prometheus(由go语言(golang)开发)是一套开源的监控&报警&时间序列数 据库的组合。适合监控docker容器。因为kubernetes(俗称k8s)的流行带动 了prometheus的发展。

https://prometheus.io/docs/introduction/overview/

二、时间序列数据

1、什么是序列数据

时间序列数据(TimeSeries Data) : 按照时间顺序记录系统、设备状态变化 的数据被称为时序数据。

应用的场景很多, 如:

  • 无人驾驶车辆运行中要记录的经度,纬度,速度,方向,旁边物体的距 离等等。每时每刻都要将数据记录下来做分析。
  • 某一个地区的各车辆的行驶轨迹数据
  • 传统证券行业实时交易数据
  • 实时运维监控数据等

2、时间序列数据特点

性能好

关系型数据库对于大规模数据的处理性能糟糕。NOSQL可以比较好的处理 大规模数据,让依然比不上时间序列数据库。

存储成本低

高效的压缩算法,节省存储空间,有效降低IO

Prometheus有着非常高效的时间序列数据存储方法,每个采样数据仅仅占 用3.5byte左右空间,上百万条时间序列,30秒间隔,保留60天,大概花了 200多G(来自官方数据)

3、Prometheus的主要特征

多维度数据模型 灵活的查询语言 不依赖分布式存储,单个服务器节点是自主的 以HTTP方式,通过pull模型拉去时间序列数据        也可以通过中间网关支持push模型 通过服务发现或者静态配置,来发现目标服务对象 支持多种多样的图表和界面展示

4、普罗米修斯原理架构图

image.png

三、安裝

Prometheus软件包下载地址。go语言编写。基本无需下载环境依赖软件。

https://prometheus.io/download/

当前最新版本prometheus-2.50.1

1、获取安装包

切换目录

cd /opt/ wget https://github.com/prometheus/prometheus/releases/download/v2.50.1/prometheus-2.50.1.linux-amd64.tar.gz

如果下载慢,可以用下载工具,下载后上传至服务器。

2、解压

mkdir -p /opt/prometheus/ tar -zxvf prometheus-2.50.1.linux-amd64.tar.gz -C /opt/prometheus

創建軟連接

ln -s prometheus-2.50.1.linux-amd64 /opt/prometheus/latest

3、运行

切换目录 cd prometheus

默认的端口号是 9090,因此要开放 9090 端口号

sudo firewall-cmd --add-port=9090/tcp --permanent

重新加载防火墙

sudo firewall-cmd --reload

配置文件:

vim /opt/prometheus/latest/prometheus.yml

(systemctl啟動方式)

新增 prometheus.service

vi /usr/lib/systemd/system/prometheus.service

添加以下内容:

[Unit] Description=Prometheus Server Documentation=https://prometheus.io After=network.target [Service] ExecStart=/opt/prometheus/latest/prometheus --config.file=/opt/prometheus/prometheus.yml --web.config.file=/opt/prometheus/web-config.yml [Install] WantedBy=multi-user.target

添加网络配置文件

vim /opt/prometheus/web-config.yml

输入下面内容

basic_auth_users: admin: '$2y$10$cA9UlOBRKkOsKC2lWhe9c.coKHBMiB9GIOIuIXAvI3CoKKIJuFPom'

验证启动

systemctl daemon-reload

配置开机加载

systemctl enable prometheus.service

启动Prometheus

systemctl start prometheus.service

重新啟動

systemctl restart prometheus.service

查看是启动状态

systemctl status prometheus

4、啟動端口號修改

启动参数新增,如果配置了脚本,在脚本中添加–web.listen-address=:8091 (你要修改成的端口号)改参数即可

prometheus --config.file=prometheus.yml --web.listen-address=:8091

5、重載配置模式

需配置参数 –web.enable-lifecycle ,上面后台脚本已经添加

curl -X POST http://127.0.0.1:9090/-/reload
如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:澳门🇲🇴上班的IT人

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!