PCEVA,PC绝对领域,探寻真正的电脑知识
开启左侧

实战WIN10 存储池:从数据迁移到 简单与镜像模式 混合存储

[复制链接]
909648183 发表于 2017-6-3 19:55 | 显示全部楼层 |阅读模式
点击数:8865|回复数:10
本帖最后由 909648183 于 2017-6-4 09:56 编辑

实战WIN10 存储池:从低成本数据迁移到 简单模式与镜像模式 混合存储
首先介绍下我的NAS配置:
J1800 CPU,8G内存,ARC 100 240G作为系统盘(C盘),2块3T HDD分别分区(D盘和E盘)存储数据
WIN10 系统,开SMB共享,IIS开FTP共享(E盘根目录),Primo cache分出大概190G的SSD空间和4G内存分别作为二级缓存和一级缓存给D盘和E盘进行读写加速;resilio sync pro作为个人网盘,默认同步目录为E盘。为了便于FTP共享和sync同步,使用mklink /J 命令将D盘的子目录指向E盘的某个目录。

面临现状:
最近这两个3T HDD均已使用超过3/4空间,于是再购入一块3T HDD,并计划加入冗余,如果是使用RAID5,先不谈可用空间并没有提升,单单是数据迁移就是个大问题,我得先搞到总容量大于我目前数据量的其他存储介质作为中转,建立RAID5后再导入数据,或者直接购买足够HDD构建RAID5,升级成本很高。


这次使用WIN10存储池功能,简单模式和镜像模式混合,重要数据(130G左右)存储在镜像模式分区,其他数据直接存储于简单模式分区,这样可用最大化利用磁盘容量。另外由于存储池最大的特点就是灵活性,我可以直接仅使用这3块3T HDD实现数据迁移以及存储池构建,大致流程如下:
1.    使用新购入的3T HDD创建存储池,这时仅可以创建简单模式分区F,将D盘拷贝到F盘;
2.    添加D盘所在的3THDD到前面创建的存储池中,然后对F盘进行扩容并将E盘所有数据拷贝到F盘中;
3.    将E盘所在的3THDD添加到存储池中,这时使用存储池的 “优化驱动器使用率功能”,自动将所有简单模式数据均匀分配到3块HDD中;
4.    完成优化后,就可以创建镜像模式分区D盘了,将需要冗余的数据拷贝到D盘,并将F盘改为E盘;
5.    为了避免对resilio sync进行大量设置以及长时间的数据校验(resilio sync还是会定期在后台巡检数据的),将各分区盘符和目录按照之前的顺序归位,这样仅更改resilio sync中需要冗余数据的同步目录即可。


具体操作如下:
首先预览下3块HDD和一块SSD


使用新购入的3T HDD创建存储池


创建简单模式分区F盘:可以设置大小超过可用容量,当写入数据接近真正的可用容量时系统会发出警告,超出时会阻止数据写入,这里设置为6T是为了在添加3T HDD后不需要再更改这些设置。(WIN10 1703允许格式化任意内置数据盘为ReFS格式)
  


分区成功后结果如下


拷贝原D盘数据到F盘
  


然后将D盘所在HDD加入存储池(这时出现一点小插曲,总是提示连接磁盘失败,但这时原D盘所在HDD已经删除分区了,最后发现重启后才可以成功加入HDD到存储池)


添加成功后结果如下


这时可以执行 优化驱动器使用率 操作,该操作的I/O优先级较低,对性能影响并不大,在我后续拷贝数据时,平均写入速度大概从120M下降到80M(这个速度同时受限制与读取盘和写入盘)


将F盘改为D盘
将原E盘数据拷贝到简单模式分区D盘,优化完成9%时即可创建一个150G的双向镜像存储空间F(创建150G的镜像空间需要存储池内2块HDD均至少有150G的剩余空间,同样使用ReFS文件系统)


将需要冗余的重要文件拷贝到镜像模式分区F
  


拷贝完成后结果如下,这时所有数据均已迁移完成


将E盘所在HDD添加到存储池中,再次遇到前面的问题,HDD已删除分区但添加失败,重启后成功添加


顺便演示下分区扩容操作,将6T的简单模式E盘扩容为7T,非常简单,镜像模式分区同样可以这样操作


完成扩容后结果如下,这时可用看到最后添加的HDD使用率极低,由于前面添加该HDD时已经勾选 优化驱动器使用率,这里已经开始自动优化了


