zabbix监控软件

一、zabbix:自带图形化界面,通过网页就可以监控所有的服务器的状态,事件告警,邮箱通知等。

1.zabbix是什么:web界面提供的是分布式监控以及网络监控功能的开源的企业级的软件解决方案。

2.zabbix可以提供各种类型的监控模板,保证服务器的正常运行,灵活的通知机制,可以让管理员快速定位。

3.zabbix由两部分组成:在server上可选安装zabbix-agent

zabbix-server:服务端收集数据,提供网页展示和数据的配置

zabbix-agent:客户端 把收集到的数据发送到服务器

4.zabbix的五大组件:
zabbix server
zabbix agent
zabbix_proxy:代理服务器,是安装在监视的目标系统上的软件组件,可以代替zabbix_server收集数据,然后由代理软件再传送给服务端zabbix_server。减轻主服务器的压力。
zabbix_get:可选组件,提供命令行的工具(zabbix的命令行)。
zabbix_sender:发送器,可选组件,可以将客户端的数据自定义操作之后发送到zabbix服务器。也可以通过脚本,把脚本处理过的数据发送到客户端。

二、实验

 1.三台主机关闭防火墙并同步时间

2.部署服务端

更改主机名

获取zabbix下载资源、更换 zabbix.repo 为阿里源

清除缓存建立元数据

如果清除缓存建立元数据遇到报错则执行以下两条命令后再清除及建立

在服务端配置服务端和客户端的监控

修改 zabbix-front 前端源,安装 zabbix 前端环境到 scl 环境下 

 安装 zabbix 所需的数据库并启动

初始化数据库,并设置密码为123456

添加数据库用户,以及 zabbix 所需的数据库信息

导入数据库信息,查询 sql 文件的位置

导入 Zabbix 监控系统所需的 MySQL 数据库架构

修改 zabbix server 配置文件,修改数据库的密码

修改 zabbix 的 php 配置文件

启动 zabbix 相关服务,并设置为开机自启

避免网页内容乱码 

访问

部署客户端

设置 zabbix 的下载源,更改主机名,清理缓存建立元数据

安装 zabbix-agent2

修改 agent2 配置文件 

启动 agent2,并设置为开机自启

在服务端验证 zabbix-agent2 的连通性
 安装 zabbix 主动获取数据的命令

 修改服务器agentd配置文件并重启

添加客户端主机 

 

客户端写一个监控脚本

编写脚本 

服务端验证

 zabbix页面创建模板

监控nginx

客户端安装nginx

配置nginx的监控脚本,脚本名自定义

#!/bin/bash
#Description:Automated monitoring nginx performance and process nginx_status scripts
 
HOST="localhost"
PORT=80
stub_status="stub_status"
NGINX_COMMAND=$1
 
nginx_check() {
    if [ -f /sbin/pidof ]; then
       /sbin/pidof nginx | wc -w
    else
       ps aux | grep -v "grep" | grep -c "nginx:"
    fi
}
 
nginx_active(){
    /usr/bin/curl -s "http://$HOST:$PORT/${stub_status}/" 2> /dev/null | awk '/Active/ {print $NF}'
}
 
nginx_reading(){
    /usr/bin/curl -s "http://$HOST:$PORT/${stub_status}/" 2> /dev/null | awk '/Reading/ {print $2}'
}
 
nginx_writing(){
    /usr/bin/curl -s "http://$HOST:$PORT/${stub_status}/" 2> /dev/null | awk '/Writing/ {print $4}'
}
 
nginx_waiting(){
    /usr/bin/curl -s "http://$HOST:$PORT/${stub_status}/" 2> /dev/null | awk '/Waiting/ {print $6}'
}
 
nginx_accepts(){
    /usr/bin/curl -s "http://$HOST:$PORT/${stub_status}/" 2> /dev/null | awk 'NR==3 {print $1}'
}
 
nginx_handled(){
    /usr/bin/curl -s "http://$HOST:$PORT/${stub_status}/" 2> /dev/null | awk 'NR==3 {print $2}'
}
 
nginx_requests(){
    /usr/bin/curl -s "http://$HOST:$PORT/${stub_status}/" 2> /dev/null | awk 'NR==3 {print $3}'
}
 
case $NGINX_COMMAND in
    check)
        nginx_check
        ;;
    active)
        nginx_active
        ;;
    reading)
        nginx_reading
        ;;
    writing)
        nginx_writing
        ;;
    waiting)
        nginx_waiting
        ;;
    accepts)
        nginx_accepts
        ;;
    handled)
        nginx_handled
        ;;
    requests)
        nginx_requests
        ;;
    *)
        echo $"USAGE:$0 {check|active|reading|writing|waiting|accepts|handled|requests}"
esac

服务端测试脚本

  • 10
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值