【RAC】Oracle叢集重要程式evmd、cssd和crsd發源地及跟蹤探索
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”()。
Good luck.
secooler
10.12.02
-- The End --
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”()。
Good luck.
secooler
10.12.02
-- The End --
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28389881/viewspace-2080991/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 轉:Oracle叢集重要程式evmd、cssd和crsd發源地及跟蹤探索OracleCSS
- 學習oracle 10.2.0.1 rac叢集程式cssd的原理及機制之系列一OracleCSS
- Fails to Join the Cluster as CRSD and EVMD are in INTERMEDIATE StateAI
- oracle跟蹤檔案和跟蹤事件(zt)Oracle事件
- Oracle RAC叢集、程式、日誌簡介Oracle
- 3 安裝配置oracle叢集和RACOracle
- oracle rac_cssd程式故障重啟相關OracleCSS
- 用strace跟蹤分析oracle 10.2.0.1 rac lmd程式系列二Oracle
- Oracle叢集(RAC)時間同步(ntp和CTSS)Oracle
- Oracle跟蹤事件和dumpOracle事件
- 如何檢視Oracle RAC叢集的叢集名稱(CLUSTER NAME)Oracle
- Oracle系列:Oracle RAC叢集體系結構Oracle
- oracle 10g 程式跟蹤命令Oracle 10g
- 收集Oracle RAC跟蹤診斷資訊的幾個工具Oracle
- ORACLE 跟蹤工具Oracle
- [zt] oracle跟蹤檔案與跟蹤事件Oracle事件
- oracle跟蹤檔案與跟蹤事件(zt)Oracle事件
- Oracle 12c RAC CSSD程式無法啟動real time模式OracleCSS模式
- Oracle事件跟蹤及結構資料dumpOracle事件
- oracle RAC 診斷叢集狀態命令Oracle
- oracle 11g rac 叢集操作命令Oracle
- 【RAC】使用crsctl工具控制Oracle RAC叢集的啟停Oracle
- oracle 跟蹤檔案和轉儲命令及常用轉儲命令(轉)Oracle
- 【TRACE】Oracle跟蹤事件Oracle事件
- Oracle跟蹤會話Oracle會話
- Oracle 跟蹤事件【轉】Oracle事件
- Oracle跟蹤檔案Oracle
- Oracle RAC 10g叢集節點增加Oracle
- Oracle10g RAC叢集基本命令Oracle
- 使用Linux Strace跟蹤除錯Oracle程式程式Linux除錯Oracle
- RAC更改叢集VIP
- 11.2RAC環境中的CRSD程式
- Oracle EBS併發請求啟用跟蹤Oracle
- 【RAC】Oracle RAC叢集環境下日誌檔案結構Oracle
- Oracle日誌切換及頻率跟蹤指令碼Oracle指令碼
- 使用ErrorStack進行Oracle錯誤跟蹤及診斷ErrorOracle
- ORACLE RAC叢集配置管理工具-SRVCTLOracle
- ORACLE 11g RAC 叢集互連延遲Oracle