第二篇 使用Prometheus对网络进行监控

1、Prometheus简介

        Prometheus是一款开源系统监控和报警工具,最初由SoundCloud开发,现为CNCF(Cloud Native Computing Foundation)的项目。

        主要特点:               

        (1)多维数据模型:Prometheus使用带有时间戳的度量数据和标签(label)来识别每个数据点,这使得它可以灵活地筛选和聚合数据。

        (2)强大的查询语言(PromQL):PromQL允许用户对存储的数据进行实时查询和计算,非常适合复杂的分析和可视化需求。

        (3)独立的时序数据库:Prometheus内置了时序数据库,可以高效地存储和处理大量的时间序列数据。

        (4)拉取模型的抓取方式:Prometheus通过HTTP协议定期从被监控的目标中拉取数据,确保监控的主动性和可控性。

        (5)静态和动态配置:支持通过静态配置文件和服务发现机制动态地发现监控目标。

        (6)告警管理:内置Alertmanager,用于处理告警,包括去重、分组、路由和通知。

        主要组件:

        (1)Prometheus Server:

                负责抓取和存储时间序列数据。

                提供查询接口,支持PromQL查询语言。

        (2)数据抓取目标(Exporters):

                Prometheus通过exporters从各种服务和系统中抓取监控数据。

                常见的exporters包括Node Exporter(用于抓取主机系统指标)、cAdvisor(用于抓取容器指标)和各种数据库exporters(如MySQL、PostgreSQL)。

        (3)Alertmanager:

                处理来自Prometheus server的告警。

                支持告警的分组、去重、路由和通知(如电子邮件、Slack、PagerDuty等)。

        (4)客户端库(Client Libraries):

                提供用于编写自定义exporters的库,支持多种编程语言(如Go、Java、Python等)。

                这些库可以嵌入应用程序中以暴露自定义的业务指标。

        (5)Pushgateway:

                用于处理短生命周期的批处理任务的指标数据。

                一些临时性或批处理任务无法被Prometheus常规抓取,因此需要通过Pushgateway主动推送指标数据。

        (6)Grafana(通常与Prometheus一起使用):

                强大的开源数据可视化工具。

                支持从Prometheus查询数据并创建丰富的仪表盘。

2、环境介绍

        操作系统:CentOS Linux release 7.6.1810 (Core)、2核、4G内存

        Prometheus版本:2.53.0

        可视化Grafana版本:11.0.0

3、安装步骤

         通过Prometheus官网下载最新版本:Download | Prometheus

//下载并解压文件
wget https://github.com/prometheus/prometheus/releases/download/v2.53.0/prometheus-2.53.0.linux-amd64.tar.gz
tar xvzf prometheus-2.53.0.linux-amd64.tar.gz
cd /opt/prometheus-2.53.0.linux-amd64

//设置system服务文件:
cat << 'EOS' | sudo tee /etc/systemd/system/prometheus.service
[Unit]
Description=Prometheus Server
Documentation=https://prometheus.io/docs/introduction/overview/
After=network-online.target

[Service]
User=prometheus
ExecStart=/opt/prometheus-2.53.0.linux-amd64/prometheus --config.file=/opt/prometheus-2.53.0.linux-amd64/prometheus.yml --storage.tsdb.path=/opt/prometheus-2.53.0.linux-amd64/data --web.console.templates=/opt/prometheus-2.53.0.linux-amd64/consoles --web.console.libraries=/opt/prometheus-2.53.0.linux-amd64/console_libraries
ExecStop=/bin/kill -TERM ${MAINPID}
ExecReload=/bin/kill -HUP ${MAINPID}

[Install]
WantedBy=multi-user.target
EOS

//检查并启动
sudo systemctl daemon-reload 
sudo systemctl enable prometheus.service 
sudo systemctl start prometheus.service 
sudo systemctl status prometheus.service

         通过Grafana官网下载最新版本:

yum install -y https://dl.grafana.com/enterprise/release/grafana-enterprise-11.0.0-1.x86_64.rpm
sudo systemctl daemon-reload 
sudo systemctl enable grafana-server 
sudo systemctl start grafana-server 
sudo systemctl status grafana-server

         登录Grafana,并对初始密码进行修改:http://主机地址:3000

         添加Grafana数据源为Prometheus:    

  • 30
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值