16|集群状态观测与查看日志
王雪飞
你好,我是雪飞。
上节课,我带你给集群中的 Pod 容器增加了探针配置,以及资源请求和资源限额配置,从而保障我们的应用运行得更加平稳,但是,在实际项目中,我们仍然可能会遇到一些集群或者应用故障。今天我就给你介绍一些在 K8s 集群中常用的方法,来查看集群资源消耗情况、资源对象详细信息以及查看 Pod 容器和集群组件日志,帮助你快速定位和解决问题。我们先来了解一下如何统计集群资源消耗情况。
资源消耗统计
在硬件集群的日常运维过程中,我们通常需要关注各个服务器的资源使用情况,如 CPU、内存、磁盘和网络等,这些信息可以通过一些软件(例如 Prometheus)采集并展示出来,方便运维人员了解到集群的整个状态。
在 K8s 容器集群中,我们也需要关注节点和 Pod 的运行情况,所以 K8s 提供了 “kubectl top” 命令,可以查看节点和 Pod 的 CPU 和 内存消耗情况。不过在使用 “kubectl top” 命令之前,需要先安装 Metrics Server 服务。
认识 Metrics Server
Metrics Server 作为一个独立的组件部署运行在 K8s 集群中,专门负责收集和提供集群资源使用情况的相关指标(Metrics),这些指标包括对 CPU、内存使用情况的监控。它的实现原理如下图:
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
1. Metrics Server 是用于在 K8s 容器集群中实时查看节点和 Pod 的资源消耗情况的服务,帮助及时发现和解决资源消耗过大的问题。 2. 安装 Metrics Server 需要下载部署 YAML 文件,并对文件进行修改,然后通过 “kubectl apply” 命令部署 YAML 文件,最后验证 Metrics Server 是否可以获取指标数据。 3. 通过 “kubectl top” 命令可以查看节点和 Pod 的资源消耗情况,包括 CPU 和内存使用情况,帮助及时发现和解决资源消耗过大的问题。 4. 容器日志的管理和轮换由 K8s 组件与 logrotate 工具共同协作,确保日志文件不会无限制地增长导致磁盘空间不足。 5. 日志作为记录集群组件和应用运行状况的第一手资料,能够帮助快速找到问题、分析故障原因,从而提高问题解决效率。 6. 使用 “kubectl logs” 命令可以实时查看节点和 Pod 的资源消耗情况,包括 CPU 和内存使用情况,帮助及时发现和解决资源消耗过大的问题。 7. 通过 “kubectl get” 和 “kubectl describe” 命令可以查看资源对象的列表和详情,帮助快速找到问题。 8. 创建三个 Nginx 镜像的 Pod,设置为 “app=web” 标签,然后通过 top 命令找到这三个 Pod 中使用 CPU 最高的 Pod,是一个实践练习的重点。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《零基础拿下云原生 CKA 认证》,新⼈⾸单¥59
《零基础拿下云原生 CKA 认证》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论