网络附加存储(Network-attached storage,NAS)可以让多个设备通过网络访问共享的存储。虽然Linode未提供原生的共享存储解决方案,但用户可以在Linode上部署TrueNAS,借此创建共享存储系统,实现多源并发访问。

延伸阅读,点击链接了解Akamai Cloud Computing
本文我们将介绍两个关键话题:
- 什么情况适合使用TrueNAS作为文件存储(分析利弊)
- 在Linode上扩展TrueNAS(存储池)
什么情况适合使用TrueNAS作为文件存储?
任何基础设施都需要选择正确的文件存储解决方案。本节将概括介绍如何在Linode上使用TrueNAS作为文件存储,重点将介绍其优缺点,从而帮助大家确定它是否适合你自己的共享存储需求。
1.概述
TrueNAS是一个开源的网络附加存储(NAS)系统,在Linode上部署后可提供强大的数据存储和共享功能。它使用ZFS提供数据完整性、快照和多种共享协议等功能。
一个Linode实例最多支持8个存储设备,在为操作系统和交换分区(Swap)分配完磁盘后,通常有6个可用来存储数据。对于这6个数据磁盘,TrueNAS可配置为镜像、RAID-Z1或RAID-Z2。这些设置可在存储容量(30TB至50TB)、冗余、性能和重建速度之间实现不同的平衡。
下表概述了这三种配置
配置 | 镜像 | Raid-Z1 | Raid-Z2 |
---|---|---|---|
最大容量 | 30TB | 50TB | 40TB |
磁盘用法 | 6个磁盘组成3个镜像对 | 5个磁盘存储数据,1个磁盘存储校验信息 | 4个磁盘存储数据,2个磁盘存储校验信息 |
可承受的磁盘故障 | 每个镜像对可损坏1个磁盘,3个镜像对最多可同时各自损坏1个磁盘 | 1个磁盘 | 2个磁盘 |
性能 | 读取一流,写入尚可 | 读取尚可,写入中等 | 读取尚可,写入较慢 |
重建速度 | 快 | 中等 | 慢 |
最大存储容量和复制方面的考虑因素
2.优势
数据弹性:利用ZFS(镜像、Raid-Z1、Raid-Z2)在硬件故障和数据损坏的情况下保障数据完整性和可恢复性。
快照:实现意外删除或更改的时点恢复。可安排定期运行,以提供一致的数据保护。
复制:允许以短时间间隔(5-15分钟)将数据复制到另一个TrueNAS备份实例。
多种存储选项: 支持多种文件共享(NFS、SMB、AFP)和块(iSCSI)。
3.劣势
缺乏集群解决方案:尽管TrueNAS可配置主实例和备份实例,但缺乏自动故障切换功能。如果主服务器发生故障,客户在手动故障切换时可能会遇到因为数据不可用而导致的停机。
可扩展性:数据可扩展性最多为单个节点。就Linode而言,Raid-Z1的最大可用存储容量为50TB。
Linode上的TrueNAS提供了强大的文件存储功能和数据保护功能,适合需要可靠的中型存储解决方案的企业。但是对于关键任务或快速增长的环境,不应忽视该解决方案在自动故障切换和单节点可扩展性方面的局限。在决定TrueNAS是否是你在Linode上适合的文件存储方案时,请评估自己对性能、可扩展性和管理复杂性的具体需求。
在Linode上扩展TrueNAS(存储池)
本节将介绍如何在Linode上扩展单个TrueNAS实例的数据存储。我们将逐步建立初始存储池,并探讨扩展方法。与RAID-Z1或RAID-Z2相比,我们将使用镜像配置,以获得更好的读取性能和更快的恢复速度。
1.初始设置──2 x 100GB
从Linode Manager创建2个100GB的卷。此后,TrueNAS控制台将获得这2个磁盘。

Linode Manager──创建2个卷

TrueNas──显示出2个可用磁盘
转到Storage -> Pools,选择2个设备,配置一个可用存储池。TrueNAS会自动执行磁盘格式化操作,并获得一个可用空间94.46GB的存储池。会有少量存储空间用于存储ZFS元数据。

TrueNAS建议默认使用镜像配置

94.46GB可用存储空间
随后我们创建一个50GB配额的数据集,并将其挂载到客户端。然后客户端将创建一个文件,并使用1GB。

已使用了1GB的dataset1
2.存储池缩放──增加磁盘大小
接着介绍如何从现有的Linode卷磁盘缩放存储池。
单击省略号图标展开Resize选项,对data1和data2执行调整大小操作。每次调整磁盘大小一次,以尽量减少可能的中断。

Linode Manager──将两个磁盘的大小都增大到200GB
调整两个卷的大小后,重启动TrueNAS服务器。重启后点击齿轮图标,选择Expand Pool选项。确认后,存储池便会被顺利扩展。

TrueNAS──选择Expand Pool选项

TrueNAS──扩展后的存储池
3.存储池缩放──添加Vdev
接着介绍如何通过添加更多Linode卷磁盘和设置新VDev来扩展存储池。
额外配置两个容量为200GB的数据磁盘:data3和data4。TrueNas会自动检测到新配置的磁盘。

Linode Manager──新增的2个卷

TrueNas──检测到新磁盘
转到Storage -> Pools,然后从齿轮菜单中选择Add Vdevs。

TrueNas──Add Vdevs
选择新配置的那两个磁盘,以"镜像"配置作为数据vdev进行分组。这将为现有存储池提供额外的可用存储,使可用存储总量从190GB增加到381GB。

TrueNas──添加vdev

TrueNas──存储池横向扩展
4.相关操作:扩展NFS驱动器dataset1
本节将介绍如何扩展已加载到客户端设备上的实际NFS驱动器(dataset1)。
单击dataset1旁的省略号图标并选择Edit Options。将Quota for this dataset字段从最初的50GB更新为100GB。

TrueNas──Dataset1的Edit Options

TrueNas──将配额更新为100GB
保存后,NFS将被扩展。挂载了NFS的客户端将看到扩展后的卷。

TrueNas──Dataset1已扩展至100GB

客户端──最初可以看到50GB的NFS

客户端──扩展后可以看到100GB的NFS
总结
Linode上的TrueNAS在单个实例上提供了强大的数据保护和灵活的扩展选项。在决定它是否是适合你的存储解决方案时,需要考虑你对性能、可扩展性和冗余的具体需求。通过妥善的实施,TrueNAS可以有效满足你在Linode环境中的各种存储需求。
希望本文能为你带来一定的帮助。欢迎关注Akamai稀土掘金机构号,阅读更多使用技巧和操作指南。同时也欢迎注册Linode,获得免费试用额度,亲自操作,在Linode平台上搭建基于TrueNAS的个人专用共享存储。
如果你喜欢我们的文章,欢迎关注我们↓↓↓