红帽RHEL8 多路径配置详解

2024-09-06 16:20

本文主要是介绍红帽RHEL8 多路径配置详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文为云贝教育 刘老师 原创,请尊重知识产权,转发请注明出处,不接受任何抄袭、演绎和未经注明出处的转载。

引言

在现代数据中心中,为了提高存储系统的可靠性和性能,多路径技术成为了一种重要的解决方案。多路径技术允许多条物理路径同时连接到同一个存储设备,从而提高了系统的可用性和I/O性能。本文将详细介绍如何在Linux系统中配置多路径技术,包括多路径的基本原理、配置步骤以及常见问题的解决方法。

一、多路径技术概述

多路径技术(MultiPath)是指通过多条物理路径连接到同一存储设备的技术。在Linux操作系统中,多路径软件Device Mapper MultiPath(简称DM-MultiPath)是实现多路径功能的核心组件。DM-MultiPath主要具备以下功能:

• 链路故障的切换和恢复:当一条或多条路径发生故障时,能够自动切换到其他可用路径,确保数据的连续访问。

• I/O流量的负载均衡:通过将I/O请求均匀地分配到所有可用路径上,提高存储系统的整体性能。

• 磁盘的虚拟化:通过将多条物理路径合并为一个逻辑设备,简化了存储管理。

二、配置虚拟机参数

一定要在虚拟机关闭状态下配置!

一定要在虚拟机关闭状态下配置!

一定要在虚拟机关闭状态下配置!

2.1 定位配置文件

右键虚拟机列表中的目标服务器

2.2 编辑配置文件Oracle19c_rhel8.vmx

添加如下内容

2.3 验证

三、查看当前存储配置

3.1 确认需要配置的存储

3.2 批量获取设置的scsi_id

四、多路径配置

4.1 多路径软件安装

4.2 多路径配置文件

MultiPath Tools主要由以下三个部分组成:

• multipath:主要用于存储工程师对多路径的维护,包括显示多路径信息、管理多路径设备等。

• multipathd:守护进程,负责监视路径状态,当发生故障时将重新配置路径所属的虚拟盘,以便该虚拟盘恢复。

• multipath.conf:配置文件,multipathd服务启动时读取该文件中的参数,并按参数的约定进行多路径设备管理。

4.3 多路径配置文件详解

配置文件multipath.conf位于/etc/multipath.conf,如果该文件不存在,可以通过/usr/share/doc/device-mapper-multipath/multipath.conf获取。

multipath.conf由多个“节”(section)组成,主要包括:

• defaults:定义MultiPath的默认设置。

• blacklist:定义排除哪些设备(黑名单)。

• blacklist_exceptions:定义包含的设备(白名单)。

• multipaths:定义某个多路径设备的设置。

• devices:定义各个存储控制器类型的设置。

4.4 多路径配置

• 以oracle asm磁盘组为示例(用户和权限未配置)

4.5 加载配置

4.6 验证

• 多路径详细配置

• 多路径拓扑

五、故障排查

5.1 multipath -ll扫不到单路径映射设备设备

• 问题现象

通过multipath -ll扫不到单路径映射设备设备

• 问题原因

FC连接配置问题,vmwar配置的虚拟机只使用一条FC链路进行映射,使用两条FC链路及以上没有该问题

• 问题解决

1)查看映射设备信息

2) 查看设备对应的WWID

3) 添加设备wwid到wwids文件中

4)确认添加成功

5)重新加载服务

6)查看信息

