五、oracle11g rac集群搭建-共享存储

本文详细描述了如何在CentOS7系统中配置目标共享存储,包括添加磁盘、安装和启动target服务、创建LUN和iscsi名称,以及在racnode1和racnode2上配置客户端,确保通过ISCSI进行无认证访问和自动连接。最后介绍了如何管理和维护连接的会话和磁盘映射。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目标共享存储

本主机名:racnode1 racnode2 storage

操作系统存储规划

操作系统(centos7) /

50G

/u01

40G

ocr

10g*3

data

20g*4

1.添加ocr三块10g磁盘

正常添加磁盘放到目标目录下,10g*3,20g*4

两个主机节点通过访问target在连接成功后,目标会被映射为一个设备如下图中的每个disk磁盘

2.配置server服务端(storage)

racnode1,racnode2 访问storage磁盘主机

2.1安装target包

挂载本地yum原
mount /dev/cdrom /mnt/cdrom/
yum -y install targetd targetcli

2.2启动,查看target服务


启动target服务
systemctl start target
查看target的状态
systemctl status target

2.3设置开机自动启动

systemctl enable target


 

3.添加共享磁盘

先把准备共享的块做出来,创建一个target,在 target 上创建 LUN 

3.1在storage查看磁盘情况

lsblk
或
fdisk -l | grep /dev/

3.2进入target

targetcli

目前是在根路径下,直接敲ls(和linux的ls一样)命令来查看所有路径及路径下的配置,敲pwd命令可以显示当前所在的路径(和linux的pwd一样)。

3.3修改磁盘转化成块的名字

pwd
查看当前位置
ls
查看当前位置的目录
cd /backstores/block
进入到cd /backstores/block目录中

------------------------------------------
disk1 是给/dev/sdb转化成块的名字
create name=disk1 dev=/dev/sdb
create name=disk1 dev=/dev/sdb 
create name=disk2 dev=/dev/sdc 
create name=disk3 dev=/dev/sdd 
create name=disk4 dev=/dev/sde 
create name=disk5 dev=/dev/sdf 
create name=disk6 dev=/dev/sdg 
create name=disk7 dev=/dev/sdh

3.4进入ISCSI路径下创建完成iscsi名称


cd /iscsi
create iqn.2024-01.com.djs:racdisk
创建完成iscsi名称后,下面会默认创建一个tpg1的路径,在tpg1路径下有三个路径为主要的:
1.acls(客户端访问名称,免认证配置)
2.luns(共享lun存储池,调用block共享块)
3.portals(共享存储地址和端口)

3.5绑定lun

cd /iscsi/iqn.2024-01.com.djs:racdisk/tpg1/luns

create lun=lun1 storage_object=/backstores/block/disk1
create lun=lun2 storage_object=/backstores/block/disk2
create lun=lun3 storage_object=/backstores/block/disk3
create lun=lun4 storage_object=/backstores/block/disk4
create lun=lun5 storage_object=/backstores/block/disk5
create lun=lun6 storage_object=/backstores/block/disk6
create lun=lun7 storage_object=/backstores/block/disk7

3.6创建acls免认证访问和创建允许客户端连接对象

允许racnode1和racnode2允许访问storage存储主机

cd /iscsi/iqn.2024-01.com.djs:racdisk/tpg1/acls
create wwn=iqn.2024-01.com.djs:racnode1
create wwn=iqn.2024-01.com.djs:racnode2

3.7共享存储搭建完毕

查看共享存储搭建情况
ls

3.8保存配置到配置文件

saveconfig

4.配置client客户端(racnode1,racnode2)

一下操作都需要在racnode1,racnode2操作

4.1安装iscsi-initiator-utils包

yum -y install iscsi-initiator-utils

4.2启动服务,设置开机启动服务

启动服务
systemctl start iscsid.service
systemctl start iscsi.service

开机自动启动
systemctl enable iscsid.service
systemctl enable iscsi.service

修改racnode1,racnode2的配置文件

vi /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.2024-01.com.djs:racnode1

 

vi /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.2024-01.com.djs:racnode2

 4.3重启客户端服务

systemctl restart iscsid.service
systemctl restart iscsi.service

4.4客户端连接网络存储,发现网络存储

iscsiadm -m discovery -t st -p 192.168.10.33
iscsiadm -m discovery -t sendtargets -p 192.168.10.33

4.5查看连接网络端口

在前面创建共享磁盘时,说过使用的是326端口

这里是在storage存储主机中查看

netstat -lntup | grep 3260

4.6连接网络存储

iscsiadm -m node -T iqn.2024-01.com.djs:racdisk -p 192.168.10.33:3260 -l

