监控Prometheus的概述、安装与服务发现

一、Prometheus的概述

1、简介

Prometheus是一款具备开源的监控,是一种TSDB(时序数据库),复制于谷歌的borgmon监控系统,对k8s容器的监控非常适用。Prometheus可以很好地记录任何纯数字时间序列。是位可靠性而设计的,既适用于以机器为中心的监视,也适用于高度动态的面向服务的体系结构的监视,系统中断期间依旧可以监控使用的系统。

2、优点

  1. 可以自定义多维数据模型,储存更加高效
  2. 具有灵活且强大的查询语句(PromQL),不依赖分布式储存
  3. 支持单节点工作,可通过pull方式采集时序数据
  4. 可以通过push gateway进行时序列数据库推送
  5. 可以通过服务发现或静态配置去获取要采集的目标服务器(sd server discover)多种可视化图表及仪表盘支持

3、"抓取"数据的方式

首先收集数据分为白盒监控、黑盒监控

  1. 白盒监控:自省方式,被监控端内部,可以自己生成指标,只要等待监控系统来采集时提供出去即可
  2. 黑盒监控:对于被监控系统没有侵入性,对其没有直接"影响",这种类似于基于探针机制进行监控(snmp协议)

其次Prometheus属于白盒监控,支持通过以下三种类型的途径从木板上抓取指标数据:

  1. Exporters :指标暴露器;工作在被监控端,周期性的抓取数据并转换为pro兼容格式等待prometheus来收集,自己并不推送
  2. Instrumentation:应用程序内置的指标暴露器;指被监控对象内部自身有数据收集、监控的功能,只需要prometheus直接去获取
  3. Pushgateway:专用于收集短周期、临时的任务,等待prometheus拉取

4、Prometheus生态组件

  • Prometheus Server:服务端;收集和储存时间序列数据;
  • Client Library:客户端库;目的在于为那些期望原生提供Instrumentation功能的应用程序提供便捷的开发途径
  • Exporters :指标暴露器
  • Push Gateway:接收那些通常由短期作业生成的指标数据的网关
  • Prometheus Service Discovery(sd):服务动态发现待监控的Target,发送告警信息
  • Prometheus scrape:数据采集器
  • Alertmanager:由告警规则对接
  • Instrumentation:应用程序内置的指标暴露器
  • Data Visualization(Dashboards):(prome-UI界面)

二、Prometheus部署

服务器分配主机名 地址 安装包
prometheus 192.168.35.40 prometheus-2.27.1.linux-amd64.tar.gz
server1 192.168.35.10 node_exporter-1.1.2.linux-amd64.tar.gz
server2 192.168.35.20
server3 192.168.35.30

1、准备工作关闭防火墙及安全机制,修改主机名

hostnamectl set-hostname prometheus		#其他主机分别设置server1.2.3
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
vim /etc/reslove.conf
nameserver 114.114.114.114
ntpdate ntp1.aliyun.com 		#时间同步;时间同步必须要做,不然会报错

2、安装包下载

方法一:同步源的方式下载

cat > letc/ yum.repos.d/prometheus.repo <<EOF
[prometheus] 
name=prome
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值