Oracle clusterware组成概述

       ㈠ clusterware和RAC的关系
       
          狭义上,RAC指借助“某种集群件”搭建出来的一个“多实例、单数据库”的环境
          这里的集群件可以是 Oracle clusterware、Sun cluster等
          clusterware把分布式主机虚拟成一个计算机
          RAC把分布式实例虚拟成一个实例
          clusterware向下管理硬件资源,向上为RAC提供服务
          
       ㈡ Oracle clusterware组成
       
          ① 磁盘文件
             
             OCR disk和voting disk必须放在共享存储上
             
             ⑴ OCR disk
             
                由于修改节点的配置信息不同步引起的“健忘”问题
                Oracle采用OCR disk保存整个集群的配置信息
                OCR disk的位置在/etc/oracle/ocr.loc
                配置信息以“key-value”形式保存
                Oracle clusterware组成概述_第1张图片
                每个节点在内存中都有一份OCR disk的拷贝,这份内存叫 OCR cache
                OCR cache的内容可由每个节点的OCR process读
                OCR disk的内容只能由master node上的OCR process读写
                master node上的OCR process负责更新本地和其他节点的OCR cache内容
                需要OCR 内容的其他进程,如CSSD、EVMD等都叫client process
                这些进程不会直接访问OCR Cache,而是向OCR process发送请求,借助OCR process获得内容
                如果想要修改OCR 内容,需要由该node的OCR process向Master node上的OCR process提交请求
                由master OCR process完成物理读写,并同步到所有OCR cache
                
             ⑵ voting disk
             
                在集群重构的投票阶段,节点向reconfig manager发送该节点所了解的成员的健康状况
                在network heartbeat不可用的情况下, cluster分裂成多个 subcluster时
                确定对方的subcluster中node的数量、发送killblock 以实现evictee的驱逐通知
                这是个信号的传递者
                crsctl query css votedisk查看voting disk的位置
      
          ② 后台进程
             
             在安装clusterware最后阶段,会要求在每个节点执行root.sh
             这个脚本会在/etc/inittab文件的最后添加如下3行:
             h1:35:respawn:/etc/init.d/init.evmd run >/dev/null 2>&1 < /dev/null
             h1:35:respawn:/etc/init.d/init.cssd fatal >/dev/null 2>&1 < /dev/null
             h1:35:respawn:/etc/init.d/init.crsd run >/dev/null 2>&1 < /dev/null
             可见,clusterware若干后台进程中最重要的无非是CSSD、CRSD、EVMD
              
              ⑴ OCSSD
              
                 这个算是最关键的进程了,如果它出现异常,会直接导致系统重启
                 CSSD通过心跳机制,实时监控集群健康状态,提供“脑裂保护”等基础服务
                 CSS服务有两种心跳机制:
                    私有网络的network heartbeat
                    voting disk的disk heartbeat
                 注意,在配置ASM时,也有个CSSD进程
                 用于支持ASM instance和RDBMS instance通信
                 在ASM上搭RAC需要通过$ORACLE_HOME/bin/localconfig.sh delete将此从/etc/inittab删除
                 因为RAC要求node只有一个CSSD进程
                 
              ⑵ CRSD
              
                 需要HA的组件,都会以CRS resource的形式登记到OCR disk
                 而CRSD就是根据OCR 中的内容,负责监控CRS resource的运行状态,并要启动、停止、failover这些资源
                 
              ⑶ EVMD
              
                 EVMD有两个任务:
                     ● 负责发布CRS生成的各种事件
                     ● 是CSSD和CRSD通信的桥梁
                     
          ③ 网络组件
          
             每个节点至少有2张网卡提供连接
                     ● 共有网卡:提供对外数据服务
                     ● 私有网卡:用于节点间的通信,通信内容包括network heartbeat和cache fusion
             每个节点需要3个IP地址:public IP、private IP和virtual IP(俗称:VIP)

你可能感兴趣的:(Oracle clusterware组成概述)