CSS in RAC

June 21st, 2009

从整体架构上来说,Oracle RAC分为几大部分

  • OCR&Voting disk
  • CRS stack
  • CRS resources

而CSS是CRS stack中的一部分,极重要的一部分,是整个RAC所有节点维系一致性的纽带。

CSS Daemon主要由Group Management(GM)和Node Monitor(NM)组成。

  • GM:管理instance and communicate with LMON
  • NM:时刻监控集群中各个节点的生存状态。通过network heartbeat 和disk heartbeat来确保各节点alive.  例如,解决split-brain,network/process failure.

NM和GM都有一个Master node。而且选择方法也不尽相同,就现有资料及log来说,

  • NM:master被称为RM(reconfig manager),the lowest node number.
  • GM:1. oldest node 2. the node not the RM(也许出于平衡的考虑)

总之,就master node来说,是不一定一样的。这在多节点cluster里体现的可能更为明显些。

当有节点离开/加入cluster,CSS Daemon会进行reconfig。整体的一个流程如下:

  1. NM初始化,RM会给各节点发送同步信息,其他节点response with ACK.
  2. vote阶段,RM会发给各节点一个写vote的信息。其他节点反馈一个带有vote信息的ACK(包括node标识,状态及GM lister endpoint)
  3. split检查,RM会利用vote信息来判断cluster中是否发生了脑裂的症状。
  4. evict阶段,RM会根据split检查结果发送给失败节点evict信息,失败节点会返回ACK(等待MISSCOUNT),并reboot自己。
  5. NM 更新阶段,RM会发送一个带有cluster成员和节点信息的信息给所有节点,所有节点返回ACK确认,然后都发送一个reconfig event事件(NMEVENT_RECONFIG)给各自GM
  6. 确定GM master
  7. GM master广播成员变化信息,update新group的各节点新的通讯方式(endpoint),并完成锁同步。

11.2的RAC在集群方面变化很大,至于CSS internal的改变,还需要再仔细研究,也欢迎大家讨论。

-END-

jinghli Oracle ,

开卷有益:绝版魏晋

June 9th, 2009

20423548-1_b

听说这本书是因为魏武辉的博文

魏晋时期我了解甚少。前有三国,后有隋唐,两头的精彩造成了这段历史的认知空白。只知道王羲之、竹林七贤等有限的几个名士,更别说人文特点了。

这本书不是历史全讲解,只是《世说新语》的解读。想通晓一切,这本书太不合适。但正所谓管中窥豹,略见一斑,魏晋人的音容笑貌无不鲜活生动。对于了解和感受来说,还是足够了。

书写的很白话,作者添加了很多诙谐的说明,再加上原文的对比,易读,有趣。每个故事很短,很巧。语言精练,一气呵成。我总是感觉看着看着就会不经意笑了起来,有时甚至想大声朗读。十分痛快。

这里有魏晋人的“怪诞”、“雅量”,有“家族”、“山水”,还有“爱情”和“八卦”。够我们体味和品评了。

好书总让人深陷其中。有时候会感觉很向往,甚至于去模仿。这也许我们受礼教、儒家、“传统”管教太深;也许我们的大环境林林总总束缚太多,魏晋人那种率真的个性、洒脱的言行再也没有了。怅然所失。

魏晋时代,是中国历史上最混乱、最动荡的时代,却也是精神史上“极自由、极解放,最富于智慧、最浓于热情的一个时代”。

这是个绝无仅有的时代,是精神自由的时代。这也应该是“绝版”的原因。但既然前有古人,后便应有来者。更多的展露个性,摆脱世俗的束缚,怪诞和雅量起来,做自己真正想做的事情。我们还是有能力做到的。不为别的,只为自己更快乐。

-END-

jinghli Reading

Change OUI Language on Windows

June 2nd, 2009

Oracle DB是一个多语言产品,因此OUI会根据系统语言来设定界面语言。这是个必备的功能。但当出现安装错误时,由于local的语言不是英语而造成信息的不明 确,确会给解决问题带来困扰。而且对windows这种不具有*uix那样方便的LANG设置来说,修改OUI界面语言为英语也是必要的一招。

方法很简单,修改安装文件中的oraparam.ini,改NLS_ENABLED=FALSE。这样OUI就成了单语言的了。

metalink里有相关解释, 563647.1

Oracle Universal Installer displays the translated GUI only if the variable NLS_ENABLED has been set to TRUE in the oraparam.ini file.
If the NLS_ENABLED variable is set to FALSE, all text is shown in English.

 

-END-

jinghli Oracle ,

OCR Master

May 25th, 2009

最近在做RAC 11.2 ocr&voting on ASM的测试. 由于OCR Master会影响到crsd.bin的运行状态,所以做了些深入的研究。

