Oracle Flex Cluster 详解
Oracle Flex Cluster 详解
适用版本:Oracle Database 12c+ / 19c / 23ai 文档版本:v1.0 / 2026-07
1. 概述
Flex Cluster 是 12c 引入的集群架构[1]:
详细见:Oracle Clusterware 架构详解、Oracle Grid Infrastructure 详解。
2. 架构
2.1 Hub 节点
- 中心节点
- 直接连存储
- 运行 ASM
- 紧密耦合
2.2 Leaf 节点
- 叶节点
- 不直接连存储
- 通过 Hub
- 轻量
2.3 优势
- 大规模
- 分层
- 灵活
3. vs 传统 Cluster
3.1 传统
- 所有节点平等
- 紧密耦合
- 规模限制
3.2 Flex
- Hub-Leaf 分层
- 松散 Leaf
- 大规模
3.3 规模
- 传统:数十节点
- Flex:数百节点
4. 部署
4.1 安装
- GI 安装时选择 Flex Cluster
- 或转换
4.2 转换
# 传统 -> Flex
crsctl set cluster mode flex
crsctl stop crs
crsctl start crs -wait
4.3 节点角色
# 查看角色
crsctl get node role config
crsctl get node role status
# 设置 Leaf
crsctl set node role hub
crsctl set node role leaf
5. Hub 节点
5.1 角色
- 中心
- ASM
- 存储
- GNS
5.2 数量
- 最少 1
- 推荐 3
- 冗余
5.3 资源
- 数据库
- ASM
- 监听器
- 服务
6. Leaf 节点
6.1 角色
- 轻量
- 应用
- 不运行 ASM
6.2 通信
- 通过 Hub
- ASM 连接
- 网络
6.3 优势
- 轻量
- 大规模
- 应用
7. Flex ASM
7.1 概念
- ASM 客户端/服务端
- Hub 运行 ASM
- Leaf 连接 Hub ASM
7.2 优势
- ASM 冗余
- 不每节点 ASM
- 灵活
7.3 配置
# 查看状态
asmcmd showclustermode
srvctl status asm
8. 数据库部署
8.1 Hub 节点
- RAC 数据库
- 共享存储
- ASM
8.2 Leaf 节点
- 单实例
- 应用
- 不存储
8.3 混合
- Hub:数据库
- Leaf:应用
- 分层
9. 监控
9.1 节点角色
olsnodes -n -s -t
9.2 集群状态
crsctl check cluster -all
crsctl stat res -t
9.3 ASM
srvctl status asm
asmcmd showclustermode
10. 应用场景
10.1 大规模
- 数百节点
- Hub-Leaf
- 扩展
10.2 应用集群
- Hub:数据库
- Leaf:应用
- 分层
10.3 混合负载
- 不同类型
- 灵活
- 管理
11. 限制
11.1 Leaf
- 不直接存储
- 依赖 Hub
- 限制
11.2 网络
- Hub-Leaf 网络
- 带宽
- 监控
11.3 复杂
- 配置复杂
- 管理
- 评估
12. 升级
12.1 滚动
- Hub 逐一
- Leaf 逐一
- 零停机
12.2 兼容
- 版本
- 检查
- 测试
13. 常见问题
13.1 Leaf 不可达
- Hub 故障
- 检查
- 修复
13.2 ASM
- Flex ASM
- 冗余
- 检查
13.3 性能
- Hub-Leaf 网络
- 监控
- 优化
14. 最佳实践
- 大规模:使用
- Hub 冗余:3+
- Flex ASM:启用
- 网络:冗余
- 监控:状态
- 测试:故障
- 文档:架构
- 演练:节点
- 升级:滚动
- 评估:场景
15. 参考资料
[1] Oracle Grid Infrastructure Administrator’s Guide 19c, “Flex Clusters” https://docs.oracle.com/en/database/oracle/oracle-database/19/cwali/