Zabbix面试总结

Posted dai-zhe

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Zabbix面试总结相关的知识,希望对你有一定的参考价值。

zabbix官方的一句话描述zabbix:

  • 监视任何事情适用于任何IT基础架构,服务,应用程序和资源的解决方案

  • Monitor anythingSolutions for any kind of IT infrastructure, services, applications, resources

  • ---------------------------------------------------------

  • 监控基础概论

    • zabbix并非监控,而是实现监控的工具

    • Zabbix-server是一个c/s和b/s结构

    • 安装zabbbix的服务器安装时和php7.1有冲突:若此机器上已经安装php7.1就安装不上zabbix

  • 监控知识体系

    • 为什么要使用监控

      • 1.对系统不间断实时监控

      • 2.实时反馈系统当前状态

      • 3.保证服务可靠性安全性

      • 4.保证业务持续稳定运行

    • 如果去到一家新的公司,如何入手?

      • 1.硬件监控——路由器、交换机、防火墙

      • 2.系统监控——cpu、内存、磁盘、网络、进程、tcp

      • 3.服务监控——nginx、php、tomcat、redis、memcache、mysql

      • 4.web监控——响应时间、加载时间、渲染时间

      • 5.日志监控——ELK、(收集、存储、分析、展示)日志

      • 6.安全监控——firewalld、WAF(nginx+lua)、安全宝、牛盾云、安全狗

  • 单机监控

    • 单机进程cpu查看负载和使用率

    • 单机内存查看

    • 单机磁盘查看

    • 单机查看网络

  • 引入zabbix分布式监控系统

    • 使用shell脚本来监控服务器

  • 安装zabbix

    • (单机)--> LAMP

    • (架构)--> LAP + MYSQL

  • 服务端端口:10051

  • 客户端端口:10050

基础模板

  • 自定义监控阈值实战

  • 自定义监控项

    • 单位

    • 值类型

    • 值映射

  • 阈值的定义

    • 单条件

    • 多条件

  • 自定义触发器(动作)

  • 自定义报警(邮件|微信)邮件发送的信息内容可以使用系统自带的宏变量来对应修改(官方站点有宏变量的介绍)

  • 自定义图形、聚合图形、幻灯片、网络拓扑图、Graphtree

  • 自定义模板(给主机添加)

  • 系统默认自带的监控项设置阈值要根据生产中的需求来进修修改(阈值的高低)

服务监控(监控的服务要求有状态页面查询)

  • nginx

  • PHP-fpm

  • mysql

  • tomcat

  • redis

zabbix内部资源基础架构

技术图片

技术图片

web监控

  • 请求时间

  • 响应时间

  • 页面不是200-->触发报警

自动化监控:

  • 自动发现(server端轮询网段扫描发现agent)

  • ** 自动发现:server-->轮询扫描-->ip地址段--> **

  • 自动发现:ip、ftp、ssh、web、pop3、imap、tcp

    • ip范文自动发现(两个阶段:发现-->动作)

      • szabbix-web自动发现定义自动监控的网段中的zabixx-agent(配置文件中server已经定义zabbix-server地址)

  • 自动发现所执行的动作

    • 发送消息

    • 添加/删除主机

    • 启用/禁用主机

    • 添加主机到组

    • 从组中删除主机

    • 将主机链接到模板/从模板中取消链接

    • 执行远程脚本命令

  • 主动注册(agent端主动告诉server端请求加入)

  • zabbix-server必须开启自动注册-->操作-->(通知|加入监控|套用模板)

  • Agent(ServerActive=10.0.0.61)-->启动-->自动加入zabbix-server

主动模式被动模式:

  • 主动模式被动模式:默认为zabbix-agent被动模式

主动模式与被动模式主要是站在zabbix-agent身份来说
  • 1.被动模式(zabbix-server轮询检测zabbix-agent)

  • 2.主动模式(zabbix-agent主动上报给zabbix-server)优

zabbix主动模式与被动模式选择
  • 1.当(Queue)队列中有大量的延迟监控项

  • 2.当监控主机超过300+ ,建议使用主动模式

被动模式(默认)

技术图片

 

主动模式(优)

技术图片

 

zabbix-proxy分布式

技术图片

  • Zabbix-proxy使用场景:

  • 监控远程位置,解决跨机房

  • 监控主机多,性能跟不上,延迟大

  • 解决网络不稳定

 

实战经验总结:

  • 1.先查看文档中有没有对应的脚本和xml模板

  • 2.在服务端导入模板,查看对应的监控项名称

  • 3.测试脚本是否能取值,并存放置于/etc/zabbix/scripts目录下,一定要增加执行权限

  • 4.编写xx.conf文件,里面主要存放的是如何定义监控项

  • 5.最后重启zabbix-agent

  • 6.使用服务端zabbix-get 获取 zabbix-agent对应的监控项的数据

  • 范例:

    • 公司未启用swap(swap也是公司中服务器不建议启用的,因为swap是将磁盘模拟内存使用,消耗cpu的性能,建议关闭swap。加大内存),随着客户的流量日益增大,导致将zabbix服务进程强制OOM, Zabbix服务进程被kill,有两种解决的方法,如果公司为了性能着想加大内存,如果公司资有限添加swap,如果是为了服务的效率建议使用添加内存的方式,

以上是关于Zabbix面试总结的主要内容,如果未能解决你的问题,请参考以下文章

经验总结:Java高级工程师面试题-字节跳动,成功跳槽阿里!

面试常用的代码片段

面向面试编程代码片段之GC

Zabbix中小型企业Zabbix监控实战之告警大全

python常用代码片段总结

prometheus和zabbix的对比