Zabbix 3.0基础原理与部署 [一]

2017年6月22日12:30:27 发表评论 2,827 views
摘要

本文主要介绍:Zabbix 基础介绍、监控原理、Server与agent部署、安全设置、菜单说明、数据设置,及各个组件的使用说明。

广告也精彩

一、Zabbix介绍

1.1 Zabbix 简介

  • Zabbix 是一个高度集成的网络监控解决方案,可以提供企业级的开源分布式监控解决方案,由一个国外的团队持续维护更新,软件可以自由下载使用,运作团队靠提供收费的技术支持赢利
  • Zabbix是一个基于Web界面的,提供分布式系统监控以及网络监视功能的企业级的开源解决方案。
  • Zabbix能监视各种网络参数,保证服务器系统的安全运营,并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题
  • Zabbix主要由2部分构成Zabbix ServerZabbix Agent,可选组建Zabbix Proxy
  • Zabbix Server可以通过Snmp,Zabbix Agent,Fping端口监视等方法对远程服务器或网络状态完成监视,数据收集等功能。同时支持Linux以及Unix平台,Windows平台只能安装客户端

1.2 Zabbix 功能

基本监控功能(性能监控、网络监控、硬件监控、协议监控、web监控、多种告警方式、出图、)
支持自动发现网络设备和服务器(可以通过配置自动发现服务器规则来实现)
支持自动发现(low discovery)key 实现动态监控项的批量监控(需写脚本)
支持分布式,能集中展示、管理分布式的监控点
扩展性强,server提供通用接口(api 功能)支持自定义监控项。
API: 应用API功能,可以方便和其它系统结合,包括移动端的使用

Zabbix官网--APi功能用法

1.3 Zabbix 数据收集

支持snmp(包括trapping and polling),IPMI,JMX,SSH,TELNET 
自定义的检测 
自定义收集数据的频率 
服务器/代理和客户端模式 
灵活的触发器 
可以定义非常灵活的问题阈值,称为触发器,从后端数据库的参考值 
高可定制的报警 
发送通知,可定制的报警升级,收件人,媒体类型 
通知可以使用宏变量有用的变量 
自动操作包括远程命令 
实时的绘图功能 
监控项实时的将数据绘制在图形上面 
WEB 监控能力 
ZABBIX 可以模拟鼠标点击了一个网站,并检查返回值和响应时间

1.4 Zabbix版本统计

Zabbix 4.2 正在开发...
Zabbix 4.0 Manual
Zabbix 3.3 Manual
Zabbix 3.0 Manual
Zabbix 2.2 Manual
下载地址:http://www.zabbix.com/documentation.php
本次采用yum安装,安装zabbix3.0.使用Centos7

1.5 Zabbix优缺点

zabbix优点:

开源免费
系统资源消耗少
支持设备多,自带多种监控模板 
支持分布式集中管理,有自动发现功能,可以实现自动化监控 
开放式接口,扩展性强,插件编写容易 
有多种运行模式,可以根据业务选择
Api 的支持,方便与其他系统结合

zabbix 缺点:

被监控主机需安装agent
所有数据都存在数据库里,产生的数据据很大,"瓶颈主要在数据库"。

二、Zabbix监控原理

Zabbix 通过C/S 模式采集数据,通过B/S模式在web 端展示和配置。
被监控端:主机通过安装agent 方式采集数据,网络设备通过SNMP 方式采集数据
Server 端:通过收集SNMP 和agent 发送的数据,写入数据库(MySQL,ORACLE 等),再通过php+apache 在web 前端展示。
Zabbix 3.0基础原理与部署 [一]

2.1 Zabbix 运行条件

