重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛
标题:
在Oracle 11g RAC环境中配置多路径(Multipath)
[打印本页]
作者:
Inkcup
时间:
2025-11-16 18:26
标题:
在Oracle 11g RAC环境中配置多路径(Multipath)
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数据库的高可用性。
欢迎光临 重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛 (http://bbs.cqsztech.com/)
Powered by Discuz! X3.2