zabbix 简介

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

Zabbix 功能

  ①具备常见的商业监控软件所具备的功能(主机的性能监控、网络设备性能监控、数据库、性能监控、FTP 等通用协议监控、多种告警方式、详细的报表图表绘制) 
  ②支持自动发现网络设备和服务器(可以通过配置自动发现服务器规则来实现) 
  ③支持自动发现(low discovery)key 实现动态监控项的批量监控(需写脚本) 
  ④支持分布式,能集中展示、管理分布式的监控点 
  ⑤扩展性强,server 提供通用接口(api 功能),可以自己开发完善各类监控(根据相关接口编写程序实现)编写插件容易,可以自定义监控项,报警级别的设置。 
  ⑥数据收集 
 可用和性能检测 
 支持snmp(包括trapping and polling),IPMI,JMX,SSH,TELNET 
 自定义的检测 
 自定义收集数据的频率 
 服务器/代理和客户端模式 
 灵活的触发器 
 可以定义非常灵活的问题阈值,称为触发器,从后端数据库的参考值 
 高可定制的报警 
 发送通知,可定制的报警升级,收件人,媒体类型 
 通知可以使用宏变量有用的变量 
 自动操作包括远程命令 
 实时的绘图功能 
 监控项实时的将数据绘制在图形上面 
 WEB 监控能力 
 ZABBIX 可以模拟鼠标点击了一个网站,并检查返回值和响应时间

Api 功能 
  应用api功能,可以方便的和其他系统结合,包括手机客户端的使用。 
更多功能请查看 
http://www.zabbix.com/documentation.php

 

Zabbix版本

Zabbix 3.0 Manual 
Zabbix 2.4 Manual 
Zabbix 2.2 Manual 
Zabbix 2.0 Manual 
下载地址:http://www.zabbix.com/documentation.php 
本次采用yum安装,安装zabbix3.0.使用Centos7

 

Zabbix优缺点

优点 
 1、开源,无软件成本投入 
 2、Server 对设备性能要求低 
 3、支持设备多,自带多种监控模板 
 4、支持分布式集中管理,有自动发现功能,可以实现自动化监控 
 5、开放式接口,扩展性强,插件编写容易 
 6、当监控的item 比较多服务器队列比较大时可以采用被动状态,被监控客户端主动从 
 7、server 端去下载需要监控的item 然后取数据上传到server 端。这种方式对服务器的负载比较小。 
 8、Api 的支持,方便与其他系统结合 
缺点 
  需在被监控主机上安装agent,所有数据都存在数据库里,产生的数据据很大,瓶颈主要在数据库

 

Zabbix监控原理

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

 

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监控过程逻辑图 

 

监控类型