4.7查看登录的session 回话

iscsiadm -m session
iscsiadm -m session -P 3 //查看登录session的详细信息

1. Target:指定的 iSCSI 目标名称,即 "iqn.2024-01.com.djs:racdisk"。它是用于在存储区域网络(SAN)中标识和访问特定的目标设备或资源。
2. Current Portal:当前连接的目标端口。在这里,它是 "192.168.10.33:3260",其中 192.168.10.33 是目标设备的 IP地址,3260 是 iSCSI 使用的默认端口号。
3. Interface:指定 iSCSI 连接的接口相关信息。
- Iface Name:接口的名称,这里是 "default"。
- Iface Transport:指定连接使用的传输协议,这里是 "tcp"。
- Iface Initiatorname:主机的 iSCSI 初始化器名称,即 "iqn.2024-01.com.djs:racnode1"。
- Iface IPaddress:接口的 IP 地址,这里是 "192.168.10.30"。
4. Connection State:iSCSI 连接的状态。在这里,它是 "LOGGED IN",表示主机已经成功登录到目标设备。
5. Session State:iSCSI 会话的状态。在这里,它是 "LOGGED_IN",表示会话已经建立且处于已登录状态。
6. Negotiated iSCSI params:iSCSI 协商的参数。
- HeaderDigest 和 DataDigest:数据包的摘要算法,这里是 "None",表示未启用数据包摘要校验。
- MaxRecvDataSegmentLength 和 MaxXmitDataSegmentLength:数据发送和接收的最大段长度。
- FirstBurstLength 和 MaxBurstLength:数据传输的初始突发和最大突发长度。
- ImmediateData 和 InitialR2T:指示是否支持以及是否启用相关功能。
- MaxOutstandingR2T:允许同时挂起的 R2T 请求的最大数量。
7. Attached SCSI devices:已连接的 SCSI 设备的列表。
- Host Number、Channel、Id、Lun:SCSI 设备的地址信息。
- Attached scsi disk:连接的 SCSI 硬盘的设备名,例如 "sdb"、"sdc" 等。
- State:指示 SCSI 设备的当前状态,这里是 "running" 表示设备正常运行。

 4.8查看racnode1,racnode2共享磁盘

lsblk

如果服务端重新分配了lun,客户端不能及时发现,需要重新扫描target
 

iscsiadm -m node -R
iscsiadm -m session -R

查看磁盘映射信息

lsscsi

注销连接

iscsiadm -m node -T iqn.2024-01.com.djs:racdisk  -p 192.168.10.34 -u

另一条连接存储的路径
 

iscsiadm -m discovery -t st -p 192.168.10.34
iscsiadm -m discovery -t sendtargets -p 192.168.10.34
iscsiadm -m node -T iqn.2024-01.com.djs:racdisk -p 192.168.10.34:3260 -l

此时查看磁盘情况,因为我们在一开始创建storage存储主机是提供了两个网卡,

RAC是一个完整的集群应用环境,它不仅实现了集群的功能,而且提供了运行在集群之上的应用程序,即Oracle数据库。无论与普通的集群相比,还是与普通的oracle数据库相比,RAC都有一些独特之处。 RAC由至少两个节点组成,节点之间通过公共网络和私有网络连接,其中私有网络的功能是实现节点之间的通信,而公共网络的功能是提供用户的访问。在每个节点上分别运行一个Oracle数据库实例和一个监听器,分别监听一个IP地址上的用户请求,这个地址称为VIP(Virtual IP)。用户可以向任何一个VIP所在的数据库服务器发出请求,通过任何一个数据库实例访问数据库。Clusterware负责监视每个节点的状态,如果发现某个节点出现故障,便把这个节点上的数据库实例和它所对应的VIP以及其他资源切换到另外一个节点上,这样可以保证用户仍然可通过这个VIP访问数据库。 在普通的Oracle数据库中,一个数据库实例只能访问一个数据库,而一个数据库只能被一个数据库实例打开。在RAC环境中,多个数据库实例同时访问同一个数据库,每个数据库实例分别在不同的节点上运行,而数据库存放在共享的存储设备上。 通过RAC,不仅可以实现数据库的并发访问,而且可以实现用户访问的负载均衡。用户可以通过任何一个数据库实例访问数据库,实例之间通过内部通信来保证事务的一致性。例如,当用户在一个实例修改数据时,需要对数据加锁。当另一个用户在其他实例中修改同样的数据时,便需要等待锁的释放。当前一个用户提交事务时,后一个用户立即可以得到修改之后的数据。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值