shell+kafka实现服务器健康数据搜集

今天有一个徒弟问我,分发、代理服务器都装有kafka,如何快速收集服务器的健康数据,每10秒就收集一次?

我当时听完之后,楞了一下,然后说出了我的见解:认为最快速的方法无法就是建议shell脚本直接采集,然后发送给nginx,nginx传入到kafka中。

但是徒弟又说,shell脚本已经有8年没有大型使用过啦,不太会,两个小时之内要,我又懵啦。

无奈,还是我自己来写吧,代码如下:

复制代码
#!/bin/sh
while true
do
    cpuParam = `top -bn 1 | grep load | awk '{printf "\"cpuParam\":%.2f", $(NF-1)}'`
    memoryParam = `free -h | awk 'NR==2 {printf "\"memoryParam\":%.2f", $3/$2*100}'`
    diskParam = `df -h | grep -w '/' | awk '{printf $(NF-1)}' | awk -F'%' '{printf "\"diskParam\":%.2f",$1}'`
    curl -H "Content-Type: application/json" -X POST -d "{$cpuParam,$memoryParam,$diskParam}" "http://127.0.0.1:8080"
    sleep 10
done

这就是最简单的定时获取本服务器的内存参数、cpu参数及硬盘参数脚本

相关推荐
Android系统攻城狮5 小时前
Linux Gstreamer深度解析之gst_audio_ring_buffer_parse_caps调用流程与实战(八十)
linux·运维·服务器·gstreamer音视频·音视频进阶
Lsetea5 小时前
OpenSSL指定-cipher仍协商TLS1.3:证书排查中的套件与协议边界
运维·https·ssl证书·openssl·tls
先知后行。5 小时前
进程间通信(IPC)
linux·运维·服务器
weixin_571667416 小时前
Windows 通过 SSH 反向隧道向 Ubuntu 转发代理
linux·运维·windows·代理
乔旭伟6 小时前
CentOS 停更迁移实战:vault 源配置、目标选型与迁移工程清单
linux·运维·centos
遇印记6 小时前
应用层,网络管理
运维·网络·windows·学习·安全
EterNity_TiMe_7 小时前
Docker服务越装越多记不住端口?我用Fenrus把NAS里的常用入口整理成一个导航页
运维·人工智能·docker·ai·容器·cpolar
IT大白鼠8 小时前
AI SSH 运维助手 V13.0内部版七项私有新特性全解
运维·人工智能·ssh
天蓝蓝的本我8 小时前
ollama外部无法访问.ollama.service 文件无法写入.ollama外部无法访问.
运维·网络
帷幕落秋8 小时前
经典命令场景与软硬链接
linux·运维