首页 > 系统相关 >CentOS7的udev的绑定规则

CentOS7的udev的绑定规则

时间:2024-12-26 16:32:39浏览次数:3  
标签:10 Sep 绑定 dev CentOS7 grid udev root asm

CentOS7的udev的绑定规则

说明

因为udev绑定使用磁盘设备名称的时候,如果设备名称改变了,那么绑定可能会出现问题,考虑到这种场景,我们使用scsi_id绑定udev
scsi_id无论你的磁盘设备名称如何改变,它都不会改变,可以唯一确定一个磁盘

centos6及以前的版本语法

实际上直接使用这些盘也是可以的,但是考虑到规范,参考之前客户udev绑定规则规范:

--not available
KERNEL=="sd*",BUS=="scsi",PROGRAM=="/sbin/scsi_id  i --whitelisted  --device=/dev/$name",RESULT=="36000c29b263ed2452f80e9848bdf2fa5",NAME="asm-2g-2fa5-grid1",OWNER="grid",GROUP="asmadmin",MODE="0660"

centos7及以后的版本语法

可以看到别名的命名方式是:asm-lunsize-id后四位-磁盘组名+编号。这样以后遇到加盘/删盘这类操作,就能快速帮助DBA确认。
不过因为上面这个udev语法是RHEL 6的,在CentOS 7并不适用,换成7对应的语法就是:

--ok!
KERNEL=="sd*",SUBSYSTEM=="block",PROGRAM=="/lib/udev/scsi_id -g -u -d /dev/$name",RESULT=="36acb3b510041191b0de7bcdd0000000f",SYMLINK+="asm-400g-000f-data1",OWNER="grid",GROUP="asmadmin",MODE="0660"

RHEL 7 查看scsi_id

lsscsi --scsi_id
[root@localhost etc]# lsscsi --scsi_id
[0:2:0:0]    disk    AVAGO    MR-SAS3316       4.74  /dev/sda   36f80f41fe9c3f0002305604d0f7eea16
[0:2:1:0]    disk    AVAGO    MR-SAS3316       4.74  /dev/sdb   36f80f41fe9c3f000230560520fce45e6
[root@localhost etc]# lsscsi --scsi_id -g
[0:2:0:0]    disk    AVAGO    MR-SAS3316       4.74  /dev/sda   36f80f41fe9c3f0002305604d0f7eea16  /dev/sg0 
[0:2:1:0]    disk    AVAGO    MR-SAS3316       4.74  /dev/sdb   36f80f41fe9c3f000230560520fce45e6  /dev/sg1 

快速生产脚本

考虑到盘相对多,一个个写既费时又容易出错,想起早些年间装RAC时,经常会参考maclean的一个方法,就是把这个工作写一个脚本:

centos 6

for i in b c d e
do
echo "KERNEL==\"sd*\", BUS==\"scsi\", PROGRAM==\"/sbin/scsi_id --whitelisted --replace-whitespace --
device=/dev/\$name\", RESULT==\"`/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/sd$i`\",
NAME=\"asm-disk$i\", OWNER=\"grid\", GROUP=\"asmadmin\", MODE=\"0660\""
done

centos7

运行脚本

其中b,c,d,e...是磁盘设备名称

for i in b c d;
do
echo "KERNEL==\"sd*\",SUBSYSTEM==\"block\",PROGRAM==\"/lib/udev/scsi_id -g -u -d /dev/\$name\",RESULT==\"`/lib/udev/scsi_id -g -u -d /dev/sd$i`\",SYMLINK+=\"asm-5g-xxxx-grid1\",OWNER=\"grid\",GROUP=\"asmadmin\",MODE=\"0660\""
done

执行脚本:sh /u01/asmdisk.sh ,结果为:
SYMLINK 就是裸设备的名称

--script-result
KERNEL=="sd*",SUBSYSTEM=="block",PROGRAM=="/lib/udev/scsi_id -g -u -d /dev/$name",RESULT=="36acb3b510041191b0de7bcdd0000000f",SYMLINK+="asm-5g-xxxx-grid1",OWNER="grid",GROUP="asmadmin",MODE="0660"
KERNEL=="sd*",SUBSYSTEM=="block",PROGRAM=="/lib/udev/scsi_id -g -u -d /dev/$name",RESULT=="36acb3b510041191b0de7be3900000010",SYMLINK+="asm-5g-xxxx-grid1",OWNER="grid",GROUP="asmadmin",MODE="0660"
KERNEL=="sd*",SUBSYSTEM=="block",PROGRAM=="/lib/udev/scsi_id -g -u -d /dev/$name",RESULT=="36acb3b510041191b0de7bec100000011",SYMLINK+="asm-5g-xxxx-grid1",OWNER="grid",GROUP="asmadmin",MODE="0660"

