众所周知,分布式存储中最大的问题是网络,如果网络不稳定,必然导致所挂的卷不稳定,如果在生产系统上发生此类问题,网络层无法解决的情况下,是否可以降级使用分布式存储,先行保障生产?
1、 分布式存储的网络问题,需要在分布式存储的实施阶段,就提前做好基础网络的规划、硬件规格、部署架构的设计等工作。譬如:在基础网络中,为 分布式存储 规划一个单独的存储平面,在交换机进行交叉高可用设计、分布式存储的X86 服务器规格中配有多张和双口网卡,在OS和产品进行BOND配置。
2、 分布式存储产品自身的能力也很重要,譬如对网络不稳定的抖动,有做过优化和冗余设计。
3、生产系统的高可用性,可以在多AZ机房、多集群进行双活或多活部署的方式进行保障(注:一般在不同的AZ 机房是单独部署不同的分布式存储集群)。
4、 网络层无法解决的情况下, 此时分布式存储为不可用。此场景,可以提前对生产系统的应用架构做降级设计。
分布式存储的优势在于“分布式”,出现了问题以后的解决方案自然也基于“分布式”:
启用“双活”方案后,数据会在不同机房保留足够的副本,因此单机房/单站点故障也不会影响分布式存储
以上三种情况都不会导致分布式存储的“降级”。那么,提问中所设想的“网络层无法解决”的问题,就只能是由于bug或广播风暴导致的全部网络中断或严重拥塞。通常,在数据中心采用的网络产品都应当具备“数据中心级”的可靠性、安全性和高性能,可以最大限度避免产品缺陷导致的网络问题。虽然存储网络不再需要FC交换机这样的专门设备,但用于存储的以太网络交换机应当是为数据中心设计的中高档次的型号,不建议将园区网设备用于数据中心内部,万不可因为价格低而将园区网、接入网交换机用于数据中心网络。
如果分布式存储网络的设计和实施都遵循了以上原则,仍然出现了“网络层不可解决”的问题,那么至少属于机房级别的大故障,很大可能是其他网络、组件、系统也都不可用,不仅限于存储网络。这种情况下,是全面的中断,需要全面恢复,也就谈不上“ 降级使用分布式存储,先行保障生产 ”了。
收起