part_83:zabbix监控平台的安装部署和管理

zabbix 简介:

  • Zabbix 是一个高度集成的网络监控解决方案,可以提供企业级的开源分布式监控解决
    方案,由一个国外的团队持续维护更新,软件可以自由下载使用,运作团队靠提供收费的技术支持赢利。

Zabbix 功能

  • 具备常见的商业监控软件所具备的功能:主机的性能监控、网络设备性能监控、数据库性能监控、FTP 等通用协议监控、多种告警方式、详细的报表图表绘制等。
  • 支持自动发现网络设备和服务器(可以通过配置自动发现服务器规则来实现)
  • 支持自动发现(low discovery)key 实现动态监控项的批量监控(需写脚本)
  • 支持分布式,能集中展示、管理分布式的监控点
  • 扩展性强,server 提供通用接口(api 功能),可以自己开发完善各类监控(根据相关接
    口编写程序实现)
  • 编写插件容易,可以自定义监控项,报警级别的设置。
  • 数据收集:可用和性能检测、支持 snmp(包括 trapping and polling),IPMI,JMX,SSH,TELNET、自定义的检测、自定义收集数据的频率、服务器/代理和客户端模式
  • 灵活的触发器:可以定义非常灵活的问题阈值,称为触发器,从后端数据库的参考值
  • 高可定制的报警:发送通知,可定制的报警升级,收件人,媒体类型、通知可以使用宏变量有用的变量、自动操作包括远程命令
  • 实时的绘图功能:监控项实时的将数据绘制在图形上面
  • WEB 监控能力:ZABBIX 可以模拟鼠标点击了一个网站,并检查返回值和响应时间
  • Api 功能:应用 api 功能,可以方便的和其他系统结合,包括手机客户端的使用。
  • 更多功能请查看:https://www.zabbix.com/documentation/2.0/manual/introduction/features

优劣势

  • 优点:
  • 开源,无软件成本投入
  • Server 对设备性能要求低
  • 支持设备多,自带多种监控模板
  • 支持分布式集中管理,有自动发现功能,可以实现自动化监控
  • 开放式接口,扩展性强,插件编写容易
  • 当监控的 item 比较多服务器队列比较大时可以采用被动状态,被监控客户端主动从server 端去下载需要监控的 item 然后取数据上传到 server 端。这种方式对服务器的负载比较小。
  • Api 的支持,方便与其他系统结合
  • 缺点:需在被监控主机上安装 agent,所有数据都存在数据库里,产生的数据据很大,瓶颈主要在数据库。

安装部署

Zabbix Server 可以运行在 CentOS、RedHat Linux、Debain 等 Linux 系统上,这里以redhat7.3 作为部署环境。

主机 ip
server4(server) 172.25.60.4
server5(agent) 172.25.60.5
  • 先安装zabbix所需要的lamp环境:httpd、php、php-mysql、mariadb-server
[root@server4 ~]# yum install httpd php php-mysql mariadb-server -y
  • 下载安装所需的软件包
    在这里插入图片描述
  • 开启maridb数据库,并初始化
[root@server4 4.0]# systemctl start mariadb
[root@server4 4.0]# mysql_secure_installation 

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

  • 进入数据库,授权
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by 'redhat';
  • 导入zabbix数据库
    在这里插入图片描述
  • 此时登陆数据库可以查看到zabbix数据库
    在这里插入图片描述
  • 配置zabbix.servervim /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbixDBUser=zabbix
DBPassword=westos

在这里插入图片描述

  • 配置php,更改时区vim /etc/httpd/conf.d/zabbix.conf
    在这里插入图片描述
  • 启动zabbix-server、zabbix-agent、httpd
[root@server4 4.0]# systemctl start zabbix-server
[root@server4 4.0]# systemctl start zabbix-agent
[root@server4 4.0]# systemctl start httpd
  • 通过web界面登陆zabbix
  • 172.25.60.4/zabbix 按照要求提示安装并登陆:默认用户名:Admin、密码:zabbix
    在这里插入图片描述
  • 登陆后点击右上角的小人可以更改密码和语言
    在这里插入图片描述
  • 添加agent主机
  • 在被监控端安装软件包:
    在这里插入图片描述
  • 配置zabbix-agentvim /etc/zabbix/zabbix_agentd.conf
Server=172.25.60.4
ServerActive=172.25.60.4
Hostname=server5    #主机名需要有解析

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

  • 在服务端创建主机:主机–>创建主机–>填写信息–>模板–>填写信息–>添加
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 启动zabbix-agent
    在这里插入图片描述
  • 刷新页面可看到添加的server5可用
    在这里插入图片描述
  • 自动发现主机(被动模式)
  • 创建自动发现的动作并启用
    在这里插入图片描述
  • 编辑自动发现的动作
    在这里插入图片描述
  • 启用自动操作,编辑自动操作的模板
    在这里插入图片描述
  • 删除server2后刷新 60秒后就会自动发现agent主机(重启zabbix-server)
    在这里插入图片描述
  • 自动注册(主动模式)
  • 再创建一台agent主机
  • 将自动发现规则停用
    在这里插入图片描述
    在这里插入图片描述
  • 编辑自动注册动作,开启自动注册
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 开启zabbix-agent:systemctl start zabbix-agent就可发现新的agent主机
    在这里插入图片描述

使用API在zabbix监控系统重查看、创建、删除监控主机

  • 编写登陆(login)脚本,查看zabbix监控系统的api接口:
    在这里插入图片描述
  • 给脚本执行权限并执行脚本result所返回的为zabbix监控的api(令牌)
    在这里插入图片描述
  • 编写查看zabbix主机和被监控主机信息的脚本(get)
    在这里插入图片描述
  • 执行脚本,可以查看到agent主机的信息
    在这里插入图片描述
  • 编写删除zabbix监控中的主机脚本(delete),端口号为以上对应的hostid
    在这里插入图片描述
  • 执行脚本
    在这里插入图片描述
  • 此时去web页面查看,server5主机已删除
    在这里插入图片描述
    如何查看groupid和templateid
    在这里插入图片描述
    在这里插入图片描述
  • 再次编写添加主机的脚本,将主机重新添加
    在这里插入图片描述
  • 执行脚本后,可以从web界面上刷新看到server5又添加上了
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_42311209/article/details/89953761