首页 > 其他分享 >Liunx性能监控

Liunx性能监控

时间:2022-08-22 22:22:12浏览次数:55  
标签:node exporter 监控 数据源 性能 grafana prometheus Liunx https

场景:

  这几天项目做的差不多了,但是服务器经常崩掉,然后之前用c#写的性能监控模块也不准,于是放弃了。还是用别人的模块吧。这里我采用node export + prometheus + grafana的方案进行性能监控。

  prometheus是系统监控和报警系统,它可以通过监控系统的性能数据,获取并存储数据(默认是两个小时的数据)。同类型的软件有zabbix,但是我还没接触到。同时也有报警功能,可以配置告警规则,通过发送邮件,微信,钉钉等通知运维人员。它的Exporter就是用来收集数据的组件。node export就是prometheus在Liunx下的组件。prometheus自带可视化组件,但是不是很好用(本人没用过),于是大家都是用Grafana进行可视化的。

  grafana是一个用于数据展示的可视化工具,它可以接入很多的数据源,并把数据源的内容进行展示。注意,它不能进行数据的采集(指从原数据采集),只能用于显示。它可以适配很多数据源,比如Prometheus,Mysql,InfluxDB等,一般配合时序数据库(正好项目中是pg + timescaledb)。下图是部分可以做数据源的数据。

 

   然后它可以自己配置面板,配置里面的显示信息。也有官方网站上大家做好的模板,一般用大家做好的就够用了。下面讲一下怎么使用,针对的都是Liunx(centos)下的。

安装node export:

  下载,安装

wget https://github.com/prometheus/node_exporter/releases/download/v1.1.1/node_exporter-1.1.1.linux-amd64.tar.gz

// 解压
tar -zxvf node_exporter-1.1.1.linux-amd64.tar.gz
mv node_exporter-1.1.1.linux-amd64 /usr/local/node_exporter

  运行一下,去http://localhost:9100看看,这里:

./node_exporter

  

 

   点击Metrics就可以看它采集的数据了

  添加服务,设置启动:

// 创建
vim /usr/lib/systemd/system/node_exporter.service

// 内容如下
[Unit]
Description=node_export
Documentation=https://github.com/prometheus/node_exporter
After=network.target
 
[Service]
Type=simple
User=prometheus
ExecStart=/usr/local/bin/node_exporter
Restart=on-failure
[Install]
WantedBy=multi-user.target

// 启动
systemctl daemon-reload
systemctl start node_exporter.service

 

安装prometheus:

  下载

wget https://github.com/prometheus/prometheus/releases/download/v2.27.1/prometheus-2.27.1.linux-amd64.tar.gz

  解压,并测试启动。这个.yml是配置文件,可以配置多个数据源。要是需要配置prometheus的端口,加上:--web.listen-address=:1888

tar -xzvf prometheus-2.27.2.linux-amd64.tar.gz
./prometheus --config.file=prometheus.yml

  

 

   如果是这样,则说明运行成功。

  打开localhost:9090看一下:可以看到这里的UP状态就是已经成功获取到node_export的数据了。如果是DOWN的话,需要看看有什么问题。

 

 

  然后做一个服务,使它可以后台运行

// 创建sh脚本
 vi prometheus.sh

// 添加以下内容
#!/bin/bash
路径/prometheus --web.enable-lifecycle --config.file=路径/prometheus.yml &>> 路径/prometheus.log

// 修改权限
chmod 755 prometheus.sh

// 创建服务
vi /usr/lib/systemd/system/prometheus.service

// 添加内容:
[Unit]
Description=Prometheus
Documentation=https://prometheus.io/docs/introduction/overview/
Wants=network-online.target
After=network-online.target

[Service]
User=root
Group=root
Type=simple
# 启动脚本
ExecStart=路径/prometheus.sh

[Install]
WantedBy=multi-user.target

  记得reload一下Unit,就可以使用了

systemctl daemon-reload

// 开机启动
systemctl enable prometheus.service  

// 启动
systemctl start prometheus.service  

// 关闭
systemctl stop prometheus.service  

 

配置Grafana:

  安装

// 下载
wget https://dl.grafana.com/enterprise/release/grafana-enterprise-8.0.0-1.x86_64.rpm
sudo yum install grafana-enterprise-8.0.0-1.x86_64.rpm

  使用

