重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 426|回复: 0
打印 上一主题 下一主题

[工具] 在Oracle 11g RAC环境中配置多路径(Multipath)

[复制链接]
跳转到指定楼层
楼主
发表于 2025-11-16 18:26:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1. 检查存储设备

首先识别所有存储设备:
bash

# 查看所有磁盘设备
fdisk -l

# 查看SCSI设备
cat /proc/scsi/scsi

# 查看WWID
scsi_id -g -s /block/sdX

2. 安装多路径软件
bash

# RHEL/CentOS
yum install device-mapper-multipath

# Ubuntu/Debian
apt-get install multipath-tools

3. 配置multipath.conf

创建或编辑 /etc/multipath.conf:
bash

# 基本配置模板
defaults {
    user_friendly_names yes
    path_grouping_policy failover
    uid_attribute ID_SERIAL
    path_selector "round-robin 0"
    path_checker readsector0
    rr_min_io 1000
    failback immediate
    no_path_retry fail
}

# 黑名单配置
blacklist {
    devnode "^sda$"
    devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
    devnode "^hd[a-z]"
    devnode "^cciss.*"
}

# 设备特定配置(根据存储阵列调整)
devices {
    device {
        vendor "EMC"           # 存储厂商
        product "SYMMETRIX"    # 存储型号
        path_grouping_policy group_by_prio
        path_checker tur
        features "1 queue_if_no_path"
        hardware_handler "1 alua"
        prio alua
        failback immediate
        rr_weight uniform
        no_path_retry 18
    }
   
    device {
        vendor "NETAPP"
        product "LUN.*"
        path_grouping_policy group_by_prio
        path_checker tur
        features "1 queue_if_no_path"
        hardware_handler "1 alua"
        prio alua
        failback immediate
        rr_weight uniform
        no_path_retry 18
    }
}

# 多路径设备定义
multipaths {
    multipath {
        wwid 3600601607ed13000a4ae33e8ac37dc11
        alias OCR_VOTE01
    }
    multipath {
        wwid 3600601608ed13000a4ae33e8ac37dc11
        alias DATA01
    }
}

4. 启用并启动多路径服务
bash

# 启用服务
mpathconf --enable

# 启动服务
service multipathd start
chkconfig multipathd on

# 或者使用systemctl
systemctl enable multipathd
systemctl start multipathd

5. 验证多路径配置
bash

# 查看多路径设备
multipath -ll

# 查看多路径状态
multipath -v2

# 检查设备映射
ls -la /dev/mapper/

# 查看具体设备信息
multipath -l mpath0

6. 配置UDEV规则(可选但推荐)

创建UDEV规则以确保设备名称一致性:
bash

# 创建文件 /etc/udev/rules.d/99-oracle-asm.rules

# OCR/Voting磁盘
KERNEL=="dm-*", ENV{DM_UUID}=="mpath-3600601607ed13000a4ae33e8ac37dc11", SYMLINK+="oracle/asm/ocrvote1", OWNER="grid", GROUP="asmadmin", MODE="0660"

# DATA磁盘
KERNEL=="dm-*", ENV{DM_UUID}=="mpath-3600601608ed13000a4ae33e8ac37dc11", SYMLINK+="oracle/asm/data1", OWNER="grid", GROUP="asmadmin", MODE="0660"

# 重新加载UDEV规则
udevadm control --reload-rules
udevadm trigger

7. 在所有RAC节点上重复配置

确保在所有集群节点上执行相同的配置:
bash

# 将配置文件复制到其他节点
scp /etc/multipath.conf racnode2:/etc/
scp /etc/multipath.conf racnode3:/etc/

# 在其他节点启动服务
ssh racnode2 "systemctl start multipathd"
ssh racnode3 "systemctl start multipathd"

8. 验证集群范围内的多路径配置
bash

# 在所有节点检查多路径设备是否一致
cluvfy comp multipath -n all

# 使用crsctl检查资源状态(如果Grid已安装)
crsctl stat res -t

9. 故障排除命令
bash

# 重新扫描多路径设备
multipath -r

# 查看多路径详细日志
multipath -v3

# 检查DM设备
dmsetup ls
dmsetup info

# 查看系统日志
tail -f /var/log/messages
journalctl -f

10. 重要注意事项

    WWID唯一性:确保使用正确的WWID来标识存储设备

    路径策略:根据存储阵列类型选择合适的路径分组策略

    故障切换:测试路径故障切换以确保高可用性

    性能监控:监控多路径I/O性能,必要时调整负载均衡策略

    与ASM集成:多路径设备名应在ASM磁盘发现字符串中正确配置

完成配置后,多路径将为存储设备提供自动故障切换和负载均衡功能,确保Oracle RAC数据库的高可用性。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2026-4-17 22:13 , Processed in 0.218054 second(s), 24 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表