优化完成后结果如下,每个分区的使用率都差不多,这时如果需要更换其中某个磁盘,对对应磁盘点击 为删除做准备 即可(前提是剩下的磁盘容量足以存储已有数据),这时会将该磁盘数据搬运到其他磁盘,搬运完成后即可离线该磁盘并不影响已有数据的安全。


剩下的一些工作就是分区和目录还原、resilio sync的设置以及配置Primo cache了。由于存储池的灵活性,中途很多操作可以略有变化,最终结果一致即可。



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
909648183  楼主| 发表于 2017-6-3 19:58 | 显示全部楼层
本帖最后由 909648183 于 2017-6-3 20:06 编辑

存储池最大的特点就是灵活,以后我继续添加磁盘或者更换磁盘进行扩容会非常简单,至少比这次简单多了。

存储池本身也可以使用SSD对HDD进行加速,但为了保证数据安全,需要至少两块SSD,因为存储池是利用SSD进行读写缓存,而不是仅进行读缓存,不过存储池的写缓存算法很有意思,不是单纯的写入缓存后定时释放,而是类似闪迪 SLC cache,优先考虑的是将随机写入 缓存后作为持续写入 写入HDD。


我这里使用的primo cache仅允许使用内存作为写缓存,SSD仅能作为二级读缓存,NAS并未配置电池或者UPS,实际上数据安全还是有隐患的,但resilio sync的存在实际上刚好解决了这个问题,sync使用类似BT协议的方式,对所有文件分块校验,并根据系统时间决定保留的版本,如果由于突发断电导致最后的内存写缓存数据丢失,sync会自动从另一个客户端同步正确的版本,我的近期重要数据都是会保存在工作PC上的,只有时间较长的才会考虑从工作PC上删除,仅保留NAS上的备份
Suser 发表于 2017-6-4 20:51 | 显示全部楼层
J1800有带SATA3的小板么
mqwxp 发表于 2017-6-4 20:59 | 显示全部楼层
不错,技术贴,帮顶
Apache 发表于 2017-6-4 21:17 | 显示全部楼层
resilio sync这软件看起来不错
909648183  楼主| 发表于 2017-6-4 21:48 | 显示全部楼层
本帖最后由 909648183 于 2017-6-4 21:55 编辑
Suser 发表于 2017-6-4 20:51
J1800有带SATA3的小板么

一个SATA2和一个mSATA2的,把mSATA转接为SATA

另外还加了个Mini PCI-E转2个SATA3的扩展卡(实际受限制与pcie带宽估计只有SATA2的速度) ,都是通过千兆局域网访问NAS的,所以SATA2不是瓶颈
以后还可用SATA端口倍增器将扩展卡出来的2个SATA扩展为10个SATA
中华田园犬 发表于 2017-6-5 14:08 | 显示全部楼层
J1800这个平台扩展性可以么?

这个写的还是比较明了,我下一次也准备试试存储池,有啥对新手的建议么?
909648183  楼主| 发表于 2017-6-5 18:47 | 显示全部楼层
本帖最后由 909648183 于 2017-6-5 19:09 编辑
中华田园犬 发表于 2017-6-5 14:08
J1800这个平台扩展性可以么?

这个写的还是比较明了,我下一次也准备试试存储池,有啥对新手的建议么? ...

我这个是低成本低性能的方案(但毕竟是x86,还是比arm方案性能高多了),但是千兆局域网也够用了

J1800已经算是比较老的平台了,实际上J1800的扩展性算是非常差的,最多只能提供 PCIe 2.0 x4,我这里是通过一个minipcie扩展卡(ASM1061,实际用的是x1带宽)实现的,这些第三方的SATA都支持端口倍增特性(1变5)

我这个其实是一台J1800双网卡工控机,我是直接把硬盘拖在外面的,miniPCIe本来是用来上无线网卡的,我用来上扩展卡了
applelovekula 发表于 2017-6-5 19:45 | 显示全部楼层
技术贴!
存储工场 发表于 2017-6-8 14:43 | 显示全部楼层
nas我装nas4free,zfs文件系统,4块盘条带+镜像

909648183  楼主| 发表于 2017-6-8 17:55 | 显示全部楼层
存储工场 发表于 2017-6-8 14:43
nas我装nas4free,zfs文件系统,4块盘条带+镜像

类似raid 01? 1/2可用空间
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部