软件定义的存储(SDS)使存储智能与底层存储设备分离。环境将多个存储设备编排到在物理存储层之上运行的软件存储管理层中。通过将智能升级,客户可以购买支持SDS策略驱动的工作负载处理,负载平衡,重复数据删除,复制,快照和备份的商用硬件。SDS无需购买昂贵的专有NAS或SAN,而是在商品硬件和标准操作系统上运行。
就目前而言,这是事实。但是,一些SDS供应商,尤其是仅软件销售商,声称硬件无关紧要。但是,对于软件定义的存储设计,硬件选择至关重要。
确实,软件定义的存储用户可以使用商用硬件,并避免使用具有内置存储智能功能的昂贵的SAN或NAS。但是,软件定义的存储用户仍然需要将SDS与硬件集成,并设计物理基础架构,因此可以优化软件定义的存储层。
优化软件定义的架构
存储IO路径很复杂,并且要经过多个阶段,并且路径问题很容易损害服务质量(QoS)和性能。当管理员在已经很复杂的体系结构之上添加软件定义的存储时,复杂性会增加,性能和QoS可能会遭受更大的损失。
SDS用户可以通过将其软件定义的存储与虚拟数据中心及其物理基础架构仔细集成来避免路径问题。例如,与SDN管理器协调SDS设计,以优化虚拟路径,以实现数据包路由和服务质量。
但是,许多SDS管理员将大部分资源用于集成软件定义的数据中心,而没有将足够的精力放在将SDS与物理层集成上。这种疏忽会严重影响您的SDS项目。
将软件定义的存储与硬件集成的好处
正确集成硬件的SDS设计的好处可能是巨大的。
·通过策略驱动的性能和RTO / RPO设置优化应用程序工作负载。
· SDS从存储系统中汇集存储容量,并将其提供给在软件定义层中运行的应用程序。简化了配置,并且策略驱动的软件管理不同应用程序的SLA和QoS。
·管理员集中管理逻辑存储池,而不是登录和注销设备级数据服务。集中管理使IT人员可以跨单个逻辑基础架构创建安全性和策略,而不是在设备级别创建不同的接口。
· SDS通过动态配置简化了扩展。管理员可以轻松添加服务器,而无需手动进行数据分发和负载平衡。
· SDS具有强大的安全性。并非所有SDS产品都得到同等开发,但是这些环境至少应启用加密,多租户逻辑层,并在管理界面上使用易于理解的报告进行强大的日志记录和监视。
这些都是强大的好处。但是,如果您的软件定义的存储设计不能与基础物理设备顺利集成,那么对您来说,这一切都不会很好。让我们谈谈如何确保它能做到。
SDS设计技巧1:了解您的存储要求
首先要做的是确定工作负载及其各自的应用程序,服务器和客户端。要查看的典型特征包括基线IOP和峰值IOP,吞吐量,等待处理的队列深度,延迟,正在主动更改的数据部分(工作IO),变化模式以及维护备份所需的吞吐量性能视窗。您可能还需要查看其他特征,例如是否存在加密以及顺序数据与随机数据的比率。
现在确定它们的性能和存储容量要求,以及数据保护将如何工作。通过性能,容量和数据保护需求(包括RTO和RPO)识别应用程序工作负载。将优先级应用程序分配给快速SSD和磁盘。
对辅助工作负载执行相同的操作。确定特性,例如备份流的存储位置,复制流的位置以及为备份工作负载保留的存储容量。规划备份和存档所需的存储容量。尽管可能会在磁带上或在云中长期保留数据,但您可能希望将一些高优先级的应用程序连续备份到SDS底层的存储硬件。典型的容量因素包括数据的现有大小及其每月,每两年或每年的增长率以及预定的保留期。
SDS设计技巧2:了解供应商和硬件兼容性
一旦确定了工作负载,性能特征和容量需求,便可以寻找SDS供应商并优化物理存储和网络。在部署新的软件和硬件时,请小心部署推荐的固件和驱动程序。
请记住,直到2015年,大多数新的存储硬件都无法自动与SDS软件配合使用。后果包括SDS无法识别新设备或新介质,磁盘扇区和整个磁盘故障,以及使用单独的软件和硬件管理界面对集成问题进行故障排除的难度。
从那以后,还构建硬件的SDS供应商一直在为SDS堆栈开发,而仅软件的开发人员正在改进参考体系结构。这就引出了使用商品硬件并避免供应商锁定的问题,但是已经有所改进。
不过,在研究SDS系统的存储硬件时,不要做任何假设。深入研究兼容性和最佳实践。
SDS设计技巧3:为当前和将来的弹性而设计
选择了SDS和物理存储供应商后,您将需要设计SDS环境。设计弹性,以便您的环境可以经济高效地扩展以满足您不断发展的存储需求。
在设计弹性时,请在开始之前了解当前和将来的阈值。了解您的存储配置(包括群集节点,用于不间断流量的冗余网络连接)和性能的正常运行时间要求和弹性目标。
请注意SDS,存储介质,处理器和RAM上的可伸缩性和增长特性。并且确保知道更新固件和驱动程序有多容易(或没有)。您需要做的最后一件事是使您的整个管理团队保持警惕,并在每次需要升级固件时关闭SDS系统几个小时。
SDS设计技巧4:完成设计
请记住,您的SDS在物理存储之上运行。仔细设计性能和容量,以便物理层将正确支持您的软件定义的存储环境。
确定要部署的存储池群集数量,并了解配置和添加新池的过程。没有正确或错误的方法:大型存储池可进行集中管理和故障排除,但存储介质故障会在整个SDS中蔓延。在这种情况下,如果管理员的管理时间不多,您可能更希望维护较小的存储池。
通过将高性能应用程序镜像到池中或多个池中的不同存储设备来构建冗余,或将奇偶校验用于归档等低写应用程序。奇偶校验和镜像均可让您复制数据集,并考虑在SSD或HDD发生故障时为重新分配的数据保留池容量。
确定所需的存储介质大小以及RAM和CPU要求。您希望有足够的大小来容纳当前的驱动器,并且具有轻松的可伸缩性,因此您可以简单地添加更多机箱并根据需要重新分配磁盘驱动器。
性能和容量至关重要。请记住,计算SSD性能具有两个维度:数据可以同时访问的SSD数量,以及SSD能够同时处理多少数据的能力。还请考虑您的SSD和HDD的类型和大小。存储分层在这里发挥了作用,许多管理员选择了Tier 0的SSD和SSD以及Tier 1的快速磁盘。
处理器和RAM不一定与媒体性能和容量一样重要,但取决于数据流量的处理点,它们可能非常重要。如果是在物理网络层(例如RDMA网卡)上处理的,则您的存储处理器不必承担所有繁重的工作。如果存储处理器确实处理流量,那么您将需要高性能处理器来处理高优先级流量。如果要执行诸如在群集节点上进行重复数据删除等操作,RAM会有所不同。
现在您已经计划了基础存储基础,请同样仔细地规划虚拟基础。知道您计划从多少虚拟磁盘开始,并了解如何随着时间扩展它们。请记住,您在群集节点中创建的虚拟磁盘越多,管理和负载平衡所花费的时间就越多。SDS为虚拟磁盘管理提供的智能越多,您的工作就越容易。还要记住,您使用的虚拟磁盘越多,为回写缓存保留的容量就越大。
当然,虚拟磁盘的总大小将取决于存储层的实际大小。动态数据分配和回写缓存的保留容量中的因素。虚拟磁盘的大小可以达到TB,但峰值工作负载不应超过阈值性能或容量设置。运行较大的工作负载时,较小的磁盘大小可能更可靠。
购买之前,请先了解磁盘扇区的大小。例如,如果您的虚拟OS和应用程序支持本机4KB扇区磁盘,那么您将获得更好的写入性能,并在可靠性和容量方面获得一些好处。当然,您可以使用具有512字节仿真功能的4K磁盘来实现向后兼容性,但这不会为您带来与本机4KB相同级别的好处。
SDS设计技巧5:管理软件和物理层
监控SDS体系结构的软件和硬件方面是两个不同的接口,如果您要分别管理多个存储设备,则需要更多接口。SDS管理将存储从其物理基础结构中抽象出来,并在逻辑层进行管理。它管理硬件存储设备的策略,但不管理硬件。诸如互连模块和磁盘故障之类的常见事件可能会破坏整个软件定义的存储环境。
缺点是管理员必须单独对物理层进行故障排除和管理,而不是集中管理存储堆栈。部署SDS不一定会破坏交易。SAN和NAS硬件已经非常复杂,并且尝试更改应用程序路径和配置非常耗费时间和资源。SDS当然可以简化这些更改,从而减少了管理磁盘设备和SDS所需的资源。
通过使用具有冗余群集,动态扩展和自我修复机制的强大硬件体系结构,简化硬件故障排除。还要查找专门为运行SDS堆栈而设计的参考体系结构和存储设备。投资于其他软件,例如驱动器监视实用程序。
软件定义的存储:功能强大但不简单
SDS体系结构可以节省金钱和时间。当管理员成功集成存储软件和硬件并根据其存储需求自定义它们时,企业可以实现显著的改进并节省成本。
没有人说这很容易。虚拟化环境的优点之一是它们可以在各种存储,服务器和网络组件上运行。但是,当管理员希望将这些平台组合到单个虚拟SDS中时,他们不能简单地期望它们能够自动无缝地工作。
这就是为什么存储管理员需要花费时间和精力来确保其硬件可靠且具有容错能力,并且能够与软件定义的存储设计很好地集成在一起。只有这种级别的集成,SDS才能使用灵活和动态的策略正确管理存储的数据。
为此,您可以为SDS和硬件集成创建清晰的知识和实施计划,并从一开始就给您的团队足够的时间来优化基础结构,从而做到这一点。在项目开始时花费正确的资源将有助于确保SDS部署将成为现在和将来所需的一切。
原文标题:软件定义存储设计注意事项:5个关键提示
文章出处:【微信公众号:存储社区】欢迎添加关注!文章转载请注明出处。
责任编辑:haq
全部0条评论
快来发表一下你的评论吧 !