Cluster Health Monitor(以下简称CHM)是一个Oracle提供的工具,用来自动收集操作系统的资源(CPU、内存、SWAP、进程、I/O以及网络等)的使用情况。CHM会每秒收集一次数据。这些系统资源数据对于诊断集群系统的节点重启、Hang、实例驱逐(Eviction)、性能问题等是非常有帮助的。另外,用户可以使用CHM来及早发现一些系统负载高、内存异常等问题,从而避免产生更严重的问题。

CHM默认安装在以下版本

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)。

CHM服务介绍(以下进程都可以使用ps -ef|grep 命令来查看):

1、System Monitor Service(osysmond):这个服务在所有节点都会运行,osysmond会将每个节点的资源使用情况发送给cluster logger service,后者将会把所有节点的信             息都接收并保存到CHM的资料库。

2、Cluster Logger Service(ologgerd):在一个集群中的,ologgerd 会有一个主机点(master),还有一个备节点(standby)。当ologgerd在当前的节点遇到问题无法启动后,它会在备用节点启用。

我们可以使用命令来查看CHM运行状态

  1. crsctl stat res -t -init

ora.crf is the Cluster Health Monitor resource name that ohasd manages.

Issue “crsctl stat res –t –init” to check the current status of the Cluster Health Monitor.

-------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS       
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------

ora.asm
     1        ONLINE  ONLINE       bt1ssse5d1z3             Started             
