【图文教程】Zabbix

本文详细介绍了如何安装和配置Zabbix4.0服务端,监控客户机,管理模板,解决中文问题,以及监控Nginx、Tomcat和MySQL。通过实例演示了邮件告警的两种方法,帮助读者全面掌握Zabbix监控系统。
摘要由CSDN通过智能技术生成

Zabbix

1. 监控介绍

  • 监控存在的原因
  1. 站点出了问题,没有人知道,等用户发现了,才提醒供应商;对公司影响很大,监控可以提前发现潜在故障隐患,第一时间解决掉,把影响降低。
  • 常见开源监控软件
  1. cacti、nagios、zabbix、smokeping、open-falcon等等,其中nagios、zabbix流行度非常高。
  2. cacti、smokeping偏向于基础监控,成图非常漂亮,适合监控网络设备 cacti监控网络的设备。
  3. cacti、nagios、zabbix服务端监控中心,需要php环境支持(用Apache的php,用nginx的php都可以),其中zabbix和cacti都需要mysql作为数据存储,nagios不用存储历史数据,注重服务或者监控项的状态,zabbix会获取服务或者监控项目的数据,会把数据记录到数据库里,从而可以成图。
  • 目前业界都流行用 zabbix
  1. zabbix配置简单,优势明显,早起使用nagios的企业,慢慢的转向使用zabbix。
  2. nagios,需要更改配置文件,并不支持web界面一键执行,nagios和zabbix相比,nagios 更注重的是某一个监控的状态,不关注历史。
  3. zabbix,则是把每一次监控的数值反馈出来,数值存到数据库里面,方便后期数据图去分析监控整个状态。
  4. nagios不需要mysql的支持,不能成图,若需要画图,得安装插件以后才支持web界面。
  5. ccti 也需要mysql的支持,也可以成图,可以记录历史数据。
  6. zabbix 在web界面下管理得非常彻底,可以增加监控节点,报警预知等等。
  7. open-falcon为小米公司开发,开源后受到诸多大公司和运维工程师的追捧,适合大企业,滴滴、360、新浪微博、京东等大公司在使用这款监控软件,值得研究open-falcon软件适合大企业使用,小企业可以去研究它的思想。
  8. 监控软件比较新的: prometheus grafana

zabbix监控介绍

  • zabbix简介
  1. C/S架构,有一个服务端,去客户端抓数据。在客户端必须要有一个服务启动运行才可以抓取数据;数据可以主动的上报服务端,也可以让服务端去连接客户端获取(通过抓取数据方式,数据获取分两个模式,一个主动模式,一个被动模式),
  2. zabbix软件基于C++开发,监控中心需要一个PHP的web环境,因为要开启一个web界面配置和管理 单台server节点(即一台server),理论上 可以支持上万台客户端
  • zabbix瓶颈
  1. 在于采集数据的量,虽然支持上万台,但监控的项目过多,还是会导致zabbix效率降低;所以,当服务器大到一定规模的时候,就需要对zabbix进行优化;
  2. 解决方法:可以增加一些代理点,这些代理点充当server,替代server去采集数据,最终得到分析结果再汇报给主服务端server;
  • zabbix架构里,包括了5个组件
  1. zabbix-server 监控中心,接收客户端上报信息,负责配置、统计、操作数据
  2. 数据存储 存放数据,比如mysql
  3. web界面 也叫web UI,在web界面下操作配置是zabbix简单易用的主要原因(如果没有web界面,就无法在浏览器上配置它)
  4. zabbix-proxy 可选组件,它可以代替zabbix-server的功能,减轻server的压力(当机器量很多的时候,可以使用zabbix-proxy)
    有时候,服务器分布在多个机房里,每个机房的服务器之间都是一个单独的内网,这时候就可以在某一个局域网里搭建一个 zabbix-proxy ,用这台 proxy 去监控局域网里的机器
  5. zabbix-agent 客户端软件(每一台客户端都需要安装agent),负责采集各个监控服务或项目的数据,并上报。

在这里插入图片描述

2. 安装zabbix4.0搭建服务端

  • 下载官方提供的 repo 源

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

举例:

[root@test01 ~]# rpm -ivh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
Retrieving https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
warning: /var/tmp/rpm-tmp.S9e9Cj: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:zabbix-release-4.0-1.el7         ################################# [100%]
  • 用 yum 安装 zabbix 相关的包
[root@test01 ~]# yum install -y zabbix-agent zabbix-get zabbix-server-mysql zabbix-web zabbix-web-mysql
安装包释义:

1. zabbix-agent //客户端软件
2. zabbix-get //服务端用的一个工具,这个工具可以通过命令行的形式,获得客户端某些监控项目的数据
3. zabbix-server-mysql //这个是服务端跟mysql打交道相关的组件
4. zabbix-web //webUI ,web界面
5. zabbix-web-mysql //web和mysql相关组件
  • 数据库设置

zabbix 是基于php环境的,也就是说用的是php 的代码编写的web界面,也就说这个zabbix相当于一个站点 需要安装mysql;

[root@test01 ~]# mysql -uroot -p123
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.43-log MySQL Community Server (GPL)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> create database zabbix;
Query OK, 1 row affected (0.30 sec)

mysql> grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by '123' ;
Query OK, 0 rows affected (0.07 sec)

mysql> ^DBye

zabbix-server

  • 编辑 zabbix_server.conf 配置文件
