分布式存储的架构、隐患及解决方法
更换服务器的过程是先将服务器退出服务,再增加服务器的过程.原来服务器上有多少数据,就需要搬迁多少数据,比如原来服务器每块有2T数据了,就需要搬迁12*2T的数据.为了确保存储的正常使用,最好只能同时退出n-2台服务器,并增加相应的服务器. 比如3副本,就只能先退出1台服务器,再增加1台服务器.换1台服务器需要2*2=4天时间.最多同时换2台,但风险很大,万一更换的过程中出现1台故障,那这个存储系统就挂了. 所以一台一台更替是最妥当的方法,57台服务器全部替换完成,不停的干,顺利的话,也需要大半年时间,算上节假日1年可能都做不完.这个过程漫长而复杂,充满的变数,却一定是可行的. 当然划小分布式存储的故障域,在一个故障域的服务器减少,对应替代服务器的工作时间相应减少了,风险也相应减小.但是分布式存储是云计算快速发展后对存储性能、容量带来新需求发展起来的. 几百台服务器共享一个存储,运行几千、上万台虚拟机,从这个角度考虑,分布式块存储最好是一个可以无限线性扩容的存储系统.但是就是因为有了上面的问题,只能将存储资源池划分成为一个一个较小的故障域. 这个故障域的大小我们认为在裸容量在2P(有效容量666T)、IOPS在100万次以上是可以满足资源池的需要,即在60台服务器左右. 分布式块存储实际上是来替代所谓高端FCSAN存储的.小集群替代低端小容量的FCSAN在价格上、性能上都没有优势. 如果只是服务器出故障,而磁盘是正常的,还有一种比较快速的人工介入办法.这个办法是一种应急方案的延伸.实现的原理就是利用检测到磁盘故障后15分钟后才启动副本的重建. 如果15分钟内磁盘又恢复了,那在故障时间内原来需要写入的副本是需要追溯的.也就是说在这15分钟内,其实有些副本只写了2个,还有一个1副本原来要写到这个磁盘中的. 如果15分钟内原磁盘恢复了,就将增量数据补充进去,如果15分钟不恢复,就进行副本重构.当然这个时间长短是可以配置,但不是所有的分布式存储系统都有这个功能. 不少存储系统一检测到磁盘或服务器不在线,就会立即启动副本重构,本质上就是没有“追溯”.知道这个原理了,下面的事情就简单了. (编辑:PHP编程网 - 黄冈站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |