手记

Using KVM Configure Oracle HA With RHCS IN RHEL6.1


本文包含以下几个知识点:

1、rhel6中配置Oracle ASM。

2、KVM中安装配置RHCS。

3、RHCS中注册oracle资源。

4、禁用IPV6。

环境介绍:

这里的共享存储使用的是KVM的共享存储功能,分别使用了三个10G大小的虚拟磁盘。

主机名 IP  内存  硬盘  注释

server.exmaple.com  192.168.1.10  16G /dev/vda系统盘,/dev/vd{b,c,d}共享磁盘,用于创建ASM磁盘  DNS服务器,管理RHCS节点,KVM

cs01.example.com  192.168.2.11  2G  /dev/vda系统盘,/dev/vd{b,c,d}共享磁盘,用于创建ASM磁盘  RHCS节点1

cs02.example.com  192.168.2.12  2G  /dev/vda系统盘,/dev/vd{b,c,d}共享磁盘,用于创建ASM磁盘  RHCS节点2

oracle.example.com  192.168.2.20  N/A /dev/vda系统盘,/dev/vd{b,c,d}共享磁盘,用于创建ASM磁盘  oracle逻辑主机名

一、KVM的配置:

具体的KVM安装配置过程请参考我的另一篇博文:RHEL6之KVM的安装配置。这里操作系统使用的是rhel6.1系统。这里具体描述下创建共享存储以及虚拟网络。

1、创建共享存储:

首先在虚拟系统管理器界面,右键点击localhost(QEMU),选择详情,会出现物理主机详情的界面:

p_w_picpath

p_w_picpath

然后,点击存储,在存储池中创建卷,如图所示创建了三个ASM卷,接着打开任意一个虚拟机,在虚拟硬件详情里点击”添加硬件”,将上述的三个卷添加进去,如图:

p_w_picpath

点完成之后,在新添加的磁盘选项中,在”可共享”选项中打勾。在另外一台上,按照上述方法添加新硬盘,点完成后,会弹出以下对话框:

p_w_picpath

选择”是”即可,完成之后,共享存储就设置完毕,两节点开机后,就可以看到新加的三块虚拟硬盘。

p_w_picpath

在KVM虚拟机中,可以在线添加硬盘,添加完毕后,不用重启系统就可以立即被识别。

2、创建虚拟网络:

p_w_picpath

在上图中点击”+”,出现创建新的虚拟网络画面:

p_w_picpath

p_w_picpath

p_w_picpath

p_w_picpath

p_w_picpath

p_w_picpath

最后,点击完成即可。

p_w_picpath

最后,ifconfig下会出现新的虚拟网络接口:

p_w_picpath

3、禁用IPV6:

首先编辑/etc/sysconfig/network文件,加入以下内容:

IPV6INIT=no

接着在/etc/modprobe.d目录下,创建disable-ipv6.conf文件,加入以下内容:

p_w_picpath

最后重启系统使其生效即可。关于上述几个语句的具体含义,请参考/usr/share/doc/initscripts-9.03.23/sysconfig.txt文件。

二、RHCS的安装:

在rhel6.1中,安装luci之后,不用再使用luci_admin命令执行初始化操作了,默认的访问地址还是https://ip:8084,直接使用root帐号登录即可。这里先建个cluster框架,暂时不注册oracle资源,待oracle安装完了之后,再向rhcs中注册oracle资源。

1、server上安装luci软件:

p_w_picpath

这个组里就一个luci软件包,所以在cs01和cs02上不需要安装。

2、cs01和cs02上安装集群软件:

p_w_picpath

p_w_picpath

3、编辑hosts文件,将三个节点的名称及IP加进去:

p_w_picpath

4、如果防火墙启用,则需要启用以下端口:

p_w_picpath

p_w_picpath

5、使用luci创建一个cluster:

(1)、构建cluster框架:

启动luci并登录rhcs的web管理界面,开始配置rhcs:

p_w_picpath

p_w_picpath

p_w_picpath

点击上图中的Create按钮,创建集群:

p_w_picpath

在点击Create Cluster之前,确保两个节点上的ricci处于运行状态,否则会出现以下报错:

p_w_picpath

还有就是在初次使用的时候,必须在集群节点上设置ricci用户的密码,否则会出现以下错误:

p_w_picpath

p_w_picpath

经过一系列的配置重启节点后,如下图所示:

p_w_picpath

点击任意一个节点,就可以看到所有的cluster服务已经启动:

p_w_picpath

p_w_picpath

(2)、创建Failover Domain:

点击”Failover Domain”选项卡,然后点击”Add”按钮:

p_w_picpath

Failover domain name:定义Failover域名称。 

Prioritized:是否在Failover domain 中启用域成员优先级设置。 

Restrict Failover to this domain’s member:是否在失败转移域成员中启用服务故障切换限制。 

