您好,欢迎来到爱站旅游。
搜索
您的当前位置:首页几种常见数据库的SNMP代理配置

几种常见数据库的SNMP代理配置

来源:爱站旅游


几种常见数据库的SNMP代理配置

1. SQL Server数据库监控SNMP代理配置

SQL Server采用扩展代理的方式来实现SNMP代理功能,需要对注册表作相应修改。使得SNMP服务启动时可以自动加载扩展代理。

SQL Server 2000以上的版本,安装时默认都自动注册扩展代理,无须手工配置。扩展代理DLL为sqlsnmp.dll。

目前发现只有V1才能完全支持SQL Server的所有SNMP参数。其中的部分参数不支持Get Bulk导致。

对于SQL Server 2000一下的版本,手工添加扩展代理方法如下,注意区分大小写的匹配:(1)添加扩展代理注册信息

找到HKEY_LOCAL_MACHINE/

SYSTEM/

CurrentControlSet/

Services/

SNMP/

Parameter/

ExtensionAgents

新增如下字符串值:格式为:名称、类型、数值

1 : REG_SZ : SOFTWARE/Microsoft/MSSQLServer/SNMP/CurrentVersion

(2)配置扩展代理DLL对于的路径

转到HKEY_LOCAL_MACHINE/SOFTWARE

创建主键:Microsoft/MSSQLServer/SNMP/CurrentVersion

新增字符串值:Pathname:REG_EXPAND_SZ:d:/Program Files/Microsoft SQL

Server/MSSQL/BINN/sqlsnmp.dll

2. Sybase ASE数据库监控SNMP代理配置

在“第三方程序/sybase”目录下带了一个Sybase ASE12.5 的SNMP子代理,它是Net-snmp 的AgentX扩展代理。

首先需要安装和配置Net-snmp代理,并且配置Net-snmp支持agentx,简单来说就是snmpd.conf文件中有一行是“master agentx”,具体参考第3章。

2.1. Linux

3.1.1 Windows

Oracle8i:8.1.3.6

Oracle9i:2.2.4

3.1.2 Unix

Oracle8i:

Oracle9i:

3.2. 验证方法

用OID查询工具看看能否获得如下参数值:

Oracle参数:oraDbTablespaceSizeUsed 1.3.6.1.4.1.311.1.4.1.1.6.1.8,如果不能获取表示Oracle的SNMP参数不能获取;

3.3. Windows配置

SNMP版本支持,目前发现只支持SNMP V1。

3.3.1 修改Windows标准SNMP服务端口

需要将Windows标准SNMP服务端口修改为1161(snmp)、1162(snmptrap)。

具体操作参见8.1Windows标准SNMP服务端口修改。

3.3.2 修改Oracle配置文件

主代理服务配置文件master.cfg(OracleOraHome90SNMPPeerMasterAgent,在ORACLE_HOME/Network/admin目录下):

TRANSPORT ordinary SNMP

OVER UDP SOCKET

AT PORT 161 (Oracle Master Agent的服务端口)COMMUNITY public

ALLOW ALL OPERATIONS

USE NO ENCRYPTION

MANAGER localhost (Trap目标地址)

SEND ALL TRAPS

WITH COMMUNITY public

子代理兼容协议转换服务配置文件encaps.cfg在

ORACLE_HOME/Network/admin目录下):

AGENT AT PORT 1161 WITH COMMUNITY public (表示子代理(Windows标准SNMP 服务)使用1161端口)

SUBTREES 1.3.6.1.2.1.1,

1.3.6.1.

2.1.2,

1.3.6.1.

2.1.3,

1.3.6.1.

2.1.4,

1.3.6.1.

2.1.5,

1.3.6.1.

2.1.6,

1.3.6.1.

2.1.7,

1.3.6.1.

2.1.8,

1.3.6.1.

2.1.25, (HOSTRESOURCE-MIB,必须加入,否则不支持主机监控)

1.3.6.1.4.1.77,

1.3.6.1.

2.1

FORWARD ALL TRAPS;

注意:不支持子节点。如设置了1.3.6.1.2.1,如果需要访问1.3.6.1.2.1.25下的资源,还是需要单独设置。

3.3.3 启动

按照如下顺序启动服务,否则可能导致取值异常。

启动Oracle服务(OracleServiceORCL[ORACLE.EXE]),当已经启动时忽略此项

启动Oracle主代理(OracleOraHome90SNMPPeerMasterAgent[AGNTSVC.EXE])

启动OEM代理服务(OracleOraHome90Agent [dbsnmp.exe])

启动Oracle协议转换服务

(OracleOraHome90SNMPPeerEncapsulator[ENCSVC.EXE])启动Windows SNMP标准服务

注意:如果需要自动启动Oracle及其SNMP服务,只需要将上面的服务全部设置为“自动”则可。

3.4. Linux配置

以AS4(Linux 2.6.9-5.EL,红帽企业Linux 4)为例进行说明。

SNMP版本支持,目前发现只支持SNMP V1。

3.4.1 关闭SELinux