硬件监控 适用于物理机、远程管理卡(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 
更详细的监控类型可以参考:http://www.abcdocker.com/abcdocker/1376

 

引入zabbix

所有监控范畴,都可以整合到Zabbix中 
   硬件监控:Zabbix、IPMI、lnterface 
   系统监控:Zabbix、Agent、Interface 
   Java监控:Zabbix、JMX、lnterface 
   网络设备监控:Zabbix、SNMP、lnterface 
   应用服务监控:Zabbix、Agent、UserParameter 
   MySQL数据库监控:percona-monitoring-plulgins 
   URL监控:Zabbix Web监控 

 

二、Zabbix 环境配置

1、环境信息

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

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

 
  1. [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?

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

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

3、安装相关软件包

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

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

4、修改PHP时区设置

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

三、数据库设置

1.启动数据库

 
  1. [root@localhost ~]# systemctl start mariadb

2.创建zabbix数据库及用户

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

3.导入数据

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

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

4.修改zabbix配置文件

 
  1. [root@localhost zabbix-server-mysql-3.0.4]# vim /etc/zabbix/zabbix_server.conf
  2. DBHost=localhost #数据库所在主机
  3. DBName=zabbix #数据库名
  4. DBUser=zabbix #数据库用户
  5. DBPassword=123456 #数据库密码

5.启动zabbix及apache

 
  1. [root@localhost ~]# systemctl start zabbix-server
  2. [root@localhost ~]# systemctl start httpd
  3. 注意:如果没有启动成功,要看一下是不是80端口被占用

6.Web界面安装master 
访问地址:http://192.168.56.11/zabbix/setup.php 

点击Next step进行安装 

首先要确保没有no,如果时区没有改好会提示我们进行修改 

账号密码都是我们刚刚在配置文件中设置的,端口默认就是3306 

为我们的zabbix起个名字,一会在右上角会显示 

最后是展示我们的配置信息,可以查看到哪里有错误 

点击Finish 

提示:上去之后请立即修改密码

7.配置zabbix-agent端

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

查看端口号

 
  1. [root@localhost ~]# netstat -lntp
  2. Active Internet connections (only servers)
  3. Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
  4. tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 7806/mysqld
  5. tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1062/sshd
  6. tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2208/master
  7. tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 11511/zabbix_agentd
  8. tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 11335/zabbix_server
  9. tcp 0 0 127.0.0.1:199 0.0.0.0:* LISTEN 2692/snmpd
  10. tcp6 0 0 :::80 :::* LISTEN 11408/httpd
  11. tcp6 0 0 :::22 :::* LISTEN 1062/sshd
  12. tcp6 0 0 ::1:25 :::* LISTEN 2208/master
  13. tcp6 0 0 :::443 :::* LISTEN 11408/httpd
  14. tcp6 0 0 :::10050 :::* LISTEN 11511/zabbix_agentd
  15. tcp6 0 0 :::10051 :::* LISTEN 11335/zabbix_server
  16. 10051为server端口,10050为agent端口
 

四、Web界面配置

找到Configuration---->Hosts 添加一台监控主机 

开启后,如果出现错误我们可以看一下zabbix的日志

 
  1. [root@localhost ~]# ls /var/log/zabbix/zabbix_
  2. zabbix_agentd.log zabbix_server.log


当ZBX变成绿色的时候,说明监控成功。因为我们没有配置SNMP、JMX、IPMI等。所以我发监控 

因为我们现在只安装了一台服务器,所以只有一个主机。我们可以查看现在这台主机的CPU等及基本的信息 

点击Monitoring-----Graphs,选择我们要监控的内容 

我们选择可以随便选择一个进行查看信息 
例如:我们查看CPU的负载 

  某一段时间内,CPU正在处理以及等待CPU处理的进程数的之和。Load Average是从另一个角度来体现CPU的使用状态的。 
  这些监控其实就是zabbix在数据库查找数据,然后使用jd进行画图 
Zabbix性能依赖于mysql数据库

 

五、Zabbix页面安全设置

1、设置默认账号密码 


  设置完中文 

 

六、Zabbix 菜单说明

Zabbix 上方的菜单简单介绍说明 

Doshboard下面可以设置你想设置的图形,添加方法如下: 


  这时,就可以找到你喜爱的了,直接打开 

screens其实就是一个聚合图形,可以把多个图片合在一起。然后放在大屏幕上,供别人查看 

maps就是一个架构图 

Status of Zabbix就是一个状态栏 

 第一行是Server是否运行[yes]和后面的运行地址 
 第二行监控的机器 (启用的/关闭的/模板) 
 第三行监控项 (启用的/关闭的/不支持的) 
 第四行触发器的状态 (启用的/关闭的/【故障/正常】) 
 第五行 当前用户数量 (在线数量) 
 第六行 zabbix每秒可以收到的一个新值

告警的级别 

我们可以设置报警响铃,让他在前端响 


我们首页的监控列表是可以随意拖动的 

我们还可以将它关闭,并且设置刷新时间 

Zabbix 基础完!

Zabbix 3.0 基础介绍 [一]的更多相关文章

  1. 1.Zabbix 3.0 基础

    请查看我的有道云笔记: http://note.youdao.com/noteshare?id=85046af7675851675679a47beadc7aa3&sub=000AB0B2409 ...

  2. _00017 Kafka的体系结构介绍以及Kafka入门案例(0基础案例+Java API的使用)

    博文作者:妳那伊抹微笑 itdog8 地址链接 : http://www.itdog8.com(个人链接) 博客地址:http://blog.csdn.net/u012185296 博文标题:_000 ...

  3. 『心善渊』Selenium3.0基础 — 24、Selenium的expected_conditions模块详细介绍

    目录 1.EC模块介绍 2.EC模块常用类 3.EC模块的使用 4.EC模块综合使用 (1)title_is(title)示例 (2)presence_of_element_located(locat ...

  4. Zabbix3.0基础教程之一:系统监控,zabbix安装与基本配置

    一.安装环境: 系统环境: 系统版本:CentOS Linux release 7.4.1708 (Core) 内核版本:3.10.0-693.el7.x86_64 关闭Firewall与SELinu ...

  5. zabbix自动化监控基础

    zabbix安装配置文档 2 一 zabbix-server 安装配置(基础配置) 2 二 zabbix agent安装配置 5 2.1 主动模式和被动模式 6 2.2 安装配置zabbix_agen ...

  6. 源码安装和配置zabbix 3.0 LST

    Zabbix是什么 Zabbix 是由Alexei Vladishev创建,目前由Zabbix SIA在持续开发和支持. Zabbix 是一个企业级的分布式开源监控方案. Zabbix是一款能够监控各 ...

  7. Zabbix 5.0 LTS版本的安装小结

    Zabbix 5.0 LTS版本的安装小结   1:准备Zabbix的服务器. 这里可能需要一台或多台服务器,视需求和资源而定.也可以将Zabbix_Server.MySQL.Zabbix Web等安 ...

  8. Web3D编程入门总结——WebGL与Three.js基础介绍

    /*在这里对这段时间学习的3D编程知识做个总结,以备再次出发.计划分成“webgl与three.js基础介绍”.“面向对象的基础3D场景框架编写”.“模型导入与简单3D游戏编写”三个部分,其他零散知识 ...

  9. C++ 迭代器 基础介绍

    C++ 迭代器 基础介绍 迭代器提供对一个容器中的对象的访问方法,并且定义了容器中对象的范围.迭代器就如同一个指针.事实上,C++的指针也是一种迭代器.但是,迭代器不仅仅是指针,因此你不能认为他们一定 ...

随机推荐

  1. JAVA基础知识总结:六

    一.不定长参数 1.语法:数据类型... 变量名称 使用注意事项:a.不定长参数就相当于是一个数组 b.不定长参数只能出现在参数列表的最后面 c.一个函数的参数列表中只能出现一次不定长参数 d.对于不 ...

  2. 无所不会的fiddler遇到的尴尬

    昨天测试项目时,遇到一个尴尬的事 预期功能:点击页面某个按钮会post2个请求 实际情况:点了按钮,fiddler抓包没有看到任何请求 后来经过他人提醒在PC端浏览器打开此页面,点击按钮后看到页面有j ...

  3. Python Linear algebra

    Linear algebra 1.模块文档 NAME numpy.linalg DESCRIPTION Core Linear Algebra Tools ---------------------- ...

  4. Windows环境下多线程编程原理与应用读书笔记(3)————Windows环境中的多线程实现(3)

    纤程 纤程(fiber): 相当于用户级别的线程或轻进程.纤程由Win32库函数支持,对核心是不可见的.纤程可以通过SwitchToFiber显示至另一合作纤程,以实现合作纤程之间的协同.线程是在Wi ...

  5. J - Scarily interesting! URAL - 2021

    This year at Monsters University it is decided to arrange Scare Games. At the Games all campus gathe ...

  6. Problem I

    Problem Description Queues and Priority Queues are data structures which are known to most computer ...

  7. JavaScript sort() 方法详解

    定义和用法 sort() 方法用于对数组的元素进行排序. 语法 arrayObject.sort(sortby) 参数 描述 sortby 可选.规定排序顺序.必须是函数. 返回值 对数组的引用.请注 ...

  8. Vue js 的生命周期详解

    Vue 实例的生命周期 Vue 实例有一个完整的生命周期,也就是从开始创建.初始化数据.编译模板.挂载Dom→渲染.更新→渲染.卸载等一系列 过程,我们称这是 Vue 的生命周期.通俗说就是 Vue ...

  9. luogu P1563 玩具谜题

    https://www.luogu.org/problemnew/show/1563 题目: 小南有一套可爱的玩具小人, 它们各有不同的职业. 有一天, 这些玩具小人把小南的眼镜藏了起来. 小南发现玩 ...

  10. 开源API测试工具 Hitchhiker v0.4更新 - 没有做不到,只有想不到

    Hitchhiker 是一款开源的 Restful Api 测试工具,支持Schedule, 数据对比,压力测试,支持上传脚本定制请求,可以轻松部署到本地,和你的team成员一起管理Api. 详细介绍 ...