一个VERITAS集群服务器的应用实例

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

一个VERITAS集群服务器的应用实例——北航SAP航材系统高可用性方案的实现邓曙康中国南方航空集团北方公司信息中心摘要北航SAP航材系统的实施是南航集团北方公司在航材管理ERP之路上迈出的重要一步。应用的关键性决定了实施高可用性方案的必要性。本文介绍了北航SAP系统的VCS方案和具体实现方法。主要有以下内容:⑴简介现有的集群方式,及本方案集群方式和软件的选择原因;⑵阐述VCS集群内资源的具体配置方法;⑶使用shell脚本实现对SAPR/3应用启停的控制,满足特定的系统管理需求。关键词高可用性(HA)VeritasClusterServeragent服务组1引言今天,大型企业的运行管理和业务操作与信息系统的结合越来越紧密,对应用和数据的可靠性要求也越来越高,高可用性(HA)已经成为企业级关键应用解决方案中不可缺少的部分。北航SAP航材系统是企业资源计划(ERP)应用于航空公司的一个实例,它采用了SAPR/3软件的财务会计(FI)、物料管理(MM)、销售和分销(SD)、设备维护(PM)四个模块,为航材存货订货和资金周转提供了管理平台,对机务维修和安全飞行起着重要的保障作用。如何将高可用性方案和北航SAP系统架构特点融合在一起,既能实现对包括SAPR/3在内的所有应用的保护,又能满足特定的系统管理需求,是这一方案要解决的主要问题。2HA方案概述2.1方案选择集群系统和相应的冗余配置是实现系统保护的主要方式。集群系统可分为以下几种。●共享数据,共享磁盘(Shared-dataCluster):当节点切换时备用节点会接管原来的磁盘和数据。包括切换式和并行式。●共享数据,不共享磁盘(Replicated-DataCluster):采用复制技术将数据复制到另外的磁盘上,对承载数据的磁盘实现了冗余。只包括切换式。●不共享数据:当主节点故障后,备用节点的应用程序采用另外的不同数据。包括切换式和并行式。为了既能够保证冗余和负载能力,又相对提高系统的成本效率,本方案选择了共享数据和磁盘的切换式集群,软件选用了VeritasClusterServer(VCS)。VCS是基于应用级的高可用性多机应用软件,可保证一旦任何应用出现故障,该应用系统会迅速切换到其它服务器上去。Cluster内的任意一个节点均可作为控制台,配置结束自动更新所有节点。VCS支持多种应用和资源的检测和切换,包括WebServer、IP、数据库、多网卡、NFS、文件系统、Disk、进程、SNMP、Netbackup和HSM等。VCS软件捆绑的agent和其它商业agent可以实现上述诸多应用和资源的控制。本方案的难点有两个。一是在正常情况下备用节点运行自己的SAP应用,因而要求在切换时能够停掉备用节点上的应用程序(包括SAPR/3,Oracle数据库和监听器)。二是怎样对SAPR/3应用进行控制。3方案实现3.1北航SAP系统结构北航的SAP系统由三台服务器组成,主机名分别为sapprd、sapqas、sapdev。sapdev仅用于开发,sapqas可用于测试,sapprd作为主用生产机。操作系统平台是SUNSolaris8,数据库软件采用oracle8i企业版,应用程序为SAPR/3,集群软件为VeritasClusterServer™3.5forSolaris。由sapprd和sapqas组成集群。sapprd是主节点,正常情况下用于生产的SAP应用驻留在这台机器上。sapqas作为备用节点,正常情况下有独立的用于测试的SAPR/3应用。当主节点sapprd故障时,sapqas停掉本地的SAPR/3应用,而启动原来sapprd上SAPR/3的应用。用于生产的数据库存储在共享的磁盘阵列上。当发生failover(故障转移)时,备用节点接管磁盘阵列和上面的数据库,在本机启动整个服务组。此外,系统通过使用VeritasClusterServer软件配置了一个虚拟的浮动IP地址,对客户端来说是唯一的服务器地址。系统结构全景如附录图A所示。3.2集群和服务组的组成本方案采用中的集群命名为vcs-cluster,由两个节点sapprd和sapqas组成,节点间用两个网口连接两条心跳线。集群内建立了一个服务组,命名为oradb。在oradb服务组中了一组资源,见下表。oradb服务组资源列表资源类型所包含的资源名称ApplicationSqlnet,SAPappDiskdatadisk,datadisk1,datadisk2IPMultiNICipMountdatafile,datafile1,datafile2,datafile3,datafile4,datafile5,datafile6,datafile7,datafile8MultiNICAnicaOracleOracle资源之间存在依赖关系。除了底层的所有资源都依赖其下一层的资源。当服务组启动时,所有资源从下到上按层次顺序进入online状态。只有一个资源的所有下层资源都online时,它才能够online;当服务组关闭时,资源从上到下按层次顺序进入offline状态(除了那些不能进入offline状态的资源,如网卡资源MultiNICA)。oradb服务组内各个资源的依赖关系如附录图B所示。3.4资源的配置VCS中的资源可分为三种,即基本存储、网络和应用。这些资源中,Oracle使用了专用的EnterpriseAgentforOracle,其它资源都是使用VCS软件自带的agent。3.4.1基本存储⑴Disk类型这一类型的三个资源都只须配置一个属性partition,属性值依次为c3t5d0s2、c3t5d1s2和c3t5d2s2,分别对应磁盘阵列上的三个逻辑卷(LUN)。⑵Mount类型这一类型有九个资源,对应九个文件系统,属性包括FSType,MountPoint,BlockDevice,FsckOpt和MountOpt等,用于设置文件系统的文件类型、挂接点、磁盘设备、文件系统校验选项和挂接选项。3.4.2网络⑴MultiNICA类型这一类型有一个资源nica,主要的属性包括Device和Netmask。Netmask属性值根据公司局域网配置设置为255.255.255.0。Device属性值:sapprderi010.23.1.101qfe210.23.1.101sapqasce010.23.1.102qfe210.23.1.102Device属性的含义是,对基本IP地址10.23.1.101指定了sapprd上的两个网口eri0和qfe2,对基本IP地址10.23.1.102指定了sapqas上的两个网口ce0和qfe2。在某一时刻,每台机器上只有一个网口被赋予指定的IP地址。当第一个网口故障时,会自动failover到第二个网口。只有两个网口都故障时,才会发生服务组切换。⑵IPMultiNIC类型这一类型的资源ip实现一个逻辑的IP地址10.23.1.100,它被配置为MultiNICA资源nica中一个网卡的虚拟IP地址。当这个网口故障时,由下一个MultiNICA资源中的网口接管这个IP地址。需要配置的属性包括Netmask、Address和MultiNICResName,它们的值分别设为255.255.255.0、10.23.1.100和nica。3.4.3应用⑴OracleOracle资源采用了VCSEnterpriseAgentforOracle2.0。这是一个收费的商业软件,需要单独安装。它可以监控oracle数据库实例进程ora_dbw,ora_smon,ora_lgwr,ora_pmon,实现monitor、online、offline和clean等操作。Oracle资源的属性包括Home,Sid,Pfile,Envfile,Owner等,分别对应于数据库的$ORACLE_HOME,$ORACLE_SID,初始化参数文件,环境变量文件,oracle用户等设置。⑵ApplicationApplication类型的资源的agent可以监控应用程序的状态,使它们online或者offline,允许用户指定online,offline或clean程序。监控方式包括:●使用监控程序●指定被监控的可执行文件的进程●指定被监控的进程ID文件Applicationagent要求的资源属性主要有:StartProgram,StopProgram,CleanProgram,User,PidFiles,MonitorProgram,MonitorProcesses。StartProgram指定启动应用的可执行文件路径,StopProgram指定停止应用的可执行文件路径,CleanProgram指定强制停止应用的可执行文件路径。User属性的值指定执行这三个程序的用户。创建Application类型资源的工作包括确定监控方式和在两个节点上分别建立StartProgram,StopProgram和CleanProgram对应的可执行文件。本方案中Application类型的资源有两个:lsnrctl和SAPapp。lsnrctl资源使用指定PidFiles的方式来监控监听器的状态。StartProgram使用脚本startlsn,StopProgram和CleanProgram使用脚本stoplsn,内容如下:--在sapprd节点上脚本startlsn:#!/usr/bin/shsu-orar3p-clsnrctlstartps-ef|grep/oracle/R3P/817_64/bin/tnslsnr|grep-vgrep|awk'{print$2}'/export/home/r3padm/pid_lsn脚本stoplsn:#!/usr/bin/shsu-orar3p-clsnrctlstop--在sapqas节点上脚本startlsn:#!/usr/bin/shhostnamesapqassu-r3qadm-cstopsapsu-orar3q-clsnrctlstophostnamesapprdsu-orar3p-clsnrctlstartps-ef|grep/oracle/R3P/817_64/bin/tnslsnr|grep-vgrep|awk'{print$2}'/export/home/r3padm/pid_lsn脚本stoplsn:#!/usr/bin/shhostnamesapprdsu-orar3p-clsnrctlstophostnamesapqassu-orar3q-clsnrctlstartsu-r3qadm-cstartsap对SAPR/3应用的控制一般可以通过购买和使用VCSagentforSAPR/3来实现。本方案采用配置Application类型资源的方法。查阅有关SAP系统的文档,可以了解到SAPR/3应用的中心实例会生成四个进程,它们是dw,se,ms,co,这四个进程存在标志着SAP系统正常运行。其中dw进程又会生成41个dw进程,实际上只需监控第一个dw进程即可。尝试不同进程监控方式的实验表明,使用指定PidFiles的方式来监控SAP中心实例最为可行。这里,PidFiles中定义了四个文件:/export/home/r3padm/pid_sap_dw,/export/home/r3padm/pid_sap_co,/export/home/r3padm/pid_sap_se,/export/home/r3padm/pid_sap_ms,它们分别保存了dw,se,ms,co四个进程在操作系统进程列表中的PID值。StartProgram使用脚本startPRD,StopProgram和CleanProgram使用脚本stopPRD,内容如下:--在sapprd节点上脚本startPRD:#!/usr/bin/shsu-r3padm-cstartsapr3DW=dw.sapR3P_DVEBMGS00CO=co.sapR3P_DVEBMGS00SE=se.sapR3P_

1 / 7
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功