配置udev文件

vi /etc/udev/rules.d/99-oracle-asmdevices.rules

--modify
[root@xxdb01 ~]# cat /etc/udev/rules.d/99-oracle-asmdevices.rules 
KERNEL=="sd*",SUBSYSTEM=="block",PROGRAM=="/lib/udev/scsi_id -g -u -d /dev/$name",RESULT=="36acb3b510041191b0de7bcdd0000000f",SYMLINK+="asm-400g-000f-data1",OWNER="grid",GROUP="asmadmin",MODE="0660"
KERNEL=="sd*",SUBSYSTEM=="block",PROGRAM=="/lib/udev/scsi_id -g -u -d /dev/$name",RESULT=="36acb3b510041191b0de7be3900000010",SYMLINK+="asm-400g-0010-data2",OWNER="grid",GROUP="asmadmin",MODE="0660"
KERNEL=="sd*",SUBSYSTEM=="block",PROGRAM=="/lib/udev/scsi_id -g -u -d /dev/$name",RESULT=="36acb3b510041191b0de7bec100000011",SYMLINK+="asm-400g-0011-data3",OWNER="grid",GROUP="asmadmin",MODE="0660"

这里看到这个/lib/udev/scsi_id -g -u -d /dev/sd*查到的结果和存储多路径查到的Lun WWN,除了scsi_id查询的结果首位多一个3,后面是完全一样的。
此时可以使用udevadm进行应用规则:

重新配置udev配置

udevadm control --reload
udevadm trigger
/sbin/udevadm trigger --type=devices --action=change
/sbin/udevadm control --reload
systemctl restart systemd-udev-trigger.service

检查绑定结果

然后查看结果:

[root@xxdb01 ~]# ls -l /dev/asm*
lrwxrwxrwx. 1 root root 3 Sep  8 10:19 /dev/asm-100g-0039-arch1 -> sdm
lrwxrwxrwx. 1 root root 3 Sep  8 10:19 /dev/asm-400g-000f-data1 -> sdb
lrwxrwxrwx. 1 root root 3 Sep  8 10:19 /dev/asm-400g-0010-data2 -> sdc
lrwxrwxrwx. 1 root root 3 Sep  8 10:19 /dev/asm-400g-0011-data3 -> sdd
lrwxrwxrwx. 1 root root 3 Sep  8 10:19 /dev/asm-400g-0012-data4 -> sde
lrwxrwxrwx. 1 root root 3 Sep  8 10:19 /dev/asm-400g-0013-data5 -> sdf
lrwxrwxrwx. 1 root root 3 Sep  8 10:19 /dev/asm-400g-0014-data6 -> sdg
lrwxrwxrwx. 1 root root 3 Sep  8 10:19 /dev/asm-400g-0015-data7 -> sdh
lrwxrwxrwx. 1 root root 3 Sep  8 10:19 /dev/asm-400g-0016-data8 -> sdi
lrwxrwxrwx. 1 root root 3 Sep  8 10:19 /dev/asm-5g-00da-grid1 -> sdj
lrwxrwxrwx. 1 root root 3 Sep  8 10:19 /dev/asm-5g-00db-grid2 -> sdk
lrwxrwxrwx. 1 root root 3 Sep  8 10:19 /dev/asm-5g-00dc-grid3 -> sdl
[root@xxdb01 ~]# ls -l /dev/sd*
brw-rw----. 1 root disk     8,   0 Sep  8 10:10 /dev/sda
brw-rw----. 1 root disk     8,   1 Sep  8 10:10 /dev/sda1
brw-rw----. 1 root disk     8,   2 Sep  8 10:10 /dev/sda2
brw-rw----. 1 grid asmadmin 8,  16 Sep  8 16:02 /dev/sdb
brw-rw----. 1 grid asmadmin 8,  32 Sep  8 10:19 /dev/sdc
brw-rw----. 1 grid asmadmin 8,  48 Sep  8 10:19 /dev/sdd
brw-rw----. 1 grid asmadmin 8,  64 Sep  8 10:19 /dev/sde
brw-rw----. 1 grid asmadmin 8,  80 Sep  8 10:19 /dev/sdf
brw-rw----. 1 grid asmadmin 8,  96 Sep  8 10:19 /dev/sdg
brw-rw----. 1 grid asmadmin 8, 112 Sep  8 10:19 /dev/sdh
brw-rw----. 1 grid asmadmin 8, 128 Sep  8 10:19 /dev/sdi
brw-rw----. 1 grid asmadmin 8, 144 Sep  8 16:02 /dev/sdj
brw-rw----. 1 grid asmadmin 8, 160 Sep  8 16:02 /dev/sdk
brw-rw----. 1 grid asmadmin 8, 176 Sep  8 16:02 /dev/sdl
brw-rw----. 1 grid asmadmin 8, 192 Sep  8 16:02 /dev/sdm

