红帽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

相关文章

Conda与Python venv虚拟环境的区别与使用方法详解

《Conda与Pythonvenv虚拟环境的区别与使用方法详解》随着Python社区的成长,虚拟环境的概念和技术也在不断发展,:本文主要介绍Conda与Pythonvenv虚拟环境的区别与使用... 目录前言一、Conda 与 python venv 的核心区别1. Conda 的特点2. Python v

Spring Boot中WebSocket常用使用方法详解

《SpringBoot中WebSocket常用使用方法详解》本文从WebSocket的基础概念出发,详细介绍了SpringBoot集成WebSocket的步骤,并重点讲解了常用的使用方法,包括简单消... 目录一、WebSocket基础概念1.1 什么是WebSocket1.2 WebSocket与HTTP

java中反射Reflection的4个作用详解

《java中反射Reflection的4个作用详解》反射Reflection是Java等编程语言中的一个重要特性,它允许程序在运行时进行自我检查和对内部成员(如字段、方法、类等)的操作,本文将详细介绍... 目录作用1、在运行时判断任意一个对象所属的类作用2、在运行时构造任意一个类的对象作用3、在运行时判断

MySQL 中的 CAST 函数详解及常见用法

《MySQL中的CAST函数详解及常见用法》CAST函数是MySQL中用于数据类型转换的重要函数,它允许你将一个值从一种数据类型转换为另一种数据类型,本文给大家介绍MySQL中的CAST... 目录mysql 中的 CAST 函数详解一、基本语法二、支持的数据类型三、常见用法示例1. 字符串转数字2. 数字

SpringBoot中SM2公钥加密、私钥解密的实现示例详解

《SpringBoot中SM2公钥加密、私钥解密的实现示例详解》本文介绍了如何在SpringBoot项目中实现SM2公钥加密和私钥解密的功能,通过使用Hutool库和BouncyCastle依赖,简化... 目录一、前言1、加密信息(示例)2、加密结果(示例)二、实现代码1、yml文件配置2、创建SM2工具

SQL Server配置管理器无法打开的四种解决方法

《SQLServer配置管理器无法打开的四种解决方法》本文总结了SQLServer配置管理器无法打开的四种解决方法,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录方法一:桌面图标进入方法二:运行窗口进入检查版本号对照表php方法三:查找文件路径方法四:检查 S

MyBatis-Plus 中 nested() 与 and() 方法详解(最佳实践场景)

《MyBatis-Plus中nested()与and()方法详解(最佳实践场景)》在MyBatis-Plus的条件构造器中,nested()和and()都是用于构建复杂查询条件的关键方法,但... 目录MyBATis-Plus 中nested()与and()方法详解一、核心区别对比二、方法详解1.and()

Spring IoC 容器的使用详解(最新整理)

《SpringIoC容器的使用详解(最新整理)》文章介绍了Spring框架中的应用分层思想与IoC容器原理,通过分层解耦业务逻辑、数据访问等模块,IoC容器利用@Component注解管理Bean... 目录1. 应用分层2. IoC 的介绍3. IoC 容器的使用3.1. bean 的存储3.2. 方法注

MySQL 删除数据详解(最新整理)

《MySQL删除数据详解(最新整理)》:本文主要介绍MySQL删除数据的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录一、前言二、mysql 中的三种删除方式1.DELETE语句✅ 基本语法: 示例:2.TRUNCATE语句✅ 基本语

Python内置函数之classmethod函数使用详解

《Python内置函数之classmethod函数使用详解》:本文主要介绍Python内置函数之classmethod函数使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 类方法定义与基本语法2. 类方法 vs 实例方法 vs 静态方法3. 核心特性与用法(1编程客