Centos8 部署Promethus(普罗米修斯)+grafana画图「建议收藏」

Centos8 部署Promethus(普罗米修斯)+grafana画图「建议收藏」文章目录1.普罗米修斯概述2.时间序列数据2.1.普罗米修斯概述Prometheus(由go语言(golang)开发)是一套开源的监控&报警&时间序列数据库的组合。适合监控docker容器。2.时间序列数据什么是序列数据时间序列数据(TimeSeriesData):按照时间顺序记录系统、设备状态变化的数据被称为时序数据。应用的场景很多,如:气候的变化某一个地区的各车辆的行驶轨迹数据传统证券行业实时交易数据实时运维监控数据等时间序列数据特点

大家好,又见面了,我是你们的朋友全栈君。

1. 普罗米修斯概述

Prometheus(由go语言(golang)开发)是一套开源的监控&报警&时间序列数 据库的组合。适合监控docker容器。

2. 时间序列数据

  1. 什么是序列数据

时间序列数据(TimeSeries Data) : 按照时间顺序记录系统、设备状态变化 的数据被称为时序数据。
应用的场景很多, 如:

气候的变化
某一个地区的各车辆的行驶轨迹数据
传统证券行业实时交易数据
实时运维监控数据等
  1. 时间序列数据特点

    性能好

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

存储成本低

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

3. 普罗米修斯特征

  1. 一个多维数据模型(时间序列由指标名称定义和设置键/值尺寸)

  2. 一个灵活的查询语言来利用这一维度

  3. 不依赖于分布式存储;单服务器节点是自治的

  4. 时间序列收集通过HTTP 上的拉模型进行

  5. 通过中间网关支持推送时间序列

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

  7. 多种图形和仪表板支持模式

  8. 支持分层和水平联合

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

Centos8 部署Promethus(普罗米修斯)+grafana画图「建议收藏」

5. 部署普罗米修斯

实验环境:

主机名 服务器 IP地址
master Prometneus服务器 192.168.216.200
slave1 被监控服务器 192.168.216.210
grafana grafana服务器 192.168.216.215

环境准备,3台主机可联通外网

//3台主机均需要关闭防火墙,selinux
[root@localhost ~]# systemctl stop firewalld.service 
[root@localhost ~]# systemctl disable firewalld.service 
Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@localhost ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
[root@localhost ~]# vim /etc/selinux/config 
[root@localhost ~]# setenforce 0

5.1 安装prometheus

从官网下载相应的安装包https://prometheus.io/download/

[root@master ~]# ls
anaconda-ks.cfg  prometheus-2.31.1.linux-amd64.tar.gz

//解压到/usr/local
[root@master ~]# tar -zxvf  prometheus-2.31.1.linux-amd64.tar.gz -C /usr/local/

//改名字或者做软连接
[root@master ~]# cd /usr/local/
[root@master local]# mv prometheus-2.31.1.linux-amd64 prometheus
[root@master local]# ls
bin  etc  games  include  lib  lib64  libexec  prometheus  sbin  share  src

//使用默认配置文件启动
[root@master local]# /usr/local/prometheus/prometheus --config.file="/usr/local/prometheus/prometheus.yml" 

//另外开一个终端查看端口号,9090就是默认端口号
[root@master ~]# ss -antl
State                  Recv-Q                 Send-Q                                 Local Address:Port                                 Peer Address:Port                Process                 
LISTEN                 0                      128                                          0.0.0.0:22                                        0.0.0.0:*                                           
LISTEN                 0                      128                                                *:9090                                            *:*                                           
LISTEN                 0                      128                                             [::]:22                                           [::]:*                    

5.2 prometheus web界面

Centos8 部署Promethus(普罗米修斯)+grafana画图「建议收藏」
Centos8 部署Promethus(普罗米修斯)+grafana画图「建议收藏」
Centos8 部署Promethus(普罗米修斯)+grafana画图「建议收藏」
Centos8 部署Promethus(普罗米修斯)+grafana画图「建议收藏」

6. 监控远程Linux主机

去之前的官网下载安装node_exporter组件

[root@slave1 ~]# ls
anaconda-ks.cfg  node_exporter-0.17.0.linux-amd64.tar.gz

//一样的解压,改名
[root@slave1 ~]# tar -zxvf node_exporter-0.17.0.linux-amd64.tar.gz -C /usr/local/
node_exporter-0.17.0.linux-amd64/
node_exporter-0.17.0.linux-amd64/NOTICE
node_exporter-0.17.0.linux-amd64/node_exporter
node_exporter-0.17.0.linux-amd64/LICENSE

[root@slave1 local]# mv node_exporter-0.17.0.linux-amd64/ node_exporter
[root@slave1 local]# ls
bin  etc  games  include  lib  lib64  libexec  node_exporter  sbin  share  src
[root@slave1 local]# cd node_exporter/
//就一个可执行文件,直接运行
[root@slave1 node_exporter]# ls
LICENSE  node_exporter  NOTICE

//这样运行不用开新终端
[root@slave1 node_exporter]# nohup /usr/local/node_exporter/node_exporter 
nohup: 忽略输入并把输出追加到'nohup.out'
[root@slave1 node_exporter]# ss -antl
State                  Recv-Q                 Send-Q                                 Local Address:Port                                 Peer Address:Port                Process                 
LISTEN                 0                      128                                          0.0.0.0:22                                        0.0.0.0:*                                           
LISTEN                 0                      128                                                *:9100                                            *:*                                           
LISTEN                 0                      128                                             [::]:22                                           [::]:*                                           
//确认端口9100正常运行

