威联通NAS TS-873A 实测

一、为什么要NAS?

虽然每个人都有各自的理由,但核心诉求点集中在安全存储和备份分享数据,支持远程访问,可安装包括虚拟化、web服务器等的额外拓展等。NAS的本质是网络+存储。

我使用NAS主要目的是:

  1. 在存算分离环境中,通过iSCSI服务,使用NAS提供的储存服务。
  2. 安全存储并备份虚拟化系统所必需的文件。
  3. 安全存储并备份文档,照片等文件。

二、NAS有哪些可选项

目前家用NAS,可以选择DIY自建,即自己购买硬件组装搭建NAS,NAS本质上也是一台计算机,只是在功能上偏向于存储而已,操作系统可以选择存储专用的FreeNAS的系统,也可以直接购买成品,诸如威联通、群晖、铁威马等。对于没有太多计算机基础的小伙伴,建议就不要自行搭建了,挑选硬件和系统容易交学费,故障排查繁琐。

个人之前用过铁威马,感觉是具备基础的NAS功能,如果只是想简单安全备份存储文件,铁威马确实够用了,性价比高。但就功能性和额外拓展的能力相比威联通和群晖,确实稍弱。鉴于本人使用NAS的目的,综合考虑后,购买了威联通的TS-873A。之前也考虑过价格相近的商用的机架式的NAS设备,诸如TS-832PXU,但企业级设备噪音较大,家用无法忍受。

选择TS-873A,我的核心诉求点如下:

  1. 8盘位可提供足够的磁盘空间,组RAID10后还可以有热备磁盘位,未来很长一段时间内都不需要再升级设备。
    如果4盘位,组建RAID10后是没有热备磁盘位的。另外,为什么不组RAID5的原因主要是,RAID10性能会更好些,万一出现故障恢复速度也快,RAID10虽然只能用一半的空间,但目前硬盘价格并不贵,其实是可以接受的。

  2. 内置 M.2 NVMe SSD 槽位,可利用SSD加速读写速度。
    2个M.2 NVMe SSD,可以组RAID1,做读写缓存或者Qtier自动分层存储,大大加速读写速度,解决HDD硬盘较慢的问题。如果2个SSD插槽不够用,还可以再购买SSD扩展卡配件,873A有PCIe Gen3x4的插槽。

  3. 额外有2个PCIe Gen3x4插槽
    可以安装额外的配件,诸如SSD扩展卡,万兆网卡等。我自己就买了25GbE的双口光纤网卡,原装是2个2.5G的电口网卡,大大提升了网络速度,让网络速度不再成为瓶颈点。不仅如此,加配件后可支持FC SAN环境。

  4. 价格合适,这点很重要
    再往上,9盘位,高度过高,会占用机柜更多U的空间,12盘位又太贵。当然,就价格太贵什么的,完全不是对方的问题,是我的太穷的问题。

  5. 支持UPS

  6. 几乎没有什么噪音

还有一些特性,我暂时用不着,诸如可扩充显卡,远程访问,搭建虚拟化环境等。可以访问https://www.qnap.com.cn/zh-cn/product/ts-873a看下官方的介绍。

三、实际体验与改造

  1. 外包装挺厚实的,保护机体用的泡沫也很大。机体自身挺沉的,大概15斤左右。机体下方有缓冲垫,如果你放在镜面的桌子上,或者机柜的托盘上,会有点粘在上面的感觉,不容易造成移动,拿起时需要先往上使点力。

  2. 拆开外壳,主板位于侧面,包括内存条,M2插槽。PCIe接口在上方,PCIe扩展体验不是非常好,空间不大,很小的螺丝刀才能正着伸进去,稍微大一点的螺丝刀就需要侧着拧。

  3. 我把内存升级了内存到32GB,原厂自带8GB内存有点小。hero系统比较吃内存,如果需要用hero的raid10,需要16GB以上。

  4. 加装了一块25GbE双端口的网卡,我买配件的时候,10G的刚好没货,才买的25G,事实上买10GbE的即可。

  5. 置入2块三星M2 NVMe SSD 970EVO Plus。这里要吐槽下威联通的SSD谜之兼容性。因为硬件本身也在升级,威联通并不会及时更新。比如,三星SSD的EVO 或者 EVO Plus 型号名称出现微小的变化,主要在型号后缀,可能会很难买到完全一模一样的型号。按照https://www.qnap.com.cn/zh-cn/compatibility/?model=522&category=ssd官方的兼容性列表,威联通官方测试过,“970 EVO Plus MZ-V7S1T0” 和 “970 EVO MZ-V7E1T0BW” 是可兼容的,但事实上,目前能买到的"970 EVO Plus MZ-V7S1T0B" 我亲测是兼容的,但是 “970 EVO MZ-V7E1T0” 却又不兼容。不兼容的症状是会导致一些奇奇怪怪的问题,系统并不会提示什么,可以开机,机体上的指示灯也一切正常,就是实际运行不正常。

  6. 置入4块希捷银河ExosX18系列企业级氦气硬盘 ST16000NM000J 16TB 256MB 7200RPM。个人经验是,第一是硬盘的水很深,真的不要找不熟悉的渠道去购买特别低价的硬盘,老老实实找正规渠道买,第二是注意各种门的问题,可以去找下对应的型号并避开。我自己目前都买希捷的银河系列企业级的硬盘。

