Docker Containers和Swarm的工作监控解决scheme?
我正在寻找Web应用程序的监视解决scheme,部署为通过7-10个虚拟机传播的Docker容器群。 高级要求是:
- 性能仪表板的可configurationWeb和REST接口
- VM级别的一般性能指标(CPU /内存/ IO)
- 当容器和/或VM正在离线/重新启动时警报
- 需要时可以深入容器处理活动
- 主机操作系统是CoreOS和Ubuntu
任何build议/最佳做法?
注意:正在使用外部Kibana安装来收集部署在VM上的Logstash代理的应用程序日志。
根据您的要求,听起来像Sematext Docker Agent会很好。 它作为每个Docker主机上的一个小容器运行,并收集所有主机+容器度量标准,事件和日志。 它可以parsing日志,路由他们,黑名单/白名单,有容器自动发现,等等。 在最后的日志中,最后是Logsene ,度量和事件最终在SPM中 ,它为您提供了所有Docker操作位的单一窗口视图,包括警报,exception检测,关联等等。
我目前正在用scollector + cAdvisor支持来评估bosun。 现在看起来确定。
编辑:它应该符合所有列出的要求和一点点。 🙂
看看Axibase时间序列数据库 / Google Cadvisor / collectd堆栈。
披露:我为开发ATSD的公司工作。
- 为每个VM部署1个Cadvisor容器来收集Docker容器统计信息。 Cadvisor前端允许您查看顶级容器进程。
- 部署1个ATSD容器以从多个Cadvisor实例获取数据。
- 在每个VM上部署collectd守护进程以收集主机统计信息,configurationcollectd守护进程以使用write_atsd插件将数据stream式传输到ATSD。
仪表板:
-
主办:
-
容器:
API / SQL:
快讯:
- ATSD带有一个内置的规则引擎。 您可以configuration规则以监视容器何时停止收集数据并触发电子邮件或系统命令。