加入收藏 | 设为首页 | 会员中心 | 我要投稿 百科站长网 (https://www.baikewang.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 系统 > 正文

(一)Prometheus+Grafana实现Centos服务器性能监控

发布时间:2022-11-16 14:48:55 所属栏目:系统 来源:
导读:  一、Prometheus简介

  Prometheus (普罗米修斯)是一套开源的系统监控报警框架。它受启发于 Google 的 Brogmon 监控系统,由工作在 SoundCloud 的前 google 员工在 2012 年创建,作为社区开源项目进行开发
  一、Prometheus简介
 
  Prometheus (普罗米修斯)是一套开源的系统监控报警框架。它受启发于 Google 的 Brogmon 监控系统,由工作在 SoundCloud 的前 google 员工在 2012 年创建,作为社区开源项目进行开发,并于 2015 年正式发布。基于golang语言开发。
 
  2016 年,Prometheus 正式加入 Cloud Native Computing Foundation(CNCF)基金会的项目,成为受欢迎度仅次于 Kubernetes 的项目。2017 年底发布了基于全新存储层的 2.0 版本,能更好地与容器平台、云平台配合。
 
  1、特点
 
  2、与Zabbix的比较
 
  Prometheus
 
  Zabbix
 
  编程语言
 
  golang
 
  c
 
  监控对象
 
  不仅适用主机监控,还适用于 Cloud, SaaS, Openstack,Container 监控
 
  属于传统主机监控,主要用于物理主机,交换机,网络等监控
 
  内容配置
 
  需要手动修改文件配置
 
  可以在 WebGui 中配置很多事情
 
  3、Grafana介绍
 
  Grafana 是一个开源的监控数据分析和可视化套件。最常用于对基础设施和应用数据分析的时间序列数据进行可视化分析,也可以用于其他需要数据可视化分析的领域。Grafana 可以帮助你查询、可视化、告警、分析你所在意的指标和数据。可以与整个团队共享,有助于培养团队的数据驱动文化。
 
  二、监控系统安装
 
  软件部署情况:
 
  192.168.64.123 Prometheus、Grafana、node-exporter
 
  192.168.64.124 node-exporter
 
  1、go语言环境安装
 
  因为Prometheus是由golang语言开发,因此先安装go语言环境。
 
  下载压缩包,解压缩, 配置环境变量
 
  go语言下载地址 AMD64对应X86平台。
 
  (CPU)关于x86、x86_64/x64、amd64和arm64/aarch64
 
  # 解压Go语言环境到
 
  /usr/local tar -C /usr/local -xzf go1.18.3.linux-amd64.tar.gz
 
  # 配置系统环境参数
 
  vim /etc/profile
 
  # 在文件的最后添加如下内容:
 
  export PATH=$PATH:/usr/local/go/bin
 
  # 刷新系统配置文件
 
  source /etc/profile
 
  # 使用 go version 命令来验证安装是否成功!
 
  go version
 
  go version go1.18.3 linux/amd64
 
  #得到以上回显则配置成功!
 
  2、Prometheus安装
 
  Prometheus下载地址
 
  下载压缩包,解压缩,启动
 
  # 对软件包进行解压
 
  tar -zxvf prometheus-2.36.1.linux-amd64.tar.gz
 
  # 更改名字 根据自己情况
 
  mv /opt/prometheus-2.34.0.linux-amd64 /opt/prometheus
 
  # 进入软件目录
 
  cd /opt/prometheus
 
  # 查看软件版本
 
  ./prometheus --version
 
  #得到以下结果
 
  prometheus, version 2.36.1 (branch: HEAD, revision: 3c0a100dec2950f23e91f7efbf8867750960807d) build user: root@e59c79158868 build date: 20220609-15:25:21 go version: go1.18.3 platform: linux/amd64
 
  # 启动Prometheus
 
  ./prometheus
 
  # 至此 Prometheus的安装和启动已经完成了~可以查看端口是否启用
 
  netstat -tulpn | grep 9090
 
  访问服务器 192.168.64.123:9090 即可打开prometheus的界面了

  此时我们启动的prometheus是前端启动,控制台我们执行Ctrl+c 后,服务就停止了,我们通过设置service进行后台启动。
 
  # 编辑prometheusd.service
 
  vi /usr/lib/systemd/system/prometheusd.service
 
  # prometheusd.service内容
 
  [Unit]
 
  Description=Prometheus
 
  [Service]
 
  ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml --web.enable-lifecycle
 
  Restart=on-failure
 
  [Install]
 
  WantedBy=multi-user.target
 
  # 重新加载某个服务的配置文件,如果新安装了一个服务,归属于 systemctl 管理,要是新服务的服务程序配置文件生效,需重新加载。
 
  systemctl daemon-reload
 
  # 启动prometheus服务
 
  systemctl start prometheusd
 
  查看systemctl启动服务的日志信息,可通过以下命令
 
  # 显示所有的systemctl的日志
 
  journalctl
 
  # 查看某个服务的日志
 
  journalctl -u 服务名
 
  # 实时输出某个服务的日志
 
  journalctl -fu 服务名
 
  3、node-exporter探针安装
 
  本文是将node-exporter安装在prometheus的宿主机上,对宿主机进行监控。可以将prometheus安装在其他服务器上,在被监控的服务器上安装node-exporter。node-exporter是prometheus提供的一个可以采集到主机信息的应用程序,它能采集机器的cpu、内存、磁盘等信息。
 
  Prometheus下载地址 选在下载node-exporter
 
  下载压缩包,解压缩,启动
 
  # 对主机探针安装包进行解压
 
  tar -zxvf node_exporter-1.3.1.linux-amd64.tar.gz
 
  # 更改一个简单的名字
 
  mv node_exporter-1.3.1.linux-amd64 node_exporter
 
  # 运行主机探针
 
  cd node_exporter/
 
  ./node_exporter
 
  探针启动后会显示探针的端口号,默认node_exporter的监听端口为9100
 
  # 也可以使用此命令启动,指定监听端口为8080
 
  ./node_exporter --web.listen-address 127.0.0.1:8080
 
  启动之后,我们可以访问192.168.64.123:9100
 
  点击 Metrics,可以看到服务器的一些性能指标数据
 
  node-exporter启动也是前台启动,如果ctrl+c后,服务就会停掉,我们也配置下服务
 
  # 编辑文件
 
  vim /usr/lib/systemd/system/node-exporter.service
 
  # 文件内容
 
  [Unit]
 
  Description=This is prometheus node exporter
 
  After=node_exporter.service
 
  [Service]
 
  Type=simple
 
  ExecStart=/usr/local/node_exporter-1.3.1.linux-amd64/node_exporter
 
  ExecReload=/bin/kill -HUP
 
  KillMode=process
 
  Restart=on-failure
 
  [Install]
 
  WantedBy=multi-user.target
 
  # 启动服务
 
  systemctl daemon-reload
 
  systemctl start node-exporter.service
 
  4、Prometheus数据源添加
 
  我们启动了Prometheus服务,也在主机上部署了node-exporter 探针,但此时Prometheus还不能获取到主机数据,我们需要配置下prometheus服务的prometheus.yml文件,让其去拉取note-exporter探针的数据。
 
  编辑prometheus.yml文件中的scrape_configs节点下添加以下内容
 
  scrape_configs:
 
  #原有的数据
 
  - job_name: 'prometheus'
 
  static_configs:
 
  - targets: ['localhost:9090']
 
  #新添加的数据 # 采集node exporter监控数据
 
  - job_name: 'node'
 
  static_configs:
 
  - targets: ['localhost:9100']
 
  配置文件中配置了两个任务。一个是系统自带的名为 prometheus 的任务,从「localhost:9090」地址读取数据。另一个是我们手动添加的名为 node 的任务,其从「localhost:9100」地址读取数据。配置完成后,我们重新启动 Prometheus。
 
  我们打开Prometheus界面,在 搜索框输入 up 并搜索,可以看到我们刚才配置的名为node的节点,存活状态为1,则Prometheus服务和探针已连接成功。
 
  5、Grafana安装
 
  Grafana下载
 
  下载压缩包,解压缩,启动
 
  # 解压Grafana安装包
 
  tar -zxvf grafana-enterprise-8.4.4.linux-amd64.tar.gz
 
  # 运行Grafana
 
  cd grafana-8.4.4
 
  ./bin/grafana-server web
 
  # 后台运行
 
  nohup ./grafana-server web > ../logs/grafana.log &
 
  访问 192.168.64.123:3000 , 首次进入 用户名密码为 admin/admin, 可修改密码
 
  进入之后的界面
 
  添加数据源
 
  选择数据源类型为 Prometheus
 
  填写链接参数,如果部署在同一台宿主机上可以直接填 localhost:9090
 
  然后滑到底部 save&test 进行保存与测试
 
  返回,添加一个数据看板,这里将直接引入一个模板,后期将仔细讲解自行创建看板的方法。
 
  填入8919服务器监控系统,这是一个已经制作好的node_exporter的看板模板,点击Load加载。
 
  选择数据源为Prometheus,点击Import引入。
 
  这个时候我们就可以看到以下页面啦~
 
  由于是刚添加的监控节点,数据还比较少,大家可以等一段时间再观察。
 
  这是我又在124节点添加探针后最终显示的效果。
 
  至此,Prometheus和Grafana的安装部署以及数据互通就完成啦。
 

(编辑:百科站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!