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虚拟机,该方式配置还是一个遗憾,本文只是仅做安装过程记录。
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
在node01,node02上配置如下yum源。
(1)挂载光盘ISO
# mount /dev/cdrom /mnt
(2)配置YUM客户端
说明:通过本地光盘做为yum安装源。
(3)openfileriscsi存储配置
具体配置略,共划分两块lun,一块10G配置GFS,一块128mb配置表决盘。
安装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服务开机启动
应为集群配置文件还没有产生配置文件/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
安装ricci、rgmanager、gfs、cman
(1)node02安装RHCS软件包。
#yum install ricci cman cman-devel gfs2-utils lvm2-cluster rgmanager system-config-cluster -y
(2)配置RHCS服务开机启动
应为集群配置文件还没有产生配置文件/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
说明:在node01节点上进行操作。
(1)luci初始化
#luci_admininit
(2)配置管理地址
https://192.168.233.141:8084
admin/111111
(1)输入登录名与密码登录
(2)登录进管理界面,点击cluster->CreateaNewCluster->填入如下内容:
然后提交,集群会经过install,reboot,config,join两步过程才能成功。
说明:
1)这步会生成集群配置文件/etc/cluster/cluster.conf
2)也可以直接创建该配置文件。
(3)集群配置完毕
点击cluster,可以看到集群与节点都正确加入。
(1)ssh到node01上,启动cman服务。
(2)ssh到node02上,启动cman服务。
(1)配置与准备kvmfence配置,本方式主要是OEL5.X针对KVM虚拟机做RHCS虚拟机的情况。
(1)配置与准备kvmfence配置,本方式主要是OEL5.X针对KVM虚拟机做RHCS虚拟机的情况。
(2)配置与准备kvmfence配置,本方式主要是OEL5.X针对KVM虚拟机做RHCS虚拟机的情况。
(3)分别为node01,node02结点添加fence设备。
node01节点
node02节点
(1)node1启动CLVM的集成cluster锁服务
# lvmconf --enable-cluster # chkconfig clvmd on # service clvmd start
(2)node2启动CLVM的集成cluster锁服务
(1)在任意一节点对磁盘进行分区,划分出sda1。然后格式化成gfs2.
# fdisk /dev/sda
(2)node01节点上通过共享磁盘创建gfs2集群卷组
Error locking on node node02: Volume group for uuid not found: QkM2JYKg5EfFuFL6LzJsg7oAfK4zVrkytMVzdziWDmVhBGggTsbr47W1HDEu8FdB Failed to activate new LV.
出现以上提示,需要在node2上创建物理卷,有可能需要重启node02。
node02节点上:
回到node1节点上:
(3)格式化GFS文件系统
node01节点上:
[root@node01 ~]# mkfs.gfs2 -p lock_dlm -t RHCS_HA:gfs2 -j 3 /dev/rhcsgfs/var01
说明:
RHCS_HA:gfs2这个rhcs就是集群的名字,gfs2是定义的名字,相当于标签吧。
-j是指定挂载这个文件系统的主机个数,不指定默认为1即为管理节点的。
这里实验有两个节点,加上管理主机为3
(1)node1,node2手动挂载测试,挂载成功后,创建文件测试集群文件系统情况。
# chkconfig gfs2 on # service gfs2 start # mount.gfs2 /dev/rhcsgfs/var01 /oradata
node01节点:
node02节点:
(2)配置开机自动挂载
#node01节点:
#node02节点:
(3)测试集群文件系统读写情况
在node01节点上/oradata目录下创建一个文件,再在第二个节点上查看确认。
#表决磁盘是共享磁盘,10M大小就可以了,无需要太大,本例采用/dev/sdb1来进行创建。
[root@node1 ~]# fdisk /dev/sdb
(1)创建表决磁盘
[root@node1~]# mkqdisk -c /dev/sdb1 -l qdisk
(2)查看表决磁盘信息
[root@node01~]# mkqdisk -L
(3)配置表决磁盘qdisk
#进入管理界面cluster->clusterlist->点击ClusterName:RHCS_HA;
#选择"QuorumPartition",选择"useaQuorumPartition"
(4)启动qdisk服务
node01节点:
node02节点:
chkconfig qdiskd on service qdiskd start
(1)准备oracle安装环境
(2)安装oracle数据库软件及补丁
(3)netca
(4)dbca创建数据库,数据库文件,控制文件,redolog文件,闪回区,规档等都创建在/oradata集群文件系统上。
(1)准备oracle安装环境
(2)安装oracle数据库软件及补丁
(3)netca
(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
#启动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
点击cluster->RHCS_HA->Resources->AddaResources
选择IP,输入:192.168.233.150
选中monitorlink
点击submit
点击cluster->RHCS_HA->Resources->AddaResources
选择name,输入:dbora
选择fullpathtoscriptfile,输入:/etc/init.d/oracle
点击submit
(1)创建服务过程
点击cluster->rhcs->Services->AddaServices
ServiceName:oracle10g
选中Automaticallystartthisservice
选中Failoverdomain选择刚创建的rhcs_failover
选中Reoverypolicy(恢复策略)restart
点击"addaresourcetothisservice"添加之前创建的"IP资源","Oracle脚本资源"。
选择"enablethisservice",点击"go",即可创建oracle10g服务
启动此服务。
查看启动后状态,可以看oracle服务运行在node01节点上。
(1)在节点node01上查看RHCS服务状态
(2)在节点node02上查看RHCS服务状态
(3)客户端测试数据库
(1)在任何节点上执行切换服务命令,本例在node01执行切换命令
(2)在node02节点上查看,服务切换正常,服务与IP也都切换到节点2上了。
说明:RHCSHA配置过程中一个关键的部分是配置fence设备,采用一些硬件设备可以使用很好的实现fence功能,由于本文是采用OEL5.8KVM虚拟机实现虚拟fence,所以在RHCS切换功能上需要充分了解,请使用真正意义上的fence设备实现该功能。
(1)本例在node01执行切换命令
将node02destroy关机
将node02开机后,集群服务才切换到node01节点上。
本文安装完毕。