Do not fail back services in this domain:表示在这个域中使用故障切回功能,也就是说,主节点故障时,备用节点会自动接管主节点服务和资源,当主节点恢复正常时,集群的服务和资源会从备用节点自动切换到主节点。最后,在Failover domain membership的Member复选框中,选择加入此域的节点,在“priority”处将cs01的优先级设置为1,cs02的优先级设置为5。对于“priority”的值设置为1代表优先级最高的,随着数值的增加,节点优先级也依次降低。

(3),配置Fence设备:

点击Fence Devices选项卡再点击Add,如图:

p_w_picpath

这里使用的是SCSI_Fence,使用的是裸设备。

接着在各个节点中关联fence设备:

点击节点名称,然后选择Add Fence Method,设置名称,完成之后,再添加fence实例:

p_w_picpath

使用命令行查看fence设备信息:

p_w_picpath

p_w_picpath

(4)、使用命令查看rhcs相关信息:

p_w_picpath

p_w_picpath

p_w_picpath

三、Oracle的安装:

1、RHEL6中ASMlib的安装:

对于rhel6,oracle已经不提供ASMlib支持了。oracle只对自己的Oracle Enterprise Linux提供Oracle支持。在oracle linux中,默认已经将ASM模块编译进内核了,只需安装oracleasm-support软件即可使用。由于oracle提供的Unbreakable Enterprise Kernel内核与rhel6的内核完全兼容,所以在rhel6中只需安装kernel-uek开头的内核文件,然后再安装oracleasm-support软件即可使用ASM。

Oracle ASM软件以及Unbreakable Enterprise Kernel内核下载站点:http://public-yum.oracle.com/repo/OracleLinux/OL6/1/base/x86_64/,主要下载下图中的几个软件包,两个节点都进行安装:

p_w_picpath

对/dev/vd{b,c,d}进行分区操作:

p_w_picpath

p_w_picpath

完成之后,在其中一个节点上使用oracleasm进行初始化并创建ASM磁盘:

p_w_picpath

最后,在另外一个点上扫描下asm磁盘即可:

p_w_picpath

2、Oracle数据库软件的安装:

这里不使用ASM磁盘组,安装的数据库版本是11.2.0.2。共享存储使用的是LVM。Oracle软件安装过程、监听创建过程以及建库过程全省略,请参考其他博文。

3、创建共享文件系统:

使用/dev/vd{b,c,d}三个虚拟硬盘创建LVM卷组oradata。

p_w_picpath

接着,创建了一个逻辑卷组u02用于存放oracle数据。

四、注册oracle资源:

1、创建IP资源:

p_w_picpath

这个IP就是Oracle监听器的地址,对应的主机名是oracle.example.com.

2、创建LVM HA资源:

p_w_picpath

对这个做个解释:用于LVM HA的vg是oradata,其中划分了一个15G大小的u02用于存放oracle数据文件。

p_w_picpath

LVM的HA切换是这样的,当前oradata存在于cs02上面,首先系统卸载u02文件系统,接着将/dev/oradata/u02设置为未激活状态,然后执行vgexport将oradata导出。在cs01上面,首先执行vgimport将oradata导入,接着将/dev/oradata/u02设置为激活状态,最后挂载到指定点。

3、创建文件系统资源:

p_w_picpath

这个资源依赖于上面的LVM-HA资源。

4、创建监听器资源:

p_w_picpath

这个agent调用的是/usr/share/cluster/oralistener.sh脚本。

5、oracle数据库实例资源:

p_w_picpath

这个agent调用的是/usr/share/cluster/orainstance.sh。

6、创建服务组:

这里创建了一个oracle服务组,上述创建的5个资源将其添加到oracle组里构成一个服务组。这个不好截取web界面,所以使用命令行界面:

p_w_picpath

上述的资源所调用的脚本都位于/usr/share/cluster目录下。创建完服务组之后,系统会自动启动它。当前oracle服务组已处于online状态:

p_w_picpath

p_w_picpath

p_w_picpath

针对于oracle.example.com这个IP地址,不能使用ifconfig查看,要使用下面的ip命令进行查看:

p_w_picpath

五、RHCS的命令行管理:

1、查看RHCS服务组状态:

p_w_picpath

2、切换服务组:

当前oracle运行于cs02上,将其切换至cs01上:

p_w_picpath

3、ccs命令的相关使用:

查看资源以及服务组信息:

p_w_picpath

查看当前的cluster配置信息:

p_w_picpath

这个命令实质上就是查看cluster.conf文件。

查看Failoverdomain信息:

p_w_picpath

查看fence信息:

p_w_picpath

查看节点信息:

p_w_picpath

ccs这个命令也可以创建cluster,增加节点,创建资源、删除资源、修改资源等操作,其类似于在web管理界面的操作。

参考文献:

                Red Hat Enterprise Linux 6 Cluster Administration

©著作权归作者所有:来自51CTO博客作者candon123的原创作品,谢绝转载,否则将追究法律责任

oracle职场ACLRedHat


0人推荐
随时随地看视频
慕课网APP