前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >十二款用于自主云评测的开源工具

十二款用于自主云评测的开源工具

作者头像
力哥聊运维与云计算
发布2019-06-28 12:53:09
1.5K0
发布2019-06-28 12:53:09
举报

马上年底了,各种云评测陆续放了出来,最近看到有一些评测也引起了争议,第三方评测数据可以作为参考,真正要使用云,将业务放到云上,还是要自己来做一些评测,一方面自己跑的数据可信,一方面自己最了解业务需求,知道测试的时候应该重点关注那些指标。

云评测的三个阶段

云在使用之前应该经过三个评测阶段,性能评测、网络质量评测、业务评测。

1.性能测试

性能评测主要关注云服务的性能,比如云主机的CPU、磁盘、网络性能,RDS、负载均衡、S3等服务的性能。客观的说,因为每一个朵云可用区域上线的时间不一样,搭建云的物理机配置可能也会不同,所以性能多少都会有差异。另外,因为云厂商的能力不同,有的云厂商软件版本也会不一致,造成性能也会有差异。尽管云厂商在上线之前都会做严格的性能测试,但是云厂商一般是基准测试,并且不会公布详细的数据,所以作为云的使用者应该通过自己评测,做到心中有数。

2.网络质量评测

云的一个特性就是基于网络,所以放到云上的业务大多也都是基于网络的,所以对云的网络质量评测很重要。另外要注意,网络质量是动态变化的,所以对云的网络质量评测在使用之前要评测,在使用过程中也要长期持续的监控。

3.业务评测

业务上线之前,应尽可能全面的对云系统是否能满足业务进行评测,尽可能的模拟各种业务场景,确保在各种极端情况下,云系统能满足业务的需求。一般在流程比较完善的组织内部,都会有严格的业务测试流程,但是要注意如果之前的流程是在非云环境,要结合云环境进行相应的调整。

云评测都可以使用那些工具

云评测可以使用的工具很多,因为在云上一般使用Linux居多,本文介绍的工具侧重Linux系统,并且以开源工具为主。

1.Super Pi

网址:http://www.superpi.net/

Super Pi是一个单线程基准测试,可以计算特定位数的Pi。使用Gauss-Legendre算法,是测试纯单线程x86浮点性能的理想选择。

Super Pi是免费软件,可以随意下载分发,在Super PI网站上提供常见硬件的Pi计数得分,方便对比。

十二款用于自主云评测的开源工具
十二款用于自主云评测的开源工具

图1:Super Pi网站上的常见硬件Pi计数得分

注意Super Pi是单线程的,不能用于多线程的CPU测试,通常用于粗略比较CPU计算能力,CPU测试衡量指标比较多,建议CPU测试侧重基于业务压力的测试。

2.FIO

源代码网址:https://github.com/axboe/fio

二进制下载网址:http://freshmeat.sourceforge.net/projects/fio

FIO作者是Jens Axboe,是一款I/O测试工具,用于基准测试和压力/硬件验证。支持19种不同类型的I/O引擎(sync,mmap,libaio,posixaio,SG v3,splice,null,network,syslet,guasi,solarisaio等),支持多线程作业,可以在块设备和文件上工作,FIO是测试IOPS的利器,同时支持Windows系统和Linux系统。

十二款用于自主云评测的开源工具
十二款用于自主云评测的开源工具

图2:reshmeat.sourceforge.net网站上的FIO截图

3.IOzone

网址:http://iozone.org/

IOzone是一个文件系统基准测试工具,支持测试各种文件系统。IOzone支持多线程,支持同步或异步I/O读写模式,IOzone还有一个特点是支持测试结果生成图片,方便直观的看到结果。

十二款用于自主云评测的开源工具
十二款用于自主云评测的开源工具

图3:IOzone网站上IOzone自动生成的图片

4.dd命令

dd是系统自带命令,不用特别安装,使用dd命令可以快速判断磁盘io性能。如果源是磁盘,目标是/dev/null,可以初步判断磁盘读性能;如果源是/dev/zero,目标是磁盘,可以初步判断磁盘写性能。dd缺点是只能测试顺序读写,不能测试随机读写性能。

5.iometer

网址:http://www.iometer.org

Iometer常用于磁盘I/O测试,是用于单个和集群系统的I/O子系统测测试工具。最初由英特尔公司开发,并将其交给开源开发实验室(OSDL)。

