Linux下使用RHCS搭建双机环境.docx
- 文档编号:28080279
- 上传时间:2023-07-08
- 格式:DOCX
- 页数:43
- 大小:942.96KB
Linux下使用RHCS搭建双机环境.docx
《Linux下使用RHCS搭建双机环境.docx》由会员分享,可在线阅读,更多相关《Linux下使用RHCS搭建双机环境.docx(43页珍藏版)》请在冰豆网上搜索。
Linux下使用RHCS搭建双机环境
Linux下使用RHCS搭建双机环境
案例所属系统:
无
案例平台环境:
RedHatEnterpriseLinux5.564位,RedHatClusterSuiteV5
应用部署:
无
环境搭建详细过程:
一、概述
RedHatEnterpriseLinux3.0和4.0中对应的的RHCSv3/v4支持的最大节点数为16,RedHatEnterpriseLinux5.0对应的RHCSv5支持的最大节点数为128。
RedHat高可用集群组成:
ClusterConfigurationSystem(CCS):
集群配置系统,以管理cluster.conf档案
ClusterManager(CMAN):
集群管理器
DistributedLockManager(DLM):
分布式锁管理器
Fence:
输入/输出系统围栏系统(栅设备)。
本例中使用IBM的BMC作为fence设备。
默认用户名USERID密码PASSW0RD(是零不是O)。
ResourceGroupManage(rgmanager):
资源组管理器,用来监督、启动和停止应用、服务和资源
QuorumDisk:
仲裁磁盘
system-configure-cluster:
图形化工具来管理集群中的多个机器
二、环境搭建与配置步骤
1、操作系统安装
※RedHat的详细安装步骤在这里就不重复了,但有几个需要注意的步骤:
①在进行文件系统的分区是除了/boot沿用传统的分区方式,其余的文件系统均采用LVM进行分配和管理。
如下图所示:
②RedHatEnterpriseLinuxV5把RHCH套件集成在系统安装镜像中,在选择安装系统组件的时候需要选中clustering选项,如下图所示:
准备工作:
1.配置bonding:
新建/etc/sysconfig/network-config/ifcfg-bond0,内容如下:
DEVICE=bond0
BOOTPROTO=static
IPADDR=192.168.3.11
NETMASK=255.255.255.0
BROADCAST=192.168.100.255
ONBOOT=yes
TYPE=Ethernet
编辑要绑定的真实网卡eth0
#vi/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ONBOOT=yes
编辑要绑定的真实网卡eth1
#vi/etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ONBOOT=yes
配置绑定模式:
编辑/etc/modules.conf文件,加入如下一行内容以使系统在启动时加载bonding模块,对外虚拟网络接口设备为bond0加入下列两行
#vi/etc/modules.conf
aliasbond0bonding
optionsbond0miimon=100mode=1primary=eth0
说明:
miimon是用来进行链路监测的。
比如:
miimon=100,那么系统每100ms监测一次路连接状态,如果有一条线路不通就转入另一条线路;mode的值表示工作模式,共有0、1、2、3四种模式,常用的为0,1两种:
mode=0表示loadbalancing(round-robin)为负载均衡方式,两块网卡都工作。
mode=1表示fault-tolerance(active-backup)提供冗余功能,工作方式是主备的工作方式,默认情况下只有一块网卡工作,另一块做备份,primary指定启动后active的网卡。
重新启动网络服务应用刚才的配置
#servicenetworkrestart
Bringingupinterfacebond0OK
Bringingupinterfaceeth0OK
Bringingupinterfaceeth1OK
Bringingupinterfaceeth2OK
#cat/proc/net/bonding/bond0
EthernetChannelBondingDriver:
v2.6.3-rh(June8,2005)
BondingMode:
fault-tolerance(active-backup)
PrimarySlave:
None
CurrentlyActiveSlave:
eth0
MIIStatus:
up
MIIPollingInterval(ms):
100
UpDelay(ms):
0
DownDelay(ms):
0
SlaveInterface:
eth0
MIIStatus:
up
LinkFailureCount:
0
PermanentHWaddr:
00:
0c:
29:
f8:
64:
e1
SlaveInterface:
eth1
MIIStatus:
up
LinkFailureCount:
0
PermanentHWaddr:
00:
0c:
29:
f8:
64:
eb
2.修改/etc/hosts文件,添加节点的主机名和IP地址。
在两台主机上该文件必须一致。
#vi/etc/hosts
127.0.0.1localhost.localdomainlocalhost
192.168.3.11elndb1
10.1.1.1elndb1
192.168.3.10elndb
192.168.3.12elndb2
10.1.1.2elndb2
3.给共享存储LVM分区,建立逻辑卷和仲裁磁盘
(1)检查当前服务器硬盘和共享存储的情况(主机elndb1上执行)
[root@elndb1/]#fdisk-l
Disk/dev/sda:
21.4GB,21474836480bytes
255heads,63sectors/track,2610cylinders
Units=cylindersof16065*512=8225280bytes
DeviceBootStartEndBlocksIdSystem
/dev/sda1*11310439183Linux
/dev/sda214261020860402+8eLinuxLVM
Disk/dev/sdb:
2147MB,2147483648bytes
255heads,63sectors/track,261cylinders
Units=cylindersof16065*512=8225280bytes
DeviceBootStartEndBlocksIdSystem
Disk/dev/sdc:
104MB,104857600bytes
64heads,32sectors/track,100cylinders
Units=cylindersof2048*512=1048576bytes
(2)发现共享存储/dev/sdb,将其分区
[root@elndb1/]#fdisk/dev/sdb
Command(mforhelp):
p
Disk/dev/sdb:
2147MB,2147483648bytes
255heads,63sectors/track,261cylinders
Units=cylindersof16065*512=8225280bytes
DeviceBootStartEndBlocksIdSystem
可以看到,当前没有分区,我们输入n,建立一个新的分区
Command(mforhelp):
n
Commandaction
eextended
pprimarypartition(1-4)
由于我们要把oracle的数据库建立在共享磁盘上,没有其他用途,所以,我们只建立一个主分区即可,输入p
Commandaction
eextended
pprimarypartition(1-4)
p
Partitionnumber(1-4):
1
Firstcylinder(1-261,default1):
Usingdefaultvalue1
Lastcylinderor+sizeor+sizeMor+sizeK(1-261,default261):
Usingdefaultvalue261
输入p查看一下:
Command(mforhelp):
p
Disk/dev/sdb:
2147MB,2147483648bytes
255heads,63sectors/track,261cylinders
Units=cylindersof16065*512=8225280bytes
DeviceBootStartEndBlocksIdSystem
/dev/sdb11261209645183Linux
注意:
因为要建立动态磁盘系统,以使GFS格式化磁盘阵列柜后可以动态调整分区大小,因此需要将刚建立的主分区类型更改为8e,即lvm类型的动态磁盘分区
输入t
Command(mforhelp):
t
Selectedpartition1
Hexcode(typeLtolistcodes):
输入8e
Hexcode(typeLtolistcodes):
8e
Changedsystemtypeofpartition1to8e(LinuxLVM)
输入p
Command(mforhelp):
p
Disk/dev/sdb:
2147MB,2147483648bytes
255heads,63sectors/track,261cylinders
Units=cylindersof16065*512=8225280bytes
DeviceBootStartEndBlocksIdSystem
/dev/sdb1126120964518eLinuxLVM
输入w,保存一下。
Command(mforhelp):
w
Thepartitiontablehasbeenaltered!
Callingioctl()tore-readpartitiontable.
Syncingdisks.
激活刚刚创建好的分区
[root@elndb1/]#partprobe
(3)在服务器2上检查自动识别的LVM分区(服务器1上的分区操作,服务器2应可以自动识别)
#chkconfigclvmdon
#serviceclvmdstatus
#serviceclvmdstart
(4)动态磁盘的建立
注意:
以下A、B、C、D步骤只在服务器1上操作,步骤E需要在服务器1与2上都做。
A:
建立物理卷
[root@elndb1~]#pvcreate/dev/sdb1
Physicalvolume"/dev/sdb1"successfullycreated
[root@elndb1~]#pvdisplay
---Physicalvolume---
PVName/dev/sda2
VGNamerootvg
PVSize19.89GB/notusable19.49MB
Allocatableyes(butfull)
PESize(KByte)32768
TotalPE636
FreePE0
AllocatedPE636
PVUUIDtpIqar-w86b-9x7j-JKkS-BOkz-mBKu-srRlLb
"/dev/sdb1"isanewphysicalvolumeof"2.00GB"
---NEWPhysicalvolume---
PVName/dev/sdb1
VGName
PVSize2.00GB
AllocatableNO
PESize(KByte)0
TotalPE0
FreePE0
AllocatedPE0
PVUUID3ZcmC2-FAb0-rqE2-Lpar-FQdE-swT2-MJaNij
B:
建立逻辑卷组,卷组名为vgelndb1
[root@elndb1~]#vgcreatevgelndb1/dev/sdb1
Volumegroup"vgelndb1"successfullycreated
[root@elndb1~]#vgdisplay
/dev/cdrom:
readfailedafter0of2048at0:
Input/outputerror
---Volumegroup---
VGNamevgelndb1
SystemID
Formatlvm2
MetadataAreas1
MetadataSequenceNo1
VGAccessread/write
VGStatusresizable
MAXLV0
CurLV0
OpenLV0
MaxPV0
CurPV1
ActPV1
VGSize2.00GB
PESize4.00MB
TotalPE511
AllocPE/Size0/0
FreePE/Size511/2.00GB
VGUUIDuddDSL-upUI-tUP9-ZEix-DSAm-xKim-qbU5xG
---Volumegroup---
VGNamerootvg
SystemID
Formatlvm2
MetadataAreas1
MetadataSequenceNo11
VGAccessread/write
VGStatusresizable
MAXLV0
CurLV10
OpenLV10
MaxPV0
CurPV1
ActPV1
VGSize19.88GB
PESize32.00MB
TotalPE636
AllocPE/Size636/19.88GB
FreePE/Size0/0
VGUUIDWwsD1o-nCv6-FNOg-nsu4-55fr-AjgY-LjYS7P
C:
建立逻辑卷
注意,逻辑卷大小要小于物理卷的大小(下面有说明),名字是,lvelnoradb1,逻辑卷组名是刚才建立的vgelndb1
[root@elndb1~]#lvcreate-L2000M-nlvelnoradb1vgelndb1
Logicalvolume"lvelnoradb1"created
[root@elndb1~]#lvdisplay
/dev/cdrom:
readfailedafter0of2048at0:
Input/outputerror
---Logicalvolume---
LVName/dev/vgelndb1/lvelnoradb1
VGNamevgelndb1
LVUUIDpiHcbd-cjb5-zgNt-Sm7E-exII-G6JF-QU5Nlk
LVWriteAccessread/write
LVStatusavailable
#open0
LVSize1.95GB
CurrentLE500
Segments1
Allocationinherit
Readaheadsectorsauto
-currentlysetto256
Blockdevice253:
10
说明:
①建立逻辑卷时,大小要小于上面建立物理卷的大小,我是这么理解的,至于小多少可以建立成功,要试验一下,如果建立不成功,就将容量减小一点.物理卷与逻辑卷大小的关系,因为时间问题,没完全弄清楚.
②在服务器1建立的物理卷、逻辑卷组以及逻辑卷,在服务器2上都应该自动识别.因为我们已经安装了cluster与GFS服务,所以,服务器1的分区操作,在服务器2检查时,建议先重新启动一下clvm服务.在服务器1与服务器2上,pvdisplay、vgdisplay、lvdisplay看到的应该一致,如果服务器2上无法看到与服务器1上相同的信息,或者报错,那么大多是因为clvmd服务没有启动,关于clvmd服务,实际上就是基于cluster(集群)的lvm服务,lvm是什么,大致意思是动态磁盘管理吧!
使用命令serviceclvmdstatus检查clvm状态,使用serviceclvmdrestart重新启动clvmd服务.
D:
用GFS协议格式化刚才建立的逻辑卷lvelnoradb1
[root@elndb1~]#mkfs.gfs-plock_dlm-tSCN:
lvelnoradb1-j2/dev/vgelndb1/lvelnoradb1
Thiswilldestroyanydataon/dev/vgelndb1/lvelnoradb1.
Areyousureyouwanttoproceed?
[y/n]
输入y
Device:
/dev/vgelndb1/lvelnoradb1
Blocksize:
4096
FilesystemSize:
446404
Journals:
2
ResourceGroups:
8
LockingProtocol:
lock_dlm
LockTable:
SCN:
lvelnoradb1
Syncing...
AllDone
说明:
-plock_dlm定义为DLM锁方式,如果不加此参数,当在两个系统中同时挂载此分区时就会像ext3格式一样,两个系统的信息不能同步;
-tSCN:
oracle:
DLM锁所在的表名字,SCN应与cluster.conf中Cluster的name相同;oracle,按Redhat售前工程师的说法,GFS格式化的要是静态磁盘,可以是任意名字,而要是lvm的动态磁盘,则必须是逻辑卷名;
-j2:
GFS分区中最多支持多少个节点同时挂载,本例就2个oracle数据库,所以值为2.
/dev/vgelndb1/lvelnoradb1:
准备要格式化的逻辑卷分区
E:
将逻辑卷分区/dev/oracle10g/oraclemount到某个目录
本项目的oracle库建在/oradata上,所以,建立相关目录(此步骤需要在服务器1与服务器2上都做)
[root@elndb1/]#mkdiroradata
[root@elndb1/]#mount-tgfs/dev/vgelndb1/lvelnoradb1/oradata
查看挂载的分区
[root@smsdb01/]#df–h
注意:
如果出现下面的错误,无法mount
mount:
permissiondenied
检查/etc/cluster/cluster.conf文件,尤其是clusterconfigure工具里的servicemanagement里的FaildomainDomain是不是选择了定义的FaildomainDomain的名字,如smsdbHP.
另外,可以用demsg命令以及tail–f/var/log/messages检查系统错误消息与监控日志,帮助查错.
4.使用mkqdisk命令创建仲裁磁盘
[root@elndb1proc]#mkqdisk-c/dev/sdc1-lelnqdisk
mkqdiskv0.6.0
Writingnewquorumdisklabel'elnqdisk'to/dev/sdc1.
WARNING:
Abouttodestroyalldataon/dev/sdc1;proceed[N/y]?
y
Initializingstatusblockfornode1...
Initializingstatusblockfornode2...
Initializingstatusblockfornode3...
Initializingstatusblockfornode4...
Initializingstatusblockfornode5...
Initializingstatusblockfornode6...
Initializingstatusblockfornode7...
Initializingstatusblockfornode8...
Initializingstatusblockfornode9...
Initializingstatusblockfornode10...
Initializingstatusblockfornode11...
Initializingstatusblockfornode12...
Initializingstatusblockfornode13...
Initializingstatusblockfornode14...
Initializingstatusblockfornode15...
Initializingstatusblockfornode16...
[root@elndb1proc]#mkqdisk-L
mkqdiskv0.6.0
/dev/disk/by-path/pci-0000:
02:
07.0-scsi-0:
0:
0:
0-part1:
/dev/sdc1:
Magic:
eb7a62c2
Label:
elnqdisk
Created:
SunJun1315:
07:
172010
Host:
elndb
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 使用 RHCS 搭建 双机 环境