贺力伟
(湖南省电力公司邵阳电业局,湖南邵阳 422000)
基于RAC技术在农电营销系统中的应用
贺力伟
(湖南省电力公司邵阳电业局,湖南邵阳 422000)
介绍oracle RAC技术在SG186农电营销系统的成功应用,对RAC的安装、配置步骤及注意事项进行详细说明,同时列举RAC日常管理的常用命令,对实际碰到的故障现象及其处理方法进行简单介绍。
RAC;集群;农电营销系统
随着SG186农电营销系统在各供电局、农村供电所的上线运行,实现了农村用电业务、计费、统计、分析、服务平台的一体化,系统进一步深化应用对系统的处理能力和稳定性提出了更高的要求,运用Oracle RAC集群技术,对保证农电营销系统7×24 h不间断运行的高可靠性和高可用性,确保各项营销业务的顺利开展显得尤为重要。
RAC(Real Application Cluster,真正应用集群技术)是Oracle数据库的1个组件,它实现了多个实例同时访问和管理同一数据库,多个实例可以存在于不同节点,也可以在相同的节点上,彼此通过内网连接交换数据,并且能够自动平衡负载,如果其中某个节点发生故障,RAC能够通过后台的监控进程将连接自动切换到另外1个或多个节点上,从而实现应用的无缝切换,对实例的高可用提供保护。Oracle RAC体系结构可以分为4个层次,见表1。
表1 RAC的体系结构
农电管理系统是邵阳电业局目前应用最为广泛的系统之一,已应用至各供电单位农电服务公司及其所有供电所,目前系统共有1 968个注册用户,用电客户数是864 523户,平均每天在线使用系统达1 800人左右,系统功能涵盖业扩报装、抄表核算、电费收缴、计量管理、线损管理、报表管理等农电营销的各个环节。通过该系统管理实现了“一个集中、二个统一、三个规范”。一个集中即数据集中处理、保存,因而确保了数据的真实和安全,便于管理层对基础数据的掌控;二个统一即统一电价核发、统一结算日期,从而确保了电价执行到位,杜绝了关系电、人情电、权力电的产生,确保了所有供电所在同一起跑线上,保证量、价、费、损数据的真实可靠,方便下一步启动农村供电所同业对标;三个规范即规范了业扩流程、营销模式、岗位管理权限,所有业务工作要求强制通过系统走规范化的流程,营销管理按各岗位职责划分设置权限,实行分片负责制,同时所有工作实现了有序的统一,既便于各所为客户提供优质服务,又可实现各岗位之间的互相监督。
由于农电营销系统是一个实时在线系统,它需要7×24 h对外提供服务,而传统的单机服务器与Oracle数据库软件可能因为软、硬件故障无法提供不间断的服务,运用RAC技术在服务器上搭建高可用的集群环境,当1台服务器宕机或磁盘故障时,系统会自动重新接管发生故障的功能,而不会导致系统不可用,以此来保证系统的高可用性。同时运行RAC技术也可以达到并行运算和负载均衡,提高系统的性能。当应用规模需要扩充时 (支持更多的数据、用户或应用),可以通过增加1台或多台低成本的服务器来扩充应用系统的处理能力,满足应用需求。而增加服务器或改变其他组件的配置对前端用户完全透明,也不用修改应用程序,不会影响整个系统的正常运转。
系统总体配置如图1。
图1 总体配置图
3.2.1 硬件
(1)主机:IBMX3650服务器共2台,分别设置计算机名RAC1、RAC2,每台IBM服务器上各有1块RAID卡,2块HBA卡,2个千兆网卡。
(2)存储:IBM DS4700存储1台,共7块FC 150 GB 15K硬盘,采用RAID5存储,其中表决磁盘voting划为300M,集群管理ocr划为300 M。
(3)交换机:Brocade 300 2台,6个SPF光纤模块
3.2.2 软件
(1)主机操作系统版本:Windows Server 2003 Enterprise Edition R2 32bit
(2)Oracle 版本:10.2.0.4
(3)Cluster版本:10.2.0.4
3.2.3 网络
(1)RAC1公共 IP 地址:10.233.0.101,对应公共网卡 (public),虚拟 IP地址 (VIP):10.233.0.103,私有 IP 地址:10.10.10.1,对应私有网卡 (private)。
(2)RAC2公共 IP 地址:10.233.0.102,虚拟IP 地址 (VIP):10.233.0.104,私有 IP 地址:10.10.10.2。
3.2.4 数据库 (见表2)
表2 数据库环境概况
3.2.1 主机安装与配置
(1)在主机上安装Windows Server 2003 Enterprise Edition R2 32bit操作系统,并升级所有补丁。
(2)将主机2块网卡名改为public和private,设置相对应的IP地址,然后在网络连接的高级设置中检查被网络服务访问的连接顺序,确保public位于第1位。
(3)修改主机名与Host文件,用ping命令测试RAC1和RAC2之间的连通性。
(4)禁用 Windows Media Sensing for TCP/IP。
(5)设置虚拟内存为物理内存的2倍左右。
(6)禁用共享存储的写缓存。
(7)启动自动挂载:
(8)初始化存储的磁盘。新建1个扩展分区,将扩展分区分成3个逻辑分区:ocr使用裸设备、vote使用裸设备、数据文件使用ASM。然后重启,启动后一定要查看RAC2的磁盘,确保先前设置的共享磁盘,在RAC2中系统没有自动为其分配盘符,如果分配的话删除,然后重新启动。
(9)在每个节点上设置环境变量。在RAC1和RAC2上分别增加变量值ORACLE—SID和PATH。
(10)检测节点之间能否互相访问共享:
(11)进行时间同步:
(12)所有的环境设置好了,可以利用cluster ware软件包中的cluvfy工具检查安装是否符合所有条件:
等结果出来,看是否条件都满足安装RAC的要求,如果有不符合要求的地方,则进行相应的调整。
3.2.2 Clusterware和数据库的安装、配置
(1)安装Clusterware软件,设置OCR和表决磁盘的存放地方,注意在安装检测一般会在VIP配置处出错,错误时不要理会,直接点OK。配置完成后手工运行vipca.bat,重新设定VIP。
(2)安装 database软件,选择集群安装模式且暂不安装数据库;安装完成后,在RAC2上面运行selecthome.bat激活相应的组件,然后退出。
(3)使用asmtoollg工具标识ASM驱动器。
(4)升级数据库版本。首先停止所有数据库和集群服务;其中clusterware和oracle需要分别升级,升级包都在同1个补丁包里面,升级的时候需要分别选择 CRS—HOME和 ORACLE—HOME.,这点一定要注意。
升级完成后查询clusterware版本
crsctl query crs softwareversion
查询数据库及其组件版本
select* from v$version;
(5)使用dbca安装数据库,选择数据库的字符集与合适的数据文件大小;创建需要的表空间,修改其他的表空间大小。
(6)调整数据库相关的参数修改SGA大小
在农电营销系统部署完Oracle RAC后,要经常对RAC的状态与日志进行查看,以确保RAC的稳定运行与农电系统的高可用,下面将结合Oracle Clusterware的命令集 (表3)对RAC的日常管理与维护进行简单介绍。
表3 Oracle Clusterware命令集
命令:crs—stat– t
正常状态应如下,所有格组件均为online状态。
CRS(Cluster Ready Service)集群就绪服务,它主要管理注册到 Cluster中的资源 (如 VIP、instance、DB等),使用Crsctl命令可以用来检查CRS进程栈,每个crs进程状态,管理Votedisk,跟踪CRS进程功能。
检查CRS状态
crsctl check crs
启动和停止CRS.
crsctl start crs
crsctl stop crs
OCR(Oracle Cluster Registry)用于保存集群和数据库的配置信息,作为 CRS的关键组件,OCR必须保存于共享存储上,这个存储就是OCR Disk,OCR的内容非常重要,Oracle每4 h对其做1次备份,并且保留最后的3个备份,以及前1天,前1周的最后1个备份。备份的默认位置是$CRS—HOMEcrscdata <cluster—name>目录下。
检查OCR内容的一致性
Ocrcheck
OCR内容的备份与恢复
Ocrconfig
故障现象:2010年5月5日,农电系统RAC集群启动异常,查询Crs的日志,crsd.log有如下报错内容:
故障处理:从日志分析,可能OCR有问题,故对OCR配置进行了恢得,首先通过ocrconfig–showbackup查看可用的备份,然后用ocrconfig–restore进行恢复,再重启RAC,故障消除。
6.1 通过RAC技术在农电营销系统的应用,为系统搭建双机热备+负载均衡的运行模式,充分利用了软、硬件资源,提高了系统的稳定性与高可用性。
6.2 运用RAC集群的管理工具与命令可有效促进对RAC的日常管理与运维。
〔1〕陈吉平.Oracle高可用环境〔M〕.北京:电子工业出版社,2008.
〔2〕白鳞.Oracle RAC日志〔M〕.北京:人民邮电出版社,2010.
TP29
B
1008-0198(2011)03-0021-04
10.3969/j.issn.1008-0198.2011.03.007
2010-08-05 改加日期:2011-02-24