无论你做的是什么云,有没有被问过:你们云服务器带宽是多少?
另外一种情景是,你们是否有在做性能测试的时候,是否有怀疑过Azure机器的带宽会对其有影响呢?
微软官方提供的带宽网速数据
首先官方给了一个前提,总结起来说是,带宽影响因素不是单一的,Azure提供了多种虚拟机大小和类型,每种类型都具有不同的性能组合。 一种能力是网络吞吐量(或带宽),以每秒兆比特(Mbps)为单位。 由于虚拟机托管在共享硬件上,因此必须在共享相同硬件的虚拟机之间公平地共享网络容量。 较大的虚拟机比较小的虚拟机分配更多的带宽。
所以如果客户,或者别人问你Azure机器的带宽多大,这个回答要建立在什么样配置的虚拟机类型前提下。
下表格是微软官方给出的带宽数据(黑色粗体),来源于微软官方链接
大小 | vCore | 内存:GiB | 临时存储 (SSD) GiB | 最大临时存储吞吐量:IOPS/读取 MBps/写入 MBps | 最大数据磁盘数/吞吐量:IOPS | 最大 NIC 数 | 预期的网络带宽 (Mbps) |
---|---|---|---|---|---|---|---|
Standard_A1_v2 | 1 | 2 | 10 | 1000/20/10 | 2/2x500 | 2 | 250 |
Standard_A2_v2 | 2 | 4 | 20 | 2000/40/20 | 4/4x500 | 2 | 500 |
Standard_A4_v2 | 4 | 8 | 40 | 4000/80/40 | 8/8x500 | 4 | 1000 |
Standard_A8_v2 | 8 | 16 | 80 | 8000/160/80 | 16/16x500 | 8 | 2000 |
Standard_A2m_v2 | 2 | 16 | 20 | 2000/40/20 | 4/4x500 | 2 | 500 |
Standard_A4m_v2 | 4 | 32 | 40 | 4000/80/40 | 8/8x500 | 4 | 1000 |
Standard_A8m_v2 | 8 | 64 | 80 | 8000/160/80 | 16/16x500 | 8 | 2000 |
实际测量Azure的带宽网速数据
本文主要使用iPerf3进行多节点测试,另外有兴趣的同学也可以尝试使用:bench、SuperBench等等
测试的场景如下图所示:
- 在内网间,从VM1(CentOS系统)到 VM2(CentOS系统) 下的网络带宽
- 在不同网络下,从Windows系统下访问VM2(CentOS系统)的网络带宽
关于iPerf3
这里不做过多介绍,iPerf3是iPerf的升级版,进行性能带宽测试的工具一种,支持OS种类版本也较多,官方网站:https://iperf.fr/
#### 下载安装方法 ##### Windows版下载及安装 1. 进入到下载地址:https://iperf.fr/iperf-download.php,下载Windows最新版
2. 将所下载的iPerf3解压,并将压缩包内的iperf3.exe
和cygwin1.dll
放入到C:\Windows\System32
文件夹下即可,
这样在Windows系统使用cmd命令或者PowerShell的时候既可使用iPerf3命令。
##### Linux 版本安装
#红帽或者CentOS:
sudo yum install -y iperf3
# 如果是Ubuntu:
sudo apt install iperf3
# 如果是离线安装,需要在官方下载离线包,在按照下列命令进行安装:
tar -zxvf iperf-3.1.3.tar.gz #解压
cd iperf-3.1.3/ #进入解压目录
./configure --prefix=/usr/local/iperf-3.1.3/ #--prefix设置安装目录,即iperf3生成路径,绝对路径
make clean #清除掉之前编译的文件,确保不影响
make #编译
make install #安装
#### 在Azure上使用iPerf3进行测试 ##### 打开被测端口 进入Azure Portal,在NSG中添加Server端机器的入站规则(点击图片放大)。
在 Azure Portal中打开主机 VM2 的管理界面,进入 “Networking”,添加 TCP 5001 及 5201 端口。其中 5001 对应 iPerf,5201 对应 iPerf3。如果你只用iPerf3,也可以只开放 5201 端口。
iPerf 3 的端口也可以通过 -p 参数指定。同样,指定端口后,也得记得在 Azure 上打开对应的端口。
准备被测主机
在被测主机 VM2 上运行:
iperf3 -s
-s
参数就是 server 的意思。表示该主机上的 iPerf3 扮演服务端角色,在默认端口 5201 上等待连接。
准备客户端主机(Linux CentOS)
在主机 VM1上运行:
iperf3 -c 18.8.8.8 -p 5201 -t 10
其中,-p
表示指定端口号,不写即采用默认端口 5201
。-t
表示测试时间,我这里指定为10秒。
命令执行后即开始测试,我们可以在客户端注意VM1 的输出中看到每一次请求的数据大小以及网速。并在测试结束后看到平均网速。
注意单位是 bits 与 Bytes。bits 是位,Bytes 是字节。一般宽带运营商的单位为 Mbps,要除8才能转换到 MB/s。
在测试输出的同时,被测主机 Sever端 也会有同样的数据输出:
同样在Windows机器上运行:
iperf3 -c 18.8.8.8 -p 5201 -t 10
在Windows客户端下输出的宽带速度和内网的Linux环境速度还有差别的。
在Server端的VM2中两次测速数据如下图,
总结: 首先Azure官方给出了不同sku规格机器的默认带宽数据,要明确的是这个带宽是出站的带宽,也就是从Azure终端机器上出站的带宽,但是到接收的终端,中间有各种环节,会被各种因素的影响,打个比方,你办理的家用宽带是500M的带宽,但是你的路由器只支持100M的那么你的网速只能是100M的带宽。
Azure测速网站汇总
这里总结几个Azure云测速的网站资源,可以使用他们来进行测试Azure Ping值(延时)和网速:
http://www.azurespeed.com/
http://azurespeedtest.azurewebsites.net/文章来源:https://www.toymoban.com/news/detail-467678.html
注:本文原创由 bluetata
发布于: https://bluetata.blog.csdn.net/ 转载请务必注明出处。文章来源地址https://www.toymoban.com/news/detail-467678.html
到了这里,关于[ Azure - VNet ] Azure网络带宽的性能测试的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!