1. [root@test01 ~]# vi /etc/zabbix/zabbix_server.conf

2. DBHost=127.0.0.1

3. DBName=zabbix

4. DBUser=zabbix

5. DBPassword=123
  • 编辑完就可以启动了,显示没有启动,查看 zabbix_server.log 日志
[root@test01 ~]# systemctl start zabbix-server          
[root@test01 ~]# ps aux |grep zabbix
root      7167  0.0  0.0   9088   672 pts/0    R+   00:22   0:00 grep --color=auto zabbix

但是显示没有启动,这时候要查看zabbix的日志了

[root@test01 ~]# cat /var/log/zabbix/zabbix_server.log  #查看日志

7243:20190611:002414.914 using configuration file: /etc/zabbix/zabbix_server.conf
7243:20190611:002414.918 [Z3005] query failed: [1146] Table 'zabbix.users' doesn't exist [select userid from users limit 1]
7243:20190611:002414.918 cannot use database "zabbix": database is not a Zabbix database

显示还没有在zabbix的数据库导入表
  • 导入数据
[root@test01 ~]# ls /usr/share/doc/zabbix-server-mysql-4.0.9/
AUTHORS  COPYING  ChangeLog  NEWS  README  create.sql.gz

[root@test01 ~]# gzip -d /usr/share/doc/zabbix-server-mysql-4.0.9/create.sql.gz

[root@test01 ~]# ls /usr/share/doc/zabbix-server-mysql-4.0.9/
AUTHORS  COPYING  ChangeLog  NEWS  README  create.sql

[root@test01 ~]# mysql -uroot -p123 zabbix < /usr/share/doc/zabbix-server-mysql-4.0.9/create.sql
Warning: Using a password on the command line interface can be insecure.
  • 启动 zabbix-server
[root@test01 ~]# systemctl start zabbix-server
[root@test01 ~]# systemctl enable zabbix-server  #开机自启动

zabbix-agent

  • 编辑 zabbix_agentd.conf
1. [root@test01 ~]# vi /etc/zabbix/zabbix_agentd.conf

2. Server=127.0.0.1 主动模式
 
3. ServerActive=127.0.0.1 被动模式
  • 启动 zabbix-agent
[root@test01 ~]# systemctl start zabbix-agent
[root@test01 ~]# systemctl enable zabbix-agent  #开机自启动

httpd

  • 如果已经启动了 nginx,需要先把 nginx 关闭,然后启动 httpd
[root@test01 ~]# systemctl stop nginx
[root@test01 ~]# systemctl start httpd

web测试

  • 在浏览器输入:192.168.85.130/zabbix/,出现 zabbix 监控主页

在这里插入图片描述

  • 进入下一步,发现页面有,php 的 timezone 时区,状态为 fail

在这里插入图片描述

  • 进入 php 的配置文件,给它定义时区
[root@test01 ~]# vim /etc/php.ini  #如果是 yum 安装的 httpd 在 /etc/php.ini里设置
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Asia/Shanghai      #把前面分号去掉,定义时区为上海
[root@test01 ~]# systemctl restart httpd  #重启httpd
  • 点击下一步,进入简单设置,按下图设置

在这里插入图片描述

  • 点击下一步,填写端口10051,name自定义

在这里插入图片描述

  • 下一步,你设置的信息会全部显示出来

在这里插入图片描述

  • 点击下一步,出现设置成功页面

在这里插入图片描述

在这里插入图片描述

  • 进入到zabbix界面,默认账户:admin,密码:zabbix

在这里插入图片描述

  • 修改默认密码

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 退出登录,此时显示为中文

在这里插入图片描述

3. 监控客户机-添加主机

  • 下载官方提供的 repo 源

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

[root@test01 ~]# rpm -ivh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
Retrieving https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
warning: /var/tmp/rpm-tmp.S9e9Cj: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:zabbix-release-4.0-1.el7         ################################# [100%]
  • 安装 zabbix-agent
[root@test02 ~]# yum install -y zabbix-agent
  • 编辑 zabbix_agentd.conf
1. [root@test01 ~]# vi /etc/zabbix/zabbix_agentd.conf

2. Server=192.168.85.130        #添加 server 服务机的 ip 主动模式
 
3. ServerActive=192.168.85.130  #添加 server 服务机的 ip 被动模式
  • 启动 zabbix-agent
[root@test01 ~]# systemctl start zabbix-agent
[root@test01 ~]# systemctl enable zabbix-agent  #开机自启动
  • 如果有防火墙,需要加个白名单 ip
[root@test02 ~]# iptables -nvL

[root@test02 ~]# iptables -I INPUT -s 192.168.85.130 -j ACCEPT

web界面添加监控主机

  • 这些操作都是在zabbix的web管理工具进行的

添加一个主机群组 (test-group01)

在这里插入图片描述

  • 添加主机群组后,再添加主机

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 查看自带模板

在这里插入图片描述

常用模板如下:

Template App HTTP Service
Template App HTTPS Service
Template App SSH Service
Template DB MySQL
Template Module ICMP Ping
Template OS Linux

添加自定义模板

  • 创建一个模板

在这里插入图片描述

在这里插入图片描述

  • 为 test 模板添加监控选项

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4. 监控客户机-管理模板

  • 还有一种方法,找到你想要的目标的模板,从 Template OS Linux 点进去

在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值