第一章 Zabbix简介

Zabbix是一个基于Web界面提供分布式系统监视以及网络监视功能的企业级的开源解决方案。它能监视各种网络参数,保证服务器系统的安全运营,并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。

基本功能

数据采集方式:zabbix agentagent(active)SNMPSSH

数据存储方式:RDBMS,如MySQLPgsql

数据展示方式:phpwebgui

报警功能:支持报警升级

 

第二章 Zabbix构架

Zabbix主要由zabbix serverzabbix agent组成

server端负责从agent端收集监控数据,并存储在数据库中,同时对数据进行分析展示,并触发相关报警

agent端负责监控数据的采集,并发送给server

数据采集方式除了在被监控主机上部署agent程序外,还可通过ICMP/IPMI/SNMP等协议对网络设备进行监控,同时配置web监控方式可以监控web页面的下载速率和响应时间等重要参数

Zabbixproxy是在大规模分布式监控场景中,采用的一种用以分担server端压力的分层结构,Proxy只负责一定区域内的数据采集工作,然后定期将数据一次性发送给server,极大的减轻了server的负载压力,使得可以支持更大规模的监控需求

2.1 构架图

zabbix 2.2完美安装手册v1.0


2.2 实现过程

zabbix 2.2完美安装手册v1.0

备注:以上构图来源于网友北城书生的分享。

第三章 Zabbix安装手册

 

3.1 .0 安装LAMP环境

#yum -yinstall make mysql-server httpd php mysql-devel gcc net-snmp-devel

 curl-devel perl-DBI php-gd php-mysql php-bcmath php-mbstring php-xml unixODBC-devel OpenIPMI-devel libxml2-devel

 

3.1.1 创建zabbix账户

 #useradd zabbix -s /sbin/nologin

3.1.2 创建zabbix数据库并赋值给zabbix权限

mysql> create database zabbix character set utf8 collate utf8_bin;

Query OK, 1 row affected (0.00 sec)

mysql> grant all on zabbix.* to [email protected] identified by 'zabbix';

Query OK, 0 rows affected (0.02 sec)

mysql> flush privileges;

3.1.3 安装编译zabbix,并解压导入数据。

wget http://v2.51cto.com/wyfs01/M02/53/CC/wKioJlMuX7GSIWDdAN62_ztwWDo5125.gz?skey=ZO3o50yrN5rYPoXZLN45lw&stime=1437465755&sname=51CTO%CF%C2%D4%D8-zabbix-2.2.2.tar.gz

解压编译安装

[[email protected]] #tar -zxvf zabbix-2.2.2.tar.gz

[[email protected] src]# cd /usr/local/src/zabbix-2.2.2

[[email protected] zabbix-2.2.2]# cd/usr/local/src/zabbix-2.2.2/database/mysql/

[[email protected] mysql]# mysql -uzabbix -pzabbix zabbix < schema.sql[[email protected] mysql]# mysql -uzabbix -pzabbix zabbix < p_w_picpaths.sql 

[[email protected] mysql]# mysql -uzabbix -pzabbix zabbix < data.sql

[[email protected] src]# cd /usr/local/src/zabbix-2.2.2

 

[[email protected] zabbix-2.2.2]# ./configure --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi --with-unixodbc --prefix=/usr/local/zabbix

[[email protected] zabbix-2.2.2]# make && make install

3.1.4 编译http.conf支持index.php

#vim/etc/httpd/conf/httpd.conf

  DirectoryIndex index.php index.html

修改zabbix文件对应的数据库账号和密码:

能。

3.1.5 修改zabbix配置文件的数据库账号密码

[[email protected] zabbix-2.2.2]# vim /usr/local/zabbix/etc/zabbix_server.conf

DBHost=127.0.0.1

DBName=zabbix

DBUser=zabbix

DBPassword=zabbix

3.1.6复制启动脚本,并修改相应选项

[[email protected] zabbix2.2.2]# cp misc/init.d/fedora/core5/zabbix_server /etc/init.d/

[[email protected] zabbix2.2.2]# cp misc/init.d/fedora/core5/zabbix_agentd /etc/init.d/

修改两个配置文件把路径

[[email protected] zabbix-2.2.2]# vim /etc/init.d/zabbix_agentd 

ZABBIX_BIN="/usr/local/sbin/zabbix_agentd"改成ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_agentd"

[[email protected] zabbix-2.2.2]# vim /etc/init.d/zabbix_server 

ZABBIX_BIN="/usr/local/sbin/zabbix_server"改成ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_server"

启动:

[[email protected] zabbix-2.2.2]# /etc/init.d/zabbix_server start

[[email protected] zabbix-2.2.2]# /etc/init.d/zabbix_agentd start

[[email protected] zabbix-2.2.2]# chkconfig zabbix_agentd on

[[email protected] zabbix-2.2.2]# chkconfig zabbix_server on

3.1.7修改php.ini文件支持

