zoukankan      html  css  js  c++  java
  • linux服务器的监控工具nmon;也可以使用jmeter,Server agent监控服务性能;linux sar命令;

    一、nmon监控服务器性能;

    nmon官网下载相应版本,如centos7 下载nmon16e...

    1.wget http://sourceforge.net/projects/nmon/files/nmon16e_mpginc.tar.gz下载;

    2.新建目录nmon16e,mkdir nmon16e

    3.解压到指定目录nmon16e; tar -zxvf nmon16e_mpginc.tar.gz -C nmon16e

    4.在nmon16e中找到 ..._centos7,并对它添加执行权限;

     5.把..._centos7加入环境变量中,mv nmon_x86_64_centos7 /usr/local/bin/nmon

    6.输入nmon,启动nmon; 下图显示了不同快捷键的用法;

     6.1,按下c,显示cpu信息;按下m,显示内存信息;

     7.数据采集;

    性能测试时,需要根据测试场景的执行情况,分析一段时间内系统资源的变化,这时需要nmon采集数据并保存下来,以下是常用参数;

     -f :生成文件,文件名=主机名+当前时间.nmon

    -T:显示资源占有率较高的进程;

    -s:-s 5 表示每隔5s采集一次数据;

    -c:-c 10 表示总共采集10次数据;

    -m:指定文件保存目录;

    如:nmon -f -s 30 -c 8 -m /usr/local

    7.1.若是想要关闭nmon,ps -ef | grep nmon;

     7.2 根据pid,杀掉进程;kill -9 pid

     

     8.使用winscp将centos7下的测试结果,拷贝到windows下;

    9.数据分析;

    使用nmon_analyser,IBM中的某大咖写的;

     

     8.1下载,解压;

     8.2.双击 nmon analyser v66.xlsm,excel需要允许打开宏;

     8.3.点击excel中的"analyze nmon data",然后打开结果文件.nmon格式,另存为.xlsx格式;

     

     

     8.4 如下图结果;

     二、使用ServerAgent监控服务器性能;

    下载插件;

    1.访问https://jmeter-plugins.org/install/Install/ 或 https://jmeter-plugins.org/downloads/old/,下载两个文件,JMeterPlugins-Extras和JMeterPlugins-Standard是客户端的;解压后将jar包放到jmeter的lib/ext目录下;

     

     

     2.访问 https://github.com/undera/perfmon-agent 下载serveragent,它是服务端的;将解压后的ServerAgent-2.2.3文件,使用WinScp放到linux系统上;

    并执行chmod +x startAgent.sh赋权;./startAgent.sh执行;默认是通过4444端口监控服务器;(可以通过java -jar ./CMDRunner.jar --tool PerfMonAgent --udp-port 7777 --tcp-port 7777该端口号为7777并执行;)

     

    打开jmeter,添加线程组——添加监听器 jp@gc-PerfMon Metrics Collector;

     

     配置端口和ip,端口默认4444; 运行查看结果;

     实例:

    本人服务器是阿里云,考虑到4444端口未对外开放,无法连接,3306端口未使用,所以使用3306端口;

    netstat -lnp | grep 3306查看3306端口是否使用;

    java -jar ./CMDRunner.jar --tool PerfMonAgent --udp-port 3306 --tcp-port 3306;运行并切换端口3306

     

     

     

    如上图,linux上运行serveragent,监控3306端口,windows下,cmd下,输入telnet 47.98.106.11 3306,按下enter键,然后输入‘test’,查看linux中命令行显示test命令,则连接成功;

     

     jmeter持续运行,并监控ip,3306端口的cpu,memory等;

     Linux sar命令

    sar(System Activity Reporter系统活动情况报告)是目前Linux上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、内存使用状况、进程活动及IPC有关的活动等;

    sar命令常用格式

    sar [options] [-o file] t [n]

    其中:

    t 为采样间隔,n为采样次数,默认值是1;

    -o file 表示将命令结果以二进制格式存放在文件中,file是文件名;

    options 为命令行选项,sar命令常用选项如下:

    -A:所有报告的总和;

    -u:输出CPU使用情况的统计信息;

    -v:输出inode、文件和其他内核表的统计信息;

    -d:输出每一个块设备的活动信息;

    -r:输出内存和交换空间的统计信息;

    -b:显示I/O和传送速率的统计信息;

    -a:文件读写情况;

    -c:输出进程统计信息,每秒创建的进程数;

    -R:输出内存页面的统计信息;

    -y:终端设备活动情况;

    -w:输出系统交换活动信息;

     

    命令使用:

    1)监控所有资源的报告;sar -A -o all 5 1 ;每5秒采样一次,连续采样1次;观察所有资源的使用情况,并将采样结果以二进制形式存入文件all中;

    查看二进制文件all中的内容;

    查看所有内容输入:sar -a -f all

    查看CPU相关的内容输入:sar -u -f all

     (2) CPU资源监控;

    sar -u 10 2 每10秒采样一次,连续采样2次,观察CPU的使用情况;

     要判断系统瓶颈问题,有时需要几个sar命令选项结合起来;

    怀疑CPU存在瓶颈,可用sar -u和sar -q等来查看;

    怀疑内存存在瓶颈,可用sar -B、sar -r、sar -W等来查看;

    怀疑I/O存在瓶颈,可用sar -b、sar -u、sar -d等来查看;

    linux sar命令可参考:https://www.jianshu.com/p/79bfbfdc95c7

     

     

     

    越努力,越幸运!!! good good study,day day up!!!
  • 相关阅读:
    [LeetCode] Word Break 解题思路
    [LeetCode] Longest Valid Parentheses 解题思路
    [LeetCode] Largest Rectangle in Histogram 解题思路
    新博客
    正在学习的Angularjs包裹的插件
    Markdown
    Markdown 基础
    Angular docs
    npm-link
    webpack-hot-middleware 用于 livereload
  • 原文地址:https://www.cnblogs.com/canglongdao/p/12421958.html
Copyright © 2011-2022 走看看