Skip to content

Zabbix 监控配置

添加主机

  • 模板:选择 —> 主机群组选择Templates —> Linux by Zabbix agent主动模式
  • 群组:选择 —> Linux Servers
  • Interfaces:
    • 客户端:设置客户端IP,端口和客户端agent保持一致

创建图表

配置 —> 主机 —> 要操作主机列表点击图形 —> 创建图形

  • 名称:自定义
  • 监控项:点击添加,选择要监控的项

自定义监控

设置监控项

修改客户端zabbix_agentd2.conf配置文件,最后一行追加

bash
# 语法
# UserParameter=key,shell command
# UserParameter:固定
# ke:自定义
# Shell命令或脚本

# 内存使用率
UserParameter=memory_used,free -m | awk '/Mem/{printf "%.2f",($3*100)/$2}'

注:在zabbix_server端可以使用zabbix_get -s agent端ip地址 -p 10050 -k key名通过此命令可以查看agent端key的监控值;

添加监控项

配置 —> 主机 —> 监控项(刚设置的agent主机)—> 创建监控项

  • 名称:自定义(内存使用率)
  • 类型:Zabbix客户端(主动模式)
  • 键值:key(memory_used)
  • 信息类型:可以选择浮点数
  • 单位:自定义,可以设置%

创建触发器

根据条件进行触发某个告警操作

  • 名称:自定义(内存使用率)
  • 严重性:警告
  • 问题表现形式:点击添加
    • 监控项:选择内存使用率
    • 功能:可以选择last()-最后(最近)的T值
    • 结果:可以选择>,设置阀值比如70
  • 事件成功迭代:恢复表达式
  • 恢复表达式:
    • 监控项:选择内存使用率
    • 功能:可以选择last()-最后(最近)的T值
    • 结果:可以选择<,设置阀值比如70

测试

bash
# 在agent客户端临时提升内存,以下是1C2G服务器测试用例
python3 -c "a = [bytearray(1024 * 1024) for _ in range(600)]; input('Press Enter to release...')"

# 可以在服务端查看值
zabbix_get  -s 192.168.148.106 -k 'memory_used'