1.通过Openfiler实现iscsi共享存储
2.采用OEL6.3KVM虚拟平台下安装两个OEL5.8x64KVM虚拟机实现两RHCS5集群节点
3.通过KVM虚拟fence实现fence功能,虽然不能完全实现功能,可以了解与学习RHCS过程。注:采用VMwareESXi虚拟机安装话,可以采用vmware-fence-soap。
4.本文建搭建RHCS实验环境测试RHCSGFS2集群文件系统功能与OracleHA功能,经过配置,GFS2文件系统可以很好的工作。
本文出自:http://koumm.blog.51cto.com
参考:VMwareESXi虚拟化采用VMwarefence实现的的RHCSOracleHA,本文是该文的再配置过程,重点理解GFS2配置,加深学习映像,经过近段时间的再次学习,主要问题还要在fence设备上。采用kvmRHEL6.X虚拟机可能会很好的实现fence功能,由于本文采用OEL5.8虚拟机,该方式配置还是一个遗憾,本文只是仅做安装过程记录。

一、准备基础环境

1.网络环境准备

RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA

KVM虚拟机安装配置可以参考:http://koumm.blog.51cto.com/703525/1288795

node01节点
eth0:192.168.233.141

node02节点
eth0:192.168.233.142

openfiler节点
eth0:192.168.233.143

2.配置YUM安装源

在node01,node02上配置如下yum源。

(1)挂载光盘ISO

# mount /dev/cdrom /mnt

(2)配置YUM客户端
说明:通过本地光盘做为yum安装源。

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_02

(3)openfileriscsi存储配置
具体配置略,共划分两块lun,一块10G配置GFS,一块128mb配置表决盘。

二、RHCS软件包的安装

1.配置host文件

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_03

2.在node1上安装luci及RHCS软件包

安装luci、ricci、rgmanager、gfs、cman

(1)node1安装RHCS软件包。

# yum install luci ricci cman cman-devel gfs2-utils lvm2-cluster rgmanager system-config-cluster -y

(2)配置RHCS服务开机启动

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_04

RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA_05

应为集群配置文件还没有产生配置文件/etc/cluster/cluster.conf。

(3)挂载存储

#在node01上配置

# rpm-ivh iscsi-initiator-utils-6.2.0.872-13.el5.x86_64.rpm
# chkconfig iscsi --level 35 on
# chkconfig iscsid --level 35 on
# service iscsi start

#连接挂载存储

#iscsiadm -m discovery -t st -p 192.168.233.143
192.168.233.143:3260,1iqn.2006-01.com.openfiler:tsn.713bbba5efdb
#iscsiadm -m node -T iqn.2006-01.com.openfiler:tsn.713bbba5efdb -p 192.168.233.143 -l

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_06

3.在node2上安装RHCS软件包

安装ricci、rgmanager、gfs、cman

(1)node02安装RHCS软件包。

#yum install ricci cman cman-devel gfs2-utils lvm2-cluster rgmanager system-config-cluster -y

(2)配置RHCS服务开机启动

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_07

RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA_05

应为集群配置文件还没有产生配置文件/etc/cluster/cluster.conf。

(3)挂载存储

#在node02上配置

rpm -ivh iscsi-initiator-utils-6.2.0.872-13.el5.x86_64.rpm
chkconfig iscsi --level 35 on
chkconfig iscsid --level 35 on
service iscsi start


#连接挂载存储

# iscsiadm -m discovery -t st -p 192.168.233.143
192.168.233.143:3260,1iqn.2006-01.com.openfiler:tsn.713bbba5efdb
# iscsiadm -m node -T iqn.2006-01.com.openfiler:tsn.713bbba5efdb -p 192.168.233.143 -l

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_09

三、RHCS集群配置

1.在node01管理节点上安装启动luci服务

说明:在node01节点上进行操作。

(1)luci初始化
#luci_admininit
RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA_10


(2)配置管理地址
https://192.168.233.141:8084
admin/111111

2.登录luci管理界面开始配置集群

(1)输入登录名与密码登录

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_11

(2)登录进管理界面,点击cluster->CreateaNewCluster->填入如下内容:

RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA_12

然后提交,集群会经过install,reboot,config,join两步过程才能成功。
说明:
1)这步会生成集群配置文件/etc/cluster/cluster.conf
2)也可以直接创建该配置文件。

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_13

(3)集群配置完毕

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_14

点击cluster,可以看到集群与节点都正确加入。

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_15

3.两节点分别启动集群服务

(1)ssh到node01上,启动cman服务。

RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA_16

(2)ssh到node02上,启动cman服务。
RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA_17

4.添加故障转移域

(1)配置与准备kvmfence配置,本方式主要是OEL5.X针对KVM虚拟机做RHCS虚拟机的情况。

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_18

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_19

RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA_20

5.添加与配置fence设备

(1)配置与准备kvmfence配置,本方式主要是OEL5.X针对KVM虚拟机做RHCS虚拟机的情况。

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_21

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_22

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_23

(2)配置与准备kvmfence配置,本方式主要是OEL5.X针对KVM虚拟机做RHCS虚拟机的情况。

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_24

(3)分别为node01,node02结点添加fence设备。

node01节点

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_25

node02节点

RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA_26

三、RHCS集群GFS2集群文件系统配置

1.配置GFS服务

(1)node1启动CLVM的集成cluster锁服务

# lvmconf --enable-cluster
# chkconfig clvmd on
# service clvmd start

RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA_27

(2)node2启动CLVM的集成cluster锁服务

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_28

2.配置GFS2集群文件系统

(1)在任意一节点对磁盘进行分区,划分出sda1。然后格式化成gfs2.

# fdisk /dev/sda

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_29

(2)node01节点上通过共享磁盘创建gfs2集群卷组

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_30

Error locking on node node02: Volume group for uuid not found: QkM2JYKg5EfFuFL6LzJsg7oAfK4zVrkytMVzdziWDmVhBGggTsbr47W1HDEu8FdB
Failed to activate new LV.

出现以上提示,需要在node2上创建物理卷,有可能需要重启node02。

node02节点上:

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_31

回到node1节点上:
RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_32


(3)格式化GFS文件系统
node01节点上:

[root@node01 ~]# mkfs.gfs2 -p lock_dlm -t RHCS_HA:gfs2 -j 3 /dev/rhcsgfs/var01

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_33

说明:
RHCS_HA:gfs2这个rhcs就是集群的名字,gfs2是定义的名字,相当于标签吧。
-j是指定挂载这个文件系统的主机个数,不指定默认为1即为管理节点的。
这里实验有两个节点,加上管理主机为3

3.挂载GFS文件系统

(1)node1,node2手动挂载测试,挂载成功后,创建文件测试集群文件系统情况。

# chkconfig gfs2 on
# service gfs2 start
# mount.gfs2  /dev/rhcsgfs/var01  /oradata

node01节点:

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_34

node02节点:

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_35

(2)配置开机自动挂载
#node01节点:
RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_36

#node02节点:
RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA_37

(3)测试集群文件系统读写情况
在node01节点上/oradata目录下创建一个文件,再在第二个节点上查看确认。

4.配置表决磁盘

#表决磁盘是共享磁盘,10M大小就可以了,无需要太大,本例采用/dev/sdb1来进行创建。

[root@node1 ~]# fdisk /dev/sdb

(1)创建表决磁盘

[root@node1~]# mkqdisk -c /dev/sdb1 -l qdisk

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_38

(2)查看表决磁盘信息

[root@node01~]# mkqdisk -L

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_39

(3)配置表决磁盘qdisk

#进入管理界面cluster->clusterlist->点击ClusterName:RHCS_HA;
#选择"QuorumPartition",选择"useaQuorumPartition"

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_40

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_41

(4)启动qdisk服务

node01节点:

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_42
RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_43

node02节点:

chkconfig qdiskd on
service qdiskd start

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_44

四、RHCS环境Oracle10g安装配置

1.node01节点上

(1)准备oracle安装环境
(2)安装oracle数据库软件及补丁
(3)netca
(4)dbca创建数据库,数据库文件,控制文件,redolog文件,闪回区,规档等都创建在/oradata集群文件系统上。

