ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Oracle RAC能用ocfs吗 ?

Oracle RAC能用ocfs吗 ?

原创 Linux操作系统 作者:tolywang 时间:2009-08-05 15:12:03 0 删除 编辑

       ocfs1, ocfs2 在生产系统俺们也有在用, 用了4年多,没有碰到过什么ocfs方面的问题 。 下面的文章说到ocfs2有多么脆弱, 奇怪没有感觉到 。 Oracle自己开发出来的东西, 而且一直在改进, 没有理由被自己这样放弃吧 。

 

------------------------------------------------------------------------------------------------------------------------------------------  

 

转载自  http://www.click2earth.com/post/78.html   

ocfs 只能在RAC当中用.
ocfs2的开发方向有了重大调整,目的是成为通用的 cluster filesystem.

我相信oracle和ocfs2 开发团队的实力和未来的发展,软件发展都有从幼稚到成熟,混乱到清晰,脆弱到稳定的过程,如果目前你有生产系统要考虑集群文件系统, ocfs2就不要考虑了.


因为目前的RAC环境,看不出有任何理由在生产环境用ocfs2的必要.

RAC涉及到存储的就是2个个地方,一个是OCR和voting(以及他们的redundant config),另外一块就是Oralce Data和Flashback recovery area.
   现在Oracle的RAC配置一般是两种  raw(ocr+voting)+ASM(data+flashback recovery area),另外一种是 ocfs2+ASM.OCR和 voting 占用的空间很小,根本没有必要在用了ocfs2的下面用一个OS的LVM来支持,就算你那样做了,也是错误的,因为目前OCR和voting 都需要存储是clusterware的,这也是用raw或ocfs2的原因,你用lvm+ocfs2的话,底下的OS LVM不是clusterware的,所以就会把你的数据破坏掉,这个话题是一个很老的话题了,你到oracle forum去搜,或者有metalink账号的话你看看就知道了,没有意义多讨论.

如果你用 OS LVM+ocfs2 用来放 Data+Flashback Recovery Area,我建议你还是不要这么干,不是说不可以,只不过ocfs2实在是很脆弱,你有订阅 ocfs2的maillist 么? 去看看吧.
Data+FRA用ASM 或RAW都很好,无论是性能上还是管理上,还是可靠性上

既然都不好,为何oracle RAC的安装还推荐使用ocfs2?

你有看到哪个软件从开发之初就是好的? 一个开发中的软件有各种现阶段的问题,难道就停止开发而放弃?

RAC安装从来没有推荐过用ocfs2, 你看Oracle RAC的产品经理在oracleworld上的发言了么?说得很清楚.RAC系统离开clusterwide filesystem,节点failed之后,存储部分的切换延迟就会很大,这个道理和RHCS Vs RHCS+GFS一样的.

会安装RAC不难,难的是知道什么时候应该部署RAC,怎么部署,部署什么部分,那些现在可以放心用,那些不能,用了会有什么可能的风险,怎么防止和解决?

一点补充,RAC环境,如果不是用raw, 在生产环境还是应该选择ASM.

我在RHEL4 update4上装的ocfs2;
node01 ,node02当把node02的网线或者node01的网线拔了之后,node02就会死机;而node1没有问题.首先强烈推荐使用RAW设备.
拔掉网线死机的话,第二个节点正常是会重启,而不应该死机.
你试一下拔CRS 的几个服务停掉再拔网线看看.
估计这样就不会死机了.
为什么会死一个节点?
根据我的理解是:因为RAC是同时使用两个节点都使用,再用两个Virtual IP 设两个主机上面,
而ORACLE client同时连接到你的两个VIP.
正常情况下,一个节点出现问题的时候,会把他的VIP设到活的节点的机器上.这样才能保证客户端可以访问两个VIP.
而你他们两台主机之间的通讯靠的是Private的网卡,RAC靠两个网卡来共享内存池,同样他们的流量是相当大的.----这个概念跟我们以前在MSCS上做OFS是不一样的!!!!
而你拔掉网线的话,他们就没有办法做到共享内存池,而客户端如果还是同时使用两台主机的话,ORACLE就会出问题.所以,网线拔掉的话,必然要有一台要接管全部的VIP,而另一个一直处于无修止的重启,直到网线拔好.

而你的问题就是为什么不是重启而是死机.
估计你查一下,你的model里面的设置是不是按方档的来做,还有就是系统本身的设置. 
估计是CRS进程在重启机器的时候没有导致SYSTEM hung.

asm在oracle的官方网站一般都采用是oracle10g,由于特殊原因我们采用的是9204的oracle,如果采用raw那么分区是有限制的最多255个所以采用ocfs2文件系统,这也是oracle官方网站建议的。现在我已经做好了

