rhel6.4搭建rac前共享存储配置(iscsi+multipath+udev)
server:
IP配置:
192.168.12.30
192.168.12.40
添加一个100G磁盘/dev/sdb
添加两个网络适配器,即两个网卡,并分配IP。
由于目的是配置oracle rac集群,所以在服务端就要把磁盘配好。
[root@server ~]# pvcreate /dev/sdb
Physical volume "/dev/sdb" successfully created
[root@server ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sdb lvm2 a-- 100.00g 100.00g
[root@server ~]# vgcreate iscsi_store /dev/sdb
Volume group "iscsi_store" successfully created
[root@server ~]# vgs
VG #PV #LV #SN Attr VSize VFree
iscsi_store 1 0 0 wz--n- 100.00g 100.00g
[root@server ~]# lvcreate -L 10G -n ocr_vd1 iscsi_store
Logical volume "ocr_vd1" created
[root@server ~]# lvcreate -L 10G -n ocr_vd2 iscsi_store
Logical volume "ocr_vd2" created
[root@server ~]# lvcreate -L 10G -n ocr_vd3 iscsi_store
Logical volume "ocr_vd3" created
[root@server ~]# lvcreate -L 50G -n data iscsi_store
Logical volume "data" created
[root@server ~]# lvcreate -l 5119 -n arch iscsi_store
Logical volume "arch" created
[root@server ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 100G 0 disk
├─sda1 8:1 0 500M 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
└─sda3 8:3 0 97.5G 0 part /
sdb 8:16 0 100G 0 disk
├─iscsi_store-ocr_vd1 (dm-0) 253:0 0 10G 0 lvm
├─iscsi_store-ocr_vd2 (dm-1) 253:1 0 10G 0 lvm
├─iscsi_store-ocr_vd3 (dm-2) 253:2 0 10G 0 lvm
├─iscsi_store-data (dm-3) 253:3 0 50G 0 lvm
└─iscsi_store-arch (dm-4) 253:4 0 20G 0 lvm
sr0 11:0 1 3.5G 0 rom /mnt/sr0
yum install scsi-target-utils -y
service tgtd start
chkconfig tgtd on
chkconfig --list | grep tgtd
vi /etc/tgt/targets.conf
<target iqn.2019-11.com.example.server:testtarget>
backing-store /dev/iscsi_store/ocr_vd1
backing-store /dev/iscsi_store/ocr_vd2
backing-store /dev/iscsi_store/ocr_vd3
backing-store /dev/iscsi_store/data
backing-store /dev/iscsi_store/arch
</target>
[root@server ~]# service tgtd restart
Stopping SCSI target daemon: [ OK ]
Starting SCSI target daemon: [ OK ]
[root@server ~]# tgt-admin --show
Target 1: iqn.2019-11.com.example.server:testtarget
System information:
Driver: iscsi
State: ready
I_T nexus information:
LUN information:
LUN: 0
Type: controller
SCSI ID: IET 00010000
SCSI SN: beaf10
Size: 0 MB, Block size: 1
Online: Yes
Removable media: No
Prevent removal: No
Readonly: No
Backing store type: null
Backing store path: None
Backing store flags:
LUN: 1
Type: disk
SCSI ID: IET 00010001
SCSI SN: beaf11
Size: 21471 MB, Block size: 512
Online: Yes
Removable media: No
Prevent removal: No
Readonly: No
Backing store type: rdwr
Backing store path: /dev/iscsi_store/arch
Backing store flags:
LUN: 2
Type: disk
SCSI ID: IET 00010002
SCSI SN: beaf12
Size: 53687 MB, Block size: 512
Online: Yes
Removable media: No
Prevent removal: No
Readonly: No
Backing store type: rdwr
Backing store path: /dev/iscsi_store/data
Backing store flags:
LUN: 3
Type: disk
SCSI ID: IET 00010003
SCSI SN: beaf13
Size: 10737 MB, Block size: 512
Online: Yes
Removable media: No
Prevent removal: No
Readonly: No
Backing store type: rdwr
Backing store path: /dev/iscsi_store/ocr_vd1
Backing store flags:
LUN: 4
Type: disk
SCSI ID: IET 00010004
SCSI SN: beaf14
Size: 10737 MB, Block size: 512
Online: Yes
Removable media: No
Prevent removal: No
Readonly: No
Backing store type: rdwr
Backing store path: /dev/iscsi_store/ocr_vd2
Backing store flags:
LUN: 5
Type: disk
SCSI ID: IET 00010005
SCSI SN: beaf15
Size: 10737 MB, Block size: 512
Online: Yes
Removable media: No
Prevent removal: No
Readonly: No
Backing store type: rdwr
Backing store path: /dev/iscsi_store/ocr_vd3
Backing store flags:
Account information:
ACL information:
192.168.12.91
192.168.12.92
客户端(192.168.12.20、192.168.12.21)
RACDB1:
[root@racdb1 ~]# yum install iscsi-initiator-utils -y
[root@racdb1 ~]# chkconfig --list|grep scsi
iscsi 0:off 1:off 2:off 3:on 4:on 5:on 6:off
iscsid 0:off 1:off 2:off 3:on 4:on 5:on 6:off
[root@racdb1 ~]# iscsiadm -m discovery -t sendtargets -p 192.168.12.30
192.168.12.30:3260,1 iqn.2019-11.com.example.server:testtarget
[root@racdb1 ~]# iscsiadm -m discovery -t sendtargets -p 192.168.12.40
192.168.12.40:3260,1 iqn.2019-11.com.example.server:testtarget
[root@racdb1 ~]# iscsiadm -m node -T iqn.2019-11.com.example.server:testtarget --login
Logging in to [iface: default, target: iqn.2019-11.com.example.server:testtarget, portal: 192.168.12.30,3260] (multiple)
Logging in to [iface: default, target: iqn.2019-11.com.example.server:testtarget, portal: 192.168.12.40,3260] (multiple)
Login to [iface: default, target: iqn.2019-11.com.example.server:testtarget, portal: 192.168.12.30,3260] successful.
Login to [iface: default, target: iqn.2019-11.com.example.server:testtarget, portal: 192.168.12.40,3260] successful.
[root@racdb1 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 100G 0 disk
├─sda1 8:1 0 500M 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
└─sda3 8:3 0 97.5G 0 part /
sr0 11:0 1 3.5G 0 rom /mnt/sr0
sdb 8:16 0 20G 0 disk
sdc 8:32 0 50G 0 disk
sdd 8:48 0 20G 0 disk
sdf 8:80 0 50G 0 disk
sdg 8:96 0 10G 0 disk
sde 8:64 0 10G 0 disk
sdh 8:112 0 10G 0 disk
sdi 8:128 0 10G 0 disk
sdj 8:144 0 10G 0 disk
sdk 8:160 0 10G 0 disk
[root@racdb1 ~]# iscsiadm -m node
192.168.12.30:3260,1 iqn.2019-11.com.example.server:testtarget
192.168.12.40:3260,1 iqn.2019-11.com.example.server:testtarget
[root@racdb1 ~]# ls -lrt /var/lib/iscsi/nodes/
total 4
drw------- 4 root root 4096 Nov 29 06:09 iqn.2019-11.com.example.server:testtarget
RACDB2:
[root@racdb2 ~]# yum install iscsi-initiator-utils -y
[root@racdb2 ~]# chkconfig --list | grep scsi
iscsi 0:off 1:off 2:off 3:on 4:on 5:on 6:off
iscsid 0:off 1:off 2:off 3:on 4:on 5:on 6:off
[root@racdb2 ~]# iscsiadm -m discovery -t sendtargets -p 192.168.12.30
192.168.12.30:3260,1 iqn.2019-11.com.example.server:testtarget
[root@racdb2 ~]# iscsiadm -m discovery -t sendtargets -p 192.168.12.40
192.168.12.40:3260,1 iqn.2019-11.com.example.server:testtarget
[root@racdb2 ~]# iscsiadm -m node -T iqn.2019-11.com.example.server:testtarget --login
Logging in to [iface: default, target: iqn.2019-11.com.example.server:testtarget, portal: 192.168.12.30,3260] (multiple)
Logging in to [iface: default, target: iqn.2019-11.com.example.server:testtarget, portal: 192.168.12.40,3260] (multiple)
Login to [iface: default, target: iqn.2019-11.com.example.server:testtarget, portal: 192.168.12.30,3260] successful.
Login to [iface: default, target: iqn.2019-11.com.example.server:testtarget, portal: 192.168.12.40,3260] successful.
[root@racdb2 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 100G 0 disk
├─sda1 8:1 0 500M 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
└─sda3 8:3 0 97.5G 0 part /
sr0 11:0 1 3.5G 0 rom /mnt/sr0
sdb 8:16 0 20G 0 disk
sdc 8:32 0 50G 0 disk
sdd 8:48 0 20G 0 disk
sde 8:64 0 10G 0 disk
sdg 8:96 0 10G 0 disk
sdi 8:128 0 10G 0 disk
sdh 8:112 0 10G 0 disk
sdf 8:80 0 50G 0 disk
sdj 8:144 0 10G 0 disk
sdk 8:160 0 10G 0 disk
[root@racdb2 ~]# iscsiadm -m node
192.168.12.30:3260,1 iqn.2019-11.com.example.server:testtarget
192.168.12.40:3260,1 iqn.2019-11.com.example.server:testtarget
[root@racdb2 ~]# ls -lrt /var/lib/iscsi/nodes/
total 4
drw------- 4 root root 4096 Nov 29 14:25 iqn.2019-11.com.example.server:testtarget
多路径配置,设置开机启动:
[root@racdb1 ~]# rpm -qa | grep device-mapper-multipath
device-mapper-multipath-libs-0.4.9-64.el6.x86_64
device-mapper-multipath-0.4.9-64.el6.x86_64
[root@racdb1 ~]# chkconfig multipathd on
[root@racdb1 ~]# chkconfig --list|grep multipathd
multipathd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@racdb2 ~]# rpm -qa | grep device-mapper-multipath
device-mapper-multipath-libs-0.4.9-64.el6.x86_64
device-mapper-multipath-0.4.9-64.el6.x86_64
[root@racdb2 ~]# chkconfig multipathd on
[root@racdb2 ~]# chkconfig --list|grep multipathd
multipathd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
生成多路径配置文件
[root@racdb1 ~]# /sbin/mpathconf --enable
[root@racdb2 ~]# /sbin/mpathconf --enable
启动服务
[root@racdb1 ~]# service multipathd status
multipathd is stopped
[root@racdb1 ~]# service multipathd start
Starting multipathd daemon: [ OK ]
[root@racdb2 ~]# service multipathd status
multipathd is stopped
[root@racdb2 ~]# service multipathd start
Starting multipathd daemon: [ OK ]
[root@racdb1 ~]# multipath -ll
mpathe (1IET 00010005) dm-4 IET,VIRTUAL-DISK
size=10G features='0' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=1 status=active
| `- 34:0:0:5 sdi 8:128 active ready running
`-+- policy='round-robin 0' prio=1 status=enabled
`- 33:0:0:5 sdk 8:160 active ready running
mpathd (1IET 00010004) dm-3 IET,VIRTUAL-DISK
size=10G features='0' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=1 status=active
| `- 34:0:0:4 sdg 8:96 active ready running
`-+- policy='round-robin 0' prio=1 status=enabled
`- 33:0:0:4 sdj 8:144 active ready running
mpathc (1IET 00010003) dm-2 IET,VIRTUAL-DISK
size=10G features='0' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=1 status=active
| `- 34:0:0:3 sde 8:64 active ready running
`-+- policy='round-robin 0' prio=1 status=enabled
`- 33:0:0:3 sdh 8:112 active ready running
mpathb (1IET 00010002) dm-1 IET,VIRTUAL-DISK
size=50G features='0' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=1 status=active
| `- 34:0:0:2 sdc 8:32 active ready running
`-+- policy='round-robin 0' prio=1 status=enabled
`- 33:0:0:2 sdf 8:80 active ready running
mpatha (1IET 00010001) dm-0 IET,VIRTUAL-DISK
size=20G features='0' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=1 status=active
| `- 34:0:0:1 sdb 8:16 active ready running
`-+- policy='round-robin 0' prio=1 status=enabled
`- 33:0:0:1 sdd 8:48 active ready running
[root@racdb2 ~]# multipath -ll
mpathe (1IET 00010005) dm-4 IET,VIRTUAL-DISK
size=10G features='0' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=1 status=active
| `- 33:0:0:5 sdk 8:160 active ready running
`-+- policy='round-robin 0' prio=1 status=enabled
`- 34:0:0:5 sdj 8:144 active ready running
mpathd (1IET 00010003) dm-3 IET,VIRTUAL-DISK
size=10G features='0' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=1 status=active
| `- 33:0:0:3 sdg 8:96 active ready running
`-+- policy='round-robin 0' prio=1 status=enabled
`- 34:0:0:3 sdf 8:80 active ready running
mpathc (1IET 00010004) dm-2 IET,VIRTUAL-DISK
size=10G features='0' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=1 status=active
| `- 34:0:0:4 sdh 8:112 active ready running
`-+- policy='round-robin 0' prio=1 status=enabled
`- 33:0:0:4 sdi 8:128 active ready running
mpathb (1IET 00010002) dm-1 IET,VIRTUAL-DISK
size=50G features='0' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=1 status=active
| `- 34:0:0:2 sdc 8:32 active ready running
`-+- policy='round-robin 0' prio=1 status=enabled
`- 33:0:0:2 sde 8:64 active ready running
mpatha (1IET 00010001) dm-0 IET,VIRTUAL-DISK
size=20G features='0' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=1 status=active
| `- 34:0:0:1 sdb 8:16 active ready running
`-+- policy='round-robin 0' prio=1 status=enabled
`- 33:0:0:1 sdd 8:48 active ready running
修改多路径配置文件
multipaths {
multipath {
wwid 1IET_00010001
alias arch
path_grouping_policy failover
}
multipath {
wwid 1IET_00010002
alias data
path_grouping_policy failover
}
multipath {
wwid 1IET_00010003
alias ocr_vd1
path_grouping_policy failover
}
multipath {
wwid 1IET_00010004
alias ocr_vd2
path_grouping_policy failover
}
multipath {
wwid 1IET_00010005
alias ocr_vd3
path_grouping_policy failover
}
}
udev绑定磁盘:
[root@racdb1 /]# vi /etc/udev/rules.d/99-oracle-asmdevices.rules
KERNEL=="dm-*",ENV{DM_UUID}=="mpath-1IET\x20\x20\x20\x20\x2000010005",OWNER="grid",GROUP="asmadmin",MODE="0660"
KERNEL=="dm-*",ENV{DM_UUID}=="mpath-1IET\x20\x20\x20\x20\x2000010001",OWNER="grid",GROUP="asmadmin",MODE="0660"
KERNEL=="dm-*",ENV{DM_UUID}=="mpath-1IET\x20\x20\x20\x20\x2000010003",OWNER="grid",GROUP="asmadmin",MODE="0660"
KERNEL=="dm-*",ENV{DM_UUID}=="mpath-1IET\x20\x20\x20\x20\x2000010004",OWNER="grid",GROUP="asmadmin",MODE="0660"
KERNEL=="dm-*",ENV{DM_UUID}=="mpath-1IET\x20\x20\x20\x20\x2000010002",OWNER="grid",GROUP="asmadmin",MODE="0660"
同样配置节点二udev配置文件。
[root@racdb1 ~]# ls -lrt /dev/dm-*
brw-rw---- 1 grid asmadmin 253, 3 Dec 2 17:55 /dev/dm-3
brw-rw---- 1 grid asmadmin 253, 0 Dec 2 17:55 /dev/dm-0
brw-rw---- 1 grid asmadmin 253, 4 Dec 2 17:55 /dev/dm-4
brw-rw---- 1 grid asmadmin 253, 1 Dec 2 17:55 /dev/dm-1
brw-rw---- 1 grid asmadmin 253, 2 Dec 2 17:55 /dev/dm-2
[root@racdb2 ~]# ls -lrt /dev/dm-*
brw-rw---- 1 grid asmadmin 253, 2 Dec 3 10:53 /dev/dm-2
brw-rw---- 1 grid asmadmin 253, 4 Dec 3 10:53 /dev/dm-4
brw-rw---- 1 grid asmadmin 253, 1 Dec 3 10:53 /dev/dm-1
brw-rw---- 1 grid asmadmin 253, 0 Dec 3 10:53 /dev/dm-0
brw-rw---- 1 grid asmadmin 253, 3 Dec 3 10:53 /dev/dm-3
[root@racdb1 ~]# ls -lrt /dev/mapper/*
lrwxrwxrwx 1 root root 7 Dec 1 23:51 /dev/mapper/mpathd -> ../dm-4
lrwxrwxrwx 1 root root 7 Dec 1 23:51 /dev/mapper/mpathc -> ../dm-1
lrwxrwxrwx 1 root root 7 Dec 1 23:51 /dev/mapper/mpathb -> ../dm-0
lrwxrwxrwx 1 root root 7 Dec 1 23:51 /dev/mapper/mpatha -> ../dm-3
lrwxrwxrwx 1 root root 7 Dec 1 23:51 /dev/mapper/mpathe -> ../dm-2
[root@racdb2 ~]# ls -lrt /dev/mapper/*
lrwxrwxrwx 1 root root 7 Dec 2 19:07 /dev/mapper/mpathe -> ../dm-2
lrwxrwxrwx 1 root root 7 Dec 2 19:07 /dev/mapper/mpathb -> ../dm-3
lrwxrwxrwx 1 root root 7 Dec 2 19:07 /dev/mapper/mpathd -> ../dm-1
lrwxrwxrwx 1 root root 7 Dec 2 19:07 /dev/mapper/mpatha -> ../dm-0
lrwxrwxrwx 1 root root 7 Dec 2 19:07 /dev/mapper/mpathc -> ../dm-4
上面多路径已经将磁盘设置别名,不知道为何/dev/mapper/名字没有改变,猜测是虚拟机磁盘UUID的问题。
- Oracle_lhr_CentOS 7.3 ECS上搭建RAC 18c+单实例DG+EMCC+DG的FSFO快速故障转移配置
Oracle_lhr_CentOS 7.3 ECS上搭建RAC 18c+单实例DG+EMCC+DG的FSFO快速故障转移配置 [大型连续免费公开课]Oracle 18c rac+dg+13.3的em ...
- Cluster基础(一):配置iSCSI服务、编写udev规则、配置并访问NFS共享、部署Multipath多路径环境
一.配置iSCSI服务 目标: 本案例要求先搭建好一台iSCSI服务器,并将整个磁盘共享给客户端: 虚拟机添加新的磁盘 将新添加的磁盘分区并创建两个逻辑卷 逻辑卷名称分别为:/dev/myvg/isc ...
- 全世界最详细的一步一步搭建RAC步骤(一)---安装操作系统RHEL4.6【weber出品】
全文搭建RAC分为3步骤 <--安装操作系统RHEL4.6> <--配置ASM+裸设备> <--安装集群软件> <--安装数据库软件> ...
- OCM_第十八天课程:Section8 —》RAC 数据库 _ RAC DB 搭建/RAC DB 配置使用
注:本文为原著(其内容来自 腾科教育培训课堂).阅读本文注意事项如下: 1:所有文章的转载请标注本文出处. 2:本文非本人不得用于商业用途.违者将承当相应法律责任. 3:该系列文章目录列表: 一:&l ...
- Oracle RAC集群搭建(一)-ASM共享存储卷
01, ASM共享存储卷 安装集群的话,必须要有共享磁盘,目的是为作裁决磁盘使用.还需要有数据文件的共享磁盘 02,规划 主机 裁决磁盘 数据 rac1 1G*1 20 ...
- 搭建rac对单实例的MAA
一:实验环境 系统:redhat 4 三台计算机rac1,rac2,dg. --其中rac为主库,单实例为备库 已在虚拟机里搭建好集群环境(rac1,rac2); dg计算机里还没有建任何数据库(只安 ...
- RHCS集群架构之mysql及共享存储iscsi
server1 172.25.7.1(配置Nginx.ricci和luci) server2 172.25.7.2(Apache.iscsi) server3 172.25.7.3(Apache) s ...
- springboot+mybatis+thymeleaf项目搭建及前后端交互
前言 spring boot简化了spring的开发, 开发人员在开发过程中省去了大量的配置, 方便开发人员后期维护. 使用spring boot可以快速的开发出restful风格微服务架构. 本文将 ...
- 从零开始搭建django前后端分离项目 系列一(技术选型)
前言 最近公司要求基于公司的hadoop平台做一个关于电信移动网络的数据分析平台,整个项目需求大体分为四大功能模块:数据挖掘分析.报表数据查询.GIS地理化展示.任务监控管理.由于页面功能较复杂,所以 ...
随机推荐
- [LeetCode题解]876. 链表的中间结点 | 快慢指针
解题思路 使用快慢指针.这里要注意的是,while 的条件会影响当中间节点有两个时,slow 指向的是第一个,还是第二个节点. // 返回的是第一个 while(fast.next != null & ...
- Java编发编程 - 线程池的认识(二)
核心线程池的内部实现 依然参考 JDK 对线程池的支持,各个接口.相关类之间的关系: (1)对于Executors中几个创建线程池方法底层实现: // 创建固定线程数量的线程池 public sta ...
- 用Camtasia设计微课视频封面,让课程更加高大上
在网络时代,尤其现在疫情影响只能线上学习,微课的应用前景已经越来越广了.但是想把微课做好,只有内容与录制精细是不够的,还需要一个精美的封面来吸引学生.接下来,小编就用微课制作软件Camtasia 20 ...
- 自定义 JSTLFunction
复习常用JSTL Function为什么需要自定义Function如何自定义Function,例子:1.在独立的项目中(也可以在web项目中)的类中(比如Functions)编写一个static方法: ...
- C语言讲义——数组
数组是: 一组数据 一组类型相同的数据 在计算机底层,数组是一块连续的内存 为什么使用数组? 一年12个月 int m1=1, m2=2, m3=3, ... 麻烦 数组示例: #include &l ...
- web自动化-绕过登录
两个方法: 1.常用的方法: 第一种方法是登录后查看网站的 cookie,请求 url 的时候把 cookie 带上(缺点是:cookie有时间限制.优点:简单,方便) 2.添加cookies的方式: ...
- LeetCode 041 First Missing Positive
题目要求:First Missing Positive Given an unsorted integer array, find the first missing positive integer ...
- 了不起的 Deno:带你极速获取各大平台今日热榜
摘要:Deno 是一个 JavaScript/TypeScript 的运行时,默认使用安全环境执行代码,有着卓越的开发体验. 有人的地方就有江湖,有江湖的地方就有争论.前些天,继<[译]为什么如 ...
- django 不使用序列化器时进行查询结果序列化
在app01views中添加 class User1(View): def post(self,request): user=User.objects.all() list=[] for i in u ...
- Python正则运算符优先级re.findall('(.)*',"abc")、re.findall('(.*)',"abc")、re.findall('(.?)*',"abc")的执行结果的影响分析
我们分别执行三个语句: >>> re.findall('(.)*',"abc") ['c', ''] >>> re.findall('(.*)' ...