热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux服务器监控:Grafana+InfluxDB+Telegraf监控平台搭建

1.在这里我们采用InfluxDBGrafana的方式监控和展示我们本地Jmeter的各种参数,服务器的需要配置点东西,下次补充①InfluxDB是一

1.在这里我们采用 InfluxDB+Grafana的方式监控和展示我们本地Jmeter的各种参数,服务器的需要配置点东西,下次补充

①InfluxDB是一个年轻的时许数据库,用GO语言开发的,适用于小数据量的存储,感兴趣同学可以看下数据库方面的东西,毕竟面试造火箭,得学会忽悠啊啦啦啦啦.....

②Grafana是JS开发的,①用来展示数据,支持二次开发,反正我不会,嘻嘻(●'◡'●)嘻嘻...

原理图:

2.监控平台搭建

主要分为①InfluxDB搭建

②Jmeter设置

③Grafana操作

!!!三连警告,官网下载!官网下载!官网下载!

 

下载influxDB,解压后进入,可以在本地写个.bat文件方便打开,目录写自己的infuxdb的绝对路径即可

cd D:\influxdb-1.4.2-1-jmeter
influxd -config influxdb.conf

启动界面

验证数据库已启动

现在还没有任何数据库,新建一个储存jmeter的数据的库

 

现在开始修改influxdb.conf里的参数,为连接jmeter做准备。

把graphite下的注释给去掉,把enabled = false改为enabled = true,把database = "graphite" 改为database = "jmeter"(刚才创建的数据库)

设置完成重启一下influxDB

 

 

②Jmeter设置

在请求上添加后端监听器

并修改红框内的参数,参数值和刚才influxdb.conf是对应的哦!!!

配置完成后跑一个时间比较长的脚本,比如一个脚本把循环次数选为永远(●'◡'●)

现在再次查看influxDB中jmeter数据库中的数据你就会惊喜的发现有数据啦哈哈

备注:1是没跑脚本时候看的2是跑脚本后看到的

 

 

③Grafana操作

下载后傻瓜式安装,然后写个.bat脚本方便打开,目录写自己的

cd D:\grafana\grafana\bin
grafana-server.exe

然后使用localhost:3000访问即可进入界面,默认账号/密码都是admin

 

 

开始连接influxDB数据库,步骤如下

添加数据库源:

QAQ没想到有这么多数据库,孤陋寡闻了

下一步连上我的jmeter数据库

测试下是否连接成功

 

有了数据源,下一步就是创建一个界面化显示,点击+->Dashboard->Add Query

然后胡乱点点(千万别怕出错)开始看看显示,(●'◡'●)

好了有了波浪线,说明环境成功,你可以用这个工具来监控你的Jmeter显示了,这是个实验性质的环境搭建,但是再复杂的环境也就这么个流程

 

后期会更新监控服务器环境的,大同小异

 

3Q!!!

 

 

 


下午没关jmeter,然后一直跑,结果:

可见长时间监控是可以很直观的发现一些性能问题,如果在实际生产环境中,可以看下这个时候的日志,看看为什么响应时间这么长

 

 




两行隔开,现在开始搭建监控服务器的环境

1.采用telegraf + influxdb + Grafana

原理图:

嘻嘻,修改一下上面的图不就行了,机智的一笔。。。

telegraf就是个收集器,在服务器里开启就收集他的系统信息。

先把包传过去

2.搭建telegraf + influxdb + Grafana监控环境

分为以下三个步骤:

①InfluxDB设置

②Telegraf设置

③Grafana操作

①InfluxDB设置

傻瓜式安装

启动看下

启动命令 systemctl start influxd 启动后可以先查看下状态 systemctl status influxd

然后直接influx命令进入数据库exite

②telegraf设置

傻瓜式安装

 

配置:

坑爹QAQ vim命令第一次编辑应该不小心改错东西了,报 Failed to start The plugin-driven server agent for reporting metrics into InfluxDB.错误,然后卸载重装

启动telegraf :systemctl start telegraf 状态查看:systemctl status telegraf

 

切换至influxDB,这时应该已经有数据了

随便查看个表:

nice!都是常用的系统参数,这就说明influxDB和telegraf已经py成功,就差个grafana了!!!

③grafana操作

傻瓜式安装

备注:如果安装报urw-fonts is needed by grafana-xxx,则需要安装字体:

yum install urw-fonts

 

安装grafana在linux系统上的配置

yum install initscripts fontconfig -y

启动服务:systemctl start grafana-server

备注:设置开机启动 systemctl enable grafana-server.service

 

3.windows本地监控

通过ip:3000访问

当然第一次访问肯定GG了,因为3000端口被服务器防火墙挡住了,我们使用命令永久添加3000端口

firewall -cmd --add-port=3000/tcp --permanent

可以看到3000已添加到开放端口

此时即可访问 服务器ip:3000

此时老步骤添加数据库来源,只不过把localhost换成了服务器ip,数据库换成telegraf即可

如果碰到没有加载出来数据的情况,请查看服务器时间是否和本地差很多,需要校准一下。睡觉了,长期更新,这些都是基础的东西,后期会更新怎么分析性能问题,还有UI/接口自动化的东西!有兴趣的可以加群:175317069 群里有公开课和自动化和性能的资料

good night!!!


推荐阅读
  • Android系统源码分析Zygote和SystemServer启动过程详解
    本文详细解析了Android系统源码中Zygote和SystemServer的启动过程。首先介绍了系统framework层启动的内容,帮助理解四大组件的启动和管理过程。接着介绍了AMS、PMS等系统服务的作用和调用方式。然后详细分析了Zygote的启动过程,解释了Zygote在Android启动过程中的决定作用。最后通过时序图展示了整个过程。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 本文介绍了C#中生成随机数的三种方法,并分析了其中存在的问题。首先介绍了使用Random类生成随机数的默认方法,但在高并发情况下可能会出现重复的情况。接着通过循环生成了一系列随机数,进一步突显了这个问题。文章指出,随机数生成在任何编程语言中都是必备的功能,但Random类生成的随机数并不可靠。最后,提出了需要寻找其他可靠的随机数生成方法的建议。 ... [详细]
  • Imtryingtofigureoutawaytogeneratetorrentfilesfromabucket,usingtheAWSSDKforGo.我正 ... [详细]
  • 本文记录了在vue cli 3.x中移除console的一些采坑经验,通过使用uglifyjs-webpack-plugin插件,在vue.config.js中进行相关配置,包括设置minimizer、UglifyJsPlugin和compress等参数,最终成功移除了console。同时,还包括了一些可能出现的报错情况和解决方法。 ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • 本文总结了Java中日期格式化的常用方法,并给出了示例代码。通过使用SimpleDateFormat类和jstl fmt标签库,可以实现日期的格式化和显示。在页面中添加相应的标签库引用后,可以使用不同的日期格式化样式来显示当前年份和月份。该文提供了详细的代码示例和说明。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 生成对抗式网络GAN及其衍生CGAN、DCGAN、WGAN、LSGAN、BEGAN介绍
    一、GAN原理介绍学习GAN的第一篇论文当然由是IanGoodfellow于2014年发表的GenerativeAdversarialNetworks(论文下载链接arxiv:[h ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
author-avatar
亲亲宝贝的夏天狂想曲_540
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有