四、开始实验

威联通NAS有两种系统,一种是传统的QTS,基于EXT4,另一种是 QuTS hero,基于ZFS。先说下结论,最终我还是用的QTS。虽然hero有许多高级特性,诸如去重,块大小可选等等,但对于我而言,稳定性更重要,高级功能虽然好但非必须,hero对机器性能的要求要远高于QTS,hero系统一旦初始设定完磁盘,就难以变更。虽然最终未使用hero系统,但我依然针对hero系统做了一系列的实际测试。

注意下,因为硬件所限,部分对照实验仅供参考,实验环境如下:

网络

NAS与服务器均使用万兆电缆连接到交换机上,网络环境不成为速度瓶颈点

  1. 8口10GbE万兆全SFP+光口交换机
  2. 10G万兆高速SFP+ DAC电缆

NAS

  1. HDD硬盘:4块 希捷银河ExosX18系列企业级氦气硬盘 ST16000NM000J 16TB 256MB 7200RPM
  2. SSD硬盘:2块 三星M2 NVMe SSD 970EVO Plus
  3. 内存32GB,完全满足hero的要求,实验过程中,内存占有率均在50%以下。
  4. 25GbE网卡(可向下兼容10GbE),网络环境不成为瓶颈点。

安装系统并创建存储池与区块LUN,开启iSCSI。安装好系统后,注意以下2点:

  1. 组建RAID后,设置为服务优先。
  2. 在网络适配器选项卡处,给使用的网卡设定固定IPv4地址,巨帧封包设定为最大的9000,关闭IPv6,关闭FEC。

服务器

  1. 硬件配置是 AMD Ryzen7 3800X 内存128GB
  2. 单独一块SATA SSD用于安装ESXi 7.0
  3. 在一块服务器本地HDD硬盘上,创建win10虚拟机,分配8核32GB内存,HDD型号是 希捷银河Exos7E8系列企业级硬盘 ST8000NM000A 8TB 256MB 7200RPM
  4. 主板上安装有一块三星M2 NVMe SSD 970 EVO MZ-V7E1T0
  5. 网卡是Intel 82599芯片 10G万兆SFP+光纤网卡

服务器上还做了以下设置:

  1. ESXi网络的标准交换机,设定MTU为9000,win10的网卡属性,设置开启巨帧Jumbo Packet
  2. 按照https://www.ibm.com/docs/zh/sanvolumecontroller/8.3.x?topic=problem-iscsi-performance-analysis-tuning,禁用ESXi和win10上的TCP延迟应答功能,并开启iSCSI巨帧。

测试软件

使用CrystalDiskMark 6.0.2 x64版本。测试次数选5,大小32GiB,测试队列数与线程数使用默认项,分别是顺序写入Q32T1、随机4K Q8T8、随机4K Q32T1、随机4K Q1T1

测试说明

  • 所有磁盘传输速度单位均是 MB/s
  • 由于10G网络限制,部分测试项,特别是顺序读,已经达到网络传输速率上限,造成无法有效测量真实IO速度
  • 多次重复测量,数值可能会有变化,变化幅度最大在15%左右。

测试维度有:

  1. NAS操作系统,分别是 QTS系统和QuTS hero系统
  2. 磁盘类型,分别是 M2 NVMe SSD 和 HDD
  3. RAID类型,针对 0,1,5,10 进行测试,其中SSD仅测试RAID1。
  4. 加速方式,针对不开启、高速缓存加速、Qtier三种方式进行测试,hero只有高速缓存加速功能。
  5. 连接方式,分别是使用win10直连iSCSI和使用vmware通过iSCSI连接后创建存储空间配置给win10虚拟机用。
  6. 块大小,QTS和QuTS hero的选项不同,QTS选项是512Bytes和4KB,hero是32k(vmware),64k(Hybrid),128k(视频/大型文件/备份)。但QTS LUN 4KB块大小,vmware通过iSCSI无法识别到,但win10通过iSCSI正常识别。
  7. 同步I/O,ZFS Intent Log (ZIL) 同步设置,仅hero有这个选项