ora.crf
     1        ONLINE  OFFLINE

 CHM Repository:用于存放收集到数据,在默认情况下,会存在于Grid Infrastructure home 下 ,需要1 GB 的磁盘空间,每个节点大约每天会占用0.5GB的空间。 您可以使用OCLUMON来调整它的存放路径以及允许的空间大小(最多只能保存3天的数据。

简单命令操作

1、查看当前目录设置

  1.  oclumon manage -get reppath

2、查看当前收集大小(注意单位为秒)

  1. oclumon manage -get repsize

3、修改路径

  1. oclumon manage -repo reploc  /soft/chm/

4、修改大小

  1.  oclumon manage -repos resize 60000
 

获取CHM数据的方法

1、使用Grid_home/bin/diagcollection.pl

  • 首先,确定cluster logger service的主节点
    1. oclumon manage -get master
  • 用root身份在主节点执行下面的命令
<Grid_home>/bin/diagcollection.pl -collect -chmos -incidenttime inc_time -incidentduration duration
 incidenttime是指从什么时间开始获得数据,格式为MM/DD/YYYY24HH:MM:SS, incidentduration指的是获得开始时间后多长时间的数据。
  例如:
diagcollection.pl -collect -crshome /u01/app/11.2.0/grid -chmoshome  /u01/app/11.2.0/grid -chmos -incidenttime 06/15/201412:30:00 -incidentduration 00:05
   运行这个命令之后,CHM的数据会生成在文件chmosData_rac2_20140615_1237.tar.gz。

2、使用oclumon来获得CHM数据

  1. oclumon dumpnodeview [[-allnodes] | [-n node1 node2] [-last "duration"] | [-s "time_stamp" -e "time_stamp"] [-v] [-warning]] [-h]
  2. #(-s表示开始时间,-e表示结束时间)

例如:

  1. oclumon dumpnodeview -allnodes -v -s "2012-06-15 07:40:00" -e "2012-06-15 07:57:00" > /tmp/chm1.txt
  2. oclumon dumpnodeview -n node1 node2 -last "12:00:00" >/tmp/chm1.txt
  3. oclumon dumpnodeview -allnodes -last "00:15:00" >/tmp/chm1.txt
 

关闭以及开启CHM(使用grid在每个节点执行)

这个关闭类似Linux的service stop,重启后还会自动打开,关闭后系统IO会有所下降

  1. #关闭
  2. crsctl stop res ora.crf -init
  3. #启动
  4. crsctl start res ora.crf -init
 
禁用与启用CHM(类似chkconfig)
使用root用户
  1. #禁用
  2. crsctl modify resource ora.crf -attr "AUTO_START=never" -init
  3. #启用
  4. crsctl modify resource ora.crf -attr "AUTO_START=always" -init

参考Oracle官方文档
  http://docs.Oracle.com/cd/E11882_01/rac.112/e16794/troubleshoot.htm#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)

CHM及UI下载地址
http://www.oracle.com/technetwork/database/clustering/downloads/ipd-download-homepage-087212.html

http://blog.csdn.net/mhmds/article/details/72843249

 附录:

crsctl stop res -all 
crsctl start res -all 
crsctl status res -t

crsctl status res -t -init

转 Oracle Cluster Health Monitor(CHM)简介的更多相关文章

  1. oralce health monitor

    1. Health Monitor简介    Health Monitor是11g里新增加的特性,用于数据库的各层和各个组建的诊断检查.例如可以检查:文件损坏.物理逻辑块损坏.redo和undo故障. ...

  2. 11g新特性:Health Monitor Checks

    一.什么是Health Monitor ChecksHealth Monitor Checks能够发现文件损坏,物理.逻辑块损坏,undo.redo损坏,数据字典损坏等等.Health Monitor ...

  3. About Health Monitor Checks

    About Health Monitor Checks Health Monitor checks (also known as checkers, health checks, or checks) ...

  4. Linux/Unix shell 监控Oracle告警日志(monitor alter log file)

    使用shell脚本实现对Oracle数据库的监控与管理将大大简化DBA的工作负担,如常见的对实例的监控,监听的监控,告警日志的监控,以及数据库的备份,AWR report的自动邮件等.本文给出Linu ...

  5. Failed to upgrade Oracle Cluster Registry configuration(root.sh)

        近期在给客户基于Suse 11 sp3安装Oracle 10g RAC,在安装完clusterware运行/u01/app/crs/root.sh时收到错误提示.Failed to upgra ...

  6. (五)Cluster Health

    Let’s start with a basic health check, which we can use to see how our cluster is doing. We’ll be us ...

  7. INS-20802 Oracle Cluster Verification Utility failed解释说明

    背景:安装RAC,安装GI集群管理软件时,在最后快结束时,总是报如上INS-错误 #官方文档:error 说明;字符串解析失败 INS-20802: string failed. Cause: The ...

  8. Oracle 用户、角色管理简介

    Oracle 用户.角色管理简介 by:授客 QQ:1033553122 创建用户 形式1:创建名为testacc2的用户 CREATE USER testacc2 IDENTIFIED BY abc ...

  9. Oracle中CBO优化器简介

    Oracle中CBO优化器简介 Oracle数据库中的优化器是SQL分析和执行的优化工具.它负责制定SQL的执行计划,也就是它负责保证SQL的执行计划的效率最高,比如优化器决定Oracle以什么样的方 ...

随机推荐

  1. LightOJ1197 Help Hanzo —— 大区间素数筛选

    题目链接:https://vjudge.net/problem/LightOJ-1197 1197 - Help Hanzo    PDF (English) Statistics Forum Tim ...

  2. 'gbk' codec can't encode character '\xa5' in position 4546: illegal multibyte sequence错误解决

    sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='gb18030') 原文 http://blog.csdn.net/jim7424 ...

  3. [原创]java操作word(一)

    一. 需求背景 在做项目的过程中,经常会遇到要把数据库数据导出到Word文件中的需求,因为很多情况下,我们需要将数据导出到WORD中进行打印.此需求可以通过用程序填充数据到word模板中来实现.所谓模 ...

  4. 【转载】malloc和new

    1.malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符.它们都可用于申请动态内存和释放内存2.对于非内部数据类型的对象而言,光用maloc/free无法满足动态对 ...

  5. Java笔记(六)

    IO流: 字符流和字节流: 字符流两个基类: InputStream OutputStream 字节流两个基类: Reader Writer FileWriter: import java.io.Fi ...

  6. FFT的常数优化

    卡得一手好常数..学习了..(似乎只对FFT有效) JZOJ 4349 #include <bits/stdc++.h> #define LL long long #define DB l ...

  7. CF 757E Bash Plays with Functions——积性函数+dp+质因数分解

    题目:http://codeforces.com/contest/757/problem/E f0[n]=2^m,其中m是n的质因子个数(种类数).大概是一种质因数只能放在 d 或 n/d 两者之一. ...

  8. mfc给对话框添加背景

    void CMyProjetDlg::OnPaint() { CPaintDC dc(this);//用于绘制设备的上下文 CRect rect; GetClientRect(&rect); ...

  9. 技术胖Flutter第四季-19导航父子页面的跳转返回

    技术胖Flutter第四季-19导航父子页面的跳转返回 博客地址: https://jspang.com/post/flutter4.html#toc-010 onPressed是当前按下的时候,按下 ...

  10. Bootstrap表格分页(二)

    本文使用Bootstrap-table来对表格进行分页,关于Bootstrap-table以及下载插件包请点击官网:http://bootstrap-table.wenzhixin.net.cn 首先 ...