最终使用asmca创建磁盘组,最终结果为

[grid@xxdb01 ~]$ asmcmd lsdg
State    Type    Rebal  Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Voting_files  Name
MOUNTED  EXTERN  N         512   4096  4194304    102400   102276                0          102276              0             N  ARCH/
MOUNTED  EXTERN  N         512   4096  4194304   3276800  3276620                0         3276620              0             N  DATA/
MOUNTED  NORMAL  N         512   4096  4194304     15360    14320             5120            4600              0             Y  GRID/
[grid@xxdb01 ~]$

标签:10,Sep,绑定,dev,CentOS7,grid,udev,root,asm
From: https://www.cnblogs.com/xulinforDB/p/18633378

相关文章

  • Centos7创建LVM磁盘管理
    Centos7创建LVM磁盘管理2019-06-02阅读3840环境介绍在centos7下需要挂载两个新的磁盘。为了方便后续的扩容方便,决定将这其设置为LVM管理的方式。查看一下当前有哪些新增的数据盘,如下:[root@runsdata-test-0004~]#df-hFilesystemSizeUsedAvailUse%Mountedon/......
  • centos7 安装minio
    下载地址如下:下载地址通过以下命令可直接将安装包下载至服务器wgethttps://dl.min.io/server/minio/release/linux-amd64/archive/minio-20230809233022.0.0.x86_64.rpm1安装MinIOrpm-ivhminio-20230809233022.0.0.x86_64.rpm1集成Systemd编写MinIO服务配置文件vim/e......
  • centos7.9 安装mongodb4.4.8
    安装依赖,命令如下sudoyuminstalllibcurlopensslxz-libs下载压缩包,地址如下https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.4.8.tgz解压压缩包,解压存放路径,根据自己定义来,我这里放到/home目录下tar-zxvfmongodb-linux-x86_64-rhel70-4.4.8.tgz复制......
  • 查看当前各个CPU分别绑定了哪些进程 168d356f35e5803fa67df39f5f50a54d
    查看当前各个CPU分别绑定了哪些进程#!/bin/bash#获取系统的CPU核心数cpu_count=$(nproc)#获取所有进程的PIDpids=$(ps-eopid)#初始化每个CPU核心的进程列表declare-Acpu_processes#初始化动态进程列表dynamic_processes=()#遍历每个进程,查看其CPU......
  • centos7.9 安装redis 7.4.1
    redis下载地址:http://download.redis.io/releases/选择自己想要的版本,本次安装的是7.4.1安装redis下载包到服务器wgethttp://download.redis.io/releases/redis-7.4.1.tar.gz下载包到/usr/local/redis解压tar-zxvfredis-7.4.1.tar.gz把解压的文件夹拷贝到默认路......
  • centos7安装openldap出现的问题
    出现错误systemctlstatusslapd.service●slapd.service-OpenLDAPServerDaemonLoaded:loaded(/usr/lib/systemd/system/slapd.service;enabled;vendorpreset:disabled)Active:failed(Result:exit-code)since二2024-12-2409:24:07CST;6sagoDocs:man:......
  • centos7从源码安装python
    1.更换yum源备份(官方停止维护,无所谓了),更改配置文件,清除缓存,建立缓存mv/etc/yum.repos.d/CentOS-Base.repo/etc/yum.repos.d/CentOS-Base.repo.backupCentOS-Base.repo#CentOS-Base.repo##ThemirrorsystemusestheconnectingIPaddressoftheclientandthe#u......
  • docker环境利用centos7镜像 + miniconda + python3.9 + wkhtmltopdf 构建html转图片服
    1、目录结构html2image——Dockerfile——main.py——requirements.txt2、DockerfileFROMcentos:7WORKDIR/appCOPY./app/RUNcurl-Ohttps://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox-0.12.6-1.centos7.x86_64.rpm\&&curl......
  • CentOS7下的vsftpd服务器和客户端
    目录1、安装vsftpd服务器和ftp客户端;2、配置vsftpd服务器,允许普通用户登录、下载、上传文件;3、配置vsftpd服务器,允许anonymous用户登录、下载、上传文件;4、配置vsftpd服务器,允许root用户登录、下载、上传文件;5、只允许IP地址为192.168.98.1(Windows主机)和192.168.98.33(Linu......
  • centos7.6 nginx配置ssl证书
    1、Linux(Centos7.6)Nginx安装部署并配置SSL证书(简单方便版)https://blog.csdn.net/m0_63684495/article/details/1287483102、解决nginx:[emerg]the“ssl“parameterrequiresngx_http_ssl_modulein/usr/local/nginx的问题https://blog.csdn.net/guo_qiangqiang/article/d......