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参数及硬盘参数脚本

相关推荐
matrixlzp27 分钟前
CentOS7 安装 Jenkins
运维·jenkins
额呃呃37 分钟前
对信号的理解
linux·运维·算法
zhaotiannuo_19981 小时前
【Linux kali 更换yum源】
linux·运维·服务器
ybb7046305 小时前
linux第二次作业
linux·运维·服务器
大白同学4216 小时前
【Linux】进程间通信
linux·运维·服务器
..Move...7 小时前
Docker镜像制作
运维·docker·容器
码龄3年 审核中12 小时前
说说SSH的端口转发
大数据·运维·ssh
盛世隐者12 小时前
【Linux】定制Linux系统
linux·运维·服务器
ErizJ13 小时前
IM|im-service
golang·kafka·go·im·心跳检测
沐浴露z13 小时前
Kafka 生产者详解(上):消息发送流程与API,分区,吞吐量与数据可靠性
java·kafka·消息队列