缩写:

  1. 操作系统,QuTS hero 缩写为 hero
  2. 磁盘类型,M2 NVMe SSD 缩写为 M2 SSD
  3. 连接渠道,win10直连iSCSI缩写为 win10 ,使用vmware通过iSCSI连接后配置缩写为 vm

测试结果

对比 QTS 系统 和 QuTS hero 系统的磁盘速度

测试环境:

  1. 不开启加速,不使用Qtier
  2. 全部使用win10通过iSCSI方式连接NAS
  3. QTS系统块大小统一设置512Bytes,hero系统块大小统一设置64K
  4. QTS系统无ZIL同步IO配置,hero系统ZIL同步IO设置为不使用,本机磁盘无此项配置
系统类型QTSheroQTSheroQTShero
磁盘类型M2 SSDM2 SSDM2 SSDM2 SSDM2 SSDM2 SSD
RAID类型RAID 0RAID 0RAID 1RAID 1
Seq Q32T1 Read121012371233123712351237
Seq Q32T1 Write7117041196989715763
4KB Q8T8 Read307272308346307352
4KB Q8T8 Write278253333828034
4KB Q32T1 Read350361353382368391
4KB Q32T1 Write249322647125842
4KB Q1T1 Read151815181521
4KB Q1T1 Write217.1208.6206.8
系统类型QTSheroQTSheroQTSheroQTShero
磁盘类型HDDHDDHDDHDDHDDHDDHDDHDD
RAID类型RAID 0RAID 0RAID 1RAID 1RAID 10RAID 10
Seq Q32T1 Read1209965122295893494112281190
Seq Q32T1 Write293259531293285312539534
4KB Q8T8 Read276402796721867306103
4KB Q8T8 Write1717601813184727
4KB Q32T1 Read259432156921767357100
4KB Q32T1 Write3314561728175425
4KB Q1T1 Read1521162116201519
4KB Q1T1 Write2114211318142014
  1. 顺序读写场景,两个系统的IO性能差异较小
  2. 不管是磁盘类型是SSD还是HDD,hero系统的随机4K文件IO性能都低于QTS

实测 M2 NVMe SSD 与 HDD 的速度

测试环境:

  1. 统一不使用RAID
  2. 不开启加速,不使用Qtier
  3. 全部使用win10通过iSCSI方式连接NAS
  4. QTS系统块大小统一设置512Bytes,hero系统块大小统一设置64K
  5. QTS系统无ZIL同步IO配置,hero系统ZIL同步IO设置为不使用,本机磁盘无此项配置
磁盘类型本机 M2 SSDM2 SSDM2 SSD本机 HDDHDDHDD
系统类型QTSheroQTShero
Seq Q32T1 Read3550121012372221209965
Seq Q32T1 Write1913711704199293259
4KB Q8T8 Read8783072721.3227640
4KB Q8T8 Write90027825201717
4KB Q32T1 Read4253503611.3725943
4KB Q32T1 Write32824932123314
4KB Q1T1 Read3915180.411521
4KB Q1T1 Write97217.1162114

实测 RAID 0,1,5,10

测试环境:

  1. NAS安装QTS系统
  2. 不开启加速,不使用Qtier
  3. 全部使用win10通过iSCSI方式连接NAS
  4. QTS系统块大小统一设置512Bytes
  5. QTS系统无ZIL同步IO配置
RAID类型RAID 0RAID 1RAID 0RAID 1RAID 5RAID 10
磁盘类型M2 SSDM2 SSDM2 SSDHDDHDDHDDHDDHDD
Seq Q32T1 Read12101233123512091222121012241228
Seq Q32T1 Write7111196715293531280455539
4KB Q8T8 Read307308307276279278287306
4KB Q8T8 Write2783332801760162847
4KB Q32T1 Read350353368259215211226357
4KB Q32T1 Write2492642583356322354
4KB Q1T1 Read1515151516161615
4KB Q1T1 Write2120202121212220

QTS系统中,对比高速缓存加速与Qtier的读写速度

测试环境:

  1. NAS安装QTS系统
  2. 高速缓存和Qtier高速层均设置RAID 1读写缓存
  3. QTS系统块大小统一设置512Bytes
  4. QTS系统无ZIL同步IO配置
