查看pod资源使用情况

简介: 使用`kubectl top pod -n $namespace|grep online`检查Kubernetes pod资源使用,例如CPU和内存。同样,通过`kubectl top nodes`查看节点资源。关注NMC的堆内存使用,防止溢出。监控实例请求和线程状态以确保正常运行。当遇到问题时,收集日志如jstack、jmap输出、操作系统日志和NMC线程监控数据。对于效率问题,依赖NMC线程监控和客户端SPR记录。错误日志可通过控制台获取。

查看pod资源使用情况
kubectl top pod –n $namespace|grep online
以第一行为例:该pod使用cpu51m,使用内存3230mi。
image.png

image.png

或在开发者中心控制台监控页面监控。
查看k8s节点资源使用情况
kubectl top nodes
image.png

NMC监控系统使用情况
堆内存
堆内存使用值(used)接近堆内存设置的最大值(-Xmx)时,容易产生内存溢出问题。
image.png

实例是否正常,请求数是否正常
image.png

线程监控
是否存在异常线程,例如耗时特别高,线程状态为blocked,大量线程堆积等等情况,具体问题具体分析。

日志收集
1、宕机问题(系统阻塞)
线程堆栈、内存转储
常用命令:jstack $pid >> thread.txt ,jmap -dump:format=b,file=mem.hprof $pid
内存溢出自动生成转储文件(生成在容器/下,如果容器销毁,会一起丢失):
jvm参数添加-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/outofmemory.hprof
操作系统日志(主要看是否被kill):/var/log/message
进程占用的资源情况:top,kubectl top pods –n $namespace|grep online-,docker stats等等
NMC线程监控:查看具体信息。

2、效率问题
NMC线程监控耗时具体信息,客户端录制SPR

3、异常报错
控制台取nc报错详细日志。

相关文章
|
Kubernetes 容器 Perl
Kubernetes 节点的预留资源
Kubernetes 节点的预留资源
228 1
|
3月前
|
存储 Kubernetes Docker
Kubernetes节点资源耗尽状态的处理
Kubernetes节点资源耗尽状态的处理
|
3月前
|
Kubernetes 监控 API
在K8S中,什么是静态Pod、自主式Pod、动态Pod?
在K8S中,什么是静态Pod、自主式Pod、动态Pod?
|
6月前
|
Kubernetes 应用服务中间件 调度
pod 之资源限制 与健康检查
pod 之资源限制 与健康检查
|
6月前
|
Kubernetes 固态存储 调度
Kubernetes节点亲和性分配Pod
Kubernetes节点亲和性分配Pod
84 0
Kubernetes节点亲和性分配Pod
|
存储 Kubernetes 监控
kubernetes Sidecar 有哪些 资源是共享的
kubernetes Sidecar 有哪些 资源是共享的
362 1
|
Kubernetes 监控 Shell
Pod资源对象
Pod资源对象
98 0
|
Kubernetes 固态存储 容灾
pod调度总结
总结pod的调度相关知识
414 0
pod调度总结
|
消息中间件 Kubernetes 监控
Kubernetes-Pod介绍(三)-Pod调度
不同的Pod之间的亲和性问题,例如主从MySQL数据库不能够分配到同一个节点上或者两种Pod必须调度到同一个节点上,实现本地网路、文件共享等等; 有状态的集群,例如Zookeeper、Kafka等有状态的集群,每个节点看起来都是差不多,但是每个节点都必须明确主节点,而且节点启动有严格的顺序要求,此外集群中的数据也需要持久化存储,每个工作节点挂点的时候,如何按照持计划的信息进行恢复等等问题; 每个Node上调度仅仅创建一个Pod,例如对Node节点的监控,主机节点日志、性能采集节点只能部署一个节点; 批量调度的任务以及定时调度的任务,调用完成的时候要求Pod就销毁;
|
Kubernetes 应用服务中间件 nginx
Kubernetes----Pod配置资源配额
Kubernetes----Pod配置资源配额
343 0