Zabbix(一)之简介和源码编译安装

zabbix 简介php

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。mysql


zabbix能监视各类网络参数,保证服务器系统的安全运营;并提供柔软的通知机制以让系统管理员快速定位/解决存在的各类问题。nginx


zabbix由2部分构成,zabbix server与可选组件zabbix agent等。web


zabbix server能够经过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它能够运行在Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X等平台之上。sql

zabbix agent须要安装在被监视的目标服务器上,它主要完成对硬件信息或与操做系统有关的内存,CPU等信息的收集。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主动接收监视数据(trapping方式),同时还可被动接收zabbix agent发送的数据(trapping方式)。vim

另外zabbix server还支持SNMP (v1,v2),能够与SNMP软件(例如:net-snmp)等配合使用。安全


zabbix的主要特色:bash

- 安装与配置简单,学习成本低服务器

- 支持多语言(包括中文)

- 免费开源

- 自动发现服务器与网络设备

- 分布式监视以及WEB集中管理功能

- 能够无agent监视

- 用户安全认证和柔软的受权方式

- 经过WEB界面设置或查看监视结果

- email等通知功能

等等



Zabbix主要监控功能:

- CPU负荷

- 内存使用

- 磁盘使用

- 网络情况

- 端口监视

- 日志监视


上面简单介绍了zabbix,,下面就来在服务器上安装体验一下zabbix的强大功能吧,首先是在服务器上安装,安装方法以下:


1、服务器端,也就是监控端(这里采用源码安装)

一、添加zabbix服务的运行用户

groupadd zabbix
useradd -g zabbix zabbix -s /sbin/nologin

二、下载源码包

 zabbix的最新包目前是2.2.1版本,如今就来下载2.2.0稳定版本。

 下载地址 http://www.zabbix.com/

 安装方法:

cd /usr/local/src
wget http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.0/zabbix-2.2.0.tar.gz
tar zxvf zabbix-2.2.0.tar.gz
cd zabbix-2.2.0
./configure --prefix=/usr/local/zabbix  --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl
make
make install
cd ../

 参数说明:

 --prefix=/usr/local/zabbix   #zabbix的安装目录

 --enable-server  #做为服务器端

 --enable-agent  #做为客户端

 --with-mysql  # 支持mysql zabbix也运行ladp,oracle,postgresql,sqlite3等数据库

 --with-net-snmp  # 支持snmp

 --with-libcurl  # 是用来监控web页面的

 编译过程的错误:

 数据库错误:在这里数据库是编译安装的因此要把环境变量导出:

 vim /etc/profile

 添加以下行export PATH=$PATH:/usr/local/mysql/bin

 而后执行:source /etc/profile    便可

 net-snmp错误:

 yum install net-snmp-devel -y   便可

三、建立数据库,并导入初始数据

 链接到mysql数据库,并建立数据库


mysql -uroot -p****
mysql> create database zabbix character set utf8;
导入数据 下面的导入顺序不能变,,
cd zabbix-2.2.0/database/mysql
mysql -uroot -p***** zabbix < schema.sql
mysql -uroot -p***** zabbix < p_w_picpaths.sql
mysql -uroot -p***** zabbix < data.sql

 这里说明下,zabbix这个数据库,能够添加个用户用来单独访问zabbix全部权限这样作是为了安全。

四、配置zabbix的服务端,并启动服务


cd /usr/local/zabbix/etc/
vim zabbix_agentd.conf   ##指定sever地址
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix server#Hostname是惟一的,不能重复 默认是Zabbix Server  能够不用修改
/usr/local/etc/zabbix_server.conf   指定数据库用户名、密码、主机名、端口号
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBPort=3306
启动服务:
cp /usr/local/zabbix/sbin/zabbix_server /etc/init.d/
service zabbix_server start
或者:
/usr/local/zabbix/sbin/zabbix_server

五、在web端安装

 配置nginx和网页

 cd /usr/local/src/zabbix-2.2.0/frontends/

 cp -r php /data/www/zabbix

 /data/www/zabbix 是网页目录

 在nginx的配置文件中加入能正常访问便可。

六、在web端安装

 以下图:

wKiom1LM4MXgbXyNAAB4AYTRj1I066.jpg

wKioL1LM4LnSoyi_AADO-vQDMGU351.jpg

这个地方会出现错误,若是php编译安装时没有加载gettext这个模块支持多语言,解决方法以下:

能够到源码php编译目录下去从新加载这个模块。

cd /usr/local/src/php-5.3.0/ext/gettext
/usr/local/php/bin/phpize    #执行此命令
./configure --with-php-config=/usr/local/php/bin/php-config #从新编译php
make && make install

wKiom1LM4MfzNnA2AAC76MVFkDM953.jpg

 配置好数据库后就安装完成了,登陆:

wKioL1LM5yCQ_omlAABSTjtNuqE407.jpg

初始用户名:admin 密码:zabbix


 下面是配置后的zabbix图片

wKiom1LM4cuBCMHMAAEriEIkrDI115.jpg


到此,服务端已安装完成,下面来安装一下客户端,也就是被监控端。

一样使用以前下载的源码,安装以下:

安装客户端:用到agentd工做模式

添加用户:

groupadd zabbix
useradd -g zabbix zabbix -s /sbin/nologin
tar zxvf zabbix-2.2.0.tar.gz
cd zabbix-2.2.0
./configure --prefix=/usr/local/zabbix --enable-agent
make && make install

修改配置文件

cd /usr/local/zabbix/etc/
vim zabbix_agentd.conf
修改如下内容:
Server=服务端ip地址,也就是监控端ip地址
ServerActive=服务端ip地址,也就是监控端ip地址
其余的并不须要修改
下面来启动
cp /usr/local/zabbix/sbin/zabbix_agentd /etc/init.d/
service zabbix_agentd start
或者
/usr/local/zabbix/sbin/zabbix_agentd

启动后就可能在web端添加监控主机了。

启动报错:

/etc/init.d/zabbix_agentd: error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory

解决方法:

vim /etc/ld.so.conf

添加:

/usr/local/lib

保存退出

执行:

ldconfig

而后再启动


启动后能够查看端口是否已启动。这样zabbix的服务端和客户端都安装完成,而且做了一些简单的配置,下面会介绍zbbix的web页面相关内容,以及如何监控主机及服务的。


补充:zabbix也支持rpm的安装,配置epel yum 源后能够用yum直接安装

epel源的配置在个人相关博文有提到,能够自行查看,配置yum源后就能够直接安装了,以下图:

wKioL1LM5Xfj4rBtAAFLOdkltYY818.jpg

服务端安装:

yum install zabbix.x86_64 zabbix-server.x86_64 zabbix-server-mysql.x86_64 zabbix-web.noarch zabbix-web-mysql.noarch zabbix-agent.x86_64

客户端安装:

yum install zabbix.x86_64 zabbix-agent.x86_64

相关文章
相关标签/搜索