转:Oracle集群重要进程evmd、cssd和crsd发源地及跟踪探索

http://www.xuexizu.com/training_centre/content/111841?nid=30538 

Oracle集群后台进程众多,如何才能理清其中的关系?我们尝试探索一下。我们从“/etc/inittab”文件开始。

1.“/etc/inittab”文件内容
看一下从Linux操作系统“/etc/inittab”文件中能获得哪些信息。
[root@rac1 ~]# cat /etc/inittab
#
# inittab       This file describes how the INIT process should set up
#               the system in a certain run-level.
#
# Author:       Miquel van Smoorenburg, <miquels@drinkel.nl.mugnet.org>
#               Modified for RHS Linux by Marc Ewing and Donnie Barnes
#

# Default runlevel. The runlevels used by RHS are:
#   0 - halt (Do NOT set initdefault to this)
#   1 - Single user mode
#   2 - Multiuser, without NFS (The same as 3, if you do not have networking)
#   3 - Full multiuser mode
#   4 - unused
#   5 - X11
#   6 - reboot (Do NOT set initdefault to this)
#
id:5:initdefault:

# System initialization.
si::sysinit:/etc/rc.d/rc.sysinit

l0:0:wait:/etc/rc.d/rc 0
l1:1:wait:/etc/rc.d/rc 1
l2:2:wait:/etc/rc.d/rc 2
l3:3:wait:/etc/rc.d/rc 3
l4:4:wait:/etc/rc.d/rc 4
l5:5:wait:/etc/rc.d/rc 5
l6:6:wait:/etc/rc.d/rc 6

# Trap CTRL-ALT-DELETE
ca::ctrlaltdel:/sbin/shutdown -t3 -r now

# When our UPS tells us power has failed, assume we have a few minutes
# of power left.  Schedule a shutdown for 2 minutes from now.
# This does, of course, assume you have powerd installed and your
# UPS connected and working correctly.
pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"

# If power was restored before the shutdown kicked in, cancel it.
pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"

# Run gettys in standard runlevels
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6

# Run xdm in runlevel 5
x:5:respawn:/etc/X11/prefdm -nodaemon
h1:35:respawn:/etc/init.d/init.evmd run >/dev/null 2>&1 </dev/null
h2:35:respawn:/etc/init.d/init.cssd fatal >/dev/null 2>&1 </dev/null
h3:35:respawn:/etc/init.d/init.crsd run >/dev/null 2>&1 </dev/null

注意最后一部分内容,此处记录了Oracle集群主进程的源头。

2.使用pstree命令继续探索
1)挖掘EVMD
[root@rac1 ~]# ps -ef | grep -v grep | grep "init.evmd run"
root      3322     1  0 Nov24 ?        00:00:00 /bin/sh /etc/init.d/init.evmd run
[root@rac1 ~]# pstree 3322 -a
init.evmd /etc/init.d/init.evmd run
  └─su -l oracle -c...
      └─evmd.bin
          ├─evmlogger.bin -o /oracle/app/crs/evm/log/evmlogger.info -l/oracl
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          └─{evmd.bin}

2)挖掘CSSD
[root@rac1 ~]# ps -ef | grep -v grep | grep "init.cssd fatal"
root      3323     1  0 Nov24 ?        00:24:34 /bin/sh /etc/init.d/init.cssd fatal
[root@rac1 ~]# pstree 3323 -a
init.cssd /etc/init.d/init.cssd fatal
  ├─init.cssd /etc/init.d/init.cssd oprocd
  │   └─oprocd.bin run -t 1000 -m 500 -f
  ├─init.cssd /etc/init.d/init.cssd oclsomon
  │   └─runuser -l oracle -c...
  │       └─sh -c...
  │           └─oclsomon.bin
  ├─init.cssd /etc/init.d/init.cssd daemon
  │   └─ocssd.bin
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       └─{ocssd.bin}
  └─sleep 1

3)挖掘CRSD
[root@rac1 ~]# ps -ef | grep -v grep | grep "init.crsd run"
root      3324     1  0 Nov24 ?        00:00:00 /bin/sh /etc/init.d/init.crsd run
[root@rac1 ~]# pstree 3324 -a
init.crsd /etc/init.d/init.crsd run
  └─crsd.bin reboot
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      └─{crsd.bin}

