1. 前言

虚拟机可以在一台电脑上模拟多种操作系统环境,其应用广泛,在软件项目的开发和测试阶段中经常用到。

本公众号累计发布了多款用于测试学习用途的虚拟机。一方面,虚拟机可以下载即用,节省虚拟机制作时间,随着光纤等高速网络的普及,下载虚拟机只需要很短的时间,而且几乎不需要人工参与;另一方面,使用制作好的虚拟机,可以减少重复劳动,减少重复踩坑的几率。

在实际使用中,由于单个虚拟机的体积即使在压缩后,仍然有5G~40G大小不等,存储多个虚拟机需要大量的存储空间。同时,由于虚拟机需要被虚拟机软件频繁读写,所以,如果存储介质的数据读写速度慢的话,会造成虚拟机内的操作系统运行卡顿。存储和运行虚拟机,需要高速、大容量的存储介质。下面对几种存储方案进行分析,找出比较好的虚拟机存储方案。

2. 存储方案对比

2.1 U盘存储

U 盘的优点是可移动,即插即用,方便携带。

U盘

速度方面,U 盘的读取速度在100MB/s左右,写入速度在10MB/s左右,速度一般。容量最大一般不超过 1TB。U 盘一般使用 TLC 闪存颗粒(NAND Flash的一种)制作,主控芯片较为精简,没有装载较好的读写平衡算法,导致 U盘寿命较短。

接口方面,新款U 盘一般使用 USB3.x接口,Type-C 接口,接口速度一般远大于存储芯片读写速度。

价格方面,U 盘一般在 0.4 元/GB。

2.2 机械硬盘

机械硬盘,即 HDD,采用磁性存储介质,也就是使用磁极来存储 0 和 1。相对于闪存颗粒,不会因为电子逃逸而丢失数据。在保存良好的条件下,存放寿命比闪存介质更长。

机械硬盘

速度方面,因为机械硬盘依赖于磁头和盘片间近距离接触实现磁信息的读写,相对于闪存的随机访问,其读写速度相对较慢。机械硬盘磁盘转速越快,读写速度越快,但为了机械系统的稳定性,其转速不会很高。5400 转SATA接口的机械硬盘,顺序读写速度一般在100MB/s左右。

接口方面,装机的机械硬盘内部采用 SATA接口和电脑主板连接;移动式机械硬盘内部为 SATA接口,外部为 USB接口。

价格方面,一般 0.2 元/GB。

使用方面,机械硬盘使用时需要小心保护,摔落,晃动等物理因素容易导致硬盘故障。

2.3 固态硬盘

固态硬盘,即 SSD,容量大速度快。

SSD

固态硬盘也使用闪存颗粒制作。闪存颗粒的类型有 SLC( 单层),MLC(多层/双层),TLC(三层),QLC(四层)。层数越少,价格越高,读写性能越好。市场上日常消费级别的固态硬盘通常为 TLC颗粒。

速度方面,以 TLC颗粒为例,M.2 接口的固态硬盘,顺序读取速度在 2GB/s以上,顺序写入速度在 1GB/s以上。

价格方面,TLC 颗粒的 SSD,大约 0.4 元/GB,和 U盘价格差不多。但最近两年固态硬盘价格忽上忽下,波动较大,大家可以在价格低位时入手。

接口方面,主流的固态硬盘与主板间使用 M.2硬件接口,使用 PCIE总线通道,采用 Nvme协议传输。移动式的固态硬盘,内部使用 M.2 接口,采用 Nvme协议传输,外部使用 Type-C或 USB3.x 总线接口连接到电脑。

使用方面,装机的固态硬盘由于和电脑主板卡槽连接,使用上不够灵活。近年来,成品固态移动硬盘逐渐流行起来,各大网购平台都能买到,它兼具U盘和固态硬盘的优势。

相对于成品固态硬盘,采用 固态硬盘盒+固态硬盘 DIY的移动固态硬盘,可以自由选择存储芯片型号,自由控制成本,硬盘老化可以自由更换,适合对 DIY感兴趣的同学。

综合来看,移动固态硬盘,非常适合作为虚拟机的存储方案。使用移动固态硬盘存储虚拟机,速度容量够用,又可以随身携带,而且可以很方便的接入到其他电脑上使用。笔者目前使用的就是 DIY的移动固态硬盘,使用体验不错。

3. DIY选购方案

3.1 SSD容量选择

通常一个安装了Visual Studio的虚拟机大小在40G左右。假设一个常用的虚拟机大小为 80G,5 个虚拟机就需要 400G存储空间。

预算充足的情况下,如果打算日常使用 5 个左右虚拟机,可以选择 512G 的移动硬盘。如果打算日常使用 10 个左右的虚拟机,可以选择 1T 的移动硬盘。 预算一般的情况下,512G也可以满足基本使用,虚拟机中尽量只存放必要的程序和数据,定期使用vmware回收虚拟机不再使用的空间,保持虚拟机体积尽可能小即可。

3.2 固态硬盘型号选择

目前市场上,作为日常使用用途,可以选择 TLC颗粒的移动硬盘,具有很好的性价比。除此之外,还有缓存大小、TBW、发热量等指标,缓存越大越好,TBW 越大越好,发热量越少越好。当然参数越好,价格越高。另外还要看综合使用体验。

3.3 固态硬盘盒型号选择

不同的固态硬盘盒功能不一,主要体现在支持的硬件接口和协议上。笔者使用的是基本款,即 内部M.2 接口、支持 Nvme协议、外部 Type-C 接口、铝壳散热。有的高级款,支持 M.2 和SATA双接口, Type-C USB 互转等等。一般基本配置足够满足日常使用需求。需要强调的是,移动硬盘使用时,会有一定的发热,最好选用带金属散热的硬盘盒。

4. 结语

工欲善其事,必先利其器。手头准备一套常用的虚拟机,在日常开发和学习中,有助于提高生产力,起到事半功倍的效果。随着生产力提升,个人能力也会得到提升,项目也会越做越顺手。


本文原创发布于 Qt未来工程师。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