简介

Zabbix 是一个基于 WEB 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。它能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。

一、Zabbix的安装

1、Zabbix服务器端安装

安装环境:CentOS Linux release 7.5  IP:192.168.1.100

安装阿里的yum源

# wget https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
# rpm –ivh zabbix-release-4.4-1.el7.noarch.rpm

安装Zabbix-server需要的程序包

安装 Zabbix server并使用 MySQL 数据库:
# yum -y install zabbix-server-mysql 安装 Zabbix 前端并使用 MySQL 数据库:
# yum -y install zabbix-web-mysql 安装Zabbix agent客户端,本机监控:
# yum -y install zabbix-agent
安装zabbix-get工具
# yum –y install zabbix-get
安装mariadb数据库
# yum -y install mariadb-server

启动数据库&加入开机自启动

# systemctl start mariadb
# systemctl enable mariadb

创建Zabbix相应的数据库和用户

创建Zabbix的数据库名为zabbix,注意字符集的选择
MariaDB [(none)]> CREATE DATABASE zabbix CHARSET utf8 COLLATE utf8_bin; 创建Zabbix的用户名为zabbixadmin,密码为123456
MariaDB [(none)]> GRANT ALL ON zabbix.* TO zabbixadmin@localhost IDENTIFIED BY '123456';

导入Zabbix自带的SQL语句

查看SQL语句的目录
#rpm -ql zabbix-server-mysql
...
/usr/share/doc/zabbix-server-mysql-4.4.3/create.sql.gz
... 导入SQL语句到刚才创建的zabbix数据库中
#zcat /usr/share/doc/zabbix-server-mysql-4.4.3/create.sql.gz | mysql -uzabbixadmin -p123456 zabbix

修改Zabbix服务器端的配置文件/etc/zabbix_server.conf的相关参数

# vim /etc/zabbix/zabbix_server.conf
...
DBHost=localhost
DBName=zabbix
DBUser=zabbixadmin
DBPassword=
...

启动Zabbix服务&加入开机自启动

# systemctl start zabbix-server
# systemctl enable zabbix-server

修改httpd的配置文件/etc/httpd/conf.d/zabbix.conf

修改时区
# vim /etc/httpd/conf.d/zabbix.conf
php_value date.timezone Asia/Shanghai

启动httpd服务&加入开机自启动

# systemctl start httpd
# systemctl enable httpd

2、Zabbix客户端安装Linux

安装环境:CentOS release 6.9 (Final)  IP:192.168.1.200

安装阿里yum源

注意:这里客户端选择的是CentOS6,需要安装的是CentOS 6的yum源,如果要安装其他版本的需要去阿里的mirrors里自行查找

# wget --no-check-certificate https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/6/x86_64/zabbix-release-4.4-1.el6.noarch.rpm 
# rpm –ivh zabbix-release-4.4-1.el6.noarch.rpm 

安装Zabbix-agent需要的程序包

# yum install zabbix-agent

修改agent配置文件/etc/zabbix/zabbix_agentd.conf

# vim /etc/zabbix/zabbix_agentd.conf
...
Server=192.168.1.100 # Zabbix Server的ip地址
ServerActive=192.168.1.100
Hostname=web01
...

启动agent服务&加入开机自启动

# service zabbix-agent start
# chkconfig --add zabbix-agent
# chkconfig zabbix-agent on

3、Zabbix客户端安装Windows

下载zabbix的windows客户端

官方地址:https://www.zabbix.com/cn/download_agents

创建安装目录,解压安装包

编辑客户端配置文件

修改如下字段:

LogFile=c:\zabbix\zabbix_agentd.log

Server=192.168.1.100

ServerActive=192.168.1.100

Hostname=windows-web

管理员身份运行cmd

在cmd窗口运行命令

C:Windows\system32>  cd c:\zabbix

c:\zabbix> bin\zabbix_agentd –i –c conf\zabbix_agentd.conf     #安装zabbix客户端

c:\zabbix> bin\zabbix_agentd –s –c conf\zabbix_agentd.conf    #启动zabbix服务

二、Web端基本配置

1、浏览器登录Zabbix

http://192.168.1.100/zabbix

2、检查基本设置

3、输入配置信息

4、输入服务器名称

5、登录Zabbix

系统默认的用户名:Admin

系统默认密码:zabbix

6、修改语言为中文

7、修改乱码现象

原乱码现象

修改方法:

服务器端安装字体
# yum install wqy-microhei-fonts -y 修改字体链接,链接到新安装的字体
# rm /usr/share/zabbix/assets/fonts/graphfont.ttf
# ln -sv /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/zabbix/assets/fonts/graphfont.ttf

修改后刷新页面即可

三、Zabbix监控部署

1、添加监控主机

创建主机

填写主机信息

添加默认的监控项模板

添加后状态

2、自定义监控项

监控项说明

除了Zabbix给的模板监控项,我们可以自定义监控的内容

httpd开启服务后会打开80端口

# ss -tnl
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN ::: :::*
LISTEN *: *:*
LISTEN ::: :::*
LISTEN ::: :::*
LISTEN *: *:*

可以通过命令取到值:ss -tnl | awk '{print $4}' | grep ':80$'

# ss -tnl | awk '{print $4}' | grep –o '80$'

如过httpd服务关闭后,80端口也会关闭,此命令取不到值

配置监控项

自定义监控项的目录是/etc/zabbix/zabbix_agentd.d,在里面创建以.conf结尾的文件即可
# vim /etc/zabbix/zabbix_agentd.d/port80.conf
UserParameter=httpd.port80, ss -tnl | awk '{print $4}' | grep –o '80'
 
重启服务
# service zabbix-agent restart

httpd.port80 是给该监控项取的名字
ss -tnl | awk '{print $4}' | grep –o '80' 是自定义的监控项取值命令

在WEB界面添加该监控项

配置触发器

关闭客户机的httpd服务测试监控效果

四、邮件报警

1、定义发件人

2、定义收件人

最新文章

  1. 使用Nito.AsyncEx实现异步锁(转)
  2. 判断是手机还是PC端访问
  3. EmguCV 轮廓匹配
  4. jdk代理和cglib代理
  5. Javascript中的对象和原型(3)
  6. JDBCTest
  7. SQL查看一张表中是否存在记录
  8. qml操作播放器
  9. activiti自定义流程之Spring整合activiti-modeler5.16实例(七):任务列表展示
  10. Codeforces Round #364 (Div. 2) Cards
  11. scala命令
  12. oracle 数据库连接的四种方式
  13. GLSL ES 3.0 和 2.0 的区别
  14. 在.NET程序中实现HttpServer功能
  15. Centos7.3安装部署Zabbix3.4.15(成功可用)
  16. office系列调节背景主题
  17. HDU 3161 Iterated Difference 暴力
  18. MP4个人制作
  19. [AT2304] [agc010_c] Cleaning
  20. MySQL行(记录)的详细操作

热门文章

  1. Autocorrelation in Time Series Data
  2. iterations 快捷键
  3. JavaScript——BOM和DOM
  4. Java + Selenium 无头浏览器模式
  5. Spark 中 GroupByKey 相对于 combineByKey, reduceByKey, foldByKey 的优缺点
  6. 【C语言】利用二维数组输出成绩
  7. sqlmap使用教程(超详细)
  8. XSS 3
  9. 更改mysql数据库默认的字符集(编码方式)
  10. jquery ajax获取后台数据后无法输出