边缘计算体验之二:简单高可用 ZStack Mini的巧妙设计( 三 )

与硬盘紧密相连的组件是SATA/SASRAID卡 , ZStackMini使用了Broadcom公司推出的带锂电池备份单元(BatteryBackupUnit , BBU)的RAID卡 , 在遭遇突发停机的情况下 , 可以将RIAD卡Cache中的数据存储到硬盘 。


边缘计算体验之二:简单高可用 ZStack Mini的巧妙设计

----边缘计算体验之二:简单高可用 ZStack Mini的巧妙设计//----

ZStackMini内置的2节点内部 , 毗邻CPU散热片 , 贴有白底标签纸的组件即为锂电池 , 其与紧贴机箱壁的RAID卡相连 , 在突发掉电情况下为RAID卡供电 , 有助于降低数据丢失风险

从上图也可以看出 , ZStackMini中所采用的半宽2U节点 , 其内部空间还是比较宽裕的 , 相比于2U4中的半宽1U节点 , 散热条件更好 , 有利于升级到更高规格的CPU , 而且工作温度也是影响系统可靠性的一大重要因素 , 尤其是部署在边缘站点或小微企业内部的产品 , 其运行环境通常比专业数据中心复杂得多

每一个组件都有故障率 , 每一个组件的故障都会影响系统的可靠性 , 进而影响可用性 。 故障并不可怕 , 重要的是组件故障后 , 如何保障用户的数据不丢失 , 甚至能够让应用持续运行 , 继续可用 , 这是在系统或解决方案设计时最重要的目标之一 。

除了应用的可用性 , 还要考虑数据的可用性 , 并且避免存储子系统的故障导致数据丢失 。 据ZStack介绍 , ZStackMini通过两副本加两纠删码的双重保险保障数据安全 , 只有在至少两个节点各两块硬盘同时损坏的场景下才有数据丢失的风险 , 整体数据可用率高达99.999995% , 比通常超融合双副本安全系数高4个9 , 比三副本安全系数高2个9 , 这又是怎么做到的呢?

边缘计算体验之二:简单高可用 ZStack Mini的巧妙设计。

节点内:N+1应对磁盘故障

硬盘是ZStackMini中的数据存储担当 , 其前面板上插满了12块3.5英寸硬盘 , 平均分给2个节点使用 。 其中4块(每节点各2)用于安装操作系统 , 其余8块(每节点各4)留给用户存储数据 。

当下 , 大多数超融合一体机中采用了三副本数据保护机制 , 将同一份数据分别存放在三台不同的服务器内 , 从而在遭遇单个硬盘或节点故障后 , 数据仍然可正常读写 。

ZStackMini则颇为“非主流”的采用了基于硬件(RAID卡)的RAID技术 , 其中操作系统盘用RAID1(镜像)保护 , 每节点的4个数据盘用RAID5(奇偶校验)保护 。

RAID技术与RISC技术诞生于同一时代 , 而且还师出同人 , 然而 , RISC-V目下正是计算领域的当红炸子鸡 , RAID却已不大有人提起 。 其中一个很重要的原因在于 , 传统基于硬件的RAID技术不适合大规模部署环境 , 在使用大容量硬盘的时候恢复时间也面临很大的挑战 。

不过 , RAID的核心理论和算法并没有过时 , 譬如在大规模部署环境中为解决副本技术存储容量利用率偏低而采用的纠删码(ErasureCode)技术 , 其核心算法原理与RAID5/6是相通的 , 我们可以将RAID5视为N+1的纠删码 。

而在小规模部署环境中 , 譬如ZStackMini这种每个节点只有个位数硬盘的情况下 , RAID技术仍然能够发挥很好的作用 , RAID卡还可以把CPU从底层存储任务处理中解放出来 , 贡献更多的虚拟机 。


推荐阅读