- 论坛徽章:
- 0
|
转载的一篇文档资料,大家继续讨论...
转载的一篇文档资料,大家继续讨论,出处不好找了,未标明作者,抱歉!!!
如果需要配置高可用的解决方案,Sun Cluster与OracleRAC是最常用的选择。由于Oracle10g产品增加了很多新的模块,RAC组件中就包含了Oracle自己的集群框架模块Oracle Clusterware (或 Cluster Ready Services—CRS)。这就造成了很多人的误解:Oracle已经有了自己的集群框架模块,那么还需不需要Sun Cluster呢?其实,Sun Cluster与OracleRAC的组合方案优于只用OracleRAC。OracleRAC的确集成了集群模块,从轻便的角度来考虑,OracleRAC仅集成了O racle Clusterware的集群成员和Oracle的Cache Fusion 技术。并没有办法完全取代传统的集群软件(例如Sun Cluster)提供较完整的数据保护和快速切换服务。
Sun Cluster
Sun Cluster主要是保证OracleRAC的配置能够正常启动和关闭。Sun Cluster的两个主要模块是成员组框架和资源管理框架(RGM),RGM主要负责对资源组的启动、关闭、监控等。Sun Cluster还结合Solaris Volume Manager或者是VERITAS Volume Manager方便的对磁盘进行管理。
OracleRAC
Oracle Clusterware两个主要的模块是Oracle Configuration Repository (OCR) 和投票系统。
OracleRAC结合Sun Cluster是很好的高可用解决方案,可以从以下几点来看:
1.Sun Cluster可以帮助OracleRAC更方便的使用多种设备。
如果结合Sun Cluster,则OCR和投票系统就可以建立在共享裸设备上(如,裸磁盘的卷)、共享的QFS、NAS上面。如果没有Sun Cluster,则ORC和投票系统就只能建立在裸盘、ASM和NAS上了,这就很大程度上限制了Oracle Clusterware的控制机制。如果有Sun Cluster的话,就可以利用高可用的QFS系统去存储Oracle Clusterware文件啦(例如,OCR、RAC的数据、投票系统等)
2.Sun Cluster可以方便地正确的挂载磁盘设备并检查QFS/NAS的挂载状态。
Sun Custer使得创建框架资源变得非常简单。
3.Sun Cluster 3.2 CRS允许OracleRAC按照正确的次序启动并监控OracleRAC集群框架的健康状态。
例如,Sun Cluster允许Oracle Clusteware在文件系统、NAS/QFS、磁盘组管理关闭之前关闭。如果启动的顺序不对的话,就可能导致系统没有办法正常启动。例如,某个节点上面再关闭系统之 前没有umount某些文件夹,这就会导致IO错误,这可能会造成投票系统不能正常工作,从而造成更多的节点出问题。Sun Cluster就可以结合卷管理软件来系统地管理这些进程的顺序启动。
4.Sun Cluster可以提供更高性能来保证节点的之间的通信
OracleRAC依靠Cache Fusion来保证数据的一致性,依靠Cluster Synchronization Service (CSS)来确定节点成员,而CCS是依赖Soalris来提供节点之间的心跳信息的。如果没有Sun Cluster而单单依靠Solaris的话,Oracle Database 10g release 10.2.0.x默认是30秒检测一次心跳,200秒检测一下磁盘的投票系统。而Sun Cluster的处理机制是每秒向同级节点发送DLPI包一次,如果一个节点连续10次(总共10秒的时间)收不到这样的数据包,则认为该节点已经挂了并及时进行相应的 处理。这也就是说Sun Cluster的性能比单OracleRAC的性能提高了3倍。Sun Cluster的检测方式也对性能的影响也低于CCS对性能的影响。
5.Sun Cluster可以帮助提供统一的命名空间
对于OracleRAC来讲,数据库需要放在共享存储上面,而共享存储需要被多个主机节点识别到。如果命名规则不一致的话,有可能导致同一块盘在不同的节点上有不同 的名字。这种情况下,需要在所有连接共享存储的节点上作一些配置去维持磁盘的名字。例如在一个节点上把/oracle/voting_disk1做个软链接到/dev/r dsk/c5t1d0s1而在另外一些节点上需要把/oracle/voting_disk1做软链接到/dev/rdsk/c4t1d0s1。节点数多的话,这就是很繁 琐的一件工作。而Sun Cluster可以自动的创建和统一管理所有节点的命名空间。例如/dev/did/rdsk/d10s1
6.Sun Cluster可以灵活的提供网络管理
高可用解决方案需要保证服务的不间断,并能提供灵活的服务切换机制。Oracle的Oracle Clusterware没有集成网络集群高可用的机制。Oracle Clusterware的标准安装通常要求一个固定的网口和IP。一旦网口或IP不可用的话,就会导致该节点脱离集群。当然,Solaris提供了IPMP机制解决这种 问题,但是相对于Sun Cluster的网络管理来说,还是有很多限制。Sun Cluster可以创建一个虚拟网口clprivnet0,OracleRAC可以直接使用这个端口,Sun Cluster可以自动完成这些繁琐的配置,简化了配置和管理的工作。
7.Sun Cluster还提供可扩展的应用
Sun Cluster提供了很多agent,例如,Sun Cluster支持MySQL HA,Oracle HA, Apache HA等等。也允许用户添加到他们自己的应用中,这就需要自己写脚本啦。
因此OracleRAC结合Sun Cluster,可以为高可用提供更高的性能和更高的保证机制。 |
|