一款分布式系统监控及网络监控的企业级神器zabbix

来源:互联网 发布:环保大数据研究中心 编辑:程序博客网 时间:2024/04/25 22:32

    在选择搭建监控Linux系统的开源软件时,你一定听说过zabbix这个神器,zabbix是一个基于WEB界面的提供分布式系统监控以及网络监控功能的企业级的开源解决方案。由于zabbix是基于web界面将存储在数据库中的数据生成图表显示出来,所以zabbix需要运行在web和数据库的平台上。

    zabbix由2部分构成,zabbix server与可选的组件zabbix agent。zabbix server可以通过SNMP,zabbix agent,ping,port等方法提供对远程服务器/网络状态的监控以及数据收集等功能,它可以运行在Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X等平台上。zabbix agent需要安装在被监控的目标服务器上,它主要完成对硬件信息或与操作系统有关的信息的收集。zabbix agent可以运行在Linux ,Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows 2000/2003/XP/Vista)等系统之上。zabbix server可以单独监视远程服务器的服务状态;同时也可以与zabbix agent配合,可以轮询zabbix agent主动接收监视数据,同时还可被动接收zabbix agent发送的数据。另外zabbix server还支持SNMP(v1,v2),可以与SNMP软件(例如:net-snmp)等配合使用。 

    下面用源码包搭建一个简单的zabbix server、zabbix agent模式的监控体系,后端数据库采用mysql,前端web采用apache。

1 下载zabbix server端软件(10.1.6.16)

1wget http://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.0.4/zabbix-2.0.4.tar.gz
2 添加zabbix用户及用户组,使zabbix服务以zabbix用户运行

1groupadd zabbix
2useradd -g zabbix zabbix
3 因为zabbix采集的数据存储在数据库中,所以我们需要先建立数据库用户

1#数据库密码为了方便演示,设置了123456
2root@debian6-1:~#mysql -uroot -p123456
3#创建zabbix库及用户授权
4mysql>create database zabbix;
5mysql>grant all on zabbix.* to zabbix@localhost identified by '123456';
6mysql>flush privileges;
4 初始化zabbix库

1tar zxvf zabbix-2.0.4.tar.gz
2cd zabbix-2.0.4
3#在源码包里面有zabbix数据库初始化文件
4mysql -uroot zabbix -p123456 < database/mysql/schema.sql
5mysql -uroot zabbix -p123456 < database/mysql/data.sql
6mysql -uroot zabbix -p123456 < database/mysql/images.sql
5 安装zabbix服务端

01#zabbix在编译安装时可以选定是作为服务端还是作为客户端使用
02./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --with-libcurl --with-net-snmp
03make
04make install
05#把生成的配置文件拷贝到/etc/zabbix下
06cp -a conf/* /etc/zabbix/
07#把前端界面拷贝到web目录
08cp -a frontends/php/* /var/www/
09chown www-data.www-data /var/www/ -R
10#把服务启动脚本拷贝到/etc/init.d下
11cp misc/init.d/debian/* /etc/init.d/
6 把生成的bin文件拷贝到/bin、/sbin下面

1cd /bin
2ln -s /usr/local/zabbix/bin/zabbix_get zabbix_get
3ln -s /usr/local/zabbix/bin/zabbix_sender zabbix_sender
4 
5cd /sbin
6ln -s /usr/local/zabbix/sbin/zabbix_agent zabbix_agent
7ln -s /usr/local/zabbix/sbin/zabbix_agentd zabbix_agentd
8ln -s /usr/local/zabbix/sbin/zabbix_server zabbix_server
7 修改/etc/init.d/zabbix-*中bin程序的路径

1#DAEMON=/usr/local/sbin/${NAME}
2DAEMON=/sbin/${NAME}
8 修改zabbix配置文件

1#以下是源码包中conf/*中配置文件结构
2conf
3├── zabbix_agent.conf  客户端配置文件
4├── zabbix_agentd
5├── zabbix_agentd.conf  客户端作为守护进程运行时的配置文件
6├── zabbix_agentd.win.conf  win下的配置文件
7├── zabbix_proxy.conf 代理配置文件,在本文中没有用到代理模式
8└── zabbix_server.conf  服务端配置文件

  zabbix_server.conf配置

1#配置参数很多,仅列出简单配置
2ListenPort=10051
3SourceIP=10.1.6.16
4LogFile=/tmp/zabbix_server.log
5DBHost=10.1.6.16
6DBName=zabbix
7DBUser=root
8DBPassword=123456
9DBPort=3306
   zabbix_agentd.conf配置

01#配置参数很多,仅列出简单配置
02LogFile=/tmp/zabbix_agentd.log
03EnableRemoteCommands=1
04LogRemoteCommands=1
05Server=10.1.6.16
06ListenPort=10050
07ListenIP=0.0.0.0
08StartAgents=3
09ServerActive=10.1.6.16
10Hostname=debian6-1
11RefreshActiveChecks=60
12BufferSend=60
13AllowRoot=0
14Timeout=3
9 启动zabbix服务

1/etc/init.d/zabbix-server start
2/etc/init.d/zabbix-agent start
10 查看服务是否正常启动

1root@debian6-1:/etc/zabbix# netstat -tupln |grep zabbix
2tcp  0   0 0.0.0.0:10050    0.0.0.0:*    LISTEN      4800/zabbix_agentd
3tcp  0   0 0.0.0.0:10051    0.0.0.0:*    LISTEN      4564/zabbix_server
11 在浏览器中查看zabbix的web界面,默认用户名/密码:admin/zabbix


开始配置初始环境







12 zabbix 2.0.4的web端已经友好的支持中文

1apt-get install debconf
2#选择zh_CN.UTF-8
3dpkg-reconfigure locales

   登录zabbix的web界面后,在右上角的profile中user表单中的language选项中选择chinese(zh_CN),然后保存即可。

13 在debian6-2增加一个zabbix agent(10.1.6.13)

1wget http://www.zabbix.com/downloads/2.0.4/zabbix_agents_2.0.4.linux2_6.amd64.tar.gz
   这是官方提供的编译好的客户端,既然zabbix可以在编译时决定是作为服务端还是客户端,所以我们手动编译一个客户端。

01groupadd zabbix
02useradd -g zabbix zabbix
03tar zxvf zabbix-2.0.4.tar.gz
04cd zabbix-2.0.4/
05./configure --prefix=/usr/local/zabbix  --enable-agent
06make
07make install
08cp misc/init.d/debian/* /etc/init.d/
09 
10cd /sbin
11ln -s /usr/local/zabbix/sbin/zabbix_agent zabbix_agent
12ln -s /usr/local/zabbix/sbin/zabbix_agentd zabbix_agentd
13cd /etc
14ln -s /usr/local/zabbix/etc zabbix
    修改/etc/init.d/zabbix-agent

1#DAEMON=/usr/local/sbin/${NAME}
2DAEMON=/sbin/${NAME}

   zabbix_agentd.conf配置文件

01LogFile=/tmp/zabbix_agentd.log
02EnableRemoteCommands=1
03LogRemoteCommands=1
04Server=10.1.6.16
05ListenPort=10050
06ListenIP=0.0.0.0
07StartAgents=3
08ServerActive=10.1.6.16
09Hostname=debian6-2
10RefreshActiveChecks=60
11BufferSend=60
12AllowRoot=0
13Timeout=3
  启动zabbix客户端

1/etc/init.d/zabbix-agent start

14 在浏览器中打开zabbix web界面进行设置,把新加的客户端添加到web中

连接:https://www.zabbix.com/documentation/2.0

0 0
原创粉丝点击