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

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

   数栈君   发表于 2026-03-28 11:52  42  0

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

在现代企业数据架构中,高可用性与负载均衡是保障核心业务连续性的基石。Oracle Real Application Clusters(RAC)作为Oracle数据库的集群解决方案,允许多个节点共享同一数据库实例,实现无缝故障切换与横向扩展。对于构建数据中台、支撑数字孪生系统或实现高并发数字可视化平台的企业而言,部署一套稳定可靠的Oracle RAC集群,是提升系统韧性与性能的关键一步。

本文将聚焦于双节点Oracle RAC部署的实战配置流程,涵盖操作系统准备、共享存储配置、网络规划、集群软件安装与数据库创建全过程,确保部署过程可复现、可验证、可运维。


一、环境准备:硬件与操作系统要求

Oracle RAC对底层基础设施有明确要求。双节点部署建议采用以下配置:

  • 服务器:两台同型号物理服务器或虚拟机(推荐Intel Xeon E5系列以上,内存≥32GB)
  • 操作系统:Oracle Linux 8.8 或 Red Hat Enterprise Linux 8.8(官方支持版本)
  • CPU核心数:每节点≥8核,建议16核以上以支撑高并发查询
  • 磁盘空间:系统盘≥100GB,共享存储≥500GB(用于数据文件、OCR、Voting Disk)
  • 网络接口:每节点至少双网卡(公网+私网)

关键提示:所有节点必须使用相同的操作系统版本、内核参数与补丁级别,避免因环境差异导致集群启动失败。

操作系统安装完成后,需关闭防火墙与SELinux,避免干扰集群通信:

systemctl stop firewalld && systemctl disable firewalldsetenforce 0sed -i 's/SELINUX=enforcing/SELINUX=permissive/g' /etc/selinux/config

二、共享存储配置:ASM与多路径的基石

Oracle RAC的核心优势在于多节点共享同一数据库文件,这依赖于共享存储系统。推荐使用以下三种方案之一:

  1. ASM(Automatic Storage Management):Oracle官方推荐,内置冗余与负载均衡
  2. NFS(Network File System):适用于测试环境,生产环境不推荐
  3. 第三方SAN存储:如EMC、NetApp、华为OceanStor等,需配置多路径软件

2.1 配置多路径(Multipath)

在Linux系统中,使用device-mapper-multipath工具识别并聚合多路径存储:

yum install -y device-mapper-multipathsystemctl enable multipathd --nowmultipath -ll

编辑 /etc/multipath.conf,添加厂商配置(以华为存储为例):

defaults {    user_friendly_names yes}devices {    device {        vendor "HUAWEI"        product "OceanStor"        path_grouping_policy multibus        path_selector "round-robin 0"        hardware_handler "0"        failback immediate    }}

重启服务并验证:

systemctl restart multipathdmultipath -ll

输出应显示多个路径绑定为一个逻辑设备,如 mpatha

2.2 创建ASM磁盘组

使用oracleasm工具格式化共享磁盘为ASM磁盘:

oracleasm createdisk DATA1 /dev/mapper/mpatha1oracleasm createdisk FRA1 /dev/mapper/mpathb1oracleasm listdisks

确保两节点均能识别这些磁盘:

# 在节点2执行oracleasm scandisksoracleasm listdisks

🔍 为什么必须用ASM?ASM不仅提供文件管理,还自动实现条带化(striping)与镜像(mirroring),避免单点故障。相比传统文件系统,它能感知节点状态,动态重平衡I/O负载,是RAC稳定运行的底层保障。


三、网络规划:私网与公网分离

Oracle RAC依赖两类网络:

类型用途推荐配置
Public Network客户端连接、应用访问192.168.10.0/24,静态IP
Private Network节点间心跳、缓存融合(Cache Fusion)10.10.10.0/24,独立网段,无路由

⚠️ 私网必须使用专用交换机或VLAN隔离,禁止与公网混用。延迟超过10ms将触发节点驱逐(eviction)。

配置网络接口:

# 节点1nmcli con modify eth1 ipv4.addresses 192.168.10.10/24nmcli con modify eth2 ipv4.addresses 10.10.10.1/24# 节点2nmcli con modify eth1 ipv4.addresses 192.168.10.11/24nmcli con modify eth2 ipv4.addresses 10.10.10.2/24

配置DNS或/etc/hosts解析:

192.168.10.10  racnode1.example.com racnode1192.168.10.11  racnode2.example.com racnode210.10.10.1     racnode1-priv.example.com racnode1-priv10.10.10.2     racnode2-priv.example.com racnode2-priv192.168.10.12  racnode-vip.example.com racnode-vip192.168.10.13  rac-scan.example.com rac-scan

💡 SCAN(Single Client Access Name) 是Oracle 11gR2引入的特性,客户端只需连接SCAN IP,由DNS或GNS自动负载分发至任意节点,极大简化连接管理。


四、用户与软件环境配置

创建统一的Oracle用户与组:

