博客 Oracle RAC集群部署实战:双节点配置与共享存储优化

Oracle RAC集群部署实战:双节点配置与共享存储优化

   数栈君   发表于 2026-03-26 17:39  57  0

Oracle RAC集群部署实战:双节点配置与共享存储优化

在企业级数据平台建设中,高可用性与高性能是核心诉求。Oracle Real Application Clusters(RAC)作为Oracle官方提供的集群解决方案,能够实现多节点共享同一数据库实例,显著提升系统可用性与负载均衡能力。尤其在构建数据中台、支撑数字孪生仿真系统与实时可视化分析场景时,RAC的并发处理能力与故障自动切换机制,成为保障业务连续性的关键技术选择。

本文将深入解析Oracle RAC双节点部署的完整流程,涵盖操作系统配置、共享存储搭建、网络规划、集群软件安装与优化策略,帮助技术团队高效完成生产级RAC环境的构建。


一、Oracle RAC部署前提条件

在启动部署前,必须确保硬件与软件环境满足Oracle官方推荐标准。以下为双节点RAC部署的最低配置要求:

  • 服务器节点:2台x86_64架构服务器,建议配置≥16核CPU、64GB内存、SSD系统盘(≥200GB)
  • 共享存储:需配置至少3个独立存储卷:
    • OCR(Oracle Cluster Registry):≥10GB,用于集群配置信息存储
    • Voting Disk:≥10GB,用于节点健康状态投票
    • 数据文件与归档日志:根据业务规模分配,建议使用ASM(Automatic Storage Management)管理
  • 网络要求
    • 公共网络(Public Network):用于客户端连接,建议1Gbps以上
    • 私有网络(Private Network / Interconnect):用于节点间心跳与缓存融合(Cache Fusion),建议10Gbps InfiniBand或万兆以太网
  • 操作系统:Oracle Linux 8.x 或 Red Hat Enterprise Linux 8.x(64位),建议使用统一版本与补丁级别
  • 软件依赖:GCC、Glibc、Libaio、Sysstat、NTP、OpenSSH等基础包需预先安装

⚠️ 注意:Oracle RAC不支持虚拟化环境中的共享存储(如NFS)作为OCR或Voting Disk,必须使用块设备(如SAN、iSCSI、ASM磁盘组)。


二、共享存储配置:ASM与多路径优化

共享存储是RAC架构的基石。在双节点环境中,必须确保两个节点能同时、一致地访问同一块存储设备。

1. 存储设备规划示例(以iSCSI为例)

卷名称大小用途设备路径
OCR_VOTE20GBOCR + Voting Disk/dev/sdb
DATA200GB数据文件/dev/sdc
FRA150GB快速恢复区/dev/sdd

2. 配置多路径(Multipath)提升可靠性

为避免单路径故障,必须配置Linux多路径软件(multipathd):

# 安装多路径工具yum install -y device-mapper-multipath# 生成配置文件mpathconf --enable --with_multipathd y# 扫描设备multipath -ll# 编辑 /etc/multipath.conf,添加如下内容(示例):defaults {    user_friendly_names yes    find_multipaths yes}devices {    device {        vendor "PURE"        product "FlashArray"        path_grouping_policy multibus        path_checker directio        hardware_handler "0"        failback immediate    }}

重启服务并验证:

systemctl restart multipathdmultipath -ll

输出应显示每个磁盘有多个路径,且状态为active

3. 创建ASM磁盘组

使用Oracle ASM管理共享存储,避免文件系统锁竞争:

# 使用oracle用户登录,启动ASMCAasmca# 创建磁盘组:# - 名称:OCR_DG,冗余:EXTERNAL,磁盘:/dev/mapper/ocr_vote# - 名称:DATA_DG,冗余:EXTERNAL,磁盘:/dev/mapper/data# - 名称:FRA_DG,冗余:EXTERNAL,磁盘:/dev/mapper/fra

✅ 推荐:OCR与Voting Disk置于同一磁盘组,但物理上分离于数据磁盘组,避免I/O争用。


三、网络与主机配置

1. 静态IP规划(示例)

节点公共IP私有IP虚拟IPSCAN IP
node1192.168.1.1010.10.10.10192.168.1.101192.168.1.110
node2192.168.1.1110.10.10.11192.168.1.102192.168.1.110
192.168.1.111
192.168.1.112

📌 SCAN(Single Client Access Name)是RAC客户端连接入口,需在DNS或/etc/hosts中解析为3个IP,实现负载均衡。

2. hosts文件配置(两节点同步)

192.168.1.10 node1.example.com node1192.168.1.11 node2.example.com node210.10.10.10 node1-priv.example.com node1-priv10.10.10.11 node2-priv.example.com node2-priv192.168.1.101 node1-vip.example.com node1-vip192.168.1.102 node2-vip.example.com node2-vip192.168.1.110 scan-cluster.example.com scan-cluster192.168.1.111 scan-cluster.example.com scan-cluster192.168.1.112 scan-cluster.example.com scan-cluster

3. 时间同步(NTP)

RAC对时间一致性要求极高,必须启用NTP服务:

timedatectl set-ntp truesystemctl enable chronydsystemctl start chronydchronyc sources -v

确保两节点时间差小于1秒。


四、安装Oracle Grid Infrastructure与Database

1. 安装Grid Infrastructure(集群软件)

  • 下载Oracle 19c或21c Grid Infrastructure软件包
  • 在两个节点上解压并运行runInstaller
  • 选择“Install and Configure Oracle Grid Infrastructure for a Cluster”
  • 指定公共/私有网络接口
  • 设置OCR与Voting Disk所在磁盘组(ASM已创建)
  • 执行root脚本(在两个节点分别执行)