// 启动
systemctl start  grafana-server

// 查看状态
systemctl status  grafana-server

  默认会在http://localhost:3000显示界面,可以在/etc/grafana/grafana.ini文件中,配置端口信息等。默认用户,密码为admin,进来之后要求改密码。

 

   添加数据源:

 

   这里URL填:http://localhost:9090,HTTP Method选Get,然后Save and Test,如果有错的话,慢慢排查。看看能访问到吗,会不会是防火墙的问题

  然后在create->import中,导入相应的模板。可以去https://grafana.com/grafana/dashboards/8919-1-node-exporter-for-prometheus-dashboard-cn-0413-consulmanager/,选一些模板,复制模板的id,保存模板的json文件。

  填如id,并且上传json文件,

 

   然后修改Name,选择数据源,最后import就可以了。

 

   大概的界面:

 

 

  本人水平有限,这里我就讲一下大概的使用,每个软件都很很多可以操作的空间,有不足之处请多指教。

参考文献:

  官方:

  https://grafana.com/

  https://github.com/prometheus/prometheus

  yml配置信息:

  https://blog.csdn.net/qq_32486597/article/details/110383388

  node_server数据意义:

  https://blog.csdn.net/m0_59207224/article/details/122342860

  介绍,安装

  https://blog.csdn.net/qq_34556414/article/details/113107269

  https://blog.csdn.net/A13581861752/article/details/124148803

  https://blog.csdn.net/cp3_zyh/article/details/124019043

  https://blog.csdn.net/qq_32415063/article/details/105607008

  https://blog.csdn.net/weixin_43258559/article/details/109767442

标签:node,exporter,监控,数据源,性能,grafana,prometheus,Liunx,https
From: https://www.cnblogs.com/chenzibai/p/16614464.html

相关文章

  • python中不同方法的按索引读取数组的性能比较——哪种按索引读取数组的性能更好
               ......
  • 性能测试总结
    性能测试总结梳理性能测试流程(模型)首先做好测试的前期准备,梳理好性能的目标,编写好性能测试的测试用例选择好要用的工具,编写好测试计划,使用选择好的工具或代码来设计场景......
  • 性能测试(二)
    1、分配启动程序的内存,分配一个不足以支撑程序启动的内存或者不足以支撑程序完成请求的内存,那么就会出现内存泄漏或者请求时程序假死(模拟内存泄漏)①、分配不足以支撑程序......
  • 测试右移-后台服务监控告警实践
    前言前段时间,公司上线了“大屏”项目,用于对接展示一些业务平台的数据。但是在上线后使用过程中,产品或业务经常反馈前台页面没有数据。出现这种情况后,开发人员会去排查问......
  • 性能测试Ⅵ
    locust:是基于Python语言的性能测试工具,它是基于协程的思想来进行设计的。Python语言是没有办法利用多核的优势,所以了Python为了解决这个问题,设计了协程,作为协程的任务,遇到I......
  • 性能测试通过标准
    阿里:https://help.aliyun.com/document_detail/29338.html一.通用互联网服务端性能TPS大于期望值错误概率小于0.5%响应时间小于期望值CPU利用率小于75%JVM内存使用率小于......
  • liunx--软件安装
    rpm安装方式1.rpm包常用命令安装一个包:#rpm-ivh升级一个包:#rpm-Uvh移走一个包:#rpm-e  --force即使覆盖属于其他包的文件也......
  • 为什么需要去做“性能测试”
    一、为什么要做性能测试?系统用户量快速增长;同时业务和系统架构更加复杂,要处理的数据大大增加。此时不仅仅要满足于功能的实现,在很多场景下更要关注系统性能。二、什么是......
  • 性能测试指标
    记录下性能测试常用的几个指标。1、TPSTPS的全称是TransactionPerSecond,即每秒处理的事务数,那什么是事务呢?衡量一个系统性能的好坏,主要看的是单位时间内,系统可以处理......
  • liunx用户配置,sudo与文件权限
    liunx用户管理1.查看当前用户whoami2.添加liunx用户useradd用户名(需要root权限)-g群组 指定添加用户的所属组-uuid......