这篇文章主要对zabbix有一个全面且简单的了解

一.理论概述

zabbix功用

  • 检测功能强大,手机监控信息,以及实时绘图(理论上实时绘图,测试时还是有时间延迟的),可以监控的比较全面,可以是windows或Linux服务器,也可以是网络设备,市面上大部分网络设备都支持SNMP(简单网络管理)协议

运行条件

  • zabbix server即监控端运行基本条件LAMP,相对来说,对硬件要求比较低(也可LNMP)

  • agent被监控端,安装zabbix agent软件包,而且基本市面上常见的设备

缺点

  • 开源软件,免费版没有厂家支持,文献参观资料是比较多的,使用的企业也比较广泛
  • 所有数据都在数据库里,会在数据库层面比较容易产生瓶颈

zabbix组件

  • zabbix server:接受agent发送的报告信息,操作数据存储到数据库,以及如何绘图等.
  • database storage:存储所有配置信息,以及监控的数据
  • proxy:可选组件,用于监控节点很多,可以有效减轻server的压力
  • agent:部署在被监控端,收集信息发往server端
  • web interface:zabbix的GUI接口

监控流程概述

  • agent定期收集各项数据,发送到server端,server将数据先存储到数据库,zabbix web根据数据在前端进行绘图展现
  • agent监控模式
    • 主动模式:agent主动向server请求,主动 将监控项内需要检测的数据提交给server端
    • 被动模式:只要当server向agent请求获取监控项的数据时,agent返回数据

二.部署测试

环境

  • 要求所有服务器配置yum epel源,且能上网,本案例演示部署配置zabbix,并且配置邮件报警
主机名 IP地址 角色
zserver 192.168.111.3 负责监控所有主机,并处理数据
agent 192.168.111.4 被监控端
[root@zserver ~]# uname -n
zserver [root@agent ~]# uname -n
agent

部署

  • 依赖包及LAMP部署
[root@zserver ~]# yum -y install httpd mariadb-server mariadb mariadb-devel php php-mbstring php-mysql php-bcmath php-gd php-xmlrpc php-ldap php-xml libevent libevent-devel net-snmp net-snmp-devel libxml2 libxml2-devel

[root@zserver ~]# systemctl enable mariadb
[root@zserver ~]# systemctl start mariadb
[root@zserver ~]# systemctl start httpd
[root@zserver ~]# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
[root@zserver ~]# mysqladmin -uroot password 123456
  • 部署二进制包jdk
rm -rf /usr/bin/java
tar zxf jdk-8u191-linux-x64.tar.gz -C /usr/local/java8
echo "JAVA_HOME=/usr/local/java8" >> /etc/profile
source /etc/profile
echo "PATH=$PATH:$JAVA_HOME/bin" >> /etc/profile
source /etc/profile [root@zserver ~]# javac -version
javac 1.8.0_191
  • 安装rpm包zabbix
rpm -Uvh https://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
#下载源 yum clean all yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent
#安装Zabbix server,Web前端,agent
  • 数据库进行授权
[root@zserver ~]# mysql -u root -p123456
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 5
Server version: 5.5.60-MariaDB MariaDB Server Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]>
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
#给zabbix程序创建专用库,默认字符集为utf8
Query OK, 1 row affected (0.00 sec) MariaDB [(none)]>
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@zserver identified by '123456';
#给zabbix用户授权 MariaDB [(none)]> grant all on zabbix.* to zabbix@'192.168.111.3' identified by '123456';
Query OK, 0 rows affected (0.00 sec)
#给zabbix_server启动授权 MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
  • 导入初始架构和数据到zabbix库中
[root@zserver ~]# zcat /usr/share/doc/zabbix-server-mysql-3.0.27/create.sql.gz | mysql -u zabbix -p123456 zabbix
#zcat命令用于不真正解压缩文件,就能显示压缩包中文件的内容的场合。 MariaDB [(none)]> use zabbix;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A Database changed
MariaDB [zabbix]> show tables;
+----------------------------+
| Tables_in_zabbix |
+----------------------------+
| acknowledges |
| actions |
| alerts |
…………
  • 为Zabbix server配置数据库
[root@zserver ~]# vim /etc/zabbix/zabbix_server.conf
114 DBPassword=123456
  • 现将本机性能进行监控
[root@zserver ~]# vim /etc/zabbix/zabbix_agentd.conf
95 Server=127.0.0.1
#哪台主机可以对我进行监控 136 ServerActive=127.0.0.1
#开启主动检查 147 Hostname=zserver
#zabbixserver的主机名
  • zabbix前端配置PHP
[root@zserver ~]# vim /etc/httpd/conf.d/zabbix.conf
20 php_value date.timezone Asia/Shanghai
#取消注释,设置时区
  • 启动zabbix server、agent进程
[root@zserver ~]# systemctl restart zabbix-server.service zabbix-agent.service
[root@zserver ~]# systemctl enable zabbix-server.service zabbix-agent.service
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-server.service to /usr/lib/systemd/system/zabbix-server.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
[root@zserver ~]# systemctl restart httpd

web安装zabbix

输入:http://192.168.111.3/zabbix==>next step

==>Database host填写数据库所在服务器的主机名,和配置文件里对应好的;往下依次为端口,数据库库名称,用户,密码

