全部博文(176)
分类:
2009-10-28 13:29:10
我们一般用nagios来报警,使用cacti来监控流量及其他简单的状况,当然也可以使用NPC把nagios结合到cacti中来使用。
除了常用的nagios和cacti之外,还有很多的监控工具,这个地址有一份详细的功能对比:
我也是无意中听说zabix的,就是Q群有个人发了个地址叫人测试下,我看了觉得蛮不错的,所以就开始尝试自己安装。
我一般喜欢源码编译,有问题可以直接留言或者QQ272544。
目录:
首先安装mysql+nginx(或者apache)+php。这里就不说了,看以前笔记。
本次试验的IP如下:
序号 | 功能 | 计算机名 | 机器ip |
---|---|---|---|
1 | zabbix server | 10.1.1.8 | web03 |
2 | zabbix agent 1 | 10.1.1.8 | web03 |
3 | zabbix agent 2 | 10.1.1.6 | web02 |
编译目录还是遵循我一向的规矩:
/─/usr
│ ├─/usr/server
│ │ ├─/usr/server/ect #放置一般配置文件
│ │ ├─/usr/server/bin #放置bin执行程序
│ │ ├─/usr/server/sbin #放置sbin服务程序
│ │ │
│ │ ├─程序1
│ │ ├─程序2
┆ ┆ ┆
fping是加强版的ping工具,可以同时ping多个主机:
fping的官网是:
web03# wget
web03# tar zxf fping.tar.gz
web03# cd fping-2.4b2_to
web03# ./configure
web03# make && make install
安装完毕后,一起就2个文件:
/usr/local/sbin/fping #执行文件
/usr/local/man/man8/fping.8 #man文件
设置fping权限:
web03# chown root:zabbix /usr/local/sbin/fping
web03# chmod 710 /usr/local/sbin/fping
web03# chmod ug+s /usr/local/sbin/fping
(主要是从以前的笔记《centos 5.3下编译安装cacti.txt》直接复制过来的。)
net-snmp的官网是:
web03# wget
web03# tar zxf net-snmp-5.4.2.1.tar.gz
web03# cd net-snmp-5.4.2.1
web03# ./configure --prefix=/usr/server/snmpd --bindir=/usr/server/bin --sbindir=/usr/server/sbin --disable-debugging --enable-developer --with-default-snmp-version="2" --enable-mfd-rewrites --with-mib-modules="mibII ucd_snmp agentx notification target utilities disman/event disman/schedule host ip-mib/ipv4InterfaceTable tunnel" --with-sys-contact="ie81@163.com" --with-sys-location="location" --with-logfile="/var/log/snmpd.log" --with-persistent-directory="/var/net-snmp"
web02# make && make install
———————————————–
注:加了这几个mib-modules就会有问题:ucd-snmp/lmSensors snmpv3mibs mibII/interfaces
———————————————–
安装完毕后,会在/usr/server/bin/下生成如下相关执行文件:
encode_keychange mib2c-update snmpcheck snmpget snmpset snmptranslate snmpwalk
fixproc net-snmp-config snmpconf snmpgetnext snmpstatus snmptrap tkmib
ipf-mod.pl snmpbulkget snmpdelta snmpinform snmptable snmpusm traptoemail
mib2c snmpbulkwalk snmpdf snmpnetstat snmptest snmpvacm
会在/usr/server/sbin/下生成如下后台服务程序:
snmpd snmptrapd
现在复制配置文件:
web03# cp EXAMPLE.conf /usr/server/snmpd/share/snmp/snmpd.conf
编辑配置文件:
web03# vi /usr/server/snmpd/share/snmp/snmpd.conf
找到如下两行[大约61-62行]:
com2sec local localhost COMMUNITY
com2sec mynetwork NETWORK/24 COMMUNITY
这两行就是snmpd的字符串认证,一行代表一种权限设置,可以修改成:
com2sec local localhost public01
com2sec local 119.146.191.170 web03
com2sec local 192.168.1.0/24 web03
然后把备份脚本snmpd复制到/etc/init.d目录下(见备份文件)。就可以启动snmpd了:
web03# /etc/init.d/snmpd start
Starting snmpd: [ OK ]
然后测试:
web03# snmpwalk -v 2c -c public01 127.0.0.1 if #最后一个if代表网络信息。
如果有信息出来,就表示OK了。
zabbix的官网是:
目前最高稳定版是1.6.6。
1、添加用户:
web03# groupadd -g 28 zabbix
web03# useradd -u 28 -g 28 -s /sbin/nologin -M zabbix
web03# id zabbix
uid=28(zabbix) gid=28(zabbix) groups=28(zabbix)
2、下载解压:
web03# wget %20Latest%20Stable/1.6.6/zabbix-1.6.6.tar.gz?use_mirror=nchc
web03# tar zxf zabbix-1.6.6.tar.gz
web03# cd zabbix-1.6.6
3、设置mysql数据库
1)添加数据库和用户:
web03# mysql -u root -p
Enter password:
mysql> create database zabbix;
mysql> CREATE USER 'coos'@'localhost' IDENTIFIED BY 'coos';
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,ALTER,SHOW VIEW,CREATE VIEW,LOCK TABLES ON `zabbix` . * TO 'coos'@'localhost';
mysql> exit
Bye
2)导入数据:
web03# mysql -u coos -pcoos zabbixweb03# mysql -u coos -pcoos zabbix web03# mysql -u coos -pcoos zabbix 4、开始安装配置zabbix:
1)编译
web03# ./configure --enable-server --enable-agent --with-mysql --with-libcurl --with-net-snmp
web03# make && make install安装完毕后,会在/usr/local/sbin/下面生下如下命令:
zabbix_agent zabbix_agentd zabbix_get zabbix_sender zabbix_server好像没看到有其他文件,或者inclue文件,lib库之类的。
2)复制配置文件:
web03# mkdir /etc/zabbix
web03# cp misc/conf/*.conf /etc/zabbix/可以简化下默认配置,注释太多了:
①修改服务端配置文件:
web03# cp /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.defalut
web03# cat /dev/null >/etc/zabbix/zabbix_server.conf
web03# vi /etc/zabbix/zabbix_server.conf
加入如下内容:
# This is config file for ZABBIX server process
# To get more information about ZABBIX,
# go
SenderFrequency=30
DebugLevel=3
Timeout=5
PidFile=/var/run/zabbix/zabbix_server.pid
LogFile=/var/log/zabbix/zabbix_server.log
AlertScriptsPath=/home/zabbix/bin/
FpingLocation=/usr/local/sbin/fping
#ListenIP=
#ListenPort=10051
DBHost=localhost
DBName=zabbix
DBUser=coos
DBPassword=coos
DBSocket=/tmp/mysql.sock①修改客户端配置文件:
web03# cp /etc/zabbix/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf.default
web03# cat /dev/null >/etc/zabbix/zabbix_agentd.conf
web03# vi /etc/zabbix/zabbix_agentd.conf
加入如下内容:
# This is config file for zabbix_agentd
# To get more information about ZABBIX, go
Server=127.0.0.1
#ServerPort=11051
Hostname=web03
#ListenIP=
#ListenPort=10050
TimeOut=3
StartAgents=3
DebugLevel=3
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
Timeout=3最后建立日志和PID目录:
web03# mkdir /var/log/zabbix
web03# chown -R zabbix: /var/log/zabbix/
web03# mkdir /var/run/zabbix
web03# chown -R zabbix: /var/run/zabbix/3)然后添加端口文件:
web03# vi /etc/services
在最后加入:
zabbix-agent 10050/tcp #Zabbix Agent
zabbix-agent 10050/udp #Zabbix Agent
zabbix-trapper 10051/tcp #Zabbix Trapper
zabbix-trapper 10051/udp #Zabbix Trapper4)复制启动脚本:
web03# cp misc/init.d/redhat/zabbix_* /etc/init.d/然后修改启动脚本:
①修改服务端启动脚本:web03# vi /etc/init.d/zabbix_server_ctl
BASEDIR=/opt/zabbix ==>把这句前面加#注释掉。
PIDFILE=/var/tmp/zabbix_server.pid ==>修改为/var/run/zabbix/zabbix_server.pid
ZABBIX_SUCKERD=$BASEDIR/bin/zabbix_server ==>修改为/usr/local/sbin/zabbix_server②修改客户端启动脚本:
web03# vi /etc/init.d/zabbix_agentd_ctl
BASEDIR=/opt/zabbix ==>把这句前面加#注释掉。
PIDFILE=/var/tmp/zabbix_agentd.pid ==>修改为/var/run/zabbix/zabbix_agentd.pid
ZABBIX_AGENTD=$BASEDIR/bin/zabbix_agentd ==>修改为/usr/local/sbin/zabbix_agentd现在就可以启动了:
启动之前把net-snmpd的库路径加入ldconfig,否则会报错:
web03# grep ‘/usr/server/snmpd/lib’ /etc/ld.so.conf || echo “/usr/server/snmpd/lib” >>/etc/ld.so.conf
web03# ldconfig启动:
web03# /etc/init.d/zabbix_server_ctl start
web03# /etc/init.d/zabbix_agentd_ctl start然后查看监听端口和进程:
web03# netstat -tunlp | grep zabbix
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 8911/zabbix_agentd
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 8871/zabbix_server5)配置web界面:
复制网页文件到web路径:web03# cp -r frontends/php /data1/web/web80/zabbix
web03# chown -R www: /data1/web/web80/zabbix编辑php.ini文件:
max_execution_time = 30 ==> 修改为300 #大约255行。
;date.timezone = ==>去掉注释在=后添加 Asia/Shanghai #大约662行。然后重启php-fpm,apache的话就重启httpd。
然后使用浏览器访问:
就会出现安装向导,一步步填写就可以了。最后默认的管理员用户和密码是:admin/zabbix。进去后就可以修改用户密码。
另外还有个guest用户,默认是无法删除,可以进去把用户名改一下,然后设置个密码或者删除就可以。五、Centos 5.3下安装zabbix客户端zabbix-agentd:
其实前面服务段已经安装了客户端。但是这里为了分开,好在需要监控的的机器单独安装客户端,所以重新做一次:
1、添加用户:
web02# groupadd -g 28 zabbix
web02# useradd -u 28 -g 28 -s /sbin/nologin -M zabbix
web02# id zabbix
uid=28(zabbix) gid=28(zabbix) groups=28(zabbix)2、下载解压,并编译客户端:
web02# wget %20Latest%20Stable/1.6.6/zabbix-1.6.6.tar.gz?use_mirror=nchc
web02# tar zxf zabbix-1.6.6.tar.gz
web02# cd zabbix-1.6.6
web02# ./configure --enable-agent
web02# make && make install安装完成,会在/usr/local/sbin/目录生成如下命令:
zabbix_agent zabbix_agentd zabbix_get zabbix_sender3、配置服务:
web02# mkdir /etc/zabbix
web02# touch /etc/zabbix/zabbix_agentd.conf
web02# vi /etc/zabbix/zabbix_agentd.conf
加入如下内容:
# This is config file for zabbix_agentd
# To get more information about ZABBIX, go
Server=10.1.1.8
#ServerPort=11051
Hostname=web03
#ListenIP=
#ListenPort=10050
TimeOut=3
StartAgents=3
DebugLevel=3
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
Timeout=3最后建立日志和PID目录:
web02# mkdir /var/log/zabbix
web02# chown -R zabbix: /var/log/zabbix/
web02# mkdir /var/run/zabbix
web02# chown -R zabbix: /var/run/zabbix/4、然后添加端口文件:
web03# vi /etc/services
在最后加入:
zabbix-agent 10050/tcp #Zabbix Agent
zabbix-agent 10050/udp #Zabbix Agent5、复制启动脚本:
web02# cp misc/init.d/redhat/zabbix_agentd_ctl /etc/init.d/修改客户端启动脚本:
web02# vi /etc/init.d/zabbix_agentd_ctl
BASEDIR=/opt/zabbix ==>把这句前面加#注释掉。
PIDFILE=/var/tmp/zabbix_agentd.pid ==>修改为/var/run/zabbix/zabbix_agentd.pid
ZABBIX_AGENTD=$BASEDIR/bin/zabbix_agentd ==>修改为/usr/local/sbin/zabbix_agentd启动:
web02# /etc/init.d/zabbix_agentd_ctl start查看监听端口及进程:
web02# netstat -tunlp | grep zabbix
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 15356/zabbix_agentd现在就可以从zabbix server的web界面来添加web03的主机监控了。
六、windows 2003下安装zabbix客户端zabbix-agentd:
下载windows版本的zabbix agentd:/downloads/1.4.4/zabbix_agents_1.4.4.windows.i386.tar.gz
好像windows目前最高只有1.4.4的版本可下。然后把那个win32的目录解压出来(如果是64位系统就解压win64目录),并把目录名改成zabbix。比如我这里是:E:\bak\zabbix
首先建立一个文本文件c:\zabbix_agentd.conf,加入如下内容:
# This is config file for zabbix_agentd
# To get more information about ZABBIX, go
Server=10.1.1.8
#ServerPort=11051
Hostname=web03
#ListenIP=
#ListenPort=10050
TimeOut=3
StartAgents=3
DebugLevel=3
#PidFile=E:\bak\zabbix\zabbix_agentd.pid
LogFile=E:\bak\zabbix\zabbix_agentd.log
Timeout=3然后打开 运行–cmd,进入cmd界面:
cmd> cd /d e:\bak\zabbix
cmd> zabbix_agentd.exe -i #安装,也可以用--install
zabbix_agentd.exe [8964]: ZABBIX Agent service created successfully.
zabbix_agentd.exe [8964]: Event source "ZABBIX Agent" installed successfully.
cmd> zabbix_agentd.exe -s #启动,也可以用--start
zabbix_agentd.exe [10156]: ZABBIX Agent service started successfully.—————————————————————-
另外,如果你的配置文件不是c:\zabbix_agentd.conf,在安装的时候需要手工指定:
cmd> zabbix_agentd.exe –config d:\zabbix_agentd.conf –install
—————————————————————-然后去zabbix server的web界面添加就可以了。