linux服务器集群监控如何实现
想实现一个简单的监控,通过web(php)可以查看到linux服务器集群的cpu,内存,硬盘,i/o等基本信息,不需要太详细的监控信息
不要一些开源软件,只想找个简单的例子,学习一下原理
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
想实现一个简单的监控,通过web(php)可以查看到linux服务器集群的cpu,内存,硬盘,i/o等基本信息,不需要太详细的监控信息
不要一些开源软件,只想找个简单的例子,学习一下原理
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(4)
推荐你关注一下/proc目录下的文件. 只要写几个小脚本隔一段时间读取一下其中的文件就可以明确的得到系统信息.
proc目录是linux内核API的文件形式接口, 当你使用文件方式读取时, 内核会返回实际的状况给你. 比如/proc/loadavg文件,它就是系统负载接口.
希望对你有帮助!
Linux上一切皆文件,系统信息可以直接通过读取系统运行时文件来获取.
strace -f -o strace.log vmstat && cat strace.log|egrep 'open|read'
可见vmstat先后打开并读取了下面文件的内容:
你也可以用PHP来读取系统的这些文件来分析,或者更简单的方法是直接调用Linux内置的vmstat命令,然后分析它的输出,分析方法也很简单,直接preg_split/explode以空格分隔就能获取每一列的信息.
man vmstat 可见
假设你要监控的Linux服务器叫Agent,那你就在这台Agent上用PHP启动一个HTTP服务:
假设你要收集监控信息的服务器叫Center,那你就在这台Center上用PHP向Agent发送请求获取Agent的运行时信息.
nagios+ganglia(这样行吧)
推荐你用运维面板云帮手,将基础监控进行统一,默认每个机器都包含CPU,内存,磁盘空间等基础信息监控。云帮手也支持多IP服务器纳入监控,所有服务器统一可视化管理,功能覆盖整个业务流程,避免多系统繁杂管理,保障业务高效运行。贴个下载地址(云帮手)