- 最后登录
- 2017-5-4
- 在线时间
- 81 小时
- 威望
- 999
- 金钱
- 2391
- 注册时间
- 2013-9-11
- 阅读权限
- 150
- 帖子
- 1124
- 精华
- 5
- 积分
- 999
- UID
- 1220
|
1#
发表于 2013-11-17 19:13:28
|
查看: 2035 |
回复: 0
如何安装独立版的CHM(Oracle Cluster Health Monitor)
Cluster Health Monitor(以下简称CHM)是一个Oracle提供的工具,用来自动收集操作系统的资源(CPU、内存、SWAP、进程、I/O以及网络等)的使用情况。相对于OSWatcher,CHM直接调用OS的API来降低开销,而OSWatcher则是直接调用UNIX命令;另外,CHM的实时性更强,每秒收集一次数据(在11.2.0.3,改为了5秒一次)。 OSWatcher的优点是可以用traceroute命令检测私网间的连通性,而且生成的数据的保留时间可以设置得很长。如果可以的话,最好是两个工具都安装。
对于CHM的更多解释,请参考之前的一篇博客:
11gR2 新特性:Oracle Cluster Health Monitor(CHM)简介
在这篇文章中主要介绍如何安装独立版的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)。
在11.2.0.2之前的集群(10.2到11.2.0.1),可以安装独立版的CHM。目前支持的平台有Linux x86 和Linux x86-64,还有32位的Windows Server 2003 SP 2。独立版的CHM并不一定要安装在集群环境,单机环境也可以使用:
o 在Linux平台上运行独立版的CHM,要求Linux kernel在2.6.9或之上。另外,一定不能在已经自动安装了CHM的集群环境上再安装单机版的。
o 可以创建一个新的操作系统用户或者用oracle用户来进行安装,这个用户在RAC的节点间要建立用户等效性。
o 安装完成后的CHM位于/usr/lib/oracrf,而且在/etc/init.d/init.crfd建立一个init脚本,这样在服务器重启后,只要crf是enabled,就可以自动启动。
o CHM的数据保存在一个BDB数据库中,这个数据库所在的目录可以在安装CHM的时候用“-b”来指定。
下面是在Linux平台上的10.2.0.4的双节点RAC安装CHM的过程。
1. 下载单机版的CHM:
http://www.oracle.com/technetwork/database/clustering/downloads/ipd-download-homepage-087212.html
下载文件后,仔细阅读附带的README.txt文件。
2. 确保安装CHM的用户配置了用户等效性,可以无需密码ssh到远程节点。
如果要创建独立的用户,请执行:
# useradd -d /opt/crfuser -s /bin/sh -g oinstall crfuser
然后针对这个用户配置ssh,请参考:http://fedoranews.org/dowen/sshkeys/
在本文的例子中用oracle用户来安装。
3. 在一个节点,用oracle用户来解压CHM:
[oracle@rac1 ~]$su - oracle
[oracle@rac1 ~]$mkdir /home/oracle/chm 《==所有节点都要创建
[oracle@rac1 ~]$cd /home/oracle/chm
[oracle@rac1 jane]$ ls
1554900.zip
[oracle@rac1 jane]$ unzip 1554900.zip
4. 在一个节点用oracle用户来安装CHM:
首先要在所有节点都创建存放CHM db的目录:
#mkdir /opt/oracrfdb 《==用root 用户
确定在所有节点都有一个属主为oracle的目录/home/oracle/chm
/home/oracle/chm这个目录是临时用的,安装完后会这个临时目录中的CHM文件会被删除,真正安装完成的CHM在/usr/lib/oracrf。
用oracle安装:
[root@rac1 install]# su - oracle
[oracle@rac1 ~]$ cd /home/oracle/chm/install
[oracle@rac1 chm]$ perl /home/oracle/chm/install/crfinst.pl -i rac1,rac2 -b /opt/oracrfdb -m rac1
BDB path provided is on a root FS. Do you want to continue (Y/n):
Y
Performing checks on nodes: "rac1 rac2" ...
Assigning rac2 as replica
Generating cluster wide configuration file...
Creating a bundle for remote nodes...
Installing on nodes "rac2 rac1" ...
Configuration complete on nodes "rac2 rac1" ...
Please run "$CRFPERLBIN /home/oracle/chm/install/crfinst.pl -f, optionally specifying BDB location
with -b <bdb location> as root on each node to complete the install process.
5. 用root运行脚本:
节点1:
[oracle@rac1 chm]$ su -
Password:
[root@rac1 ~]# perl /home/oracle/chm/install/crfinst.pl -f
Installation completed successfully at /usr/lib/oracrf...
节点2:
[root@rac2 oracle]# perl /home/oracle/chm/install/crfinst.pl -f
Installation completed successfully at /usr/lib/oracrf...
CHM已经在所有节点安装成功。
6. 在所有节点用root身份enable CHM,这样在主机重启后,可以自动启动crf:
节点1:
[root@rac1 ~]# /etc/init.d/init.crfd enable
节点2:
[root@rac2]# /etc/init.d/init.crfd enable
7. 检查CHM状态:
节点1:
[root@rac1 ~]# /etc/init.d/init.crfd status 《==所有进程都已启动
osysmond running with PID=27793.
ologgerd running with PID=27895.
oproxyd running with PID=27910.
[root@rac1 ~]# ps -ef|grep osysmond
root 13234 26646 0 19:01 pts/0 00:00:00 grep osysmond
root 27793 27713 1 18:22 ? 00:00:42 /usr/lib/oracrf/bin/osysmond
[root@rac1 ~]# ps -ef|grep ologgerd
root 13274 26646 0 19:01 pts/0 00:00:00 grep ologgerd
root 27895 1 0 18:22 ? 00:00:04 /usr/lib/oracrf/bin/ologgerd -M -d /opt/oracrfdb
[root@rac1 ~]# ps -ef|grep oproxyd
root 13388 26646 0 19:01 pts/0 00:00:00 grep oproxyd
oracle 27910 1 0 18:22 ? 00:00:00 /usr/lib/oracrf/bin/oproxyd
节点2:
[root@rac2 oracle]# /etc/init.d/init.crfd status《==所有进程都已启动
osysmond running with PID=18321.
ologgerd running with PID=18455.
oproxyd running with PID=18479.
[root@rac2 oracle]# ps -ef|grep osysmond
root 18321 18234 1 18:49 ? 00:00:03 /usr/lib/oracrf/bin/osysmond
root 20065 4162 0 18:53 pts/0 00:00:00 grep osysmond
[root@rac2 oracle]# ps -ef|grep ologgerd
root 18455 1 1 18:49 ? 00:00:02 /usr/lib/oracrf/bin/ologgerd -m rac1 -r -d
/opt/oracrfdb
root 20086 4162 0 18:53 pts/0 00:00:00 grep ologgerd
[root@rac2 oracle]# ps -ef|grep oproxyd
oracle 18479 1 0 18:49 ? 00:00:00 /usr/lib/oracrf/bin/oproxyd
root 20113 4162 0 18:53 pts/0 00:00:00 grep oproxyd
8. 查看CHM的DB所在的目录:
节点1:
[root@rac1 chm]# ls -l /opt/oracrfdb
total 92652
-rw-r----- 1 root root 643072 Mar 26 19:23 crfalert.bdb
-rw-r----- 1 root root 57147392 Mar 26 19:24 crfclust.bdb
-rw-r----- 1 root root 8192 Mar 26 18:58 crfconn.bdb
-rw-r----- 1 root root 823296 Mar 26 19:23 crfcpu.bdb
-rw-r----- 1 root root 548864 Mar 26 19:23 crfhosts.bdb
-rw-r----- 1 root root 925696 Mar 26 19:23 crfloclts.bdb
-rw-r----- 1 root root 487424 Mar 26 19:23 crfts.bdb
-rw-r----- 1 root root 24576 Mar 26 18:22 __db.001
-rw-r----- 1 root root 319488 Mar 26 18:22 __db.002
-rw-r----- 1 root root 2629632 Mar 26 18:22 __db.003
-rw-r----- 1 root root 2162688 Mar 26 18:22 __db.004
-rw-r----- 1 root root 778240 Mar 26 18:22 __db.005
-rw-r----- 1 root root 49152 Mar 26 18:22 __db.006
-rw-r----- 1 root root 16777216 Mar 26 19:19 log.0000000006
-rw-r----- 1 root root 16777216 Mar 26 19:23 log.0000000007
-rw-r--r-- 1 root root 120000000 Mar 26 18:22 rac1.ldb 《==========
节点2:
[root@rac2 chm]# ls -l /opt/oracrfdb
total 92636
-rw-r----- 1 root root 397312 Mar 26 19:15 crfalert.bdb
-rw-r----- 1 root root 64159744 Mar 26 19:15 crfclust.bdb
-rw-r----- 1 root root 577536 Mar 26 19:15 crfcpu.bdb
-rw-r----- 1 root root 372736 Mar 26 19:15 crfhosts.bdb
-rw-r----- 1 root root 1011712 Mar 26 19:15 crfloclts.bdb
-rw-r----- 1 root root 8192 Mar 26 19:15 crfrep.bdb
-rw-r----- 1 root root 532480 Mar 26 19:15 crfts.bdb
-rw-r----- 1 root root 24576 Mar 26 18:49 __db.001
-rw-r----- 1 root root 319488 Mar 26 18:49 __db.002
-rw-r----- 1 root root 2629632 Mar 26 18:49 __db.003
-rw-r----- 1 root root 2162688 Mar 26 18:49 __db.004
-rw-r----- 1 root root 778240 Mar 26 18:49 __db.005
-rw-r----- 1 root root 49152 Mar 26 18:49 __db.006
-rw-r----- 1 root root 16777216 Mar 26 19:11 log.0000000006
-rw-r----- 1 root root 16777216 Mar 26 19:15 log.0000000007
-rw-r--r-- 1 root root 120000000 Mar 26 18:49 rac2.ldb 《==========
-rw-r----- 1 root root 8192 Mar 26 19:15 repdhosts.bdb
如何卸载单机版的CHM:
在所有RAC节点分别执行:
1. 用root用户disable CHM:
# /etc/init.d/init.crfd disable
2. 卸载CHM:
/usr/lib/oracrf/install/crfinst.pl -d
3. 手工删除CHM存放数据用的BDB(这个库的地址在安装时指定���。
4. 如果卸载后/usr/lib/oracrf仍然存在,可以手工删除这个目录。
如何使用单机版的CHM来收集性能数据:
方法1:
$oclumon dumpnodeview -allnodes -v -s "2013-03-26 18:00:00" -e "2013-03-26 21:10:00" > /tmp/chm1.txt
方法2:
在使用diagcollection.pl收集数据时,crshome 需要指定CHM的目录而不是CRS的目录:
# /usr/lib/oracrf/bin/diagcollection.pl --collect --crshome /usr/lib/oracrf --chmos --incidenttime
03/26/201312:00:00 --incidentduration 00:05
否则可能会报错:
# /usr/lib/oracrf/bin/diagcollection.pl --collect --crshome /oracle/app/product/10.2.0/crs_1 --chmos --
incidenttime 03/24/201325:00:00 --incidentduration 00:40
Production Copyright 2004, 2010, Oracle. All rights reserved
Cluster Ready Services (CRS) diagnostic collection tool
Cannot parse master from output: sh: /oracle/app/product/10.2.0/crs_1/bin/oclumon: No such file or directory
diagcollection.pl
|
|