==>输入主机名和端口(自己定义的)

搭建已经成功

优化

实在是做不下去了,官方推荐的方法有点不舒服

总结

  • 我用源码安装zabbix测试时好好地,速度什么都还行,用了官网推荐的方式,特别慢,也不知道是不是少配置了一些东西
  • zabbix监控有时间延时,基本不可能得到完全解决
  • zabbix监控监控涵盖的太全面了,很多被监控项,有时不能得到具体的值,但是可以定义一些代表值来获取监控信息

zabbix初级进阶的更多相关文章

  1. css 初级进阶

    摘自:https://www.jianshu.com/p/dcc40ccc9841 CSS中级 Class和ID选择器 CSS初级教程中我们可以使用HTML标签选择器定义样式. 同样你也可以使用Cla ...

  2. Java初级进阶中高级工程师必备技能

    很多人学了javase以为自己学的已经很OK了,但是其实javase里边有很多的知识点是你不知道的,不管你找的是哪里的javase的视频,大多数是不会讲这些东西,而这些东西你平时业务又不会主动去接触, ...

  3. 第2章Zabbix基础进阶

    p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-bottom: .0001pt; text-align: justify; t ...

  4. 项目实战12.2—企业级监控工具应用实战-zabbix操作进阶

    无监控,不运维.好了,废话不多说,下面都是干货. 流量党勿入,图片太多!!! 项目实战系列,总架构图 http://www.cnblogs.com/along21/p/8000812.html 一.U ...

  5. 7、zabbix使用进阶(03)

    节知识点: zabbix自动发现 web监控 zabbix自动发现   官网:https://www.zabbix.com/documentation/4.0/zh/manual/discovery/ ...

  6. 6、zabbix使用进阶(02)

    zabbix知识点: zabbix可视化 自定义图形(graphs) 屏幕(screen) 宏(macros)  用户参数(User parameters):用户自定义items key的方式来实现自 ...

  7. 5、zabbix使用进阶(01)

    详细描述user parameters.定义主机发现规则实现自动发现.如何定义和实现自动注册方式 zabbix常用术语 1.主机(host):要监控的网络设备,可有IP或DNS名称指定: 2.主机组( ...

  8. 如何使用zabbix初级监控

    如何用zabbix监控(初步使用)? 前提:必须启动mysql 和zabbix目录下的sbin中的zabbix_agentd zabbix_server,还有nginx以及php否则会报错,因为zab ...

  9. C语言初级进阶1

    1.数据类型1.1.基本数据类型数据类型分2类:基本数据类型+复合类型基本类型:char short int long float double复合类型:数组 结构体 共用体 类(C语言没有类,C++ ...

随机推荐

  1. hdfs中删除文件、文件夹、抓取内容

    删除文件   bin/hdfs dfs -rm output2/* 删除文件夹   bin/hdfs dfs -rm -r output2 抓取内容     bin/hdfs dfs -cat /us ...

  2. 《Django企业开发实战 高效Python Web框架指南》胡阳

    链接:https://pan.baidu.com/s/1NmN_IT5RvevCMt9bZCW1-g提取码:2ki9

  3. maven:清除lastUpdated文件

    项目使用maven管理jar包,很容易因为各种原因(网速慢.断网)导致jar包下载不下来,出现很多.lastUpdated文件.这些文件一个一个删除太麻烦.下面是全部删除的方法 windows系统 c ...

  4. 最新 世纪龙java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.世纪龙等10家互联网公司的校招Offer,因为某些自身原因最终选择了世纪龙.6.7月主要是做系统复习.项目复盘.LeetCo ...

  5. websocket抓包

    https://www.cnblogs.com/xiaoniuzai/p/7588739.html http://blog.sina.com.cn/s/blog_12df1b9e60102vyeq.h ...

  6. es查询优化思路

    尽可能的利用内存 将尽可能的索引留在内存,即留更多的堆外内存给es 不查询的字段尽量不要往es插入,节省索引的空间大小(es + hbase) 数据预热 冷热数据分离 文档字段设计 根据查询场景设计字 ...

  7. ExtensionLoader

    ExtensionLoader 从上图中看到该类的构造方法被私有化,并且提供了一个静态方法来获取实例对象, 是的,该类使用了单例模式,懒汉模式 ConcurrentMap<Class<?& ...

  8. shell习题第24题:杀进程

    [题目要求] 一台机器负载高,top查看到有很多sh的进程,然后top -c查看可以看到对应的进程命令是sh -c /bin/clear.sh 经分析后发现是因为该脚本执行时间太长,导致后续执行时,上 ...

  9. 如何使用JavaScript实现纯前端读取和导出excel文件(转)

    转自小茗同学博客:https://www.cnblogs.com/liuxianan/p/js-excel.html js-xlsx 介绍 由SheetJS出品的js-xlsx是一款非常方便的只需要纯 ...

  10. 使用RabbitMQ实现分布式事务

    RabbitMQ解决分布式事务思路: 案例: 经典案例,以目前流行点外卖的案例,用户下单后,调用订单服务,让后订单服务调用派单系统通知送外卖人员送单,这时候订单系统与派单系统采用MQ异步通讯. Rab ...