到现在为止,我已经学习了docker自带的监控方案:ps/ls/top/stats,以及sysdig,weave scope,cadvisor,prometheus多种监控工具,现在做个总结和比较
部署容易度:
ps/ls/top/stats肯定是最容易部署的了,毕竟是docker 自带的命令,能随时随地的查看容器的状态。
其他的几种工具都可以利用容器来运行,也是比较容器部署的,相对而言,prometheus组件相对较多,需要运行的容器也比较多
数据详细程度
ps/ls/top/stats可以监控容器的基本资源的使用情况,其他的监控工具则能提供更丰富的数据
多Host监控
weave scope和prometheus可以监控整个集群,其余的只能监控到单个Host
告警功能:
只有prometheus有告警的功能
建议:
1.docker ps/ls/top/stats可以快速了解容器的运行状态,从而判断是否需要进一步分析和排查
2.sysdig提供了丰富的分析和挖掘功能,是trobleshooting的神器
3.cadvisor一般不会单独使用,通常作为其他监控工具的数据收集器,比如prometheus
4.weave scope流畅简洁的界面是最大的亮点,而且支持在web界面上操做容器的命令
5.prometheus的数据模型和架构决定了他几乎具有无线的可能性,prometheus还可以监控其他的应用和系统,更为综合全面
6.监控系统的选择要根据需求来制定,除了这些方案,还有更多的优秀的方案