zabbix监控

zabbix监控

  • 1.什么是监控

    • 简单说:对我们的系统进行不间断的监控。
  • 2.为什么要监控

    • 产品生命周期中非常重要的一个环节。
    • 能做到事情发生前的预警,和事故发生后提供详细的数据用于追查问题。
  • 3.如何去监控,不如监控磁盘的使用率:

    • 1.如何查看磁盘使用率:df -h
    • 2.查看磁盘的那些指标 block 、inode
    • 3.如何获取具体的信息呢? df -h | awk 各种取值
    • 4.获取的值达到多少则需要报警通知 80%

    我要监控的对象是什么?监控对象的那些指标?怎么算好,怎么算坏?

    ​ cpu监控:cpu的使用率、CPU的负载

    cpu使用率:用户态35%、内存态65%

    cpu负载:负载不大于cpu核心数 过载的原因有可能还会是大量的io等待

  • 4.监控有哪些工具:

    • cacti(网络流量监控)、Nagios、Zabbix
    • lepus天兔(专门做数据库监控、现在闭站了)
    • Open-Falcon 小米公司
    • Prometheus(kubernetes、Docker
  • 5.去到一家公司,我应该如何来做监控,对什么做监控。

    • 1.硬件监控:路由器、交换机、防火墙等等
    • 2.系统监控:cpu、内存、io、网络、进程数
    • 3.服务监控:nginx、redis、tomcat、Java、等等
    • 4.web监控:请求时间、响应时间、加载时间、等等等(监控宝、这种来做)
    • 5.安全监控:Firewalld(四层)、nginx+lua(WAF防⽕墙)、安全宝、⽜盾云等等
    • 6.业务监控:注册量、活动推⼴带来的流量是多少、价值是多。等等等
  • 5.早期如果没有像Zabbix监控系统,我们是怎么监控的? 【脚本(命令)】

    • 命令 1台机器:
      • 登陆服务器
      • 执⾏各种命令: top、free、df、netstat、glances、iftop、iotop、等等
  • 6.安装Zabbix监控系统、占⽤80端⼝、

    • 1.打开官⽹⽂档 https://www.zabbix.com/
    • 2.获取rpm包源
    • 3.执⾏yum安装
    #下载源
    [root@zabbix-server ~]#rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
    #替换源
    [root@zabbix-server ~]# sed -i
    's#http://repo.zabbix.com#https://mirror.tuna.tsinghua.edu.cn/zabbix#g
    ' /etc/yum.repos.d/zabbix.repo
    #下载所需软件包
    [root@zabbix-server ~]# yum install zabbix-server-mysql zabbix-webmysql
    mariadb-server httpd -y
    
    #1.启动数据库
    [root@zabbix-server ~]# systemctl start mariadb
    [root@zabbix-server ~]# systemctl enable mariadb
    
    #2.创建库
    shell> mysql -uroot
    mysql> create database zabbix character set utf8 collate utf8_bin;
    mysql> create user 'zabbix'@'localhost' identified by 'zabbix';
    mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost';
    mysql> quit;
    
    #3.导⼊数据
    [root@zabbix-server ~]# zcat /usr/share/doc/zabbix-server-mysql4.4.9/create.sql.gz
    | mysql -uzabbix -pzabbix zabbix
    
    #4.配置zabbix-server连接数据库  /etc/zabbix/zabbix_server.conf
    [root@zabbix-server ~]# grep "^DB" /etc/zabbix/zabbix_server.conf
    DBHost=localhost
    DBName=zabbix
    DBUser=zabbix
    DBPassword=zabbix
    
    
    #5.配置web⻚⾯的前端:
    [root@zabbix-server ~]# vim /etc/httpd/conf.d/zabbix.conf
    php_value date.timezone Asia/Shanghai
    
    #5.启动zabbix-server服务以及web⻚⾯的httpd服务
    [root@zabbix-server ~]# systemctl enable zabbix-server httpd
    [root@zabbix-server ~]# systemctl start zabbix-server httpd
    
    #6.检查端⼝ zabbix-server 10051 端⼝
    [root@zabbix-server ~]# netstat -lntp | grep -E "10051|80|3306"
    
    
    • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MthCQl4f-1592831375280)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592820289503.png)]

    • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VBt2vT2v-1592831375282)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592820327052.png)]

    • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WmAQWCvF-1592831375283)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592820366021.png)]

    • 默认登录账号密码 :Admin zabbix

    • 修改字体为中文,在web页面修改,

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ih3MJ9fH-1592831375285)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592820897274.png)]

    • 修改后会出现乱码修改字体
      /usr/share/fonts/dejavu	字体目录
      #可以在Windows上面下载一个字体拷贝过来,将原来的字体复制一份进行覆盖
      [root@zabbix-server dejavu]# cp DejaVuSans.ttf DejaVuSans.ttf.2
      [root@zabbix-server dejavu]# mv 楷体简.ttf DejaVuSans.ttf
      mv: overwrite ‘DejaVuSans.ttf’? y
      
  • 7.如何快速监控⼀台主机

    • 1.安装zabbix-agent (zabbix-agent需要把数据推送给zabbix-server,是不是需要知道server 是谁)

      [root@web01 ~]# rpm -ivh
      https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/4.4/rhel/7/x86_64/za
      bbix-agent-4.4.9-1.el7.x86_64.rpm
      
      #配置客户端连接服务端
      [root@web01 ~]# vim /etc/zabbix/zabbix_agentd.conf
      Server=172.16.1.71
      
      #启动客户端
      [root@web01 ~]# systemctl enable zabbix-agent
      [root@web01 ~]# systemctl start zabbix-agent
      
      #查看服务端口
      [root@web01 ~]# netstat -lntp|grep "10050"
      tcp 0 0 0.0.0.0:10050 0.0.0.0:*
      LISTEN 122967/zabbix_agent
      tcp6 0 0 :::10050 :::*
      LISTEN 122967/zabbix_agent
      
    • 2.配置zabbix-server,添加该主机

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pRIVyhj6-1592831375286)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592821294923.png)]

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kUBL6uGj-1592831375288)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592821374281.png)]

    • 配置监控模板

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gHIlJog9-1592831375289)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592821730930.png)]

    • 完成效果

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HqEi3cIS-1592831375289)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592821764727.png)]

  • 8.zabbix基础架构 ( zabbix-agent zabbix-server web mysql 之间是如何⼯作的?)

