zabbix初级进阶


这篇文章主要对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监控监控涵盖的太全面了,很多被监控项,有时不能得到具体的值,但是可以定义一些代表值来获取监控信息
原文地址:https://www.cnblogs.com/jojoword/p/10933255.html