分享人:敬海,解决方案架构师
西邪,高级专家
视频地址:https://yqh.aliyun.com/live/detail/21950
正文:
最佳实践目前已覆盖23种常用场景,有170余篇最佳实践,这其中涉及100款以上阿里云产品的最佳使用场景。目前,最佳实践已成功帮助大量客户实现自助上云。本篇实践将从3个部分为大家详细介绍云服务器基准性能测试最佳实践,希望可以让大家对其有更深入的了解,并可以将其应用到项目中,达到降本提效的目的。
本文主要内容分为以下三个方面:
l 最佳实践原理讲解
l 测试工具讲解
l 最佳实践系统搭建
一、 最佳实践原理讲解
1)云服务器性能测试-场景描述
本最佳实践适合利用标准的benchmark工具对云服务器的CPU、内存、网络和磁盘进行测试的场景。适用的客户主要是对云服务器进行基准性能测试的客户。
2)云服务器基准性能测试-系统架构
云服务器基准性能测试的架构比较简单,我们在同一个VPC里面创建两台配置完全一模一样的ECS,然后进行性能测试。
测试的内容主要包括以下几个部分:CPU、内存、网络和云盘。
CPU这块我们采用SuperPi 、Unixbench来测试CPU的单核和多核性能。
内存这块我们采用Stream来测试内存带宽采用MLC来测试内存延迟。
网络这块儿我们采用netperf来测试网络带宽和PPS。
云盘这块我们采用FIO来测试云盘的带宽和IOPS.
二、 云服务器基准性能测试
1)云服务器性能测试介绍
说起服务器就会谈到性价比,性价比定义为性能除以价格。性能可以分为多块,可以理解为狭义的性能,性能分就是常见的跑分、业务性能、业务达到的性能值,比如时延,比如QPS。稳定在时域上可以分为两块,每次测试性能分都是稳定,测试过程中的性能稳定,波动不强。时延代表了客户响应能力及客户体验。具体的性能怎么定义?可以分为CPU、网络、存储、内存性能。CPU可以通过SuperPI、Unixbench进行性能测试。网络测试可以通过netperf、iperf进行性能测试。磁盘测试通常采用FIO进行性能测试。这种测试通常采用Stream进行性能测试。
2)性能测试工具
在CPU性能测试这块有Unixbench、SuperPI、SpecCPU、SpecJBB、Lmbench。SpecCPU、SpecJBB是收费的,就不多介绍了,其他都是免费的。SuperPI通过计算π看CPU耗时,主要衡量的是CPU的主频。Unixbench是一个综合性的测试工具,跟操作系统关联很大,而且这个工具现在不维护了,里面有不少BUG,我们做了修复。在阿里云的http://github.com/aliyun上面有,里面详细介绍了为什么做这些修改。Lmbench则是侧重于去计算CPU的主频、L3cache等等,是一个非常古老的测试工具。
网络测试主要使用net perf 、iperf,要注意的是现在网上流传的文档都是单流测试即起一个server一个client进行压测。现在的网络性能都很好,单流测试往往达不到网络的瓶颈,需要多流进行性能测试。Sockeperf和ping主要是用来做网络时延测试。Handy主要适用于连接处测试,但是这个测试往往取决于内存大小,所以不是很推荐。
磁盘测试最看重的是FIO,测试的时候一定要注意,direct=1,否则测试的时候会跟操作系统关联很大。
内存测试通常采用Stream,一般来说很少有业务内存带宽是瓶颈.MLC则是英特尔提供的内存测试工具,可以准确的测试出内存时延。
业务测试则是多种多样的,有http服务的,有ab、gatling、wrk进行压测。像数据库测试可用sysbench,当然sysbench也可以做很多其他测试。Redis测试则使用redisbent。大数据测试可以考虑使用Bigbench。业务测试种类繁多,大家可以采用最贴合自己的业务场景(的工具)进行性能测试。
三、最佳实践系统搭建
下面简单演示下测试环境的搭建。
1)创建应用模板
步骤1登录 CADT 控制台。(https://bpstudio.console.aliyun.com)
步骤2在菜单栏单击新建 > 官方模板库新建。
步骤3选择 ecs-benchmark 模板,单击基于方案新建。
步骤4配置模板资源参数。
l l 选择一个地域,这里选择北京
l l 修改 vpc 名称,这里是 vpc_beijing
l l 修改 vswitch 名称,这里选择 cn-beijing-j 可用区,
l l 选择你要测试的 ECS 的规格以及 ECS 的参数。
ᅳ根据需要选择 ECS 的规格
ᅳ操作系统选择 CentOS 7.8
ᅳ数据盘选择 essd 700GB
ᅳ其他根据需要配置
步骤5配置完成,单击右上角保存按钮,输入应用名称,并单击确认。
2)部署应用
步骤1从菜单栏单击应用 > 部署应用,开始进行资源验证。
步骤2资源验证成功,单击下一步:价格清单。
说明:如果资源验证失败,根据提示修改对应参数配置即可。
步骤3单击下一步:部署清单。
步骤4勾选服务协议,单击下一步:创建资源。
步骤5资源部署成功。
步骤6单击资源名称中的资源,打开 ECS 的控制台,查看已经创建完成的 ECS 资源。
关于完整的搭建演示过程,大家可以用过https://bp.aliyun.com/detail/189这个链接来访问本篇最佳实践文档内容,里面包含最佳实践场景和完整的搭建过程。