oracle 没有说best practise 建议你用ocfs2, 实际上在社区没有一个oracle得人敢出来说ocfs2 你们放心用在生产环境把.既然是RAC这个前提,我的建议就偏安全考虑.既然解决的是Data部分的问题,而且又不用ASM,就没有选择了,只能用  LVM+OCFS了.


不过ocfs R1很麻烦的,不但和R2 一样不支持online resizing, 而且如果要resize ,操作起来需要一定的步骤的.

现在的麻烦就是 array 可以online resize, lun可以online hot add,  pv可以online add, vg 可以online extend, lv 可以online extend,唯独你 resize ocfs on  lv 的时候,不能online做. 必须要把ocfs 从所有node上卸下来.

ocfs1不能直接升级到ocfs2, 如果以后要升级,需要做DB的导入导出操作.

昨天为了确认我给你的回复,顺便又搜了一下,ocfs1的 bug在网上比比皆是,触目惊心. 说白了,你们这样的架构的选择,最后就是给施工单位/人员和客户自找麻烦,痛苦的还在后面呢..

我昨天看到ocfs2的maillist有ocfs2 的 developer回答了类似问题:


我在重复一下:  ocfs2是一个clusteraware 的文件系统,在每个RAC node上都有instance运行,并通过网络通信+lock的机制,确保不同的node对同一个存储区域的读写是在控制下进行并且所有的node通过ocfs2 instance知道谁写了/谁读了. 所以ocfs2 filesystem的完整性是有保障底线的.

当你把ocfs2创建在LVM上的时候,LVM的 control在不同的node上是各管各的,由每个node的OS和LVM module自己来控制,node之间的LVM 并不通信,他们都是独立的,不排斥不加锁得去访问/操作共享存储上的区域,虽然你可以从每个node上用lvm工具scan到共享盘阵上的pv/vg/lv,但是一旦涉及到读写操作,所有的node便完全孤立来做了.所以LVM metadata 的读写就变成一个严重的问题.
所以 ocfs2+LVM 用在RAC的数据共享上是不可取的.
gfs 和ocfs2是一种东西,  和ocfs, gpfs不是一种东西. ocfs 和当中的任何一种都不一样.

IXDBA.NET技术社区

gfs/ocfs2 使得多个节点访问共享存储的同一个位置成为可能,他们通过普通网络建立不同节点上文件系统缓存的同步机制,通过集群锁,杜绝多个节点的不同应用操作同一个文件产生的竞争关系从而破坏文件的可能性,通过普通网络交换节点之间的心跳状态. 这是功能上的类似。从成熟度,性能来考虑,目前ocfs2还远不能和gfs相提并论, 能够用ocfs2的地方都可以用gfs来替代,但是反之就不行.  gfs在 HA集群环境,担当了一个"廉价缩水版"的polyserv.   至少目前来看,我个人的观点是gfs在技术,成熟度,开发力量投入,性能上都要领先ocfs2 差不多3年左右的时间.而且这种差距可能进一步拉大.

ocfs是只能for oracle的,也是oracle把集群文件系统纳入发展视线的第一个版本,之前我也说过,这个版本当时并没有定位在通用集群文件系统上,无论是质量,性能,稳定性等等在oracle用户圈子,反面的意见占大多数.

即便是在今天ocfs2的阶段,oracle mailing list, forum上大量充斥对于ocfs2质量,性能和可靠性的投诉.

ASM 是Oracle 在 linux, HP-UX, Solaris 等多个商用高端Unix平台采用的新一代存储管理系统,在Oracle公司的产品地位,开发的投入,用户范围,适用的层次和领域都是ocfs2项目无法比的.

ASM在功能上,相当于 RAW+LVM. 在数据量和访问量的线性增长关系上,表现也很出色,在实际的真实测试环境中,ASM的性能基本接近RAW, 因为还有Volume 开销,所以性能上有一点点地开销,也是很容易理解的. CLVM+OCFS2的性能在线性增长的测试中,明显低于ASM和RAW. 前天我一个朋友给我发来了他在欧洲高能实验室一个年会上作的slide,他们实验室的IT部门统计了一下,整个实验室各种单数据库和集群加起来,现在有540多个TB的数据跑在ASM上面,经过重负荷的使用和测试,他们对于ASM是表现是相当满意的. 他们大部分的系统是IA64+linux和AMD Opteron+Linux.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/35489/viewspace-611399/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
Oracle , MySQL, SAP IQ, SAP HANA, PostgreSQL, Tableau 技术讨论,希望在这里一起分享知识,讨论技术,畅谈人生 。

注册时间:2007-12-10

  • 博文量
    5595
  • 访问量
    13210491