11gR2 新特性:Oracle Cluster Health Monitor(CHM)簡(jiǎn)介,Cluster Health Monitor(以下簡(jiǎn)稱CHM)是一個(gè)Oracle提供的工具,用來(lái)自
Cluster Health Monitor(以下簡(jiǎn)稱CHM)是一個(gè)Oracle提供的工具,,用來(lái)自動(dòng)收集操作系統(tǒng)的資源(CPU、內(nèi)存、SWAP、進(jìn)程、I/O以及網(wǎng)絡(luò)等)的使用情況。CHM會(huì)每秒收集一次數(shù)據(jù)。
這些系統(tǒng)資源數(shù)據(jù)對(duì)于診斷集群系統(tǒng)的節(jié)點(diǎn)重啟、Hang、實(shí)例驅(qū)逐(Eviction)、性能問(wèn)題等是非常有幫助的。另外,用戶可以使用CHM來(lái)及早發(fā)現(xiàn)一些系統(tǒng)負(fù)載高、內(nèi)存異常等問(wèn)題,從而避免產(chǎn)生更嚴(yán)重的問(wèn)題。
CHM會(huì)自動(dòng)安裝在下面的軟件:
11.2.0.2 及更高版本的 Oracle Grid Infrastructure for Linux (不包括Linux Itanium) 、Solaris (Sparc 64 和 x86-64)
11.2.0.3 及更高版本 Oracle Grid Infrastructure for AIX 、 Windows (不包括Windows Itanium)。
在集群中,可以通過(guò)下面的命令查看CHM對(duì)應(yīng)的資源(ora.crf)的狀態(tài):
$ crsctl stat res -t -init
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_DETAILS Cluster Resources
ora.crf ONLINE ONLINE rac1
CHM主要包括兩個(gè)服務(wù):
1). System Monitor Service(osysmond):這個(gè)服務(wù)在所有節(jié)點(diǎn)都會(huì)運(yùn)行,osysmond會(huì)將每個(gè)節(jié)點(diǎn)的資源使用情況發(fā)送給cluster logger service,后者將會(huì)把所有節(jié)點(diǎn)的信息都接收并保存到CHM的資料庫(kù)。
$ ps -ef|grep osysmond
root 7984 1 0 Jun05 ? 01:16:14 /u01/app/11.2.0/grid/bin/osysmond.bin
2). Cluster Logger Service(ologgerd):在一個(gè)集群中的,ologgerd 會(huì)有一個(gè)主機(jī)點(diǎn)(master),還有一個(gè)備節(jié)點(diǎn)(standby)。當(dāng)ologgerd在當(dāng)前的節(jié)點(diǎn)遇到問(wèn)題無(wú)法啟動(dòng)后,它會(huì)在備用節(jié)點(diǎn)啟用。
主節(jié)點(diǎn):
$ ps -ef|grep ologgerd
root 8257 1 0 Jun05 ? 00:38:26 /u01/app/11.2.0/grid/bin/ologgerd -M -d /u01/app/11.2.0/grid/crf/db/rac2
備節(jié)點(diǎn):
$ ps -ef|grep ologgerd
root 8353 1 0 Jun05 ? 00:18:47 /u01/app/11.2.0/grid/bin/ologgerd -m rac2 -r -d
/u01/app/11.2.0/grid/crf/db/rac1
CHM Repository:用于存放收集到數(shù)據(jù),默認(rèn)情況下,會(huì)存在于Grid Infrastructure home 下 ,需要1 GB 的磁盤(pán)空間,每個(gè)節(jié)點(diǎn)大約每天會(huì)占用0.5GB的空間。 您可以使用OCLUMON來(lái)調(diào)整它的存放路徑以及允許的空間大小(最多只能保存3天的數(shù)據(jù))。
下面的命令用來(lái)查看它當(dāng)前設(shè)置:
$ oclumon manage -get reppath
CHM Repository Path = /u01/app/11.2.0/grid/crf/db/rac2
Done
$ oclumon manage -get repsize
CHM Repository Size = 68082 <====單位為秒
Done
修改路徑:
$ oclumon manage -repos reploc /shared/oracle/chm
修改大小:
$ oclumon manage -repos resize 68083 <==在3600(小時(shí)) 到 259200(3天)之間
rac1 --> retention check successful
New retention is 68083 and will use 1073750609 bytes of disk space
CRS-9115-Cluster Health Monitor repository size change completed on all nodes.
Done
獲得CHM生成的數(shù)據(jù)的方法有兩種:
1. 一種是使用Grid_home/bin/diagcollection.pl:
1). 首先,確定cluster logger service的主節(jié)點(diǎn):
$ oclumon manage -get master
Master = rac2
2).用root身份在主節(jié)點(diǎn)rac2執(zhí)行下面的命令:
#
inc_time是指從什么時(shí)間開(kāi)始獲得數(shù)據(jù),格式為MM/DD/YYYY24HH:MM:SS, duration指的是獲得開(kāi)始時(shí)間后多長(zhǎng)時(shí)間的數(shù)據(jù)。
比如:# diagcollection.pl -collect -crshome /u01/app/11.2.0/grid -chmoshome /u01/app/11.2.0/grid -chmos -incidenttime 06/15/201215:30:00 -incidentduration 00:05
3).運(yùn)行這個(gè)命令之后,CHM的數(shù)據(jù)會(huì)生成在文件chmosData_rac2_20120615_1537.tar.gz。
2. 另外一種獲得CHM生成的數(shù)據(jù)的方法為oclumon:
$oclumon dumpnodeview [[-allnodes] | [-n node1 node2] [-last "duration"] | [-s "time_stamp" -e "time_stamp"] [-v] [-warning]] [-h]
-s表示開(kāi)始時(shí)間,-e表示結(jié)束時(shí)間
$ oclumon dumpnodeview -allnodes -v -s "2012-06-15 07:40:00" -e "2012-06-15 07:57:00" > /tmp/chm1.txt
$ oclumon dumpnodeview -n node1 node2 node3 -last "12:00:00" >/tmp/chm1.txt
$ oclumon dumpnodeview -allnodes -last "00:15:00" >/tmp/chm1.txt
下面是/tmp/chm1.txt中的部分內(nèi)容:
----------------------------------------
Node: rac1 Clock: '06-15-12 07.40.01' SerialNo:168880
----------------------------------------
SYSTEM:
#cpus: 1 cpu: 17.96 cpuq: 5 physmemfree: 32240 physmemtotal: 2065856 mcache: 1064024 swapfree: 3988376 swaptotal: 4192956 ior: 57 io
w: 59 ios: 10 swpin: 0 swpout: 0 pgin: 57 pgout: 59 netr: 65.767 netw: 34.871 procs: 183 rtprocs: 10 #fds: 4902 #sysfdlimit: 6815744
#disks: 4 #nics: 3 nicErrors: 0
TOP CONSUMERS:
topcpu: 'mrtg(32385) 64.70' topprivmem: 'ologgerd(8353) 84068' topshm: 'oracle(8760) 329452' topfd: 'ohasd.bin(6627) 720' topthread:
'crsd.bin(8235) 44'
PROCESSES:
name: 'mrtg' pid: 32385 #procfdlimit: 65536 cpuusage: 64.70 privmem: 1160 shm: 1584 #fd: 5 #threads: 1 priority: 20 nice: 0
name: 'oracle' pid: 32381 #procfdlimit: 65536 cpuusage: 0.29 privmem: 1456 shm: 12444 #fd: 32 #threads: 1 priority: 15 nice: 0
...
name: 'oracle' pid: 8756 #procfdlimit: 65536 cpuusage: 0.0 privmem: 2892 shm: 24356 #fd: 47 #threads: 1 priority: 16 nice: 0
----------------------------------------
Node: rac2 Clock: '06-15-12 07.40.02' SerialNo:168878
----------------------------------------
SYSTEM:
#cpus: 1 cpu: 40.72 cpuq: 8 physmemfree: 34072 physmemtotal: 2065856 mcache: 1005636 swapfree: 3991808 swaptotal: 4192956 ior: 54 io
w: 104 ios: 11 swpin: 0 swpout: 0 pgin: 54 pgout: 104 netr: 77.817 netw: 33.008 procs: 178 rtprocs: 10 #fds: 4948 #sysfdlimit: 68157
44 #disks: 4 #nics: 4 nicErrors: 0
TOP CONSUMERS:
topcpu: 'orarootagent.bi(8490) 1.59' topprivmem: 'ologgerd(8257) 83108' topshm: 'oracle(8873) 324868' topfd: 'ohasd.bin(6744) 720' t
opthread: 'crsd.bin(8362) 47'
PROCESSES:
name: 'oracle' pid: 9040 #procfdlimit: 65536 cpuusage: 0.19 privmem: 6040 shm: 121712 #fd: 33 #threads: 1 priority: 16 nice: 0
...
關(guān)于CHM的更多解釋,請(qǐng)參考Oracle官方文檔:
#CWADD92242
Oracle Clusterware Administration and Deployment Guide
11g Release 2 (11.2)
Part Number E16794-17
或者 My Oracle Support文檔:
Cluster Health Monitor (CHM) FAQ (Doc ID 1328466.1)
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com