搭建Zabbix监控环境

zabbix介绍

zabbix(音同 zæbix)是一个基于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监控环境

要想搭建一个Zabbix的工作环境,需要从服务器入手。与服务器通信,管理员需要使用一个Zabbix前端界面,与Zabbix服务器和数据库进行通信。三个关键(界面、服务器和数据库)可以安装在同一台服务器上,当然,也可以安装在不同的主机上,看自己适用的情况。 Zabbix服务器能够直接监控到同一网络中的设备,如果其他网络的设备也需要被监控,那还需要一台Zabbix代理服务器。下图Zabbix 的架构图

搭建Zabbix监控环境

Zabbix Server:负责接收agent发送的报告信息的核心组件,所有配置、统计数据及操作数据均由其组织进行;

Database Storage:专用于存储所有配置信息,以及由Zabbix收集的数据。

Web interface:zabbix的GUI接口,通常与Server运行在同一台主机上;

Proxy:可选组件,常用语分布式监控环境中,代理Server收集部分被监控端的监控数据并统一发往server端;

Agent:部署在被监控主机上,负责收集本地数据并发往Server端或Proxy端;

 

搭建zabbix

这里不再啰嗦,下面开始具体的搭建步骤。

一、环境准备:centos系统、yum源、 关闭防火墙与SElinux

如果不能连接外网的话,请到zabbix官网下载所需的rpm包

下载地址:

http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/

这是需要的软件包

zabbix-agent-3.4.4-2.el7.x86_64.rpm

zabbix-get-3.4.4-2.el7.x86_64.rpm

zabbix-sender-3.4.4-2.el7.x86_64.rpm

zabbix-server-mysql-3.4.4-2.el7.x86_64.rpm

zabbix-web-3.4.4-2.el7.noarch.rpm

zabbix-web-mysql-3.4.4-2.el7.noarch.rpm

 

如果可以连接外网的话:可以直接到官网下载zabbix-release-3.4-2.el7.noarch.rpm这个包,可以安装zabbix的yum 源

rpm -ivh zabbix-release-3.4-2.el7.noarch.rpm

 

需要两台Linux主机

一台监控主机:安装httpd、安装mysql数据库、安装zabbix server

一台被监测主机:安装zabbix agent

zabbix server:

hostnamectl set-hostname zbx1.magedu.com

vim /etc/my.cnf.d/server.cnf

[server]

skip_name_resolve = ON

innodb_file_per_table = ON

innodb_buffer_pool_size =256M

max_connections = 2000

  

mysql_secure_installation

systemctl start mariadb

  

这是需要安装的软件包

zabbix-agent-3.4.4-2.el7.x86_64.rpm

zabbix-get-3.4.4-2.el7.x86_64.rpm

zabbix-sender-3.4.4-2.el7.x86_64.rpm

zabbix-server-mysql-3.4.4-2.el7.x86_64.rpm

zabbix-web-3.4.4-2.el7.noarch.rpm

zabbix-web-mysql-3.4.4-2.el7.noarch.rpm

  

最好用yum 安装,因为这些包还有一些依赖包需要安装

yum install zabbix-agent-3.4.4-2.el7.x86_64.rpm zabbix-get-3.4.4-2.el7.x86_64.rpm zabbix-sender-3.4.4-2.el7.x86_64.rpm zabbix-server-mysql-3.4.4-2.el7.x86_64.rpm zabbix-web-3.4.4-2.el7.noarch.rpm zabbix-web-mysql-3.4.4-2.el7.noarch.rpm -y

  

mysql

create database zbxdb character set 'utf8';

grant all on zbxdb.* to 'zbxuser'@'172.17.%.%' identified by 'zbxpass';

flush privileges;

quit

  

rpm -ql zabbix-server-mysql

/usr/share/doc/zabbix-server-mysql-3.4.4/create.sql.gz

  

cp /usr/share/doc/zabbix-server-mysql-3.4.4/create.sql.gz ./

gzip -d create.sql.gz

head -20 create.sql #看一下表头

