zabbix简介
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供柔软的通知机制以让系统管理员快速定位/解决存在的各种问题。zabbix由2部分构成,zabbix server与可选组件zabbix agent。zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X等平台上。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方式)。另外zabbix server还支持SNMP (v1,v2),可以与SNMP软件(例如:net-snmp)等配合使用。
zabbix的主要特点:
- 安装与配置简单,学习成本低
- 支持多语言(包括中文)
- 免费开源
- 自动发现服务器与网络设备
- 分布式监视以及WEB集中管理功能
- 可以无agent监视
- 用户安全认证和柔软的授权方式
- 通过WEB界面设置或查看监视结果
- email等通知功能等等
Zabbix主要功能:
- CPU负荷
- 内存使用
- 磁盘使用
- 网络状况
- 端口监视
- 日志监视
一. 安装LNMP环境
安装php的时候注意,以下是需要修改的php参数及添加的扩展,第一张表是我初次安装时候显示的表,有很多参数及扩展没安装,需要一一修改与安装,直到最都显示OK才能下一步, 如第二张表。
PHP version |
5.4.5 |
5.1.6 |
OK |
PHP option memory_limit |
128M |
128M |
OK |
PHP option post_max_size |
16M |
16M |
OK |
PHP option upload_max_filesize |
2M |
2M |
OK |
PHP option max_execution_time |
300 |
300 |
OK |
PHP option max_input_time |
300 |
300 |
OK |
PHP time zone |
UTC |
OK |
|
PHP databases support |
SQLite3 |
OK |
|
PHP bcmath |
no |
Fail |
|
PHP mbstring |
yes |
OK |
|
PHP sockets |
no |
Fail |
|
PHP gd |
unknown |
2.0 |
Fail |
PHP gd PNG support |
no |
Fail |
|
PHP gd JPEG support |
no |
Fail |
|
PHP gd FreeType support |
no |
Fail |
|
PHP libxml |
2.8.0 |
2.6.15 |
OK |
PHP xmlwriter |
yes |
OK |
|
PHP xmlreader |
yes |
OK |
|
PHP ctype |
yes |
OK |
|
PHP session |
yes |
OK |
|
PHP session auto start |
no |
OK |
|
PHP gettext |
no |
Fail |
PHP version |
5.4.5 |
5.1.6 |
OK |
PHP option memory_limit |
128M |
128M |
OK |
PHP option post_max_size |
16M |
16M |
OK |
PHP option upload_max_filesize |
2M |
2M |
OK |
PHP option max_execution_time |
300 |
300 |
OK |
PHP option max_input_time |
300 |
300 |
OK |
PHP time zone |
UTC |
OK |
|
PHP databases support |
MySQL |
OK |
|
PHP bcmath |
yes |
OK |
|
PHP mbstring |
yes |
OK |
|
PHP sockets |
yes |
OK |
|
PHP gd |
2.0.34 |
2.0 |
OK |
PHP gd PNG support |
yes |
OK |
|
PHP gd JPEG support |
yes |
OK |
|
PHP gd FreeType support |
yes |
OK |
|
PHP libxml |
2.8.0 |
2.6.15 |
OK |
PHP xmlwriter |
yes |
OK |
|
PHP xmlreader |
yes |
OK |
|
PHP ctype |
yes |
OK |
|
PHP session |
yes |
OK |
|
PHP session auto start |
no |
OK |
|
PHP gettext |
yes |
OK |
二、zabbix(server,agent)配置:
server: 192.168.1.155
agent: 192.168.1.156
简单提下,其实是服务端安装zabbix_server,zabbix_agentd两个服务,客户端只需安装zabbix_agentd一个服务,监控原理其实就是zabbix_agentd服务将从系统中获取的相关数据传送给zabbix_server服务,然后zabbix_server服务将数据以PHP页面显示出来,很好理解。
(server)表示仅服务端配置
(agent)表示仅客户端配置
(server,agent)表示客户端与服务端都需配置
1.下载zabbix(server,agent)
这里下载的是官方2.0.8的服务端与客户端的稳定整合编译包,所以后面编译的时候注意,以�Cenable-server �Cenable-agent参数编译的为服务器端,以�Cenable-agent参数编译的为客户端。
# wget http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.0.8/zabbix-2.0.8.tar.gz/download
2.安装zabbix所需的组件(server,agent)
# yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI
3.创建用户账号(server,agent)
# groupadd zabbix
# useradd -g zabbix zabbix
4.创建zabbix数据库并导入zabbix数据库数据(server)
# mysql -u root
> grant all on zabbix.* to zabbix@localhost identified by ‘zabbix’;
> create database zabbix;
# tar zxvf zabbix-2.0.8.tar.gz
# cd zabbix-2.0.8
# mysql -uzabbix -pzabbix zabbix < database/mysql/schema.sql
# mysql -uzabbix -pzabbix zabbix < database/mysql/images.sql
# mysql -uzabbix -pzabbix zabbix < database/mysql/data.sql
5.编译安装(server,agent)
server: (192.168.1.155)
# ./configure �Cprefix=/usr/local/services/zabbix-2.0.8 �Cenable-server �Cenable-agent �Cwith-mysql �Cwith-net-snmp �Cwith-libcurl
# make install
# cd /usr/local/services/
# ln -s zabbix-2.0.8 zabbix
server: (192.168.1.156)
# ./configure �Cprefix=/usr/local/services/zabbix-2.0.8 �Cenable-agent
# make install
# cd /usr/local/services/
# ln -s zabbix-2.0.8 zabbix
6.编辑配置文件(server,agent) (192.168.1.155)
# cd /usr/local/services/zabbix/etc/
# vi /usr/local/etc/zabbix_server.conf
修改如下内容:
――――-
LogFile=/data/logs/zabbix/zabbix_server.log
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
――――-
# vi /usr/local/etc/zabbix_agentd.conf
修改如下内容:
――――-
LogFile=/data/logs/zabbix/zabbix_agentd.log
Server=127.0.0.1
UnsafeUserParameters=1
――――-
agent: (192.168.1.156)
# vi /usr/local/etc/zabbix_agentd.conf
修改如下内容并删除其他未修改参数条目:
――――-
LogFile=/data/logs/zabbix/zabbix_agentd.log
Server=192.168.1.155
UnsafeUserParameters=1
――――-
# chown zabbix.zabbix /data/logs/zabbix/
7、启动守护进程(server,agent)
在服务器端运行启动zabbix_server
# zabbix_server
server启动端口为10051
在所有被监控的机器上运行zabbix_agentd 。
# zabbix_agentd
agentd启动端口为10050
8、通过浏览器安装
http://192.168.1.155/setup.php
默认用户名Admin, 密码zabbix, 登陆后发现有中文支持,牛X