kubernetes中监控存在的问题

pull/26/head
Jimmy Song 2017-07-03 20:34:10 +08:00
parent e1551d7472
commit 5b772bd87c
2 changed files with 18 additions and 1 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

View File

@ -2,6 +2,19 @@
在前面的[安装heapster插件](heapster-addon-installation.md)章节我们已经谈到Kubernetes本身提供了监控插件作为集群和容器监控的选择但是在实际使用中因为种种原因再考虑到跟我们自身的监控系统集成我们准备重新造轮子。 在前面的[安装heapster插件](heapster-addon-installation.md)章节我们已经谈到Kubernetes本身提供了监控插件作为集群和容器监控的选择但是在实际使用中因为种种原因再考虑到跟我们自身的监控系统集成我们准备重新造轮子。
## Kubernetes集群中的监控
![Kubernetes集群中的监控](../images/monitoring-in-kubernetes.png)
跟物理机器和虚拟机的监控不同在kuberntes集群中的监控复杂度更高一些因为多了一个虚拟化层当然这个跟直接监控docker容器又不一样kubernetes在docker之上又抽象了一层service的概念。
在kubernetes中的监控需要考虑到这几个方面
- 应该给Pod打上哪些label这些label将成为监控的metrics。
- 当应用的Pod漂移了之后怎么办因为要考虑到Pod的生命周期比虚拟机和物理机短的多如何持续监控应用的状态
- 更多的监控项kubernetes本身、容器、应用等。
- 监控指标的来源是通过heapster收集后汇聚还是直接从每台主机的docker上取
## 容器的命名规则 ## 容器的命名规则
首先我们需要清楚使用cAdvisor收集的数据的格式和字段信息。 首先我们需要清楚使用cAdvisor收集的数据的格式和字段信息。
@ -154,4 +167,8 @@ kubernetes容器命名规则解析见下图所示。
![Heapster架构图改进版](../images/kubernetes-heapster-monitoring.png) ![Heapster架构图改进版](../images/kubernetes-heapster-monitoring.png)
在不改变原有架构的基础上通过应用的label来区分不同应用的pod。 在不改变原有架构的基础上通过应用的label来区分不同应用的pod。
## 参考
[Monitoring in the Kubernetes Era](https://www.datadoghq.com/blog/monitoring-kubernetes-era/)