基于rancher的容器平台监控方案参考

655次阅读  |  发布于2年以前

大家好, 本篇为我在做公司容器化监控平台选型时的一些调研思路和资料记录,希望可以给到大家启发和帮助。

阅读本文,你可以了解到:

现阶段容器化方案总结

容器化监控曾经出现过的几种方案:

站在2022这个时间点,Prometheus已是容器化监控的首选。各种资料对比显示它已经成为容器监控领域的标准

基于 Prometheus的监控栈,主要有以下两套部署方案:

  • 手动部署可参考文档:https://docs.prometheus.cool/Kubernetes/Prometheus-Statefulsets-1/

该存储库收集了 Kubernetes 清单、Grafana 仪表板和 Prometheus 规则以及文档和脚本,以使用 Prometheus Operator 提供易于操作的端到端 Kubernetes 集群监控与 Prometheus。

  • 部署可参考文档:http://gitlab.bokecc.com/opgroup/dev/cc_dev_docs/blob/master/dev/container/k8s_operator.md
  • k8s 官方 Operator 文档:https://kubernetes.io/zh/docs/concepts/extend-kubernetes/operator/
  • Operator Hub 文档:https://operatorhub.io/
  • Prometheus Operator 文档:https://prometheus-operator.dev/

Prometheus 方案详解

数据采集项

日常监控的采集项:

容器需要采集或监控的数据指标:

各指标对应采集方案和组件如下:

数据存储

Prometheus 作为收集和临时存储使用,因为单点不具备扩容能力,不适合做持久化存储。

持久化存储,目前业界有三种种比较成熟的开源方案:

thanos-arch

cortex-arch

vm-cluster-arch

Thanos vs VictoriaMetric 两种方案对比,可参考文档:

Cortex vs VictoriaMetric 对比:

总结下三种方案对比大致如下:

报警方案

与现有监控结合

部署高可用

多 Prometheus 副本,接后端 VictoriaMetric 聚合去重查询。

总结

根据上边的记录分析,我相信大家心里应该有了自己的选择。技术选型除了目标技术栈本身,还需要根据自己业务架构和团队人员技术栈等其他因素综合考虑,所以选用符合自己业务架构和团队的便是最好的技术选型。

参考资料

[1]Heapster: https://github.com/kubernetes-retired/heapster

[2]Heapster: https://github.com/kubernetes-retired/heapster

[3]v5版本: https://n9e.github.io/

[4]kube-prometheus: https://github.com/prometheus-operator/kube-prometheus

[5]Thanos: https://thanos.io/v0.24/thanos/getting-started.md/

[6]Cortex: https://cortexmetrics.io/

[7]VictoriaMetric: https://docs.victoriametrics.com/

[8]只支持写,不支持读: https://prometheus.io/docs/operating/integrations/#remote-endpoints-and-storage

[9]vm: https://docs.victoriametrics.com/Cluster-VictoriaMetrics.html#replication-and-data-safety

[10]cortex: https://github.com/cortexproject/cortex/blob/fe56f1420099aa1bf1ce09316c186e05bddee879/docs/architecture.md#hashing

[11]这里: https://docs.victoriametrics.com/CaseStudies.html

[12]v5.3.0: https://github.com/didi/nightingale/releases/tag/v5.3.0

[13]这里: https://www.ancii.com/at6lje4j8/

[14]Prometheus Operator: https://prometheus-operator.dev/docs/prologue/introduction/

[15]Rancher 监控和报警: https://rancher.com/docs/rancher/v2.6/en/monitoring-alerting/

[16]Kubernetes主机和容器的监控方案: https://www.kubernetes.org.cn/2432.html

[17]云原生监控神器Prometheus: https://docs.prometheus.cool/

[18]高可用 Prometheus:Thanos 实践: http://www.xuyasong.com/?p=1925

[19]使用Victoriametrics作为prometheus高可用性长期存储方案-中文版: https://blog.csdn.net/weixin_26711867/article/details/108971299

[20]使用Victoriametrics作为prometheus高可用性长期存储方案-英文版: https://medium.com/miro-engineering/prometheus-high-availability-and-fault-tolerance-strategy-long-term-storage-with-victoriametrics-82f6f3f0409e

[21]thanos vs victoria: https://blog.csdn.net/alex_yangchuansheng/article/details/108271368

[22]victoriaMetric 存储机制: https://zhuanlan.zhihu.com/p/368912946

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8