zabbix监控基础架构

zabbix-agent(数据采集) --> zabbix-server(数据分析\报警) --> 数据库(数据存储) --> zabbix-web(数据展示)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ML7EJvn0-1615884850473)(D:\linux\zabbix监控系统\img\image-20210316090207648.png)]

一、zabbix数据库拆分

目前zabbix的架构:
--单台zabbix服务:LAMP+zabbix

需要实现zabbix架构,将数据库拆分成单独的一台,LAP+zabbix+MySQL

1.环境准备

主机名wanIPlanIP角色
zabbix10.0.0.71172.16.1.71zabbix-server
db0210.0.0.52172.16.1.52MySQL

2.导出MySQL中zabbix的数据

#1.导出zabbix数据
[root@zabbix ~]# mysqldump -uroot -p -B zabbix >/tmp/zabbix.sql
Enter password: 
--注意:我这里zabbix的数据库是没有设置密码的

#2.拷贝数据到db02中
[root@zabbix ~]# scp /tmp/zabbix.sql  10.0.0.52:/tmp
The authenticity of host '10.0.0.52 (10.0.0.52)' can't be established.
ECDSA key fingerprint is SHA256:RPmo1SSy0e1t+q1jP0mMc+MX3c0UdqFgGiJOQULqqGg.
ECDSA key fingerprint is MD5:de:de:07:0a:21:f5:59:46:2c:89:e0:96:a2:ff:ef:5d.
Are you sure you want to continue connecting (yes/no)? y
Please type 'yes' or 'no': yes
Warning: Permanently added '10.0.0.52' (ECDSA) to the list of known hosts.
root@10.0.0.52's password: 
zabbix.sql                                100% 2194KB  23.8MB/s   00:00  
--注意这里的密码是登录虚拟机连接时的root密码

3.准备新的数据库环境

zabbix对于数据库没有什么要求,可以用之前安装好的,也可以yum安装mariadb使用。我用的是之前安装好的5.7.28版本的数据库

#安装数据库
[root@db01 ~]# yum install -y mariadb-server
#启动数据库
[root@db01 ~]# systemctl start mariadb
#导入数据
[root@db01 ~]# mysql -uroot -p < /tmp/zabbix.sql
#查看导入的zabbix库
[root@db02 ~]# mysql -u root -p
Enter password: 
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| hhh                |
| mysql              |
| performance_schema |
| school             |
| sys                |
| test               |
| world              |
| zabbix             |
+--------------------+

4.关闭原来的数据库并且测试

#关闭数据库
[root@zabbix ~]# systemctl stop mariadb
#打开浏览器查看

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HftiKEon-1615884850477)(D:\linux\zabbix监控系统\img\image-20210316092922358.png)]

这里访问是失败的,为什么会失败呢?
因为我们需要修改PHP代码连接数据库

#修改php文件
[root@zabbix ~]# vim /etc/zabbix/web/zabbix.conf.php 

<?php
// Zabbix GUI configuration file.
global $DB;

$DB['TYPE']     = 'MYSQL';
$DB['SERVER']   = '10.0.0.52';
$DB['PORT']     = '3306';
$DB['DATABASE'] = 'zabbix';
$DB['USER']     = 'zabbix';
$DB['PASSWORD'] = '123';

#修改zabbix配置文件
[root@zabbix ~]# vim /etc/zabbix/zabbix_server.conf 
DBHost=10.0.0.52

在这里插入图片描述

#问题解决
这里我们会发现,新的错误又会出现了,刚才是连接不上localhost
--说明现在我们的数据库不支持远程连接

#解决办法:所以我们创建个用户就好
MariaDB [(none)]> grant all on zabbix.* to zabbix @'10.0.0.%' identified by '123';

在这里插入图片描述

二、如何添加自定义监控项

自定义监控格式

### Option: UserParameter
#       User-defined parameter to monitor. There can be several user-defined parameters.
#       Format: UserParameter=<key>,<shell command>
#       See 'zabbix_agentd' directory for examples.

#官方示例
UserParameter=mysql.ping,HOME=/var/lib/zabbix mysqladmin ping | grep -c alive
UserParameter=mysql.version,mysql -V

1.自定义监控第一步

#使用命令查看服务器当前登录用户会话数量(服务端)
[root@zabbix ~]# uptime |awk '{print $4}'
2

#客户端
[root@db02 ~]# uptime |awk '{print $5}'
2

2.使用自定义监控第二步

#把命令加入配置文件并起名(服务端)
[root@zabbix ~]# cd /etc/zabbix/zabbix_agentd.d/
[root@zabbix zabbix_agentd.d]# vi userparameter_login.conf
UserParameter=user.count,uptime |awk '{print $4}'
#重启agent
[root@zabbix ~]# systemctl restart zabbix-agent.service 

#客户端
[root@db02 ~]# cd /etc/zabbix/zabbix_agentd.d/
[root@db02 zabbix_agentd.d]# vi userparameter_login.conf
UserParameter=user.count,uptime |awk '{print $5}'
#重启agent
[root@db02 zabbix_agentd.d]# systemctl restart zabbix-agent.service 

