普罗米修斯(Prometheus)是一个SoundCloud公司开源的监控系统。当年,由于SoundCloud公司生产了太多的服务,传统的监控已经无法满足监控需求,于是他们在年决定着手开发新的监控系统,即普罗米修斯。
普罗米修斯(下称普罗)的作者MattT.Proud在年加入SoundCloud公司,他从google的监控系统Borgmon中获得灵感,与另一名工程师JuliusVolz合作开发了开源的普罗,后来其他开发人员陆续加入到该项目,最终于年正式发布。
普罗基于Go语言开发,其架构图如下:
其中:
PrometheusServer:用数据的采集和存储,PromQL查询,报警配置。
Pushgateway:用于批量,短期的监控数据的汇报总节点。
Exporters:各种汇报数据的exporter,例如汇报机器数据的node_exporter,汇报MondogDB信息的MongoDB_exporter等等。
Alertmanager:用于高级通知管理。
1.怎么采集监控数据?要采集目标(主机或服务)的监控数据,首先就要在被采集目标上安装采集组件,这种采集组件被称为Exporter。prometheus.io