集群卷管理器与集群文件系统详解
1. 集群卷管理器(CVM)概述
集群卷管理器(CVM)在共享数据集群中有着重要作用。为了保持代码简单,通常使用请求消息来执行管理命令。当配置更改请求消息到达 CVM 主节点时,会按以下步骤处理:
1. 验证请求的权限和参数的正确性等。
2. 获取适当的集群范围的排他锁。使用即将被更改的元数据的从节点,其缓存锁将被撤销。主节点获取锁之前,从节点上正在处理的 I/O 请求将被清空。后续的 I/O 请求将被阻塞,直到主节点释放排他锁。
3. 在记录到磁盘日志的事务控制下应用更改。
4. 释放步骤 2 中获取的集群范围的锁。
从节点在主节点获取排他锁时会使元数据副本失效。当从节点重新获得共享锁时,会通过单独的消息或锁定协议本身获得最新的元数据副本。
1.1 主节点选举
当 CVM 实例启动时,会向集群监视器注册。集群中第一个启动的 CVM 实例将成为主节点。如果主节点崩溃或需要关闭,会选举新的主节点。若 CVM 能够形成逻辑集群,主节点选举会更复杂,需要将主节点均匀分布在各个节点上。以下是几种可能的主节点迁移机制:
- 随机迁移 :节点成员发生变化时,随机重新分配节点主节点。大多数情况下能得到不错但并非完美的分布。
- 预编程迁移 :为每个可能的节点成员枚举首选节点,或者给出一系列节点排名来计算主节点,不同磁盘组使用不同的排名序列。
- 动态迁移 :如果某个节点上的主节点过多,将部分主节点迁移出去。
超级会员免费看
订阅专栏 解锁全文
1万+

被折叠的 条评论
为什么被折叠?



