Ozone SCM HA设计浅谈
文章目录 前言 SCM HA相较于OM HA的区别点 SCM HA服务内存状态数据一致性的控制 Follower SCM内部管理服务的“失效”处理 SCM HA failover行为处理 SCM HA的整体架构图 引用 前言 在前面的文章中,笔者写过关于Ozone OM HA实现的相关文章( Ozone OM服务HA原理分析 ),里面谈论了目前OM HA的一些实现细节以及OM HA如何搭建这类的说明性文章。但是一套完整,高可用的系统,它需要确保其服务整体的健壮性,目前Ozone依赖的SCM服务还没有实现HA,是一个单点的服务。Ozone社区在实现了OM HA之后,已经在设计考虑实现SCM的HA方案(相关JIRA: HDDS-2823 ),以此能够达到一个稳定可使用的Ozone发布版本。本文笔者根据目前社区JIRA上对SCM HA的部分设计要点,来聊聊关于Ozone SCM服务的HA,我们有哪些主要设计要点以及其与OM HA的不同之处。 SCM HA相较于OM HA的区别点 这里SCM是StorageContainerManager名称的简写,而OM是OzoneManager的简称。在Ozone服务中,SCM是底层提供存储能力的基础服务,OM则是其上的应用服务。对于OM这样的应用服务,它在实现HA时重要考虑的点在于Leader/Follower服务节点上db元数据状态的一致