红帽企业Linux 4 包括了一个SELinux 的实现。SELinux 代表了用户,程序以及进程间相互交流的主要变化。在这个发行版本中,SELinux 被默认安装并被开启使用,需要关闭,否则无法正确采集主机监控信息。

正确配置如下:

[root@AS4 selinux]# more /etc/selinux/config

# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

# enforcing - SELinux security policy is enforced.

# permissive - SELinux prints warnings instead of enforcing.

# disabled - SELinux is fully disabled.

SELINUX=Disabled (不能设置为enforcing)

# SELINUXTYPE= type of policy in use. Possible values are:

# targeted - Only targeted network daemons are protected.

# strict - Full SELinux protection.

SELINUXTYPE=targeted

3.4.2 安装NET-SNMP

使用如下命令可以查出安装的NET-SNMP包,rpm -qa | grep snmp

AS4自带如下NET-SNMP包:

net-snmp-libs-5.1.2-11

net-snmp-5.1.2-11

net-snmp-utils-5.1.2-11

对于别的平台,参见3.2Linux平台上的安装配置。

3.4.3 修改Linux标准SNMP服务端口(此项需要验证修改的必要性?)

保证操作系统自身的SNMP不占用标准端口(161、162),以空出给作为主代理的ORACLE 使用。

其中的配置文件为“/etc/services”,类似于Windows标准SNMP服务端口的修改。

此处设置如下:

snmp 1161/udp #SNMP (修改本地SNMP服务端口为1161,只要不是161则可) snmptrap 1162/udp snmp-trap #SNMP trap(修改本地SNMP TRAP服务端口为1162,只要不是162则可)

3.4.4 配置NET-SNMP

参见3.2.2配置Net-SNMP代理的设置。

其中必须确保已将NET-SNMP的端口设置为161以外的端口,系统缺省为161,可以在/etc/snmp/snmpd.conf中新增如下行来修改:

agentaddress 1161

注意:/usr/sbin/snmpd加载配置文件的搜索顺序是“/etc/snmp/snmpd.conf

/usr/share/snmp/snnpd.conf”

3.4.5 安装Oracle智能代理

3.4.5.1编译智能代理

(1) stop all the instances of this ORACLE_HOME,stop listener

(2) relink the agent

#relink oemagent

(3) you should find agentctl and dbsnmp in $ORACLE_HOME/bin, it's date show they are new files

3.4.5.2运行root.sh,修改dbsnmp的属性

成功安装智能代理后,必须运行root.sh脚本,以修改智能代理的权限,以更新或者是创建一份oratab文件,以保证dbsnmp能够

#cd $ORACLE_HOME/bin

#ls -al dbsnmp

-rwsr-s--- 1 root g651 1497980 Jun 12 21:04 dbsnmp

紫色部分表明已经成功执行了root.sh脚本。

3.4.5.3修改Oracle配置文件

与Windows下的Oracle配置基本相同。

主代理服务配置文件CONFIG.master:

TRANSPORT ordinary SNMP

OVER UDP SOCKET

AT PORT 161 (Oracle Master Agent的服务端口)

COMMUNITY leagsoft

ALLOW ALL OPERATIONS

USE NO ENCRYPTION

MANAGER localhost (Trap目标地址)

SEND ALL TRAPS

WITH COMMUNITY leagsoft

子代理兼容协议转换服务配置文件CONFIG.encaps:

AGENT AT PORT 1161 WITH COMMUNITY leagsoft (表示子代理(Windows标准SNMP 服务)使用1161端口)

SUBTREES 1.3.6.1.2.1.1,

1.3.6.1.

2.1.2,

1.3.6.1.

2.1.3,

1.3.6.1.

2.1.4,

1.3.6.1.

2.1.5,

1.3.6.1.

2.1.6,

1.3.6.1.

2.1.7,

1.3.6.1.

2.1.8,

1.3.6.1.

2.1.25 (HOSTRESOURCE-MIB,必须加入,否则不支持主机监控)

FORWARD ALL TRAPS;

3.4.6 启动Oracle智能代理

按照如下顺序启动服务,否则可能导致取值异常。

(1)启动Oracle主代理以及操作相同标准代理

1.首先通过如下命令来确认相应代理没有启动

#ps –d | grep snmpd

#ps –d | grep peer

2. cd $ORACLE_HOME/network/snmp/peer

3. verify that a script start_peer exists.

将start_peer中启动语句修改为

4. su root

5. ./start_peer -a (starts the Master Peer agent, the encapsulator and the native SNMP daemon, 可以使用./start_peer –help 来获得帮助信息)

可以通过如下语句来检查是否启动成功

#ps –d | grep snmpd

#ps –d | grep peer

6. Exit from root.

如果snmpd启动失败,则检查是否不支持

/usr/sbin/snmpd –c snmpd.conf –p 1161的启动方式,如果不支持,需要修改root.sh脚本,找到最后一行,去掉-p $SNMPD_PORT的命令行参数。

本AS4的应用环境就需要删除此项不支持的参数。

(2)启动智能代理

$cd ORACLE_HOME/bin

$agentctl start

Then use ps -ef|grep dbsnmp

to check the agent started successful or not.

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- azee.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务