12.6.3RHCS+Oracle配置实战图解(1)何世晓/杜朝辉清华大学出版社我要评论(0)摘要:《Linux系统案例精解》第12章Linux集群服务的安装部署,本章将通过Oracle在Linux中的高可用集群安装部署,以及Apache在Linux下的负载均衡部署来进行实例讲解,深入浅出地阐述集群概念,希望能解决Linux管理员遇到的实际问题。本节为大家介绍RHCS+Oracle配置实战图解。标签:LinuxLinux系统案例精解12.6.3RHCS+Oracle配置实战图解(1)在RHCS中,最难理解的是Fence机制,下面的配置过程将首先以手动Fence为例进行讲解,以更深入地描述Fence在集群运行过程中的运行步骤及作用,最后再换成真实的Fence设备。需要注意的是,虽然通过手动Fence可以完整地配置RHCS,但在生产环境中不推荐这样做,因为一旦出现硬件级故障的话,手动Fence需要管理员通过人工干预方式进行系统切换。1.安装红帽集群套件RHCS安装RHCS主要有以下3个途径:通过RHEL5AP高级平台版介质进行安装,并在安装过程中输入通过rhn.redhat.com网站激活后得到的InstallNumber,选中相应的Cluster(集群)组件。通过RHCSS(RedHatClusterSolutionSuite,红帽集群解决方案套件)的安装光盘进行安装,RHCSS的好处是已经附带了多种流行数据库的支持接口,并可以提供磁盘镜像(Mirro)及企业系统备份功能。注意:购买RHCSS订阅时就已经包括了上门安装服务,会有专人为客户进行生产环境下的安装配置。通过RHEL5AP高级平台版介质进行手动安装,将安装介质挂载到/media/cdrom,然后进行以下操作:(1)建立文件/etc/yum.repos.d/mycdrom.repo,内容如下:1.[Base]2.name=RHEL5ISOBase3.baseurl=file:///media/cdrom/Server4.enabled=15.gpgcheck=06.[Cluster]7.name=RHEL5ISOCluster8.baseurl=file:///media/cdrom/Cluster9.enabled=110.gpgcheck=0(2)执行yum命令进行集群组件的安装:1.#yuminstallcmanrgmanagersystem-config-clusterluciricci2.红帽集群套件RHCS配置前的准备在两台服务器中分别安装RHCS,并按照表12-1所示配置服务器。表12-1RHCS集群配置说明Server1Server2hostname(/etc/sysconfig/hostname)server1.example.comserver2.example.com/etc/hosts127.0.0.1localhost.localdomainlocalhost192.168.100.11server1server1.example.com192.168.100.12server2server2.example.comFence设备(例如通过IBM服务器的RSAII接口实现Fence功能,如果没有此类设备则可以跳过)192.168.100.21/24Account:USERIDPassword:PASSW0RD这里的0为“零”192.168.100.22/24Account:USERIDPassword:PASSW0RD这里的0为“零”eth0(用于内部网,作为心跳)192.168.100.11/24192.168.100.12/24eth1(用于外部网,提供服务,与将要设置的虚拟IP在同一网段)192.168.101.11/24192.168.101.12/24网络连接连接方案1:两台服务器的Fence设备及eth0、eth1连接到同一网络中连接方案2:两台服务器的Fence设备及eth0连接到同一私有网络中,eth1与外网相连Oracle安装ORACLE_HOME:/u01/app/oracle/product/10.2.0/db_1ORACLE_SID:TESTDBOracle数据目录(DatabaseArea)OracleDatabaseArea:/u02/oradata两个服务器通过命令fdisk-l,可以看到相同的外部存储磁盘,如/dev/sdc在/dev/sdc中建立ext3文件系统,并挂载到目录/u02中,将Oracle数据安装到/u02/oradata由于数据存放在外部存储中,因此系统进行Failover切换后数据不会丢失,保证了数据的一致性具体的Oracle安装步骤请参考本书第11章内容3.通过system-config-cluster配置RHCS打开一个终端并通过root用户身份运行命令system-config-cluster,或通过系统|管理|服务器设置|system-config-cluster来打开集群配置界面。建立新集群建立一个新的集群,命名为new_cluster。请注意:集群的名称要求少于16个字符,否则集群启动时会出现问题,如图12-3所示。对于双节点的集群来说,CustomConfigureMulticast和UseaQuorumDisk都可以不作设置。CustomConfigureMulticast:用于指定一个用于本集群的多播地址。UseaQuorumDisk:当多个节点要求仲裁机制时,指定仲裁策略。在实际应用中,超过两个节点的集群应用相对还是比较少,因此本书只涉及到RHCS双节点的配置。有兴趣了解QuorumDisk的读者可以参考红帽公司的官方文档。添加节点(1)在图12-4左边的树状目录中选中ClusterNodes,单击AddaClusterNode添加集群节点。(2)在NodeProperties窗口中填入两个节点的机器名,分别为server1.example.com和server2.example.com,如图12-5所示。此处不但添加了节点,还同时指定了集群的心跳。由于在/etc/hosts中已经指定了两个节点名称对应的IP分别为192.168.100.11和192.168.100.12,因此两台服务器通过此网络接口对连即可成为心跳线。图12-3新建集群(点击查看大图)图12-4添加集群节点12.6.3RHCS+Oracle配置实战图解(2)添加Fence设备(1)在图12-4左边的树状节点中选中FenceDevices,单击AddaFenceDevice打开Fence配置窗口。(2)在AddaNewFenceDevice下拉菜单中选中ManualFencing以手动Fencing。(3)在Name处为Fence设备自定义一个名称,如m_fencing,如图12-6所示。图12-5加入节点server1.example.com图12-6添加手动Fence设备节点与Fence设备绑定(1)在图11-7左边的树状目录中选中server1.example.com,单击ManageFencingForThisNode。(2)为节点server1.example.com添加一个FenceLevel(注:为进一步保证集群脑裂时的有效切换,RHCS允许对一个节点添加多个Fence设备并建立分级的Fence操作)。(点击查看大图)图12-7为节点添加FenceLevel(3)选中Fence-Level-1,单击AddaNewFencetothisLevel,在FenceProperties窗口的AddaNewFence下拉菜单中选择刚才建立的名为m_fencing的设备,如图12-8所示。图12-8指定FenceLevel使用的Fence设备(4)在节点server2.example.com上重复以上步骤,将其与名为m_fencing的设备绑定。新建FailoverDomain(1)在图12-4左边的树状目录中选中FailoverDomains,单击CreateaFailoverDomain。(2)在NamefornewFailoverDomain文本框中指定自定义的FailoverDomain名称,如ora_domain,如图12-9所示。图12-9新建FailoverDomain(3)通过AvailableClusterNodes下拉菜单将server1.example.com及server2.example.com加入到当前的FailoverDomain中,如图12-10所示。RestrictFailoverToThisDomainsMembers:指派给这个FailoverDomain的Service只可以在当前加入的成员上执行;如果不选此项,Service将允许在本集群中的任何节点进行Failover切换。为保证系统的严谨性,建议选中此项。PrioritizedList:用于调整FailoverDomain中节点的优先级别,指定Service优先在哪个节点中运行。(注:对于双节点情况,如果,两台服务器的性能相同,那么一般不需要设置它们的优先关系,先启动服务器为主服务器,后启动的的为备用服务器。当主服务器出现故障,备用服务器进行Service接管后,即使主服务器通过检修重新加入集群,由于主/备服务器性能相同,因此没有必要再浪费时间进行Service切换)添加Resource-IPAddress(1)在图12-4左边的树状目录中选中Resources,单击CreateaResource。(2)在SelectaResourceType下拉菜单中选中IPAddress并填入IP地址,如192.168.101.10,如图12-11所示。此地址就是上面提到的虚拟IP,对于每一个通过网络进行连接的Service来说,都要求至少有一个独立的虚拟IP。图12-10为FailoverDomain添加节点图12-11添加IPAddress资源12.6.3RHCS+Oracle配置实战图解(3)添加Resource-FileSystem(1)在图12-4左边的树状目录中选中Resources,单击CreateaResource。(2)在SelectaResourceType下拉菜单中选中FileSystem,并按图12-12所示指定文件系统资源的名称、文件系统类型、挂载点及使用的磁盘设备。Options:执行mount指令时的特殊参数,与mount指令的-o参数相同。FileSystemID:RHCS中要求每个FileSystem都有一个唯一的ID号,此项一般不用指定,系统会自动进行分配。Forceunmount-一旦服务要求切换,在进行umount操作时使用-f参数Reboothostnodeifunmountfails-若umount失败,则尝试对此系统进行重启操作。Checkfilesystembeforemounting-挂载文件系统前通过fsck命令对文件系统进行检查,这可以更好地保证文件系统的完整性,但对于大文件系统来说,这将花费很长的时间。添加Resource-Script(1)在图12-4左边的树状目录中选中Resources,单击CreateaResource。(2)在SelectaResourceType下拉菜单中选中Script,为此资源定义一个Name为ora_script、以/etc/init.d/dbora为脚本文件的Scrgt资源,如图12-13所示。/etc/init.d/dbora是一个用于对Oracle进行启动(start)、停止(stop)及状态检查(status)的脚本,RHCS要求每个脚本都支持这3种参数操作,并根据应用的实际运行情况返回0(表示正常)或非0(表示运行异常)。RHCS就是靠这些参数及返回值来判断应用程序运行得正常与否,以保证当应用软件由于自身或其他原因而导致异常时进行Fa