TrueNASSCALE是iXsystems公司提供的一款开源存储管理软件,几乎可以部署在所有的第三方x86硬件设备上,因此也成为众多nas发烧友和普通用户钟爱的nas解决方案之一。下面以TrueNASSCALE-22.02版本为例就该版本的硬件配置要求进行详细说明。
1最低硬件配置要求
CPU:双核Intel64位或AMDx86_64处理器
内存:8GB
系统盘:16GBSSD
存储盘:两块大小相同的磁盘,用于构建单个存储池
译者批:这个内存和cpu配置基本没法在truenas内部部署应用,这么做会比较无趣,实际应用中建议配置至少8核心cpu和16G内存(ZFS是吃内存大户)
2存储注意事项
2.1存储设备数量
TrueNAS能够将大量存储设备作为单个存储阵列的一部分进行管理。TrueNASSCALE可以在单个存储阵列中管理多达个磁盘驱动器。
2.2存储介质
选择存储介质是设计存储系统以满足当前目标并为未来容量扩展做好准备的第一步
2.2.1机械硬盘
在存储媒体的下一次科学突破之前,旋转硬盘以其在容量和成本方面的平衡优势会一直存在。两位数TB级消费级和企业级硬盘的出现为即将搭建TrueNAS的用户提供了更多的选择机会。
2.2.2SATANAS硬盘
SATA仍然是许多台式机/笔记本电脑、服务器以及一些非企业存储阵列中事实上的标准磁盘接口。虽然消费级SATA硬盘没有以前存在的可靠性问题,但仍然无法有效保证可在RAID存储组中连续运行或使用。企业级SATA硬盘解决了存储系统中所需的永不停机、振动容限和驱动器错误处理问题,但企业级sata硬盘价格令大多数用户望而却步。
于是,硬盘厂商通过生产NAS硬盘来应对这一市场缺口。NAS硬盘因最初的西数(WD)Red而声名鹊起(现在称为WDRedPlus),其采用了CMR/PMR技术。WDRedNAS硬盘(非SMR)用于最多有8个硬盘驱动器的系统,WDRedPro适用于最多16个驱动器的系统,以及WDUltraStar用于应对超过16个驱动器的系统。因其卓越的质量和可靠性,iXsystems社区论坛将西数硬盘视为TrueNAS构建的首选,官方推出的硬件设备都配备了WDRedPlus硬盘。
译者批:官方这是在推荐西数nas盘,个人感觉有点交智商税的意思,实操中还是可以选用西数/希捷/东芝等厂商的企业sata盘,毕竟是企业级,稳定性和性能都没得说
2.2.3近线SAS硬盘
近线SAS(NL-SAS)硬盘是RPM企业SATA磁盘,具有大多数企业存储系统中的行业标准SAS接口。专为数据中心存储应用程序设计的SAS系统具有准确、详细的错误处理、可预测的故障行为、可靠的热插拔以及附加的多路径支持功能。多路径访问意味着每个驱动器都有两个接口,可以通过两根电缆连接到两个存储控制器或一个控制器。在TrueNAS高可用性体系结构中,每个控制器都是访问同一组NL-SAS驱动器的独立服务器,这种冗余可防止电缆、控制器卡或整个系统故障。NL-SAS驱动器也足够健壮,可以处理超过16个磁盘的系统。因此,面向容量的TrueNAS系统附带了WesternDigitalUltraStarNL-SAS磁盘,这得益于NL-SAS驱动器提供的容量、可靠性、性能和灵活性的全面完美平衡。
2.2.4SAS硬盘
企业SAS硬盘是企业存储行业的传统重量级产品,其构建目的是提供旋转磁盘所能提供的最大性能和可靠性。与NL-SAS或NAS驱动器相比,SAS磁盘容量较低,这是因为磁盘的旋转速度高达RPM。虽然SAS驱动器听起来可能是高性能存储的最终解决方案,但许多基于消费者和企业的闪存盘已经上市,大大降低了SAS驱动器的竞争力。。
2.2.5SATA和SAS闪存SSD
近年来,闪存存储技术取得了显著进步,通用PC和服务器中闪存存储兴起。与硬盘不同,闪存对振动不敏感,速度更快,可靠性与传统硬盘相当。闪存存储的每GB价格仍然较高,但随着价格差距的缩小,在TrueNAS系统中将会越来越普及。
将闪存盘引入主流市场的最短路径是供应商使用标准SATA/SAS硬盘接口来模拟标准硬盘,因此,闪存固态磁盘(SSD)具有SATA接口,大小相当于2.5英寸笔记本电脑硬盘,可以直接替换传统硬盘。闪存固态磁盘可以取代HDD作为TrueNAS系统上的主存储。
2.2.6NVMe
Non-VolatileMemoryExpress(NVMe)标准是一种本地闪存协议,它充分利用了闪存存储的非线性、并行性,相较ssd更具优势。
NVMe的主要优点是其低延迟性能,成为了系统引导盘及其他应用场景的主流选项。
注意:NVMe设备可能运行得很热,可能需要专用散热器。目前不支持在NVMe设备上进行手动S.M.A.R.T.测试。
2.2.7USB硬盘
避免将USB硬盘用于TrueNAS的主存储。您可以在必要时使用USB硬盘进行基本的备份。虽然TrueNAS不会自动执行此过程,但您可以连接USBHDD,在命令行进行复制,然后将其带离现场进行安全保存。
警告:USB连接的介质(包括SSD)可能会报告不准确的序列号,使它们无法区分。
综上,将这些存储介质高效的组合在一起,可以创建功能强大的存储解决方案。
2.3存储解决方案
2.3.1混合存储和闪存缓存
硬盘提供了两位数的TB容量,基于闪存的选项提供了更高的性能,因此提供了两全其美的选项。使用TrueNAS和OpenZFS,您可以合并闪存和磁盘,以创建充分利用这两种存储类型的混合存储。混合设置使用高容量旋转磁盘存储数据,而DRAM和闪存执行超快速读写缓存。这些技术与基于闪存的单独写入日志(SLOG)配合使用。将其视为一个写缓存,保存用于加快写入速度的ZFS意图日志(ZIL)。在读取端,闪存是一种二级自适应替换(读取)缓存(L2ARC),用于将最热的数据集保存在更快的闪存介质上。使用NFS和数据库等同步写入的工作负载可以从SLOG设备中受益,而使用频繁访问数据的工作负载可能会从L2ARC设备中受益。L2ARC设备并不总是最佳选择,因为RAM中的一级ARC总是提供更快的缓存,而L2ARC表使用一些RAM。
SLOG设备不需要很大,因为它们只需要为网络或本地应用程序传递的五秒钟数据写入提供服务。对于大多数现代网络来说,8GB到32GB之间的高持久性、低延迟设备就足够了,您可以剥离或镜像多个设备以获得性能或冗余。请注意已发布的设备耐久性声明,因为SLOG是大多数写入系统的漏斗点。
SLOG设备也需要电源保护。ZFS意图日志(ZIL)以及SLOG的目的是在崩溃或电源故障期间保持同步写入安全。如果SLOG不受电源保护,并且在电源故障后丢失数据,那么它首先就违背了使用SLOG的目的。检查设备的制造商规范,以确保SLOG设备具有电源安全性或具有电源丢失/故障保护。
L2ARC设备中最重要的质量是随机读取性能。设备需要支持比其缓存的主存储介质更多的IOPS。例如,在40个SSD的池中使用单个SSD作为L2ARC是无效的,因为40个SSDs可以处理比单个L2ARC驱动器多得多的IOPS。至于容量,最好是RAM大小的5倍到20倍。高端TrueNAS系统可以具有两位数TB大小的基于NVMe的L2ARC。
请记住,对于L2ARC中的每个数据块,主ARC需要一个88字节的条目。设计不佳的系统可能会导致ARC中出现意外填充,并降低性能。例如,一个GBL2ARC填充了4KiB块,需要在主ARC中存储超过10GiB的元数据。
2.3.2自加密驱动器
TrueNAS支持两种静态数据加密形式,以实现隐私和法规遵从性目标:本机ZFS加密和自加密驱动器(SED)。SED没有软件分区加密带来的性能开销,但不如非SED驱动器那么容易获得(因此成本可能会稍高)。
2.3.3引导设备
从8GB或更大的USB闪存驱动器启动传统的FreeNAS系统曾经非常流行。我们建议考虑其他选项,因为USB驱动器的质量差异很大,而且现代TrueNAS版本对引导池执行的驱动器写入次数增加。因此,所有预构建的TrueNAS系统都附带M.2驱动器或SATADOM。
SATADOM或模块上的磁盘提供了接近消费级2.5英寸SSD的可靠性,体积更小,可安装到内部SATA端口,不使用驱动器托架。因为SATADOMs和带有m.2插槽的主板不像这里提到的其他存储设备那么常见,用户通常从2.5英寸SSDs和HDD(通常镜像以增加冗余)启动TrueNAS系统。TrueNAS引导卷的建议大小为8GB,但使用16或32GB(或GB2.5“SATASSD)可为更多引导环境提供空间。
2.3.4热交换性
TrueNAS系统有各种形状和大小。许多用户希望在出现问题时能够从外部访问所有存储设备,以便进行高效更换。大多数热插拔驱动器托架都需要专用驱动器托盘,您可以在其中安装每个驱动器。
请注意给定系统的热插拔背板提供的最大性能,目标是至少支持6GbpsSATAIII。
2.4存储设备池化布局
两位数TB驱动器的可用性提出了一个问题,TrueNAS用户现在可以奢侈地问:我应该使用多少驱动器来实现我想要的容量?您可以镜像两个16TB驱动器以实现16TB的可用容量,但这并不意味着您应该这样做。镜像两个大型驱动器具有冗余和平衡两个设备之间的读取的优点,这可以降低功耗,但除此之外几乎没有其他好处。最多两个大型驱动器的写入性能是单个驱动器的性能。相比之下,一个由八个4TB驱动器组成的阵列提供了多种配置,以更低的成本优化性能和冗余。如果配置为条带化镜像,八个驱动器的写入性能可以提高四倍,总容量也差不多。您还可以考虑添加一个具有任何zpool配置的热备盘驱动器,这样,如果zpool的一个主驱动器发生故障,zpool就会自动重建。
译者批:官方推荐条带化+热备盘方式配置存储池
2.5存储设备烤机
旋转磁盘硬盘驱动器的运动部件对冲击和振动非常敏感,使用时会磨损。在将每个存储设备投入生产环境之前,请考虑对其进行预检:
StartalongHDDself-test(smartctl-tlong/dev/),andafterthetest