Zabbix监控系统

一、Zabbix介绍

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。

zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。

官方网站:https://www.zabbix.com/

CentOS7配置Zabbix的官方文档:https://www.zabbix.com/download?zabbix=5.0&os_distribution=centos&os_version=7&db=mysql&ws=apache

二、Zabbix部署

2.1环境准备

2.1.1 2台linux服务器(均可访问互联网)

1.服务器安装Zabbix-server

2.客户端安装Zabbix-agent

2.1.2 确保关闭selinux
vi /etc/sysconfig/selinux
selinux=disabled

zabbix 监控 ip zabbix 监控系统_centos

2.2开始部署

2.2.1 配置LAMP环境
  • LAMP一键安装包:https://www.lamp.sh/
  • 通过yum方式部署:
# yum install epel-release -y

# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

配置MariaDB源:(使用中科大镜像)

https://idc.wanyunshuju.com/ma/1196.html

vim /etc/yum.repos.d/MariaDB.repo

[mariadb]
name = MariaDB
baseurl = https://mirrors.ustc.edu.cn/mariadb/yum/10.4/centos7-amd64
gpgkey=https://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1

安装mariadb、php环境及相关依赖包:

# yum install mariadb-client mariadb-server mariadb-devle httpd php72w-mysql php72w-gd libjpeg* php72w-ladp php72w-odbc php72w-pear php72w-xml php72w-xmlrpc php72w-mbstring php72w-bcmath php72w-mhash php72w-fpm libxml2-devel libevent-devel curl-devel php72w-snmp net-snmp
2.2.2 部署zabbix server

通过Zabbix官方提供的Quick Start文档来进行部署:https://www.zabbix.com/download?zabbix=5.0&os_distribution=centos&os_version=7&db=mysql&ws=apache

Step1.选择你的操作系统版本、数据库类型以及WEB服务器的类型

zabbix 监控 ip zabbix 监控系统_zabbix 监控 ip_02

Step2.为您的平台安装和配置Zabbix服务器

a.安装Zabbix仓库

# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
# yum clean all

b.安装Zabbix服务器和代理

# yum install zabbix-server-mysql zabbix-agent

zabbix 监控 ip zabbix 监控系统_php_03

如果遇到上图所示的网络不畅,导致rpm包无法正常下载,可以通过浏览器或下载工具下载rpm包。下载完成后,将rpm包放在/var/cache/yum/x86_64/7/zabbix/packages文件夹里,再次执行yum install【rpm包名称】即可。

zabbix 监控 ip zabbix 监控系统_centos_04

利用Xftp工具,将下载好的rpm包拷贝到/var/cache/yum/x86_64/zabbix/packages目录下

zabbix 监控 ip zabbix 监控系统_mysql_05

再次执行yum install [rpm包名称]

zabbix 监控 ip zabbix 监控系统_zabbix 监控 ip_06

c.安装Zabbix前端

# yum install centos-release-scl

编辑文件/etc/yum.repos.d/zabbix.repo并启用zabbix-frontend存储库。

[zabbix-frontend]
...
enabled=1
...

zabbix 监控 ip zabbix 监控系统_zabbix_07

安装Zabbix前端软件包

# yum install zabbix-web-mysql-scl zabbix-apache-conf-scl

zabbix 监控 ip zabbix 监控系统_mysql_08

如果遇到上图所示的网络不畅,导致rpm包无法正常下载,可以通过浏览器或下载工具下载rpm包。下载完成后,将rpm包放在/var/cache/yum/x86_64/7/zabbix-frontend/packages文件夹里,再次执行yum install【rpm包名称】即可。

zabbix 监控 ip zabbix 监控系统_centos_09

再次执行yum命令,发现已经能成功安装,如下图所示

zabbix 监控 ip zabbix 监控系统_centos_10

如果想要保留下载的rpm包,可以vim /etc/yum.conf,将keepcache置为1.

zabbix 监控 ip zabbix 监控系统_php_11

d.创建初始数据库

测试数据库是否运作正常:

mysql -uroot -p
Enter Password:(默认密码为空),直接回车进入

zabbix 监控 ip zabbix 监控系统_zabbix_12

在数据库主机上运行以下命令:

# mysql -uroot -p
password
mysql> create database zabbix character set utf8 collate utf8_bin; //使用utf8字符集
mysql> create user zabbix@localhost identified by 'password';	   //数据库密码设置为password,允许																	zabbix用户从本地访问数据库
mysql> grant all privileges on zabbix.* to zabbix@localhost;	   //让所有属于zabbix组的用户拥有数																	    据库的权限
mysql> quit;

在Zabbix服务器主机上,导入初始架构和数据。系统将提示您输入新创建的密码。

# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

zabbix 监控 ip zabbix 监控系统_mysql_13

e.为Zabbix服务器配置数据库

编辑文件/etc/zabbix/zabbix_server.conf

DBPassword=password

zabbix 监控 ip zabbix 监控系统_zabbix_14

f.为Zabbix前端配置PHP

编辑文件/etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf,取消注释并设置正确的时区。

; php_value[date.timezone] = PRC

zabbix 监控 ip zabbix 监控系统_mysql_15

g.启动Zabbix服务器和代理进程

启动Zabbix服务器和代理进程,并使其在系统启动时启动。

# systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
# systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm

