Metricserver:是kubernetes集群资源使用情况的聚合器,收集数据给kubernetes集群内使用,如kubectl、hpa、scheduler等;Prometheus将数据传输给它,靠的就是这个组件,这个组件会联系Prometheus,查询到数据之后提供给集群内部组件去运用。
PrometheusOperator:是一个系统检测和警报工具箱,用来存储监控数据。
NodeExporter:用于各node的关键度量指标状态数据,给那些本身不是web服务器的需要数据收集端,提供数据返回能力。
KubeStatemetrics:收集kubernetes集群内部资源对象数据,制定告警规则;自定义对象,自定义对象本身具备Prometheus,若想要创建容器监控规则,应该是通过自定义对象创建的,就和写资源清单一样。
Prometheus:采用pull方式收集apiserver,scheduler,controller-manager,kubelet组件数据,通过http协议传输。
Grafana:是可视化数据统计和监控平台,数据展示,其早就出现了,是属于纯前端工具,没有自己的数据存储能力,也没有数据处理能力,能够做的就是从别的地方将数据要过来,然后用非常精美的图片呈现给用户观看;比如可以对接zabbix,zabbix将数据给它。然后直接给用户看。若zabbix给你的图像显示觉得不行,那使用grafana是最好的选择。里面功能齐全,图像完善精美,其通过PQL语句调用Prometheus中的数据,数据返回给grafana,提供前端页面展示给用户。
Altermanager:告警组件,调取Prometheus数据,若监控的值不满足要求,那就会通过调用一些其他东西比如:钉钉,微信,短信,邮件等发送报警信息。
Prometheus adapter:云原生监控的核心组件,是将Prometheus中的监控数据转换为kubernetes可识别的自定义指标,这对于实现基于自定义指标的自动扩展(HPA)至关重要。在复杂的微服务架构和大规模集群管理中,通过Prometheus Adapter,用户可自定义监控指标,进行精细化的资源管理和自动化运维,从而提升系统的可靠性和性能。