Kubernetes 监控与日志管理指南
在 Kubernetes 环境中,监控是保障服务稳定运行的关键环节。下面我们将详细探讨需要监控的组件、获取监控所需的基本信息,以及如何使用 Prometheus 进行实践操作。
1. 监控基础设施
在考虑应用程序的运行环境和交互方式时,显而易见,我们需要监控的主要对象是应用程序主机和连接网络。
- 主机监控 :通常由监控框架提供的代理来执行,这些代理会提取并发送关于主机的综合指标,如负载、磁盘使用情况、连接状态和其他进程统计信息,帮助我们判断主机的健康状况。
- 网络监控 :涉及同一主机上的 Web 服务器软件和网络接口,可能还包括负载均衡器,甚至像 Istio 这样的平台。一般需要测量的指标有流量、延迟和错误率。
2. 监控外部依赖
除了上述两个主要组件,我们还需要检查依赖组件的状态,例如外部存储的利用率或队列的消费率。以订阅队列作为输入并执行任务的应用程序为例,我们还需要关注队列长度和消费率等指标。如果消费率低且队列长度持续增长,应用程序可能会出现问题。
对于 Kubernetes 上的容器,由于其资源利用方式与传统主机有所不同,我们需要调整监控策略。不能仅以主机为中心进行监控,还应添加容器层监控。同时,Kubernetes 作为应用程序的基础设施,其状态也需要纳入监控范围。
3. 监控容器
容器是程序和依赖运行时库的轻量级封装,容器级别的指标与容器主机的指标相似,特别是在系统资源使用方面。从容器和主机收集这些指标看似冗余,但实际上有助于解决监控移动容器
超级会员免费看
订阅专栏 解锁全文
1347

被折叠的 条评论
为什么被折叠?