mysql -uzbxuser -h172.17.111.137 -pzbxpass zbxdb < create.sql

  

MariaDB [zbxdb]> show databases;

use zbxdb;

show tables;

  

cd /etc/zabbix/

cp zabbix_server.conf{,.bak} 先备份一下

  

查看有四大部分

grep -i "^####" zabbix_server.conf

############ GENERAL PARAMETERS #################

############ ADVANCED PARAMETERS ################

####### LOADABLE MODULES #######

####### TLS-RELATED PARAMETERS #######

  

配置项

grep -i "^###" zabbix_server.conf

############ GENERAL PARAMETERS #################

### Option: ListenPort

### Option: SourceIP

### Option: LogType

### Option: LogFile

  

vim /etc/zabbix/zabbix_server.conf

ListenPort=10051

DBHost=172.17.111.137

DBName=zbxdb

DBUser=zbxuser

DBPassword=zbxpass

DBPort=3306

  

systemctl start zabbix-server.service

  

rpm -ql zabbix-web 页面文件

  

设定时区

vim /etc/httpd/conf.d/zabbix.conf

# php_value date.timezone Asia/Shanghai

或者在/etc/pho.ini中设置,二者择一即可

date.timezone =Asia/Shanghai

  

systemctl restart zabbix-server.service

systemctl start httpd

 

 

node1:

hostnamectl set-hostname node1.magedu.com

yum install zabbix-agent-3.4.4-2.el7.x86_64.rpm zabbix-sender-3.4.4-2.el7.x86_64.rpm -y 

vim /etc/zabbix/zabbix_agentd.conf

Server=172.17.111.137

ListenPort=10050

ListenIP=0.0.0.0

StartAgents=3

ServerActive=172.17.111.137

Hostname=node1.magedu.com 监控端能识别的主机名,主机名不能识别的话,ip地址也行

  

systemctl start zabbix-agent.service

 

Zabbix web GUI:

首先打开浏览器,做一些初始化设置

http://172.17.111.137/zabbix/setup.php

  

点击"nest step"

搭建Zabbix监控环境

  

检查都显示"OK",点击"nest step"

搭建Zabbix监控环境

  

输入数据库的ip地址,数据库用户名和密码,点击"nest step"

搭建Zabbix监控环境

  

下图选填,如果你的主机只有一个zabbix server,可以不填,如果超过一个,填写Port和Name可以区分不同的zabbix server,之后,点击"Next step"

搭建Zabbix监控环境

  

检查有没有问题,没问题的话,点击"Next step"就开始安装了

搭建Zabbix监控环境

  

下图表示安装成功,如果想要修改数据库密码等参数,可以在"/etc/zabbix/web/zabbix.conf.php"中修改,点击"Finish"就可以登录了。

搭建Zabbix监控环境

  

默认用户名:admin,密码:zabbix,登陆过后请立即更改密码

搭建Zabbix监控环境

  

登录成功,可以看到下图,这是zabbix的仪表盘,不同版本的zabbix,仪表盘可能不同

搭建Zabbix监控环境

  

配置被监控的主机:

搭建Zabbix监控环境

  

搭建Zabbix监控环境

  

搭建Zabbix监控环境

  

成功添加主机组后,点击二级菜单hosts

搭建Zabbix监控环境

  

搭建Zabbix监控环境

  

搭建Zabbix监控环境

  

搭建Zabbix监控环境

  

添加items监控项

搭建Zabbix监控环境

  

搭建Zabbix监控环境

  

搭建Zabbix监控环境

  

数据预处理一下,取速率,即每秒CPU终端的次数

搭建Zabbix监控环境

  

搭建Zabbix监控环境

  

下图代表zabbix server监控到了node1主机的agent客户端接口

搭建Zabbix监控环境

  

查看图形界面监控结果,看到这个图,就代表zabbix已经初步搭建成功了,当然,zabbix监控还有 triggeraction,这里鉴于篇幅,就不再一一介绍。

搭建Zabbix监控环境