//在服务器上配置slave1,注意格式
[root@master ~]# vim /usr/local/prometheus/prometheus.yml 
.........- job_name: "prometheus"

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
      - targets: ["localhost:9090"]

 - job_name: "slave1"  //监控主机的别名
    static_configs:
      - targets: ['192.168.216.210:9100']  //ip+端口


//重启服务
[root@master ~]# pkill prometheus 
[root@master ~]# ss -antl
State                  Recv-Q                 Send-Q                                 Local Address:Port                                 Peer Address:Port                Process                 
LISTEN                 0                      128                                          0.0.0.0:22                                        0.0.0.0:*                                           
LISTEN                 0                      128                                             [::]:22                                           [::]:*                                           
[root@master ~]# /usr/local/prometheus/prometheus --config.file="/usr/local/prometheus/prometheus.yml" &
[root@master local]# ss -antl
State                  Recv-Q                 Send-Q                                 Local Address:Port                                 Peer Address:Port                Process                 
LISTEN                 0                      128                                          0.0.0.0:22                                        0.0.0.0:*                                           
LISTEN                 0                      128                                                *:9090                                            *:*                                           
LISTEN                 0                      128                                             [::]:22                                           [::]:*             

回到服务器网页
Centos8 部署Promethus(普罗米修斯)+grafana画图「建议收藏」

7. 结合grafana画图

官网下载grafana
地址:https://grafana.com/grafana/download

[root@grafana ~]# ls
anaconda-ks.cfg  grafana-enterprise-8.2.5-1.x86_64.rpm

//安装
[root@grafana ~]# yum install -y grafana-enterprise-8.2.5-1.x86_64.rpm 

//启动服务并设置开机自启
[root@grafana ~]# systemctl enable --now grafana-server 
Synchronizing state of grafana-server.service with SysV service script with /usr/lib/systemd/systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable grafana-server
Created symlink /etc/systemd/system/multi-user.target.wants/grafana-server.service → /usr/lib/systemd/system/grafana-server.service.
[root@grafana ~]# ss -antl
State                  Recv-Q                 Send-Q                                 Local Address:Port                                 Peer Address:Port                Process                 
LISTEN                 0                      128                                          0.0.0.0:22                                        0.0.0.0:*                                           
LISTEN                 0                      128                                             [::]:22                                           [::]:*                                           
LISTEN                 0                      128                                                *:3000                                            *:*   
//默认端口为3000 

Centos8 部署Promethus(普罗米修斯)+grafana画图「建议收藏」
Centos8 部署Promethus(普罗米修斯)+grafana画图「建议收藏」
Centos8 部署Promethus(普罗米修斯)+grafana画图「建议收藏」
Centos8 部署Promethus(普罗米修斯)+grafana画图「建议收藏」
Centos8 部署Promethus(普罗米修斯)+grafana画图「建议收藏」
Centos8 部署Promethus(普罗米修斯)+grafana画图「建议收藏」Centos8 部署Promethus(普罗米修斯)+grafana画图「建议收藏」

Centos8 部署Promethus(普罗米修斯)+grafana画图「建议收藏」
Centos8 部署Promethus(普罗米修斯)+grafana画图「建议收藏」

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/161780.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pycharm企业版激活码【2022最新】2022.01.22

    (pycharm企业版激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~1TCF2R91JZ-eyJsaWNlbnNlSWQiOi…

    2022年3月31日
    88
  • LinkedList和ArrayList的区别[通俗易懂]

    LinkedeList和ArrayList都实现了List接口,但是它们的工作原理却不一样。它们之间最主要的区别在于ArrayList是可改变大小的数组,而LinkedList是双向链接串列(doubly LinkedList)。ArrayList更受欢迎,很多场景下ArrayList比LinkedList更为适用。这篇文章中我们将会看看LinkedeList和ArrayList的不同,而且我们试

    2022年3月10日
    51
  • jlink 与 swd 接口定义[通俗易懂]

    jlink 与 swd 接口定义[通俗易懂]1.JLink介绍J-Link是SEGGER公司为支持仿真ARM内核推出的JTAG仿真器。J-Link支持所有基于ARM架构的处理器或微控制器配合IAREWAR,ADS,KEIL等集成开发环境进行开发过程中进行单步控制执行调试。J-Link除了可以配合集成开发环境进行调试程序,进行程序下载之外,J-Link还可以单独使用。比如在产品的生产环节中,就可以单独使用J-Link进行固件的下载。JLink,SWD接口定义缺口向左,左边为JLink接口定义,右边为SWD接口定义JTAG

    2022年4月25日
    2.0K
  • 使用ButterKnife 在开发中需要注意的地方

    使用ButterKnife 在开发中需要注意的地方

    2021年10月1日
    46
  • 快速解决Pycharm中unresolved reference

    快速解决Pycharm中unresolved reference解决 Pycharm 中 unresolvedre

    2026年2月4日
    0
  • GitHub 新手详细教程「建议收藏」

    GitHub 新手详细教程「建议收藏」 这篇文章是我自己写的关于GitHub的内容,从我刚听到这个直到设置成功每一步都有详细的步骤来解释,其中有一些截图或者代码来自于网上。在开始前先跟大家说一下这篇博客是来介绍桌面版GitHub的使用的,如果只是简单的想使用GitHub新手可以使用网页版 https://blog.csdn.net/Hanani_Jia/article/details/79855429 这是我写的网页版的使用教…

    2022年5月8日
    46

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号