#查看本机
[root@zabbix zabbix_agentd.d]# zabbix_get -s 127.0.0.1 -k user.count
2

#查看客户端
[root@zabbix zabbix_agentd.d]# zabbix_get -s 10.0.0.52 -p 10050 -k user.count
2

3.自定义监控第三步

#查看监控项
[root@zabbix ~]# zabbix_agentd -p
user.count                                    [t|2]

[root@db02 ~]# zabbix_agentd -p
user.count                                    [t|2]

4.自定义监控第四步

#在zabbix-server 端获取agent端数据,使用zabbix_get命令

#1.安装zabbix_get命令
[root@zabbix ~]# yum install -y zabbix-get

#2.语法
[root@web02 ~]# zabbix_get
usage:
  zabbix_get -s host-name-or-IP [-p port-number] [-I IP-address] -k item-key
  zabbix_get -s host-name-or-IP [-p port-number] [-I IP-address]
                --tls-connect cert --tls-ca-file CA-file
                [--tls-crl-file CRL-file] [--tls-agent-cert-issuer cert-issuer]
                [--tls-agent-cert-subject cert-subject]
                --tls-cert-file cert-file --tls-key-file key-file -k item-key
  zabbix_get -s host-name-or-IP [-p port-number] [-I IP-address]
                --tls-connect psk --tls-psk-identity PSK-identity
                --tls-psk-file PSK-file -k item-key
  zabbix_get -h
  zabbix_get -V

#3.获取数据
[root@zabbix ~]#  zabbix_get -s 10.0.0.52 -k user.count
2

5.自定义监控第五步

1)在web页面添加监控项

配置—>主机—>监控项—>创建监控项
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

2)创建模板

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

6.自定义监控第六步

1)添加触发器,当用户超过2个人的时候,就要报警

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

2)优化触发器名称

使用zabbix内置变量,来优化触发器的名称,此处使用的是

主机名变量:{HOST.NAME}

IP地址变量:{HOST.IP}
在这里插入图片描述

7.自定义监控第七步

1)添加图形化界面

在这里插入图片描述

2)查看添加的图形化界面

在这里插入图片描述

8.自定义监控第八步

1)添加报警媒介类型

如果事件源是触发器,那么就会触发动作,触发什么动作呢?就需要自己来创建了。

自定义触发器—>动作—>通知

如果事件源是触发器–>则创建一个触发的动作–>通知

1.我怎么通知。通过介质(配置一个邮箱的发件人)
2.通知给谁。(接收的邮箱)
3.通知的内容(内容可以自定义
在这里插入图片描述

2)选择qq邮箱报警(注意:我这里的是添加的)

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

3)如何看邮箱的授权码

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

4)用户关联报警媒介

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

5)设置触发器动作

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QT81RbK4-1615884850504)(D:\linux\zabbix监控系统\img\image-20210316155026342.png)]

6)设置关动作的条件内容

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

7)设置故障恢复动作内容

在这里插入图片描述
查看接收到的邮件报警内容
在这里插入图片描述

三、配置短信报警

1.第三方报警平台

通过 OneAlert 提供的通知分派与排班策略,以及全方位的短信、微信、QQ、电话提醒服务,可以在最合适的时间,将最重要的信息推送给最合适的人员。

https://newuser.aiops.com/

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

2.zabbix服务端配置

2.1切换到zabbix脚本目录 [(如何查看zabbix脚本目录)](javascript:void(0)😉:
[root@zabbix ~]# find / -name alertscripts 
/usr/lib/zabbix/alertscripts
[root@zabbix ~]# cd /usr/lib/zabbix/alertscripts
2.2获取Cloud Alert Agent包:
[root@zabbix alertscripts]# wget https://download.aiops.com/ca_agent/zabbix/ca_zabbix_release-3.0.1.tar.gz
2.3 解压、安装。
tar -xzf ca_zabbix_release-3.0.1.tar.gz 
cd cloudalert/bin 
bash install.sh 95501940-c8e9-476b-8bb9-f2bb82a88625 

注:1、在安装过程中根据安装提示,输入zabbix管理地址、管理员用户名、密码。

2、zabbix管理地址正确示例:http://zabbix.server.com/zabbix

2.4 当提示"安装成功"时表示安装成功!

验证告警集成
产生新的zabbix告警(problem),动作状态为“已送达”表示集成成功。

在这里插入图片描述

3.alter平台配置分派策略和通知策略

新建分派策略

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LVJH7OKt-1615884850513)(D:\linux\zabbix监控系统\img\image-20210316163539862.png)]
新建通知策略
在这里插入图片描述

4.zabbix web界面配置短信与微信通知

### 5.测试a
在这里插入图片描述
在这里插入图片描述

alter平台报警功能

打开多个终端,查看登录人数

[root@db02 ~]# uptime
 16:49:07 up 41 min,  4 users,  load average: 0.00, 0.01, 0.03

在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值