Prometheus(普罗米修斯)

9 篇文章 2 订阅
3 篇文章 0 订阅

前言

Prometheus(普罗米修斯)是一个最初在SoundCloud上构建的监控系统。自2012年成为社区开源项目,拥有非常活跃的开发人员和用户社区。为强调开源及独立维护,Prometheus于2016年加入云原生云计算基金会(CNCF),成为继Kubernetes之后的第二个托管项目。

https://prometheus.io
https://github.com/prometheus

Prometheus特点:

  • 多维数据模型:由度量名称和键值对标识的时间序列数据

  • PromQL:一种灵活的查询语言,可以利用多维数据完成复杂的查询

  • 不依赖分布式存储,单个服务器节点可直接工作

  • 基于HTTP的pull方式采集时间序列数据

  • 推送时间序列数据通过PushGateway组件支持

  • 通过服务发现或静态配置发现目标

  • 多种图形模式及仪表盘支持(grafana)

架构图

在这里插入图片描述

  • Prometheus Server:收集指标和存储时间序列数据,并提供查询接
  • ClientLibrary:客户端库
  • Push Gateway: 短期存储指标数据。主要用于临时性的任务
  • Exporters:采集已有的第三方服务监控指标并暴metrics
  • Alertmanager:告警
  • Web UI:简单的Web控制台

实例 : 可以抓取的目标称为实例(Instances),可以理解为被监控端
作业 : 具有相同目标的实例集合称为作业(Job) 被监控端的集合

普罗米修斯监控系统的部署

服务器类型系统和IP地址备注
Prometheus服务器192.168.118.12Prometheus
grafana服务器192.168.80.20mariadb、node_exporter
被监控服务器192.168.118.18Grafana

加粗样式下载地址

wget https://github.com/prometheus/prometheus/releases/download/v2.29.1/prometheus-2.29.1.linux-amd64.tar.gz
systemctl stop firewalld
setenforce 0
安装时间同步
yum install ntpdate -y

ntpdate cn.ntp.org.cn
date
cd /opt/
rz -E				##传入安装包
tar zxvf prometheus-2.29.1.linux-amd64.tar.gz
mv prometheus-2.29.1.linux-amd64 /usr/local/promethues
cd /usr/local/promethues/
cd /usr/local/promethues/
./prometheus --config.file="/usr/local/promethues/prometheus.yml" &

netstat -napt | grep prometheus			#查看服务是否启动 端口为9090

lsof -i:9090
访问测试 http://192.168.118.12:9090

在这里插入图片描述

Grafana可视化图形工具

下载地址

wget https://dl.grafana.com/enterprise/release/grafana-enterprise-8.1.2.linux-amd64.tar.gz
cd /opt/
rz -E
tar zxvf grafana-enterprise-8.1.2.linux-amd64.tar.gz
./bin/grafana-server web  启动
lsof -i:3000
http://192.168.118.18:3000/login

在这里插入图片描述

容器安装 prometheus

使用 Docker
所有 Prometheus 服务都可以作为 Docker 镜像在 Quay.io或 Docker Hub 上使用。

在 Docker 上运行 Prometheus 就像docker run -p 9090:9090 prom/prometheus. 这将使用示例配置启动 Prometheus 并将其暴露在端口 9090 上。

Prometheus 图像使用一个卷来存储实际指标。对于生产部署,强烈建议使用 命名卷 来简化 Prometheus 升级数据的管理。

要提供您自己的配置,有几个选项。这里有两个例子。

卷和绑定安装
prometheus.yml通过运行从主机绑定安装:

docker run \
    -p 9090:9090 \
    -v /path/to/prometheus.yml:/etc/prometheus/prometheus.yml \
    prom/prometheus
或绑定贴装包含目录prometheus.yml上 /etc/prometheus运行:

docker run \
    -p 9090:9090 \
    -v /path/to/config:/etc/prometheus \
    prom/prometheus
自定义图片
为了避免管理主机上的文件并绑定挂载它,可以将配置烘焙到映像中。如果配置本身是相当静态的并且在所有环境中都相同,那么这很有效。

为此,使用 Prometheus 配置创建一个新目录, Dockerfile如下所示:

FROM prom/prometheus
ADD prometheus.yml /etc/prometheus/
现在构建并运行它:

docker build -t my-prometheus .
docker run -p 9090:9090 my-prometheus
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值