Oracle CRS/GI 進程介紹

1. ocssd.bin:這是一個很核心的進程,如果它異常終止會導致這個節點的集羣或者主機重啓。這個進程主要用於檢查表決盤能否正常訪問,節點私網間的通信是否正常。數據庫實例上的LMON進程也會註冊到CSSD上,這樣CSSD會通過LMON來了解數據庫實例的健康情況。
  如果節點發生了主機自動重啓,需要查看ocssd的日誌,位於: <CRS_HOME>/log/<host>/cssd。

2. crsd.bin: 這個進程主要用於管理集羣中的資源。用來啓動、停止檢查一些資源,比如數據庫實例、ASM、監聽、磁盤組、VIP等。在11.2,這些具體的操作由對應的agent執行。另外,OCR的維護也是由CRSD完成的。
   當發現某些資源異常終止後,首先需要查看crsd的日誌:<CRS_HOME>/log/<host>/crsd。

3. evmd.bin: 事件監控(event monitor)進程,由它來發布集羣事件,比如實例啓動、停止等事件。

4. ons進程:Oracle Notification Service daemon,它用於接收evmd發來的集羣事件,然後將這些事件發送給應用預訂者或者本地的監聽,這樣就可以實現FAN(Fast Application Notification),應用能夠接收到這些事件並進行處理。

5. gsd: 只有當CRS或者GI上需要管理9i的數據庫時才需要。在11.2, gsd 默認就是offline的。
可以參考My Oracle Support 文檔: GSD Is Used Only if 9i RAC Database is Present (Doc ID 429966.1)

10g和 11.1特有的:
1. oprocd.bin:Oracle Clusterware Process Monitor Daemon,用來監控主機hang,如果發現主機hang後會發起主機重啓。只有未使用第三方的集羣軟件時才運行,Linux上從10.2.0.4開始使用。
   oprocd的日誌會在:/etc/oracle/oprocd/*.log.* 或者 /var/opt/oracle/oprocd/*.log.*。

2. oclsomon.bin: 用來監控ocssd進程是否hang,如果發現hang,會發起reboot.


11.2特有的:
1. cssdagent(11.2): 這個進程由ohasd啓動,然後由它來啓動、停止、檢查ocssd進程,以root身份運行。
   它的日誌位於:<GRID_HOME>/log/<host>/agent/ohasd/oracssdagent_root

2. cssdmonitor(11.2):監控cssdagent,並且檢查節點hang(類似於oprocd),監控ocssd進程是否hang(類似於oclsomon),監控vendor clusterware(類似於vmon),以root身份運行。
   它的日誌位於:<GRID_HOME>/log/<host>/agent/ohasd/oracssdmonitor_root

3. ohasd.bin: 在GI啓動時,最先啓動的就是ohasd,然後由它啓動agent(orarootagent,oraagent, cssdagnet 和 cssdmonitor) ,各個agent再啓動對應的進程。  
    如果GI啓動過程有問題,可以查看一下ohasd的日誌:<GRID_HOME>/log/<host>/agent/ohasd


4. mdnsd.bin:這個進程通過多播(Multicast)發現集羣中的節點和所有的網卡信息。一定要確定集羣中的網卡支持多播,而且節點間的通信正常。
   它的日誌位於:<GRID_HOME>/log/<host>/mdnsd

5. gpnpd.bin: 發佈構建集羣所需要的bootstrap 信息,並且在集羣的所有節點之間同步gpnp profile。
   它的日誌位於:<GRID_HOME>/log/<host>/gpnpd

6. gipcd.bin: 這個進程負責管理集羣中所有的私網(cluster interconnect)網卡。私網信息是通過gpnpd獲得的。
   它的日誌位於:<GRID_HOME>/log/<host>/gipcd

7. gnsd(可選): Grid Naming Service. 相當於子DNS,功能和DNS類似,會取代使用/etc/hosts進行主機的解析。
   它的日誌位於:<GRID_HOME>/log/<host>/gnsd

8. octssd.bin: The Cluster Time Sync Service(CTSS) 用於各個節點間的時鐘同步,集羣中的一個節點的時鐘會作爲參照節點,其它節點和這個節點進行時鐘同步。注意:當第三方時間同步軟件(例如:NTP) 存在時,CTSS會以‘觀察者’的方式運行,並不修改節點時間,但是,如果CTSS沒有發現第三方時間同步軟件,它會開始修改節點時間以便和參考節點同步。
   它的日誌位於:<GRID_HOME>/log/<host>/ctssd.

9. osysmond.bin :這是Oracle Cluster Health Monitor(CHM)的主要進程,這個進程在所有節點都會運行,sysmond會將每個節點的資源使用情況發送給cluster logger service,後者將會把所有節點的信息都接收並保存到CHM的資料庫。
   它的日誌位於:<GRID_HOME>/log/<host>/crfmond/crfmond.log 

10. ologgerd: 這是Oracle Cluster Health Monitor(CHM)的另一個主要進程,在一個集羣中的,ologgerd 會有一個主機點(master),還有一個備節點(standby)。當ologgerd在當前的節點遇到問題無法啓動後,它會在備用節點啓用。
   它的日誌位於:<GRID_HOME>/log/<host>/crflogd/crflogd.log


11. <XXX>agent.bin:在11.2,各個資源的啓動、停止和檢查都是由agent來執行的。ohasd 會把這些agent啓動。

Agent包括兩種,一種是ohasd的:
oraagent_grid: 啓動/停止/檢查/清除ora.asm, ora.evmd, ora.gipcd, ora.gpnpd, ora.mdnsd等資源。
orarootagent_root:啓動/停止 /檢查/清除 ora.crsd, ora.ctssd, ora.diskmon, ora.drivers.acfs, ora.crf (11.2.0.2)等資源。
oracssdagent_root: 啓動/停止/檢查 ocssd進程。
oracssdmonitor_root:監控cssdagent進程。

它們的日誌位於:<GRID_HOME>/log/<host>/agent/ohasd

另一種是crsd的:
oraagent_grid: 啓動/停止/檢查/清除 asm, ora.eons, ora.LISTENER.lsnr, SCAN listeners, ora.ons, diskgroup  等資源
oraagent_oracle: 啓動/停止/檢查/清除 service, database 等資源
orarootagent_root : 啓動/停止/檢查/清除 GNS, VIP, SCAN VIP and network 等資源.
scriptagent_grid:  應用服務定製的服務。

它們的日誌位於:<GRID_HOME>/log/<host>/agent/crsd


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章