加速方式不开启不开启高速缓存高速缓存QtierQtier
磁盘类型HDDHDDHDD+SSDHDD+SSDHDD+SSDHDD+SSD
连接渠道win10vmwin10vmwin10vm
RAID类型RAID 1RAID 1RAID 1RAID 1RAID 1RAID 1
Seq Q32T1 Read93490012339551235950
Seq Q32T1 Write285278718708286280
4KB Q8T8 Read218225299420311360
4KB Q8T8 Write13372342561328
4KB Q32T1 Read217139242314337269
4KB Q32T1 Write28282332441716
4KB Q1T1 Read163318351533
4KB Q1T1 Write183021322125
加速方式不开启不开启高速缓存高速缓存QtierQtier
磁盘类型HDDHDDHDD+SSDHDD+SSDHDD+SSDHDD+SSD
连接渠道win10vmwin10vmwin10vm
RAID类型RAID 10RAID 10RAID 10RAID 10RAID 10RAID 10
Seq Q32T1 Read122894212149301232916
Seq Q32T1 Write539536719702508508
4KB Q8T8 Read306326366415301380
4KB Q8T8 Write47451802565926
4KB Q32T1 Read357233382312241301
4KB Q32T1 Write54552402422627
4KB Q1T1 Read153417311733
4KB Q1T1 Write203218292232

高速缓存加速是利用SSD作为缓存用于改进NAS的读写性能,加速分3种,只读加速、只写加速、读写加速。加速用的SSD,RAID可选项有不启用,RAID 0,1,5,6,10。只读加速可以组RAID0,因为并不存在数据丢失风险,RAID 0 是最优选项。只写或者读写缓存,建议使用RAID 1,5,6,10,避免因为SSD本身故障导致数据丢失或损坏的情况。高速缓存加速读的原理是,当从LUN或卷读取数据时,QTS将数据复制到SSD缓存以加速未来的读取请求。加速写的原理是QTS先将传入数据写入SSD缓存,然后再将数据刷新到常规存储。如果新数据在缓存中,对新数据的读取访问也会加速。

Qtier简单描述就是,QTS系统会根据存储设备速度将存储进行分层,然后按照数据访问频率,再各层之间移动数据。将经常访问的数据移动到最快速的磁盘,以提高读写性能,并将不常访问的数据移动到大容量的磁盘,降低存储成本。

  • Seq Q32T1 Read,无论是RAID 1 还是10,有无开缓存,都基本触及或接近10G网络的速度上限。
  • Seq Q32T1 Write,不开启缓存,基本和RAID 1 和 RAID 10 实际速度接近,高速缓存加速的写速度其实就是SSD的写入速度,和高速缓存原理的描述一致。Qtier的写入,RAID 1 和 10 接近2倍的差异,而且和HDD写入速度接近,猜测应该是直接写到HDD磁盘上的。
  • 4KB Q8T8 Read,速度差异小。
  • 4KB Q8T8 Write,Qtier和不开启加速的速度是接近的,高速缓存速度是最快的。
  • 4KB Q32T1 Read,速度也相对较小。
  • 4KB Q32T1 Write,不开启加速和开启高速缓存的结果和预期的一致,高速缓存的写速预期是应该和写入SSD 的 RAID 1 速度差不多,测试结果相近。但Qtier性能较差,甚至比不开启加速的速度更低,我甚至一度怀疑我测试有问题,特意多次测量,但结果依然不佳,这点让我不是很理解。
  • 4KB Q1T1 Read,速度差异小。
  • 4KB Q1T1 Write,不论什么RAID类型,是否开启加速,速度差异都不大。

从实验结果看,顺序读取由于触及网络上限,可能真实速度还可以再更快一些,毕竟 安装在本地的 M2 SSD 顺序读取都可以到 3500 MB/s 这样的速度了。关于顺序文件写入,由于Qtier是直接写入到HDD,所以速度比较低。关于4K文件的读,速度大抵和预期的差不多,高速缓存的速度和做RAID 1的SSD读速相近,Qtier和 做 RAID 10 的 HDD 读速相近。而在写性能方面,特别是在随机并行写入的场景下,高速缓存优势明显。虽然所有涉及Qiter的测试,在测试前我已经把相关的LUN设置为Qiter必做分层的LUN了,且手动执行了分层优化的任务,但因为我的实验场景是随机数据写入,所以从实验结果上看,Qtier优势不大,真实场景下性能应该会好一些。

总之,如果是有很多随机小文件读写的场景,诸如虚拟化等,用高速缓存加速更合适。而Qtier,更适合IO可预测的场景,诸如文件服务器等。

QTS 系统中,LUN不同大小的块的速度