zabbix 监控 ip zabbix 监控系统_centos_16

h.配置Zabbix前端

连接到新安装的Zabbix前端:http:// server_ip_or_name /zabbix

您应该能看到如下图所示的欢迎界面:

zabbix 监控 ip zabbix 监控系统_mysql_17

Step1.检查先决条件

确保满足所有软件先决条件。

zabbix 监控 ip zabbix 监控系统_centos_18

前提条件

最低值

描述

PHP版本

7.2.0

PHP memory_limit选项

128MB

在php.ini中: memory_limit = 128M

PHP post_max_size选项

16MB

在php.ini中: post_max_size = 16M

PHP upload_max_filesize选项

2MB

在php.ini中: upload_max_filesize = 2M

PHP max_execution_time选项

300秒(允许值为0和-1)

在php.ini中: max_execution_time = 300

PHP max_input_time选项

300秒(允许值为0和-1)

在php.ini中: max_input_time = 300

PHP session.auto_start选项

必须禁用

在php.ini中: session.auto_start = 0

数据库支持

其中之一:MySQL,Oracle,PostgreSQL。

必须安装以下模块之一: mysql,oci8,pgsql

bcmath

php-bcmath

mbstring

php-mbstring

PHP mbstring.func_overload选项

必须禁用

在php.ini中: mbstring.func_overload = 0

插座

php-net-socket。用户脚本支持所必需。

d

2.0.28

php-gd。PHP GD扩展必须支持PNG图像(–with-png-dir),JPEG(-- with-jpeg-dir)图像和FreeType 2(-- with-freetype-dir)。

的libxml

2.6.15

PHP的XML

xmlwriter

php-xmlwriter

xmlreader

php-xmlreader

类型

php-ctype

会议

PHP会话

文字

php-gettext 自Zabbix 2.2.1起,PHP gettext扩展不是安装Zabbix的强制要求。如果未安装gettext,则前端将照常工作,但是翻译将不可用。

列表中还可能包含可选的先决条件。失败的可选前提条件以橙色显示,并且具有警告状态。如果可选的先决条件失败,则设置可以继续。

Step2.配置数据库连接

输入用于连接数据库的详细信息。Zabbix数据库必须已经创建。

zabbix 监控 ip zabbix 监控系统_centos_19

Step3.ZABBIX服务器详细信息

输入Zabbix服务器详细信息。

zabbix 监控 ip zabbix 监控系统_zabbix_20

输入Zabbix服务器的名称是可选的,但是,如果提交了名称,它将显示在菜单栏和页面标题中。

Step4.安装前摘要

查看设置摘要。

zabbix 监控 ip zabbix 监控系统_zabbix 监控 ip_21

Step5.完成安装。

zabbix 监控 ip zabbix 监控系统_zabbix 监控 ip_22

Step6.登录

Zabbix前端已经准备好!默认用户名为Admin,密码为zabbix

zabbix 监控 ip zabbix 监控系统_zabbix_23

2.2.3 部署zabbix agent

a.导入源

rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm

b.通过yum方式安装zabbix agent

yum install zabbix-server-mysql zabbix-agent

zabbix 监控 ip zabbix 监控系统_php_24

如果遇到上图所示的网络不畅,导致rpm包无法正常下载,可以通过浏览器或下载工具下载rpm包。下载完成后,将rpm包放在/var/cache/yum/x86_64/7/zabbix/packages文件夹里,再次执行yum install【rpm包名称】即可。

zabbix 监控 ip zabbix 监控系统_php_25

c.编辑zabbix配置文件

cd /etc/zabbix/
ls
cp zabbix_agentd.conf zabbix_agentd.conf.bak
vi zabbix_agentd.conf
修改Server=zabbix_server的ip地址
wq保存退出

d.启动zabbix-agent

systemctl start zabbix-agent
systemctl status zabbix-agent

e.查看zabbix端口

netstat -na

f.停止防火墙

systemctl stop firewalld

至此,您的zabbix agent已经配置完毕。

三、Zabbix前端界面

访问Zabbix前端:

http://192.168.13.135/zabbix/

UserName:Admin

Password:zabbix

zabbix 监控 ip zabbix 监控系统_php_26

3.1添加监控主机

zabbix 监控 ip zabbix 监控系统_zabbix 监控 ip_27


zabbix 监控 ip zabbix 监控系统_centos_28

zabbix 监控 ip zabbix 监控系统_zabbix 监控 ip_29


zabbix 监控 ip zabbix 监控系统_zabbix_30


zabbix 监控 ip zabbix 监控系统_zabbix 监控 ip_31


zabbix 监控 ip zabbix 监控系统_zabbix 监控 ip_32

如上图所示,ZBX状态显示绿色则表明zabbix-server能正常监控到zabbix-agent主机上的相关数据。

3.2查看监控效果

zabbix 监控 ip zabbix 监控系统_zabbix_33


zabbix 监控 ip zabbix 监控系统_zabbix_34


zabbix 监控 ip zabbix 监控系统_zabbix_35


zabbix 监控 ip zabbix 监控系统_centos_36


zabbix 监控 ip zabbix 监控系统_zabbix_37


zabbix 监控 ip zabbix 监控系统_centos_38

如上图所示,ZBX状态显示绿色则表明zabbix-server能正常监控到zabbix-agent主机上的相关数据。