[root@db2 ~]# multipath -ll
asm_ocr02 (36000c29cf5192f3187e7aceb576d7db3) dm-2 VMware,,VMware Virtual S
size=2.0G features='0' hwhandler='0' wp=rw
`-+- policy='service-time 0' prio=1 status=active`- 32:0:1:0 sdb     8:16  active ready running
asm_ocr01 (36000c29fa153119f4f69bf83037b2a06) dm-1 VMware,,VMware Virtual S
size=2.0G features='0' hwhandler='0' wp=rw
`-+- policy='service-time 0' prio=1 status=active`- 32:0:0:0 sda     8:0   active ready running
asm_ocr03 (36000c29e74792408b024a8953e0f9e60) dm-3 VMware,,VMware Virtual S
size=2.0G features='0' hwhandler='0' wp=rw
`-+- policy='service-time 0' prio=1 status=active`- 32:0:2:0 sdc     8:32  active ready running[root@db2 ~]# fdisk -l | grep asm
Disk /dev/mapper/asm_ocr01: 2 GiB, 2147483648 bytes, 4194304 sectors
Disk /dev/mapper/asm_ocr02: 2 GiB, 2147483648 bytes, 4194304 sectors
Disk /dev/mapper/asm_ocr03: 2 GiB, 2147483648 bytes, 4194304 sectors[root@db2 ~]# lsblk 
NAME         MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
sda            8:0    0    2G  0 disk  
└─asm_ocr01  253:1    0    2G  0 mpath 
sdb            8:16   0    2G  0 disk  
└─asm_ocr02  253:2    0    2G  0 mpath 
sdc            8:32   0    2G  0 disk  
└─asm_ocr03  253:3    0    2G  0 mpath 
nvme0n1      259:0    0   50G  0 disk  
├─nvme0n1p1  259:1    0  300M  0 part  /boot
├─nvme0n1p2  259:2    0    2G  0 part  [SWAP]
└─nvme0n1p3  259:3    0 47.7G  0 part  /
nvme0n2      259:4    0   30G  0 disk  
└─vg_01-lv01 253:0    0   30G  0 lvm   /dbs/pg14
nvme0n3      259:5    0   20G  0 disk  
└─vg_01-lv01 253:0    0   30G  0 lvm   /dbs/pg14[root@db2 ~]# ll /dev/mapper/*
lrwxrwxrwx 1 root root       7 Jul 30 19:59 /dev/mapper/asm_ocr01 -> ../dm-1
lrwxrwxrwx 1 root root       7 Jul 30 19:59 /dev/mapper/asm_ocr02 -> ../dm-2
lrwxrwxrwx 1 root root       7 Jul 30 19:59 /dev/mapper/asm_ocr03 -> ../dm-3
crw------- 1 root root 10, 236 Jul 30 18:31 /dev/mapper/control
lrwxrwxrwx 1 root root       7 Jul 30 18:31 /dev/mapper/vg_01-lv01 -> ../dm-0
想了解更多 红帽 相关的学习资料(技术文章和视频),嘉chenjunbee免费获取。

这篇关于红帽RHEL8 多路径配置详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1142511

相关文章

Redis 的 SUBSCRIBE命令详解

《Redis的SUBSCRIBE命令详解》Redis的SUBSCRIBE命令用于订阅一个或多个频道,以便接收发送到这些频道的消息,本文给大家介绍Redis的SUBSCRIBE命令,感兴趣的朋友跟随... 目录基本语法工作原理示例消息格式相关命令python 示例Redis 的 SUBSCRIBE 命令用于订

mybatis映射器配置小结

《mybatis映射器配置小结》本文详解MyBatis映射器配置,重点讲解字段映射的三种解决方案(别名、自动驼峰映射、resultMap),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定... 目录select中字段的映射问题使用SQL语句中的别名功能使用mapUnderscoreToCame

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

Python中 try / except / else / finally 异常处理方法详解

《Python中try/except/else/finally异常处理方法详解》:本文主要介绍Python中try/except/else/finally异常处理方法的相关资料,涵... 目录1. 基本结构2. 各部分的作用tryexceptelsefinally3. 执行流程总结4. 常见用法(1)多个e

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

SpringBoot日志级别与日志分组详解

《SpringBoot日志级别与日志分组详解》文章介绍了日志级别(ALL至OFF)及其作用,说明SpringBoot默认日志级别为INFO,可通过application.properties调整全局或... 目录日志级别1、级别内容2、调整日志级别调整默认日志级别调整指定类的日志级别项目开发过程中,利用日志

Java中的抽象类与abstract 关键字使用详解

《Java中的抽象类与abstract关键字使用详解》:本文主要介绍Java中的抽象类与abstract关键字使用详解,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录一、抽象类的概念二、使用 abstract2.1 修饰类 => 抽象类2.2 修饰方法 => 抽象方法,没有

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资