测试环境:

  1. NAS安装QTS系统
  2. 不开启加速,不使用Qtier
  3. 全部使用win10通过iSCSI方式连接NAS
  4. 没有ZIL同步配置项
磁盘类型M2 SSDM2 SSDM2 SSDM2 SSDM2 SSDM2 SSD
RAID类型RAID 0RAID 0RAID 1RAID 1
块大小512 B4 KB512 B4 KB512 B4 KB
Seq Q32T1 Read121012171233123512351232
Seq Q32T1 Write71171711961229715716
4KB Q8T8 Read307310308301307299
4KB Q8T8 Write278313333292280293
4KB Q32T1 Read350358353244368341
4KB Q32T1 Write249248264240258251
4KB Q1T1 Read151515181516
4KB Q1T1 Write212220212020
磁盘类型HDDHDDHDDHDDHDDHDDHDDHDD
RAID类型RAID 0RAID 0RAID 1RAID 1RAID 10RAID 10
块大小512 B4 KB512 B4 KB512 B4 KB512 B4 KB
Seq Q32T1 Read120994412221234934118612281221
Seq Q32T1 Write293280531534285266539525
4KB Q8T8 Read27661279295218304306353
4KB Q8T8 Write1716606013194758
4KB Q32T1 Read25970215229217312357324
4KB Q32T1 Write3326565628305446
4KB Q1T1 Read1516161616161515
4KB Q1T1 Write2121212118202022

QTS系统中,针对不同的块大小,即使是在不同RAID场景下,并没有显著的性能区别。

QuTS hero 系统中,LUN不同大小的块的速度

测试环境:

  1. NAS安装QuTS hero 系统
  2. 不开启加速,不使用Qtier
  3. 全部使用win10通过iSCSI方式连接NAS
  4. ZIL同步IO设置为不使用
块大小32 KB64 KB128 KB
磁盘类型M2 SSDM2 SSDM2 SSD
RAID类型RAID 1RAID 1RAID 1
Seq Q32T1 Read123412371236
Seq Q32T1 Write697763708
4KB Q8T8 Read339352250
4KB Q8T8 Write753421
4KB Q32T1 Read399391211
4KB Q32T1 Write804221
4KB Q1T1 Read212118
4KB Q1T1 Write9.46.85.9
块大小32 KB64 KB128 KB32 KB64 KB128 KB32 KB64 KB128 KB
RAID类型RAID 0RAID 0RAID 0RAID 1RAID 1RAID 1RAID 10RAID 10RAID 10
磁盘类型HDDHDDHDDHDDHDDHDDHDDHDDHDD
Seq Q32T1 Read925958957907941960120511901208
Seq Q32T1 Write294293288318312249473534528
4KB Q8T8 Read68675865675510710388
4KB Q8T8 Write25181026189.0472715
4KB Q32T1 Read6869606767589810085
4KB Q32T1 Write25171026178.9432514
4KB Q1T1 Read192119192021191920
4KB Q1T1 Write14131013149.0141414

和QTS系统相同的是,Quts hero系统顺序读写,小文件随机读,性能差异不大。但随机写小文件场景下,不同块大小的速度,写性能差异较大。

QuTS hero 系统中,对比ZIL同步设置对磁盘性能的影响

测试环境:

  1. NAS安装QuTS hero 系统
  2. 不开启加速,不使用Qtier
  3. 全部使用win10通过iSCSI方式连接NAS
  4. QuTS hero系统块大小统一设置64K
ZIL同步设置不使用始终不使用始终
磁盘类型M2 SSDM2 SSDM2 SSDM2 SSD
RAID类型RAID 0RAID 0
Seq Q32T1 Read1237122212371236
Seq Q32T1 Write704219989322
4KB Q8T8 Read272247346351
4KB Q8T8 Write25173822
4KB Q32T1 Read361332382390
4KB Q32T1 Write32137115
4KB Q1T1 Read18181821
4KB Q1T1 Write7.11.98.62.4
ZIL同步设置不使用始终不使用始终不使用始终
磁盘类型HDDHDDHDDHDDHDDHDD
RAID类型RAID 0RAID 0RAID 10RAID 10
Seq Q32T1 Read965946958101311901209
Seq Q32T1 Write259322933753450
4KB Q8T8 Read4038676410399
4KB Q8T8 Write172.5183274.3
4KB Q32T1 Read4341696510083
4KB Q32T1 Write141.7172252.7
4KB Q1T1 Read212021201921
4KB Q1T1 Write140.40130.42140.45

实测证明,ZIL对性能影响非常大,2个数量级的性能差异,非必要应尽量不开启ZIL。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值