OCR(Oracle Cluster Registry), 记录了cluster的配置信息,譬如资源信息及依赖关系,节点、instance、service信息等。OCR利用了一个分布式的共享cache结构来优化cluster对cluster repository的查询。每个节点都有一个local cache,并与master node的cache保持一致。OCR信息的读写以及同步由OCR Process来控制。读cluster repository则直接从local cache获取,写则需要由local OCR process告知master OCR process来完成。

ocr_master

OCR Architecture

OCR Master(OCR Writer)特性:

  • 每一时刻cluster只有一个master,只有它具有写入共享存储OCR的权限。其他节点都只能读,或者告知master去同步写。
  • OCR master节点down掉后会有新的节点成为master,来接替写OCR的权限。
  • OCR automatic backup由master节点完成。

判断OCR master的方法(首先需要明白,没有一个command或者utility可以帮助你来获取master信息)

  • cluster中crs最快启动的节点
  • cluster中node number最小的(当进行master切换时,这条就起作用了)
  • 通过最新的auto backup(ocrconfig -showbackup auto)
  • crsd.log and ocssd.log(最好的方法) the ocr master and cssd reconfig master is different(modified on 2009-6-18).
    Log in ocssd.log in 11gR2
    ------------
    2009-05-18 20:38:19.264: [CSSD][2851584912]clssgmCMReconfig: reconfiguration successful, 
    incarnation 138141189 with 2 nodes, local node number 2, master node number 1
    ------------
     
    Log in crsd.log in 11gR2
    ------------
    [  OCRMAS][2879687568]th_calc_av:5': Rturn persisted AV [186646784] [11.2.0.1.0]
    2009-05-18 20:38:22.652: [  OCRMAS][2879687568]th_master: NEW OCR MASTER IS 1
    ------------

OCR Process:从10g到11.2,都没有这样的一个后台进程,我认为是crsd.bin进程的一个thread(批评指正).

Client Process(or OCR client application)有很多种,例如OUI, SRVCTL, EM, DBCA, DBUA, NETCA, VIPCA.

-END-

jinghli Oracle ,

沉醉于剑与魔法的世界–《龙族》

May 20th, 2009

龙族封面西方神话一直是我喜欢的东西。剑与魔法、矮人精灵、屠龙者等等一切一切都让我神往。

龙族是我唯一一个用心玩过的网络游戏。在那个网络还不是很普及,城市中网吧林立的年代,我沉醉于其中。华丽的魔法,有挑战的操作,宏伟的国战,是它的标志;战斗的快感,丰富的职业是它吸引玩家的保证。如果一定要说它缺点的话,那就是代理商太差,葬送了如此经典的游戏。

半年的时间,60级的大法师,可以dragon scale和thunder的大法师…

如果不是无意中搜到龙族的小说,也许它早就尘封在记忆的角落了。韩国作家李荣道著,据说曾在韩国掀起网络热潮,龙族这款游戏就是由此而来。

故事很简单,一行人为了解救被黑龙俘虏的村民,去求助国王。路上遇到了精灵、矮人、妖精、半兽人,组队,抢道具(半兽人手套,我看至少str+20,应该是极品装备了),杀敌,做任务… 真正吸引我的是书中描述的世界,种族的特点和对人性的剖析。

德菲力会保佑你们的!在岔路上不要犹豫,直接往心里想走的地方走吧!

祝你一路平安,归来时犹如出发,笑颜常在。

龙族的世界有很多神,他们代表了不同的含义。协调的优比涅,混乱的贺加涅斯,复仇的华伦查,纯洁的卡兰贝勒… 八个种族都有自己的信仰,造就了不同的性格出发点。精灵个性善良且刚强又具有智慧,矮人很有耐心毅力而且行事果决,而人类具有强大的繁殖能力,并拥有丰富的想象力… 在故事的发展中,种族之间的性格碰撞一直掺杂其中。

人类走过森林,就会创造小径;精灵走过森林,就会变成树木

人类仰望星空,就会创造星座;精灵仰望星空,就会变成星光

在所有种族中,人类似乎很渺小。人类没有精灵的长寿和智慧,没有矮人的鬼斧神工,没有妖精穿越异次元的能力,人类完全是不完美的生物。但也正因为不完美,人类具有超强的学习能力和适应能力,有野心,有潜能,有破坏力。人类妄图改变一切。甚至人类之间的爱情也是一种破坏,因为情侣总是希望改变对方。人类可以死亡,烦恼悲伤痛苦不会累计叠加,都随着死亡而去。人类具有消除差异的能力而又极具共性,他们挤压着其他种族的生存空间。也许,当其他种族消失,世界完全没有差异的时候,人类历史也就走到了尽头。因为

人不是单数!

 

 

 

-END-

jinghli Reading

Hello world!

May 18th, 2009

Welcome to WordPress. This is your first post. Edit or delete it, then start blogging!

admin Uncategorized