• Azure VM (41) 使用netperf进行PPS压力测试测试


      《Windows Azure Platform 系列文章目录

      本文介绍如何使用netperf进行PPS (packets per second)压力测试

      主要步骤分为一下几点:

      1.创建Azure Server VM和Azure Client VM,其中Server VM作为服务器,Client VM对Server发起请求

      2.分别在Server VM和Client VM上,都安装netperf

      3.在Server VM上启动netserver服务

      4.在Client VM上创建压测脚本,并进行压力测试

      5.在Server VM上收集日志

      具体步骤如下:

      1.创建Azure虚拟网络,创建Azure虚拟机,步骤略。

      2.选择Azure VM类型为DV5系列,如D4s v5,注意VM的网络设置里,要选择加速网卡

      3.分别在Server VM和Client VM上,都安装netperf

    yum install gcc make  -y
    yum install sysstat -y
    
    mkdir /data
    cd data
    
    wget -c "https://codeload.github.com/HewlettPackard/netperf/tar.gz/netperf-2.5.0" -O netperf-2.5.0.tar.gz
    tar -zxvf netperf-2.5.0.tar.gz 
    
    cd netperf-netperf-2.5.0
    
    ./configure 
    make && make install

      执行netperf -h和netserver -h命令,确认安装成功

      4.在Server VM上启动netserver服务

    netserver

      5.在Client VM上准备测试脚本,我们生成一个shell文件,叫multi_thread.sh

    vi multi_thread.sh

      输入下面的内容中,通过使用UDP发起并发请求。

    #!/bin/bash
    host_ip=$1
    time_elapsed=$2
    thread_count=$3
    
    for i in $(seq 1 $thread_count)
    {
         netperf -H $host_ip  -t UDP_STREAM -l $time_elapsed -- -m 1 -R 1 &
    }

    TCP_STREAM:client端向server端发送批量TCP数据
    UDP_STREAM:client端向server端发送批量UDP数据
    TCP_RR和TCP_CRR:前者是在同一个连接中进行多次request和response请求(并发),后者(新建)是每次请求新建一个连接(HTTP)
    UDP_RR:使用UDP进行request和response请求

      6.在Client VM上执行脚本

    ./multi-thread [ServerVM的内网IP地址] [测试持续时间秒] [测试线程数]

      7.在Server VM上执行脚本

      下面的脚本中,DEV显示网络接口信息,每1秒钟取1次值,一共执行1100秒。把结果输出到txt文件里

    sar -n DEV 1 -t 1100 > 4core_1thread_20minutes.txt

      输出结果类似以下信息:

    11:02:57 AM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil
    11:02:58 AM eth1 15.00 20.00 3.61 5.86 0.00 0.00 0.00 0.00
    11:02:58 AM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
    11:02:58 AM eth0 14.00 19.00 3.35 5.80 0.00 0.00 0.00 0.00

    Average: IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil
    Average: eth1 5091163.97 5.36 298311.54 1.53 0.00 0.00 0.00 2.44
    Average: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
    Average: eth0 5091163.58 5.05 228705.77 1.51 0.00 0.00 0.00 1.87

      

      其中:

    IFACE:网络接口
    rxpck/s:每秒钟接收的数据包
    txpck/s:每秒钟发送的数据包
    rxbyt/s:每秒钟接收的字节数
    txbyt/s:每秒钟发送的字节数
    rxcmp/s:每秒钟接收的压缩数据包
    txcmp/s:每秒钟发送的压缩数据包
    rxmcst/s:每秒钟接收的多播数据包

     

  • 相关阅读:
    SDN第三次作业
    SDN第二次上机作业
    SDN第二次作业
    第七次作业之总结篇
    第八次_计算器重构
    第六次作业之计算器图形界面化
    C++课程 second work _1025
    第五次作业--计算器项目之学习文件读取方式
    C++课程 first work
    第四次作业-计算功能的实现
  • 原文地址:https://www.cnblogs.com/threestone/p/16462124.html
Copyright © 2020-2023  润新知