Server:Zabbix Server 需运行在LAMP(Linux+Apache+Mysql+PHP)环境下(或者LNMP),对硬件要求低
Agent:目前已有的agent 基本支持市面常见的OS,包含Linux、HPUX、Solaris、Sun、
windows
SNMP:支持各类常见的网络设备
SNMP(Simple Network Management Protocol,简单网络管理协议
Zabbix监控过程逻辑图
Zabbix 3.0基础原理与部署 [一]
监控类型

硬件监控 适用于物理机、远程管理卡(iDRAC),IPMI(只能平台管理接口) 
ipmitools:,MegaCli(查看Raid磁盘) 
系统监控: 监控cpt:lscpu、uptime、top、vmstat 1 、mpstat 1、htop 
监控内存: free -m、 
**监控硬盘:**df -h、iotop 
**监控网络:**iftop、netstat、ss 
**应用服务监控:**nfs、MySQL、nginx、apache、php、rsync

监控范畴

硬件监控:Zabbix、IPMI、lnterface 
系统监控:Zabbix、Agent、Interface 
Java监控:Zabbix、JMX、lnterface 
网络设备监控:Zabbix、SNMP、lnterface 
应用服务监控:Zabbix、Agent、UserParameter 
MySQL数据库监控:percona-monitoring-plulgins 
URL监控:Zabbix Web监控

更详细的监控类型可以参考:Zabbix相关文章

三、Zabbix 环境配置

1、环境信息

[root@localhost ~]# cat /etc/redhat-release 
CentOS Linux release 7.2.1511 (Core) 
[root@localhost ~]# uname -r
3.10.0-327.28.3.el7.x86_64

2、yum安装
阿里云yum源已经提供了zabbix3.0,因此我们需要使用官方yum源。官方yum源下载会比较慢

[root@localhost ~]# rpm -ivh http://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

问题:为什么要下载release版本的zabbix?

[root@localhost ~]# ls /etc/yum.repos.d/
CentOS-Base.repo       CentOS-Media.repo    epel.repo.rpmnew
CentOS-CR.repo         CentOS-Sources.repo  epel-testing.repo
CentOS-Debuginfo.repo  CentOS-Vault.repo    zabbix.repo
CentOS-fasttrack.repo  epel.repo

因为下载这个版本会在yum.repos.d下面生成一个zabbix.repo的文件

3、安装相关软件包

[root@localhost ~]# yum install zabbix-server zabbix-web zabbix-server-mysql zabbix-web-mysql mariadb-server mariadb -y
注:如果Server端也需要监控则需要安装zabbix-agent

提示:在Centos7中,mysql改名为mariadb

4、修改PHP时区设置

[root@localhost ~]# sed -i 's@# php_value date.timezone Europe/Riga@php_value date.timezone Asia/Shanghai@g' /etc/httpd/conf.d/zabbix.conf
#要注意需要改的配置文件是/etc/httpd/conf.d/zabbix.conf而不是/etc/php.ini

四、数据库设置

1.启动数据库

[root@localhost ~]# systemctl start mariadb

2.创建zabbix数据库及用户

mysql
create database zabbix character set utf8 collate utf8_bin;
grant all on zabbix.* to zabbix@'localhost' identified by '123456';
exit

3.导入数据

[root@localhost ~]# cd /usr/share/doc/zabbix-server-mysql-3.0.4/
[root@localhost zabbix-server-mysql-3.0.4]# ll
total 1836
-rw-r--r-- 1 root root      98 Jul 22 11:05 AUTHORS
-rw-r--r-- 1 root root  687803 Jul 22 11:05 ChangeLog
-rw-r--r-- 1 root root   17990 Jul 22 11:06 COPYING
-rw-r--r-- 1 root root 1158948 Jul 24 02:59 create.sql.gz
-rw-r--r-- 1 root root      52 Jul 22 11:06 NEWS
-rw-r--r-- 1 root root     188 Jul 22 11:05 README
[root@localhost zabbix-server-mysql-3.0.4]# zcat create.sql.gz |mysql -uzabbix -p123456 zabbix

我们使用zcat,专门查看sql.gz包。和cat基本相似

4.修改zabbix配置文件

[root@localhost zabbix-server-mysql-3.0.4]# vim /etc/zabbix/zabbix_server.conf 
DBHost=localhost    #数据库所在主机
DBName=zabbix       #数据库名
DBUser=zabbix       #数据库用户
DBPassword=123456   #数据库密码 
5.启动zabbix及apache
```bash
[root@localhost ~]# systemctl start zabbix-server
[root@localhost ~]# systemctl start httpd

注意:如果没有启动成功,要看一下是不是80端口被占用

五、Zabbix-server端配置

访问地址:http://10.0.0.61/zabbix/setup.php
Zabbix 3.0基础原理与部署 [一]
Zabbix 3.0基础原理与部署 [一]
Zabbix 3.0基础原理与部署 [一]
Zabbix 3.0基础原理与部署 [一]
Zabbix 3.0基础原理与部署 [一]
Zabbix 3.0基础原理与部署 [一]
Zabbix 3.0基础原理与部署 [一]
Zabbix 3.0基础原理与部署 [一]
至此zabbix server端安装完毕;注意如果Zabbix server is running 没有运行,就需要查看/var/log/zabbix/zabbix_server.log 日志

六、配置Zabbix-agent端

[root@localhost ~]# vim /etc/zabbix/zabbix_agentd.conf 
Server=127.0.0.1       修改Server端的IP地址(被动模式IP地址)
ServerActive=127.0.0.1     主动模式,主动向server端报告
[root@localhost ~]# systemctl start zabbix-agent

查看端口号

[root@localhost ~]# netstat -lntp|egrep "10050|10051"
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      11511/zabbix_agentd 
tcp        0      0 0.0.0.0:10051           0.0.0.0:*               LISTEN      11335/zabbix_server 
tcp6       0      0 :::10050                :::*                    LISTEN      11511/zabbix_agentd 
tcp6       0      0 :::10051                :::*                    LISTEN      11335/zabbix_server 
10051为server端口,10050为agent端口

七、Web界面配置

7.1 创建主机
登录zabbix Server ;依次点击Configuration ----> Host ----> Create host
Zabbix 3.0基础原理与部署 [一]
7.2、配置主机信息
在3 处配置主机名,4处配置要在zabbix server 端要显示的名称。5处选择要添加的群组,5 处填写zabbix agent端的ip
Zabbix 3.0基础原理与部署 [一]
PS:这里尤其需要注意,如果上面sed替换的配置文件中写的Server=10.0.0.8,
这里的IP也得写成内网IP 172.16.1.8而不是10网段了否则就会监控不到

7.3、配置主机模板
点击1处配置模板,在2处输入linux然后选择Template OS Linux 。这个在4处点击Add ;再5处点击Add
Zabbix 3.0基础原理与部署 [一]
7.4、验证结果
完成上一步的添加即可自动返回到列表页,之后等待数分钟刷新界面即可发现ZBX变成绿色,至此agent添加完毕
Zabbix 3.0基础原理与部署 [一]
Agent可以干一些SNMP无法干的事情,例如自定义监控项,可以查看ZAbbix相关文章

八、Zabbix页面安全设置

1、设置默认账号密码
Zabbix 3.0基础原理与部署 [一]
Zabbix 3.0基础原理与部署 [一]
web页面中英文对照
Zabbix 3.0基础原理与部署 [一]

九、Zabbix 菜单说明

Zabbix 上方的菜单简单介绍说明
Zabbix 3.0基础原理与部署 [一]
Doshboard下面可以设置你想设置的图形,添加方法如下:
Zabbix 3.0基础原理与部署 [一]
 这时,就可以找到你喜爱的了,直接打开
screens其实就是一个聚合图形,可以把多个图片合在一起。然后放在大屏幕上,供别人查看
maps就是一个架构图
Status of Zabbix就是一个状态栏
Zabbix 3.0基础原理与部署 [一]
bash
 第一行是Server是否运行[yes]和后面的运行地址
 第二行监控的机器 (启用的/关闭的/模板)
 第三行监控项 (启用的/关闭的/不支持的)
 第四行触发器的状态 (启用的/关闭的/【故障/正常】)
 第五行 当前用户数量 (在线数量)
 第六行 zabbix每秒可以收到的一个新值

告警的级别
Zabbix 3.0基础原理与部署 [一]
我们可以设置报警响铃,让他在前端响
Zabbix 3.0基础原理与部署 [一]
Zabbix 3.0基础原理与部署 [一]
我们首页的监控列表是可以随意拖动的
Zabbix 3.0基础原理与部署 [一]
我们还可以将它关闭,并且设置刷新时间
Zabbix 3.0基础原理与部署 [一]
Zabbix 基础完!
更多文章请阅读:Zabbix相关文章

  • QQ精品交流群
  • weinxin
  • 微信公众号
  • weinxin
广告也精彩
admin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: