Clusterware由若干进程组成,其中最重要的是CRSD,CSSD,EVMD

 
在Clusterware安装的最后阶段,会要求在每个节点执行root.sh脚本,这个脚本实际的作用就是在/etc/inittab文件最后添加3行
 
hi:35:respawn:/etc/init.d/init.evmd run >/dev/null 2>&1 < /dev/null
hi:35:respawn:/etc/init.d/init.cssd fatal >/dev/null 2>&1 < /dev/null
hi:35:respawn:/etc/init.d/init.crsd run >/dev/null 2>&1 < /dev/null
 
如果EVMD和CRSD出现异常,系统或自动重启这两个进程,如果CSSD进程异常,系统会立即重启
 
------------------------------------------------------------------------------------------------------
 
1、OCSSD
     OCSSD(cluster synchronization service集群同步服务)这个进程是clusterware最关键的进程,如果这个进程异常,会导致系统重启,CSS通过多种心跳机制实时监控集群健康状态,提供脑裂保护等基础集群服务功能。
 
     CSS服务有两种心跳:
 
          network heartbeat:通过私有网络
          disk heartbeat     :通过voting disk‘
     
     这两个心跳都有最大时延,对于disk heartbeat,这个延时叫做IOT(I/O TIMEout),对于network heartbeat 这个延时叫做MC(MISCOUNT),都是以秒为单位,默认IOT大于MC,这两个参数由oracle自动判定,不需要调整。
 
     可以通过下面命令查看参数设置:
 
     crsctl get css disktimeout
 
     crsctl get css misscount
 
TIP:
     除了clusterware 需要这个进程,在单节点的ASM环境也需要这个进程,这个进程用于支持ASM 实例和database实例之间的通信。但是如果在已经使用了ASM的节点上安装RAC,会遇到一个问题,因为RAC要求节点只有一个OCSSD进程,并且应该是运行在$CRS_HOME目录下,这时就需要先停止ASM,并通过$ORACLE_HOME/bin/localconfig.sh delete删除 之前的inittab条目。之前安装ASM时也曾经使用这个脚本来启动OCSSD,那个命令式$ORACLE_HOME/bin/localconfig.sh add.
 
 
------------------------------------------------------------------------------------------------------
 
 
2、CRSD
 
    CRSD是实现高可用的主要进程,它所提供的服务叫做CRS(cluster ready service)。
 
     oracle clusterware 必须要监控资源运行异常,并进行干预,包括关闭,重启或者转移服务等,CRSD进程提供的就是这些服务。
 
     默认情况下,CRS会自动尝试重启资源5次,如果还失败则放弃
 
 
CRS监管的软件分为两组
 
nodeapps:【表示这些资源每个节点只需要一个就够了,比如每个节点只需要一个listener】
 

GSD(GLOBAL SERVICE DAEMON)

 
ONS(ORACLE NOTIFICATION SERVICE DAEMON)
 
LISTENER
 
database-related-resource:【这些资源与数据库相关,不受节点限制,如一个节点可以有多个instance,每个instance可以有多个service】
 
VIP
 
DATABASE
 
INSTANCE
 
SERVICE
 
 
GSD、ONS、VIP是在OCR的安装过程中自动创建并注册
 
listener、database、instance、service可以在安装过程中自动创建,也可以 在安装完成后通过DBCA NETCA SRVCTL工具创建并注册
 
这些注册到CRS resource的对象是以元数据(metadata)的形式被记录在OCR磁盘上,这些元数据包括这些对象的名称、如何启动、停止、如何检查健康状况等配置信息。
 
 
------------------------------------------------------------------------------------------------------
 
 
3、EVMD
 
     这个进程负责发布CRS产生的各种事件(Event),这些event可以通过俩种方式发布给客户----ONS和callout script,用户可以自定义回调脚本,放在特定目录下,这样当某些事件发生时,EVMD会自动扫描改目录,并调用脚本,这个调用由racgevt进程来完成。
 
     EVMD进程出来发布事件之外,还是CRSD和CSSD两个进程之间通信的桥梁。
 
 
------------------------------------------------------------------------------------------------------
 
 
4、RACGIMON
 
     这个进程负责检查数据库健康状态,负责service的启动,停止,故障转移(failover),这个进程会建立到数据库的持久连接,定期检查SGA中的特定信息,该信息由PMON进程定期更新。
 
 
------------------------------------------------------------------------------------------------------
 
 
5、OPROCD
 
     这个进程也叫做 Process monitor daemon 。这个进程用来检测节点的processor hang(CPU 挂起),如果调度时间超过1.5秒,就会认为CPU工作异常,会重启节点,也就是说这个进程提供的是"I O隔离"功能,
 
     在非linux下使用会看到这个进程,但在linux 下,是利用hangcheck-timer模块来实现"I O"隔离功能。
 
 
 
 
 
 
 
 
 
 
 
 

Clusterware后台进程的更多相关文章

  1. 【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之缓存融合技术和主要后台进程(四)

    缓存融合技术和主要后台进程(四) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总.然后形成体 ...

  2. RAC1——Clusterware概念简介1

    一 集群环境下的一些特殊问题 1.1 并发控制 在集群环境中, 关键数据通常是共享存放的,比如放在共享磁盘上. 而各个节点的对数据有相同的访问权限, 这时就必须有某种机制能够控制节点对数据的访问. O ...

  3. 转载:【Oracle 集群】RAC知识图文详细教程(四)--缓存融合技术和主要后台进程

    文章导航 集群概念介绍(一) ORACLE集群概念和原理(二) RAC 工作原理和相关组件(三) 缓存融合技术(四) RAC 特殊问题和实战经验(五) ORACLE 11 G版本2 RAC在LINUX ...

  4. 【转】【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之缓存融合技术和主要后台进程(四)

    原文地址:http://www.cnblogs.com/baiboy/p/orc4.html   阅读目录 目录 Cache Fusion 原理 什么是 Cache Fusion? 什么是高可用 FA ...

  5. 【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之RAC 工作原理和相关组件(三)

    RAC 工作原理和相关组件(三) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总.然后形成体 ...

  6. RAC 相关概念解释

    1.1 并发控制 在集群环境中, 关键数据通常是共享存放的,比如放在共享磁盘上. 而各个节点的对数据有相同的访问权限, 这时就必须有某种机制能够控制节点对数据的访问. Oracle RAC 是利用DL ...

  7. RAC 的一些概念性和原理性的知识(转)

    一 集群环境下的一些特殊问题 1.1 并发控制 在集群环境中, 关键数据通常是共享存放的,比如放在共享磁盘上. 而各个节点的对数据有相同的访问权限, 这时就必须有某种机制能够控制节点对数据的访问. O ...

  8. 【RAC】RAC相关基础知识

    [RAC]RAC相关基础知识 1.CRS简介    从Oracle 10G开始,oracle引进一套完整的集群管理解决方案—-Cluster-Ready Services,它包括集群连通性.消息和锁. ...

  9. ORACLE11G R2 RAC的进程启动流程

    简要说明ORACLE11GR2 RAC的进程启动流程: 1.启动流程概览图: 二.RAC启动流程的梳理: 第一层:OHASD 启动:(OHASD派生) 1.CSSDAGENT负责启动CSSD的AGEN ...

随机推荐

  1. SQL技术内幕-12 SQL优化方法论前言

    我推荐的一种使用自顶向下的优化论.这种方法,首先分析实例级的等待时间,在通过一系列步骤将其不断细化,知道找出系统中导致大量等待的进程/组件.一旦找出这些令人讨厌的进程,就可以集中优化他们了,一下是这种 ...

  2. x64的调用约定

    在设计调用约定时,x64 体系结构利用机会清除了现有 Win32 调用约定(如 __stdcall.__cdecl.__fastcall._thiscall 等)的混乱.在 Win64 中,只有一个本 ...

  3. win10开机密码怎么取消

    win10怎么取消电脑开机密码?比较快捷的方法就是使用netplwiz在WIN2000以后的版本都是适用.最新版的WIN10同样也是适用的.下面我来演示一下win10开机密码怎么取消? 1. WIN1 ...

  4. MongoDB (四) MongoDB 数据模型

    在 MongoDB 中的数据有灵活的模式.在相同集合中文档并不需要有相同的一组字段或结构的公共字段的集合,文档可容纳不同类型的数据. MongoDB设计模式的一些考虑 可根据用户要求设计架构. 合并对 ...

  5. RHadoop计算平台搭建

     原创文章,转载请注明: 转载自www.cnblogs.com/tovin/p/3824554.html 本文基于CentOS6.4系统介绍基于RHadoop平台的搭建,Hadoop的搭建可以参考ht ...

  6. lintcode:将二叉树拆成链表

    题目 将一棵二叉树按照前序遍历拆解成为一个假链表.所谓的假链表是说,用二叉树的 right 指针,来表示链表中的 next 指针. 注意事项 不要忘记将左儿子标记为 null,否则你可能会得到空间溢出 ...

  7. WPF之快速实现拖拽功能

    场景:工具栏上有很多图标(一个图标代表一种控件),可以左键按下图标,然后拖拽到设计区域创建一个个的控件. 实现:1.给工具栏上的图标添加MouseLeftDown和MouseMove事件,前者事件是为 ...

  8. Ubuntu LAMP搭建

    为了数据库课程设计,只好自己搭一个数据库系统,采用LAMP方式. 一.安装 1.安装Apache sudo apt-get install apache2 Apache在安装期间会新建一个目录:/va ...

  9. linux系统主要常见目录结构

    linux系统的一切从“/”开始,并按照文件系统目录标准FHS采用树桩结构来存放文件 并定义了每个区域的用途.

  10. ES6入门之函数的扩展

    函数js原有的: 属性:arguments[].caller(调用该函数的引用,注意与callee分别开,callee指的是调用函数本身经常在递归中出现).length(形参个数).prototype ...