# 节点1/u01/app/19.0.0/grid/root.sh# 节点2/u01/app/19.0.0/grid/root.sh

验证集群状态:

crsctl check clustercrsctl stat res -t

输出应显示所有资源为ONLINE

2. 安装Oracle Database软件

  • 使用相同用户(oracle)在两个节点安装数据库软件(不创建数据库)
  • 选择“Install database software only”
  • 完成后,使用DBCA创建RAC数据库

3. 使用DBCA创建RAC数据库

  • 选择“Create a Database”
  • 选择“Oracle Real Application Clusters database”
  • 选择全部节点(node1, node2)
  • 设置数据库名(如RACDB)、字符集(AL32UTF8)
  • 存储类型选择ASM,指定DATA_DG与FRA_DG
  • 启用“Enable Archive Mode”与“Enable Flashback”
  • 设置监听器端口(默认1521)

💡 建议:为RAC数据库启用自动内存管理(AMM)或手动SGA/PGA分配,避免内存争用。


五、性能优化与运维建议

1. 缓存融合(Cache Fusion)调优

RAC的核心优势在于节点间共享数据块。确保私有网络带宽充足,避免“远程缓存命中”成为瓶颈。

  • 检查缓存融合性能:
SELECT * FROM V$GES_STATISTICS WHERE STATISTIC LIKE '%conversion%';
  • conversion值持续升高,说明节点间锁竞争严重,需优化SQL或增加私有网络带宽。

2. ASM磁盘组冗余策略

  • EXTERNAL:依赖底层存储冗余(如RAID 10),适用于企业级SAN
  • NORMAL:双副本,需至少3个磁盘
  • HIGH:三副本,需至少5个磁盘

在双节点RAC中,推荐使用EXTERNAL冗余,由存储层保障可靠性。

3. 监控与告警

部署以下监控项:

  • CRS资源状态(crsctl stat res -t)
  • ASM磁盘组使用率(SELECT NAME, TOTAL_MB, FREE_MB FROM V$ASM_DISKGROUP)
  • 等待事件(SELECT EVENT, TOTAL_WAITS, TIME_WAITED FROM V$SYSTEM_EVENT WHERE EVENT LIKE '%gc%')
  • 网络延迟(ping -c 10 node2-priv)

🔔 推荐集成Zabbix或Prometheus + Grafana进行可视化监控,实现异常自动告警。


六、常见问题与解决方案

问题原因解决方案
CRS-4535: Cannot communicate with clusterwareNTP时间不同步同步时间,重启chronyd
ASM磁盘无法识别权限或多路径未配置chown oracle:oinstall /dev/mapper/*,重启multipathd
DBCA创建失败,提示“insufficient privileges”用户未加入oinstall与dba组usermod -a -G oinstall,dba oracle
节点频繁重启私有网络丢包检查交换机端口速率、双工模式,更换网卡驱动

七、扩展建议:为数据中台与数字孪生提供支撑

Oracle RAC集群的高可用特性,使其成为构建企业级数据中台的理想底座。在数字孪生系统中,实时仿真引擎需持续写入与查询海量时序数据,RAC的并发写入能力可有效避免单点瓶颈。同时,结合Oracle GoldenGate实现跨数据中心同步,可进一步提升灾备能力。

✅ 为提升数据处理效率,建议搭配Oracle In-Memory选项,将高频访问的维度表加载至内存列存储,加速分析查询。

如需获取完整部署脚本、自动化安装模板或专业运维支持,申请试用&https://www.dtstack.com/?src=bbs 可为您提供定制化RAC部署方案与性能调优服务。


八、总结:RAC部署成功关键点

  1. 共享存储必须为块设备,禁用NFS
  2. 私有网络带宽≥10Gbps,且独立于公共网络
  3. NTP时间同步必须精确到毫秒级
  4. ASM磁盘组提前规划,避免后期扩容困难
  5. 所有节点操作系统、补丁、内核参数保持一致
  6. 部署后立即执行CRS健康检查与压力测试

Oracle RAC部署虽复杂,但一旦成功,其带来的业务连续性与弹性扩展能力,远超单实例架构。对于追求7×24小时运行、高并发访问的数据平台,RAC是经过验证的工业级选择。

申请试用&https://www.dtstack.com/?src=bbs 提供RAC部署咨询、集群监控模板与自动化运维工具包,助力企业快速落地生产环境。

申请试用&https://www.dtstack.com/?src=bbs 为您的数字孪生系统提供稳定、高性能的数据库支撑底座。

申请试用&下载资料
点击袋鼠云官网申请免费试用:https://www.dtstack.com/?src=bbs
点击袋鼠云资料中心免费下载干货资料:https://www.dtstack.com/resources/?src=bbs
《数据资产管理白皮书》下载地址:https://www.dtstack.com/resources/1073/?src=bbs
《行业指标体系白皮书》下载地址:https://www.dtstack.com/resources/1057/?src=bbs
《数据治理行业实践白皮书》下载地址:https://www.dtstack.com/resources/1001/?src=bbs
《数栈V6.0产品白皮书》下载地址:https://www.dtstack.com/resources/1004/?src=bbs

免责声明
本文内容通过AI工具匹配关键字智能整合而成,仅供参考,袋鼠云不对内容的真实、准确或完整作任何形式的承诺。如有其他问题,您可以通过联系400-002-1024进行反馈,袋鼠云收到您的反馈后将及时答复和处理。
0条评论
社区公告
  • 大数据领域最专业的产品&技术交流社区,专注于探讨与分享大数据领域有趣又火热的信息,专业又专注的数据人园地

最新活动更多
微信扫码获取数字化转型资料