3.小结
本文从“/etc/inittab”文件入手给出探索Oracle集群后台进程关系的方法。没有给出具体进程的详细功能描述。有关进程的详细描述请参考Oracle官方文档“Oracle Clusterware Software Component Processing Details”(http://download.oracle.com/docs/cd/B19306_01/rac.102/b14197/admcon.htm#sthref19)。

时间: 2024-09-23 13:41:22

转:Oracle集群重要进程evmd、cssd和crsd发源地及跟踪探索的相关文章

如何在oracle集群中更换私有网络的网卡

  如何在oracle 集群中更换私有网络的网卡. 今天是2014-03-17,目前学习进度也正在紧锣密鼓的进行着,今天把一小部分实验在做一下记录一下笔记. 我们知道RAC网络有私有网络和公用网络,公用网络提供客户访问请求,私用网络提供oracle 的cache fusion和节点心跳等作用,因为在11G R2可以执行4个private network 进行cache fusion. 但在刚刚开始安装的时候进行了忽略,那么安装之后如何修改呢?且该环节可以模拟oracle RAC怎么添加私用网卡,

Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之ORACLE集群概念和原理(二)

ORACLE集群概念和原理(二) Oracle集群概念和原理 Oracle的三种高可用集群方案 1 RAC(Real Application Clusters)                         多个Oracle服务器组成一个共享的Cache,而这些Oracle服务器共享一个基于网络的存储.这个系统可以容忍单机/或是多机失败.不过系统内部的多个节点需要高速网络互连,基本上也就是要全部东西放在在一个机房内,或者说一个数据中心内.如果机房出故障,比如网络不通,那就坏了.所以仅仅用RAC

oracle集群

  使用Oracle 真正应用集群 (RAC),Oracle数据库可跨一组集群服务器运行任何打包的或自定义的应用程序,不需对这些应用程序做任何改动.这就提供了最高的可用性和最灵活的可伸缩性.如果集群中的一个服务器故障,Oracle 可继续在其余的服务器上运行.当我们需要更多的处理能力时,只需添加服务器即可,无需用户下线.为保证低成本,我们可使用标准化的普通硬件组建出最高端的系统.     Oracle 真正应用集群为 Oracle 的企业网格计算体系结构提供了基础.Oracle RAC 技术可为

【Oracle 集群】Linux下Oracle RAC集群搭建之Oracle DataBase安装(八)

Oracle 11G RAC数据库安装(八) 数据库安装 继oracle集群安装之后,接下来也是最重要的数据库安装,整个数据库安装难度不大,用户以oracle用户身份登录RAC1主节点,对解压后的文件安装.主节点下安装后,其他所有结点自动安装,采用的原理机制就是ssh通信机制,所以前期ssh配置,各节点自动通信很重要.好在11G之后可以自动完成ssh配置,不用纯脚本,只需要按照步骤配置即可.接下来看下整体数据库群架构图.针对linux环境下搭建oracle数据库,本文也适用.针对数据库管理参见下

2.oracle的安装常识,Oralce服务器,oracle集群,oracle服务介绍,用户解锁相关

 1 oracle的安装常识(oracle10g和oracle11g的版本差别): A 安装目录都不要有中文和空格 B oracle10g支持winxp 不支持win7,8和vista;Oracle11g支持所有版本   2 Oralce服务器:由oracle实例和oracle数据库组成 oracle数据库:磁盘上物理文件的集合 A 当配置了oracle_home时,可以通过 echo$ORACLE_HOME来查看oracle的安装目录 B bin目录(存放exe工具).位置:F:\app\

【Oracle 集群】Oracle 11G RAC教程之集群安装(七)

Oracle 11G RAC集群安装(七) 集群安装 在进行oracle集群安装之前,首先看下整体集群架构图.另:oracle RAC集群整体配置基于三个步骤(前期配置,集群安装,数据库安装)                         Oracle登入rac1进行上传,解压安装p13390677_112040_Linux-x86-64_1of7.zip.p13390677_112040_Linux-x86-64_2of7.zip.p13390677_112040_Linux-x86-64_

【RAC】Oracle集群心跳及其参数misscount/disktimeout/reboottime

Oracle 集群心跳及其参数misscount/disktimeout/reboottime         <                                                        <>                                                                                                                                   

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

RAC 工作原理和相关组件(三) RAC 工作原理和相关组件       OracleRAC 是多个单实例在配置意义上的扩展,实现由两个或者多个节点(实例)使用一个共同的共享数据库(例如,一个数据库同时安装多个实例并打开).在这种情况下,每一个单独的实例有它自己的 cpu 和物理内存,也有自己的 SGA 和后台进程.和传统的 oracle 实例相比,在系统全局区(SYSTEM CLOBAL AREA,SGA)与后台进程有着显著的不同.最大的不同之处在于多了一个GRD,GRD内存块主要是记录此ra

【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之RAC 特殊问题和实战经验(五)

RAC 特殊问题和实战经验(五) 共享存储 在需要将一个 LUN (逻辑单元号)映射给多个节点.为集群提供一个共享的存储卷时,同一个存储 LUN 在各个主机端的 LUNID 必须是相同的.比如:  (一) 在为多个 ESX 节点创建一个 VMFS 卷的时候 (二) 在双机 HA 集群创建共享存储的时候 回到顶部 时间一致性 集群模式下,各个节点要协同工作,因此,各主机的时间必须一致.因此,各主机的时间必须一致.各个节点之间的时间差不能超时,一般如果超过 30s,节点很可能会重启,所以要同步各节点