[[email protected] zabbix-2.2.2]# vim /etc/php.ini 

max_execution_time = 300

max_input_time = 300

date.timezone =Asia/Shanghai

post_max_size = 32M

重启httpd使php配置生效

#servicehttpd restart

3.1.8复制zabbixphp项目到http目录下,并且给权限:

[[email protected] zabbix-2.2.2]#mkdir/var/www/zabbix

[[email protected] zabbix-2.2.2]#cp-rf /usr/local/src/zabbix-2.2.2/frontends/php /var/www/zabbix/

[[email protected] zabbix-2.2.2]#chown -R apache.apache /var/www/zabbix/

3.1.9修改httpd默认访问路径

[[email protected] zabbix-2.2.2]#vim/etc/httpd/conf/httpd.conf

  DocumentRoot "/var/www/zabbix/php"

 

配置完成,重启以上所有服务。

 

3.2.0防火墙配置

打开防火墙的服务应用端口

iptables -AINPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

iptables -AINPUT -m state --state NEW -m tcp -p tcp --dport 10050 -j ACCEPT

iptables -AINPUT -m state --state NEW -m tcp -p tcp --dport 10051 -j ACCEPT

iptables -AINPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

iptables -AINPUT -m state --state NEW -m udp -p udp --dport 161 -j ACCEPT

[[email protected]]#serviceiptables save

[[email protected]]#serviceiptables restart

3.2.1界面配置zabbix

浏览器打开http://192.168.10.1 or  http://192.168.10.1/zabbix

zabbix 2.2完美安装手册v1.0

zabbix 2.2完美安装手册v1.0

zabbix 2.2完美安装手册v1.0

zabbix 2.2完美安装手册v1.0

zabbix 2.2完美安装手册v1.0

zabbix 2.2完美安装手册v1.0

配置完成

登陆默认账号密码:rootAdmin passwdzabbix

3.2.2中文汉化

         zabbix 2.2完美安装手册v1.0

3.2.3乱码解决

在自己的windows电脑找到本地C:\Windows\Fonts\simkai.ttf(楷体)上传到服务器zabbix网站目录fonts目录下。并且修改命名方式(不上传字体会照成乱码):

[[email protected] fonts]# mv simkai.ttfDejaVuSans.ttf

 

3.3 zabbix_agent客户端安装配置

client192.168.10.10  (即在需要被监控的主机上安装)

3.3.1 添加账户

1

[[email protected] ~]# useradd zabbix -s /sbin/nologin

 

3.3.2编译安装zabbix_agent:

[[email protected] ]#tar -zxvf zabbix-2.2.2.tar.gz

[[email protected] ]#cd zabbix-2.2.2

1

2

[[email protected] ]# ./configure --with-net-snmp --with-libcurl 

--enable-agent --prefix=/usr/local/zabbix

[[email protected] ]#  make && make install

3.3.3设置启动项和修改配置文件:

1

2

3

4

[[email protected]]# cp misc/init.d/fedora/core5/zabbix_agentd /etc/init.d/

[[email protected]]# chmod 700 /etc/init.d/zabbix_agentd 

[[email protected]]# vim /etc/init.d/zabbix_agentd 

ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_agentd"

 

3.3.4修改zabbix指向的服务器:

1

2

[[email protected]]# vim /usr/local/zabbix/etc/zabbix_agentd.conf

Server=127.0.0.2,192.168.10.1

打开防火墙10050  10051端口

iptables  -A INPUT -m state --state NEW -m tcp -p tcp --dport 10050 -j ACCEPT

iptables  -A INPUT -m state --state NEW -m tcp -p tcp --dport 10051 -j ACCEPT

重启服务

[[email protected]]# service zabbix_agentd start  

[[email protected]]# chkconfig zabbix_agentd on 

 

第四章添加监控对象

 

4.1.1 添加监控主机(linux)步骤

zabbix 2.2完美安装手册v1.0

 

 

4.1.2套用模板

zabbix 2.2完美安装手册v1.0

 

成功添加linux主机

zabbix 2.2完美安装手册v1.0

 

4.1.3 添加交换机监控对象

以添加cisco交换机为例

启动cisco snmp 协议并配置团体名

Sw-config#snmp-server community abcd RW    \\ abcd为团体名

Sw-config snmp-server enables versionall       \\开启支持所有snmp版本

Sw-config #snmp-server enable traps 

Sw-config #snmp-server host 192.168.10.1version 2c  \\接受来自监控主机的请求

 

界面添加交换机对象

zabbix 2.2完美安装手册v1.0

给交换机加模板


 zabbix 2.2完美安装手册v1.0

设置巨集,定义团体名

zabbix 2.2完美安装手册v1.0

 

监控主机展示如下:linux

zabbix 2.2完美安装手册v1.0

交换机网卡流量图展示

zabbix 2.2完美安装手册v1.0

2015-7-23 soul

备注:此文章来源于本人另一个博客下的博文,为方便管理,归纳到一起。