Oracle EM Grid Control 不能连接agent问题(一)

2014-11-24 18:58:35 · 作者: · 浏览: 24

oracle emgrid 的agent 软件安装在各个linux 服务器上,用于监控oracle 数据库和rac 系统。我安装的agent 版本是10.2.0.5 。


这个版本安装决定导致了我最后遇到一个大问题,后面会介绍到。


在使用浏览器登录oms 服务端时,主机那个项都是正常访问的,可以显示主机的相关信息,如内存,IO 等。


但访问到数据库目标时,输入sys 连接,则出错了。


检查日志文件D:\OracleEMGridControl\oms10g\sysman\log\emoms.log ,报错如下:


2010-05-24 14:06:09,531 [Thread-27] ERROR em.jobs remoteOp.2114 - DBVerify.remoteOp(): CommException: 出现内部错误


2010-05-24 14:06:09,531 [Thread-27] ERROR db.rac populateStatusPage.772 - RacState.populateStatusPage: result from version retrieva l had errors.


2010-05-24 14:06:11,593 [EMUI_14_06_11_/console/rac/racState] ERROR db.rac onEndProcess.1069 - RacStateController.onEndProcess: hasErr = true, errType = 6, errMsg= 出现内部错误


2010-05-24 14:06:58,312 [MetricCollector:RACHOMETAB_THREAD600:60] ERROR rt.RacMetricCollectorTarget _getAllData.184 - oracle.sysman.emSDK.emd.comm.CommException: Connection timed out: connect


oracle.sysman.emSDK.emd.comm.CommException: Connection timed out: connect


at oracle.sysman.emSDK.emd.comm.EMDClient.getResponseForRequest(EMDClient.java:1541)


at oracle.sysman.emSDK.emd.comm.EMDClient.getMetrics(EMDClient.java:913)


at oracle.sysman.emo.rac.perform.metric.rt.RacHomeTab._getAllData(RacHomeTab.java:180)


at oracle.sysman.emo.rac.perform.metric.rt.RacHomeTab.getData(RacHomeTab.java:91)


at oracle.sysman.emo.perf.metric.eng.MetricCached.collectCachedData(MetricCached.java:404)


at oracle.sysman.emo.perf.metric.eng.MetricCollectorThread._collectCachedData(MetricCollectorThread.java:596)


at oracle.sysman.emo.perf.metric.eng.MetricCollectorThread.run(MetricCollectorThread.java:320)


at java.lang.Thread.run(Thread.java:534)


分析和解决过程
第一步,在agent 服务器上分析agent 是否能将监控信息上传到OMS 服务器上


/u01/oracle/home@webdg1=>servdb1$emctl upload


Oracle Enterprise Manager 10g Release 5 Grid Control 10.2.0.5.0.


Copyright (c) 1996, 2009 Oracle Corporation. All rights reserved.


---------------------------------------------------------------


EMD upload completed successfully


/u01/oracle/home@webdg1=>servdb1$


如果这一步不成功,就要找agent 的问题,或者网络的问题。


第二步,检查OMS 端的状态


D:\OracleEMGridControl\oms10g\opmn\bin>opmnctl status



Processes in Instance: EnterpriseManager0.gridctrl01.htsc.com


-------------------+--------------------+---------+---------


ias-component | process-type | pid | status


-------------------+--------------------+---------+---------


DSA | DSA | N/A | Down


LogLoader | logloaderd | N/A | Down


dcm-daemon | dcm-daemon | N/A | Down


OC4J | home | 4576 | Alive


OC4J | OC4J_EMPROV | 4536 | Alive


OC4J | OC4J_EM | 5344 | Alive


HTTP_Server | HTTP_Server | 6080 | Alive


WebCache | WebCache | 3088 | Alive


WebCache | WebCacheAdmin | 2280 | Alive


显示都是正常的


修改了OMS 服务器的所在/etc/hosts 文件,将所有监控的agent 服务器的ip 主机名称信息都加入进去。


这里监控的服务器是两台数据库服务器,组成的是一个RAC 集群。因此,需要将VIP 信息一起加进去。


192.168.15.215 webdg1.htsc.com webdg1


192.168.15.217 webdg2.htsc.com webdg2


192.168.15.216 webdg1-vip.htsc.com webdg1-vip


192.168.15.218 webdg2-vip.htsc.com webdg2-vip


再配置时,报错成这样了。


oracle.sysman.emSDK.emd.comm.CommException: SAXParseException in