admin 管理员组文章数量: 1086019
2024年3月19日发(作者:axis摄像机)
JSSN 1 009—3044
E-mail:jslt@cccc.net.ell
ComputerKnowledge andTechnology电脑知识与技术
http://www.dnzs.net.ell
Vo1.6,No.19,July 2010,PP.5137-5139
Tel:+86—551—5690963 5690964
Oracle RAC l Og高可用系统负载均衡测试与分析
顾伟涛,方钰
(同济大学汁算机科学与技术系,上海201804)
摘要:数据挖掘技术是一种新的信息处理技术。其目的是从海量数据中抽取潜在的,有价值的数据规律或数据模型。通过数据挖掘
技术对高校教学数据的分析处理,能够形成真正有价值的知识,向决策者提供信息支持,有利于推动学校教学改革和建设的全面发
展。该文主要针对现行高校实际运作的学分选课数据库系统,以关联规则挖掘为例,提出简单而可行的数据挖掘应用实施办法。
关键词:Oracle:RAC;负载均衡;高可用性
中图分类号:TP311 文献标识码:A 文章编号:1o09—3044(2010)19—5137—03
Test and Analysis of Loadbalance of Hjgh Availability on Oracle RAC 10g System ’
GU Wei—tao.FANG Yu
(Department of Computer Science and Technology,Tong University,Shanghai 201804,China)
Abstract:Oracle Real Application Clusters(RAC)has the funcitons.of loadbalance(LB)and other high—availabilities(HA).This paper
showws that Oracle RAC is loadbalance of cpu,not number of sessions口-2],through a large number of experiments on testing and analyzing.
1oadbalance.Therefore,it is helpful tO unde ̄tand and use the mechanism of loadbalance,and take effective measures tO enhance the through-
OUt of system,and play optimum performance of high availability system.
Key words:Oracle RAC;loadbalance;high availability
该文根据作者在Oracle RAC学习和实践中遇到的问题,通过大量的反复的实验,对RAC负载均衡作了多次测试,得出了RAC
负载均衡集群节点的cpu负载有密切关系,并对负载均衡提出了自己的观点。
1相关概念和技术
1.1可用性概述
可用性是指一个系统可以使用时间的比率:而高可用性系统提供一个改进的或者比一般可用性系统更高级的系统可用性,减少了
系统的故障时间.业界普遍采用系统平均故障间隔时间(MTTn与平均恢复时间(MTI'R)作为评价可用性的度量地方官标准。公式为:
可用性=MTrF/(MTFF+MTrR)x 100%口1
即系统保持正常运行时间的百分比。按照标准划分,可用性水平为99.999%,即每年停机时间小于5_3分钟的系统,称为高可用
性HA系统,它是在一般可用性系统基础之上,运行高可靠性软件而构成。高可靠性软件用于自动检测系统的运行状态,在一台服务
器出现故障的情况下,自动把故障服务器上已经进行的任务转移到其它服务器,由其它服务器继续提供服务,并能够在所有节点上
实现负载均衡,从而提高系统的吞吐量。
1.2集群
集群技术是提高系统可用性的重要途径。集群(Cluster)是由多台计算机(或节点)组成一个整体向用户提供服务。集群技术以基
于“nux操作系统的集群应用最为广泛.具有高可扩展性、高性能和高可用性。高可用性集群(HA)侧重于提高系统的可用性,它通
过集成硬件和软件的容错性实现整体服务的高可用。如果群集中的某个节点发生了故障,那么将有另外的节点代替它,即使多个节
点发生故障,整个系统环境也保证用户能够访问。
1.3 RAC高可用性解决方案
Oracle RAC引入了集群就绪服务CRS(Cluster Ready Service)、统一管理和分配所有集群结点的软、硬件资源。在RAC中,CRS
服务协调所有集群结点统一工作,并自动根据硬件的故障情况,实时删除或增加集群节点,动态管理和维护集群的工作,提供自动
的工作负载管理,具有极大的可伸缩性、低成本和高可用性,成为高可用系统集群应用的一个很好的解决方案[41。
Oracle真正应用集群RAC技术具有共享缓存体系结构,它运行在通过集群互联和共享存储设备子系统连接在一起的多台机器
上。数据文件存储在共享存储设备(一般是磁盘阵列)上,允许多个Oracle实例同时访问一个数据库存储设备,实例之间共享缓存,共
享同一数据文件,保证了所有数据在任意时刻对所有节点来说,都是相同的[91。Oracle RAC体系结构如图1所示,RAC集群由若干
个节点组成,节点之间通过心跳线连接,每个节点上都运行一个实例,实例通过集群件elusterware共同操作同一个数据库。
收稿日期:2010—05—18
作者简介:顾伟涛(1985一),男,硕士,CCF会员,主要研究方向:数据库方向。
本栏目责任编辑:代影 数据库与信息蕾曩 5137
ComputerKnowledgeandTechnology电脑知识与技术
第6卷第19期(2olo年7月)
2 RAC平台的搭建和测试
2.1双节点的l C平台的搭建
安装和搭建Oracle RAC平台主要包括clusterware安装、配置共享磁
盘、Oracle数据库系统软件、Oracle RAC软件安装和创建配置数据库 一
Sl
。
在Oracle RAC 10g中,通过虚地址VIP和服务的转移完成故障切换
和负载均衡,保证数据库的高可用性(HA)。在每个RAC节点上,配置了公
共IP地址、私有IP地址和虚拟IP地址VIP。当某个节点发生故障时,其
VIP会自动转移到另一个节点上,并在该节点上创建相应的服务,保证应
用系统的正常服务。
本文的测试系统包括两个节点rac1和rac2,运行一个服务orcl,两个
实例orcll和orcl2,Oracle RAC 10g测试环境配置如表格1所示。
用户连接集群数据库时.通常在客户端使用tnsnames.ora配置参数来
图1 RAC平台拓扑结构
实现负载均衡等功能。该文件典型配置文件如下:
表1双节点RAC网络配置
0RCL=
Public IP:1l 0.i.78
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=rac1一vip)(PORT=1521)、
芎毒rac1 、 IP l1.O.I.100
(ADDRESS=(PROTOCOL=TCP)(HOST=rac2一vip)(P0RT:1521))
SERVICE
N&ME:orcl
(LOAD—BALANCE=yes)
SI3:orci1
(CONNECT_DATA=
Publ1C IP:ll 0+1.79
(SERVER=DEDICATED)
节@rac2 VIP:l1.0.1.101
(SERVICE—NAME=orc1)
SERVlCE
N&X ̄E:orci
_
)
SID:orc12
)
同时。在客户端的系统文件/etc/hosts中添加如下内容:
l 1.0.1.100 racl-vip
1 1.0.1.101 rac2一vip
2.2高可用性系统负载均衡性能测试
为了测试RAC高可用系统的负载均衡性能,使用Shell脚本loadbalance.sh和orc1.sql,其功能分别是循环建立会话连接和查询
会话连接的实例名称。在客户端(Linux系统)打开终端,执行如下操作:
¥./loadbalance.sh session_count>ractest.1og f )
其中session_count为会话连接数量,如设置为1000,并将结果保存到日志文件ractest.1og中。通过如下操作查看连接情况:
¥grep orcll ractest.1og l we l
¥grep orcl2 ractest.1og l WC—l
测试分为两个部分:
1)两个节点同时处于空负载情况下,反复执行( )操作,改变session count的值,查看连接情况
21在任一节点上执行如下操作:
¥sqlplus/nolog
SQL>conn scott/tiger@orcl;
SQL>select from test
数据表test是在scott模式下创建的具有五百万行记录的大表该操作将延续一段时间,同时在客户端反复执行f 1操作,观察两
节点的cpu负载及连接情况。
2.3实验结果分析
为了得到准确的结论.本文反复进行了大量实验,而不是简单手工
表2双节点空腹在时连接情况
建立个别会话连接[61.实验结果如下:
连接数 50 200 600 1000 2000 5000 8000 10000
1)在节点l和节点2空负载时,两个节点cpu负载相当,节点1和
Raci 0 :39 26 235 6l6 2886 1450 8379
节点2上的会话连接数如表格2所示。
Eac2 50 6i 874 6 1384 2ll4 6560 1621
连接服务orcl的会话被分配到两个节点上,但是不是连接的负载均
衡,如表格2所示,两节点上连接数相差很大,甚至会出现所有的负载被 表3高负载时双节点连接情况
加载到某一个节点上,连接数为50时,连接全部加载到节点rat2上。
连接数 30 f 00 I 5.50 700 1000 l 2000 2500 l5000 i0000
2)在某一个节点上长时间运行SQL语句时,该节点大量资源被占
Rac 30 l22 :93 441 405 l 1240 937 l 2173 1171
用,如图2所示,cpu使用率迅速升高,cpu使用率达到9O%以上,SQL语
8ac2 。l 78 3 2jS 595 l 760 1563 I2827 8829
5138 致■摩与信息■曩 t
本栏目责任编辑:代影
第6卷第19期(2010年7月) Compu ̄rKnowledge andTechnology电脑知识与技术
句运行结束后,cpu使用率骤降;而另一节点cpu使用率稳定在15%左右,如图3所示。此时节点1和节点2上的会话连接数如表格
3所示。
当某一节点cpu负载过高,而其它节点cpu负载较小时,会话连接多数连接到cpu负载较小的节点上,两个节点上的连接数相
差很大,甚至全部连接到该节点上,如表格3所示,连接数为30时,在很短时间内会话全部连接到节点rac1上;连接数比较大时,如
10000,最后rac2节点上连接数为8829,racI节点连接数为1171,会话大部分连接到cpu负载较小的节点上。
由以上实验对比可知,Oracle RAC负载均衡与各个节点cpu负载密切相关,是cpu负载均衡,而不是连接的负载均衡。负载平
衡器维持各个服务器节点的负载状态并将到来的请求分配给当前负载最轻的服务器节点。但是,Oracle的集群采用共享磁盘的架
构,所有的节点都共享一份磁盘数据。实例问通Cache Fusion机制进行数据同步,所以RAC的负载均衡在一定程度上受限于Cache
Fusion的性能。
图2高负载cpu使用情况 图3低负载cpu使用情况
3结束结
经过大量的反复实验,作者发现Oracle RAC与节点的cpu负载有密切的关系,是cpu负载的均衡,客户端连接首选cpu负载小
的节点,而非连接均衡。在实际生产中,要尽量避免某一节点上cpu负载过高,以免导致该节点发生宕机,从而将客户端连接比较均
衡的分布在各个节点上,更好地利用RAC负载均衡机制,增加高可用系统的吞吐量,发挥高可用系统的最佳性能。但是,由于以上
实验是在虚拟机环境下进行的,其效果难免受到一定的影响,
参考文献:
I1]霍东方.基于Oracle 10g的网格数据库的分析与应用【D].武汉:武汉理工大学,2008.
[2】陈吉平.构建Oracle高可用环境[M】.北京:电子工业出版社,2008
『31张晓明.大话Oracle RAC集群高可用性备份与恢复【M】.北京:人民邮电出版社,2009.
【4]M.HART,S.JESSE.Oracle database 10g高可用性实现方案【M】.刘永健,孔令梅,译.北京:清华大学出版社,2005.
【5]14 Oracle Real Application Clusters(Oracle RAC)[EB/OL].http://download.oracle.eom/does/cd/B19306_01/instal1.102,e10319/rac.htm.
【6】增军.高可用性数据库系统研究、应用与性能优化【D】.长沙:国防科学技术大学,2006.
[7】Red Hat Enterprise Linux 5上安装RAC[EB/OL].http://www.docin.corrgp一4702817.htm1.
『81 http://www.1inuxidc.eom/Linux/2009—06/20390.htm[EB/OL1.http://www.1inuxidc.com/Linux/2009—06/20390.htm.
[9]赵聪,钱德沛,乔楠.一种新型的共享存储网络架构[J].计算机应用研究,2o03 ̄0).
本栏目责任编辑:代影 * 数据库与信息■曩 5139
版权声明:本文标题:Oracle RAC 10g高可用系统负载均衡测试与分析 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1710827367a575103.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论