十二款用于自主云评测的开源工具
十二款用于自主云评测的开源工具

图4:Iometer网站上的截图

Iometer 包含了两个程序,Iometer 和 Dynamo。Iometer 是控制程序,可以设置操作参数,启动和停止测试。Dynamo 是负载生成器。Iometer支持Windows系统和Linux系统I/O测试。

6.iPerf/iPerf3

网址:https://iperf.fr/

iPerf 是一个网络性能测试工具,可以测试TCP和UDP带宽质量,具有多种参数和UDP特性。iPerf可以报告带宽,延迟抖动和数据包丢失。

iPerf支持常见的操作系统。

十二款用于自主云评测的开源工具
十二款用于自主云评测的开源工具

图5:iPerf支持的系统

7.Netperf

网址:https://hewlettpackard.github.io/netperf/

Netperf最初是由惠普开发的,用于衡量许多不同类型网络的性能。提供单向吞吐量和端到端延迟的测试。Netperf基于C/S模式的,服务器端是netserver,用来侦听来自客户端的连接,客户端是netperf。在服务器端和客户端之间,建立控制连接,传递测试配置的信息,以及测试的结果。Netperf提供了许多预定义的测试,例如 测量批量(单向)数据传输或请求响应性能。Netperf根据应用的不同,可以进行不同模式的网络性能测试,

8.ping、traceroute、mtr

ping、traceroute、mtr是系统自带命令,可用于测试网络质量,特别是mtr命令可以连续测试。

十二款用于自主云评测的开源工具
十二款用于自主云评测的开源工具

图6:mtr运行截图

但是命令行不能或者不方便长期进行网络质量测试。

9.smokeping

网址:https://oss.oetiker.ch/smokeping

十二款用于自主云评测的开源工具
十二款用于自主云评测的开源工具

图7:oss.oetiker.chr网站上smokeing的截图

SmokePing由Perl编写的免费和开源软件,由MRTG和RRDtool的创建者Tobi Oetiker编写,能可视化的长期跟踪网络质量,使用浏览器交互式图形展现,支持分布式部署,可以配置报警,并且支持插件。

10.ApacheBench

ApacheBench(ab)是一个单线程命令行计算机程序,用于测量HTTP Web服务器的性能。最初设计用于测试Apache HTTP Server,通用于测试任何Web服务器。

ApacheBench与标准Apache源代码分发捆绑在一起,与Apache Web服务器本身一样,是免费的开源软件,并根据Apache许可证的条款进行分发。

11.SysBench

sysbench是一个基于LuaJIT的可编写脚本的多线程基准测试工具。 它最常用于数据库基准测试,但也可用于创建不涉及数据库服务器的任意复杂工作负载。

sysbench特性如下:

  • 支持系统基准测试;
  • 统计有关速率和延迟的广泛数据,包括百分比和直方图;
  • 通过在用户提供的Lua脚本中实现预定义的钩子,可以轻松创建新的基准测试;
  • 支持POSIX线程性能测试;
  • 支持数据库OLTP基准测试;
  • 能够每秒生成和跟踪数亿个事件。

12.Zabbix

十二款用于自主云评测的开源工具
十二款用于自主云评测的开源工具

图8:zabbix网站上Zabbix运行截图

Zabbix是目前流行的开源监控工具,支持常见操作系统,支持网络设备,配置灵活,支持自定义指标的监控,支持多种报警方式。

Zabbix很适合长期对云的性能监控,也可以和性能测试工具联动,可视化的展现测试结果。

自主云评测是必须掌握的技能

测试之前,首先需要理解被测试的指标,开源工具的使用一般都有些门槛,需要多研究和实战。上面介绍的开源工具基本都支持命令行,可以写成脚本,方便日常使用,也可以结合自己的运维场景,尽量将常用场景的测试自动化。

由于云环境复杂,并且可能每个业务场景对云的要求也不一样,使用云之前需要对云进行从性能到网络、再到业务的全面评测,做到心中有底,才能避免业务发生问题。随着业务压力增加,由于有详细的数据,也能做到心中有数,让对云的使用尽在把握中。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-11-30 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 云评测的三个阶段
  • 云评测都可以使用那些工具
  • 自主云评测是必须掌握的技能
相关产品与服务
负载均衡
负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档