groupadd -g 501 oinstallgroupadd -g 502 dbagroupadd -g 503 operuseradd -u 501 -g oinstall -G dba,oper oracleecho "oracle:password" | chpasswdmkdir -p /u01/app/oraclechown -R oracle:oinstall /u01/app/oraclechmod -R 775 /u01/app/oracle

配置内核参数(/etc/sysctl.conf):

fs.aio-max-nr = 1048576fs.file-max = 6815744kernel.shmall = 2097152kernel.shmmax = 536870912000kernel.shmmni = 4096kernel.sem = 250 32000 100 128net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 262144net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 1048576

应用配置:

sysctl -p

配置用户资源限制(/etc/security/limits.conf):

oracle soft nofile 1024oracle hard nofile 65536oracle soft nproc 16384oracle hard nproc 16384oracle soft stack 10240oracle hard stack 32768

安装依赖包:

yum install -y binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libgcc libstdc++ libstdc++-devel libaio libaio-devel make sysstat libxcb libX11 libXau libXi libXtst libXrender libXext

五、安装Oracle Grid Infrastructure(GI)

下载Oracle 19c或21c GI安装包,解压至/u01/app/19.0.0/grid

oracle用户运行安装程序:

cd /u01/app/19.0.0/grid./runInstaller

安装向导步骤:

  1. 选择安装类型:Configure Oracle Grid Infrastructure for a Cluster
  2. 节点配置:添加两个节点,填写私网与公网IP
  3. 网络接口:绑定public与private接口
  4. ASM配置:选择之前创建的DATA1FRA1磁盘,设置ASM密码
  5. OCR与Voting Disk:自动分配至ASM磁盘组
  6. 执行脚本:在两节点依次运行root.sh脚本

✅ 安装完成后,验证集群状态:

crsctl check clustercrsctl stat res -t

输出应显示所有资源为ONLINE,包括ora.cssdora.diskgroupora.gipcd等。


六、部署Oracle Database RAC实例

使用DBCA(Database Configuration Assistant)创建RAC数据库:

cd /u01/app/oracle/product/19.0.0/dbhome_1/bin./dbca

配置步骤:

  1. 选择 Create a Database
  2. 选择 Advanced Configuration
  3. 数据库模板:General Purpose or Transaction Processing
  4. 数据库标识:填写全局数据库名(如 racdb.example.com
  5. 节点选择:勾选两个节点
  6. 存储选项:选择 ASM,数据文件存放于+DATA,归档日志在+FRA
  7. 配置选项:启用归档模式、自动备份、EM Express
  8. 初始化参数:根据负载调整sga_targetpga_aggregate_target
  9. 完成后,DBCA自动创建监听器、服务名与服务注册

📌 创建完成后,使用srvctl管理服务:

srvctl status database -d racdbsrvctl start database -d racdbsrvctl stop database -d racdb

七、验证与性能调优

7.1 验证RAC功能

在任意节点执行:

SELECT instance_name, host_name FROM gv$instance;

输出应显示两个实例名与对应主机名,证明双节点同时运行。

7.2 测试故障切换

手动关闭节点1的Oracle服务:

srvctl stop instance -d racdb -i racdb1

在节点2上查询业务连接是否持续可用,验证应用无感知切换。

7.3 性能监控建议

  • 使用awrreport分析跨节点SQL执行效率
  • 监控gv$session中的inst_id分布
  • 使用oemGrid Control查看Cache Fusion等待事件

八、运维建议与最佳实践

  • 定期备份OCR与Voting Diskocrconfig -export /backup/ocr.bak
  • 避免手动修改集群配置文件:全部使用crsctlsrvctl
  • 监控网络延迟:使用ping -c 100测试私网延迟,确保<5ms
  • 启用自动存储管理(ASM)快照:配合存储快照实现零停机备份

结语:为数字中台注入高可用基因

Oracle RAC集群部署不仅是技术操作,更是企业数字化转型的基础设施加固。无论是支撑实时数字孪生模型的动态仿真,还是为可视化平台提供毫秒级响应的分析引擎,RAC的高可用架构都为业务连续性提供了坚实保障。

在部署过程中,任何环节的疏忽——如私网未隔离、ASM未正确识别、内核参数缺失——都可能导致集群崩溃。因此,建议在生产环境部署前,先在测试环境完整演练一次。

如需快速获取标准化部署脚本、自动化配置模板或专家支持,可申请专业部署服务:申请试用&https://www.dtstack.com/?src=bbs

为确保长期稳定运行,建议每季度进行一次集群健康检查,并结合监控系统(如Prometheus + Grafana)实现自动化告警。再次推荐:申请试用&https://www.dtstack.com/?src=bbs

若您正在规划下一代数据平台架构,Oracle RAC的成熟性与Oracle生态的完整性,是值得优先考虑的方案。立即行动,开启您的高可用数据库之旅:申请试用&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条评论
社区公告
  • 大数据领域最专业的产品&技术交流社区,专注于探讨与分享大数据领域有趣又火热的信息,专业又专注的数据人园地

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