1.zabbix-agent(数据采集)–>zabbix-server(数据分析|报警)—>数据库(数据存储) <-- zabbix-web(数据 展示)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0SHyImOr-1592831375290)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592821840890.png)]

  • 9.如何拆分zabbix的数据库?

zabbix-server+zabbix-web+mariadb都安装在⼀起,那么是否能将数据库独⽴出来。

zabbix-server+zabbix-web

mariadb独⽴安装(组成集群+⾼可⽤架构)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HLoBdh0h-1592831375290)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592821880593.png)]

如何实现:

1.要准备⼀台172.16.1.51的数据库,并且将zabbix的数据导⼊到172.16.1.51的zabbix库中。

2.配置172.16.1.51 开启远程访问功能。

3.修改zabbix-web连接数据库的配置,修改zabbix-server连接数据库的配置信息。

zabbix-web: /etc/zabbix/web/zabbix.conf.php ( web连接数据库以及web连接zabbix-server的配置⽂ 件 )

zabbix-server:/etc/zabbix/zabbix_server.conf (server连接数据库的配置信息⽂件)

#在172.16.1.51上安装数据库
[root@db01 ~]# yum install mariadb mariadb-server -y
[root@db01 ~]# systemctl enable mariadb
[root@db01 ~]# systemctl start mariadb
#创建远程连接用户
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
MariaDB [(none)]> create user 'zabbix'@'%' identified by 'zabbix';
MariaDB [(none)]> grant all privileges on zabbix.* to 'zabbix'@'%';

#登陆172.16.1.71 将数据库⽂件导出,然后导⼊到172.16.1.51的zabbix库中
[root@zabbix-server ~]# mysqldump -uroot -B zabbix > ~/zabbix.sql
[root@zabbix-server ~]# cat zabbix.sql | mysql -h 172.16.1.51 -uzabbix -
pzabbix zabbix

#停⽌172.16.1.71的数据库
[root@zabbix-server ~]# systemctl stop mariadb