2.node02节点上

(1)准备oracle安装环境
(2)安装oracle数据库软件及补丁
(3)netca

3.从node01拷贝相关参数文件到node02上

(1)node1打包参数文件

$ cd /u01/app/oracle/product/10.2.0/db_1
$ tar czvf dbs.tar.gzdbs
dbs/
dbs/init.ora
dbs/lkORCL
dbs/hc_orcl.dat
dbs/initdw.ora
dbs/spfileorcl.ora
dbs/orapworcl
$scp dbs.tar.gz node02:/u01/app/oracle/product/10.2.0/db_1/

(2)node2上

# su - oracle
$ mkdir -p /u01/app/oracle/admin/orcl/{adump,bdump,cdump,dpdump,udump}
$ cd /u01/app/oracle/product/10.2.0/db_1/
$ tar zxvf dbs.tar.gz

4.添加Oracle启动与关闭脚本资源

#启动oracle数据库的脚本,放在/etc/init.d/下面,名称为oracle,不用配置成服务形成,该脚本会由RHCS服务来管理。
#分别在node01,node02上创建如下脚本。

# vi /etc/init.d/oracle
#!/bin/bash
export ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1
export ORACLE_SID=orcl
start() {
su - oracle<<EOF
echo "Starting Listener ..."
$ORACLE_HOME/bin/lsnrctl start
echo  "Starting Oracle10g Server.. "
sqlplus / as sysdba
startup
exit;
EOF
}
stop() {
su - oracle<<EOF
echo "Shutting down Listener..."
$ORACLE_HOME/bin/lsnrctl stop
echo "Shutting down Oracle10g Server..."
sqlplus / as sysdba
shutdown immediate;
exit
EOF
}
case "$1" in
start)
start
;;
stop)
stop
;;
*)
echo "Usage: $0 {start|stop}"
;;
esac
chmod +x /etc/init.d/oracle

五、RHCS环境Oracle10g安装配置

1.配置集群IP资源

点击cluster->RHCS_HA->Resources->AddaResources
选择IP,输入:192.168.233.150
选中monitorlink
点击submit

RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA_45

2.配置集群Oracle启动脚本资源

点击cluster->RHCS_HA->Resources->AddaResources
选择name,输入:dbora
选择fullpathtoscriptfile,输入:/etc/init.d/oracle
点击submit

RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA_46

RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA_47

3.添加数据库服务

(1)创建服务过程

点击cluster->rhcs->Services->AddaServices
ServiceName:oracle10g
选中Automaticallystartthisservice
选中Failoverdomain选择刚创建的rhcs_failover
选中Reoverypolicy(恢复策略)restart

点击"addaresourcetothisservice"添加之前创建的"IP资源","Oracle脚本资源"。
选择"enablethisservice",点击"go",即可创建oracle10g服务

RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA_48

启动此服务。

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_49

查看启动后状态,可以看oracle服务运行在node01节点上。

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_50

六、RHCSOralceHA测试

1.查看RHCSHA集群IP资源

(1)在节点node01上查看RHCS服务状态

RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA_51

(2)在节点node02上查看RHCS服务状态

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_52

(3)客户端测试数据库

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_53

2.手动RHCSOracleHA服务节点切换测试

(1)在任何节点上执行切换服务命令,本例在node01执行切换命令

RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA_54

(2)在node02节点上查看,服务切换正常,服务与IP也都切换到节点2上了。

RHCS Oracle HA for OEL5.8 KVM实践配置_Oracle HA_55

3.测试故障自动切换1

说明:RHCSHA配置过程中一个关键的部分是配置fence设备,采用一些硬件设备可以使用很好的实现fence功能,由于本文是采用OEL5.8KVM虚拟机实现虚拟fence,所以在RHCS切换功能上需要充分了解,请使用真正意义上的fence设备实现该功能。

(1)本例在node01执行切换命令

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_56

将node02destroy关机

RHCS Oracle HA for OEL5.8 KVM实践配置_KVM虚拟机_57

将node02开机后,集群服务才切换到node01节点上。

RHCS Oracle HA for OEL5.8 KVM实践配置_RHCS_58

本文安装完毕。