#修改172.16.1.71 上zabbix-web连接数据库配置⽂件
[root@zabbix-server ~]# cat /etc/zabbix/web/zabbix.conf.php
<?php
// Zabbix GUI configuration file.
global $DB;
$DB['TYPE'] = 'MYSQL';
$DB['SERVER'] = '172.16.1.51'; #仅修改了此处
$DB['PORT'] = '0';
$DB['DATABASE'] = 'zabbix';
$DB['USER'] = 'zabbix';
$DB['PASSWORD'] = 'zabbix';
// Schema name. Used for IBM DB2 and PostgreSQL.
$DB['SCHEMA'] = '';
$ZBX_SERVER = 'localhost';
$ZBX_SERVER_PORT = '10051';
$ZBX_SERVER_NAME = '';
$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;

#修改172.16.1.71 上zabbix-server连接数据库配置⽂件
[root@zabbix-server ~]# grep "^DB" /etc/zabbix/zabbix_server.conf
DBHost=172.16.1.51
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix


#重启172.16.1.71 zabbix服务、httpd服务;不需要重启也可以
[root@zabbix-server ~]# systemctl restart zabbix-server httpd

做完之后,别忘记恢复回来。(因为学习环境⼀台即可,⽆需拆分数据库。)
  • 10.⾃定义监控–>⾃定义触发器–>报警
    • 需求:监控当前被控端主机的登陆数,如果登陆数超过了2个,则报警提示。
      • 1.如何获取到当前系统的登陆数。 w | awk ‘NR==1 {print $6}’
      • 2.如何将当前获取的登陆数,制作为⼀个监控项。 Format: UserParameter=,
      • 3.如何检查zabbix-server能够获取到该主机⾃定义的监控项。
  1. 在zabbix-agent被控端,配置⾃定义监控项

    #在这个文件下面创建一个.conf文件就可以  #⽂件名称随意,必须是.conf结尾
    [root@web01 ~]# cat /etc/zabbix/zabbix_agentd.d/system.conf 
    #login_number值,后面命令
    UserParameter=login_number,w | awk 'NR==1 {print $6}'
    UserParameter=user_number,cat /etc/passwd |wc -l
    
    [root@web01 ~]# systemctl restart zabbix-agent
    
  2. 在zabbix-server端测试是否能正常提取到该被控端主机⾃定义监控项的"值"

    [root@zabbix-server ~]# yum install zabbix-get -y
    [root@zabbix-server ~]# zabbix_get -s 172.16.1.7 -k login_number #-s指定探测那台主机 -k指定探测的监控项名称
    2
    
  3. 登陆zabbix-web,找到对应的主机,点击监控项,点击新建监控项

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-W6Jqp9zw-1592831375291)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592829278063.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UD4zJqwx-1592831375291)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592829347343.png)]

  4. ⽤户登陆会话数如果达到了3,则应该发送告警。 ( 如何去判断⽐对呢?) 触发器

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eQw2h3yQ-1592831375292)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592829558414.png)]

#触发器

  • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0L0ynlwb-1592831375293)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592810237364.png)]

  • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ASu0vnfS-1592831375293)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592810182641.png)]

告警(只能在前台zabbix⻚⾯告警,并不会邮件通知。)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q2HaB4ns-1592831375294)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592829629314.png)]

#报警通知

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YXaXWNFD-1592831375295)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592829701701.png)]

#恢复效果:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-My0IZ4JS-1592831375295)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592829739423.png)]

⾃⼰尝试⾃定义⼀个监控项:监控⼀下172.16.1.7 的/etc/passwd总⽤户数量。

1.⾃定义监控 cat /etc/passwd |wc -l

2.⾃定义触发器 (判断监控项不符合预期时)触发–动作–>报警

  • 11.自定义报警(通过邮件的方式)
  1. 配置发件⼈(管理–>报警媒介–>添加发件⼈邮箱)

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-r2Ef0MHY-1592831375296)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592830106182.png)]

    配置详情

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PaA31On0-1592831375296)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592830329602.png)]

  2. 配置当有监控项不正常时,通过触发器调⽤报警媒介向收件⼈发邮件 (触发动作)

    最终会将消息通过所有的介质发送给zabbix administrator群组,就相当于给zabbix⽤户发送qq邮箱报 警内容

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gNv8D4Xl-1592831375297)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592830469904.png)]

  3. 最后需要zabbix⽤户接受的消息介质,以及对应的邮箱账号。 (收件⼈)

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Yu5pmqBq-1592831375297)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592830877652.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kHyPvV9K-1592831375298)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592830888483.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0f2keZm6-1592831375298)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\1592830995196.png)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值