查看k8s集群的资源使用情况

查看Kubernetes(k8s)集群的资源使用情况有多种方法,以下是一些常见的方式:

使用kubectl命令行工具

  • 查看节点资源使用情况

    • kubectl top nodes命令可以显示集群中各个节点的CPU和内存使用情况。例如:

      NAME CPU(cores) CPU% MEMORY(bytes) MEMORY%
      node1 100m 5% 800Mi 40%
      node2 200m 10% 1200Mi 60%

  • 查看Pod资源使用情况

    • kubectl top pods命令可以展示每个Pod的CPU和内存使用量。如想查看特定命名空间下的Pod资源使用情况,可使用-n参数指定命名空间,示例如下:

      kubectl top pods -n mynamespace

      • 若想查看某个Pod内具体容器的资源使用情况,命令格式为kubectl top pod <pod名称> -n <命名空间> -o json,然后可以通过工具如jq来解析JSON输出以获取详细信息。

使用Kubernetes Dashboard

  • 安装Dashboard
    • 可以通过官方文档提供的指令来安装Kubernetes Dashboard。例如,在命令行中执行kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml来部署Dashboard。
  • 访问Dashboard
    • 部署完成后,使用kubectl proxy命令启动代理,然后在浏览器中访问http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/,即可进入Dashboard界面。
    • 在Dashboard中,可以直观地查看集群中节点、Pod、Deployment等资源的使用情况,包括CPU、内存的使用百分比和请求量等信息,还能查看资源使用的趋势图表。

使用监控工具

  • Prometheus + Grafana
    • 部署Prometheus :可以使用Helm等工具来部署Prometheus到Kubernetes集群中。例如,添加Prometheus社区的Helm仓库helm repo add prometheus-community https://prometheus-community.github.io/helm-charts,然后执行helm install my-prometheus prometheus-community/prometheus来安装。
    • 配置Grafana :同样可以用Helm安装Grafana,如helm install my-grafana grafana/grafana。安装完成后,将Prometheus作为数据源添加到Grafana中,然后可以在Grafana中导入各种预定义的Kubernetes监控仪表盘,或者自定义仪表盘来展示集群资源使用的详细指标和趋势,如集群整体的CPU使用率、内存使用量、Pod资源请求与限制等。
  • 其他监控工具
    • 像Heapster曾经是Kubernetes的资源监控工具,不过目前已逐渐被其他工具替代。还有一些云厂商提供的监控工具,如阿里云的ARMS、腾讯云的TKE监控等,都可以用于查看K8s集群的资源使用情况,这些工具通常提供了更丰富的功能和更友好的界面。
相关推荐
掘金-我是哪吒43 分钟前
分布式微服务系统架构第157集:JavaPlus技术文档平台日更-Java多线程编程技巧
java·分布式·微服务·云原生·架构
掘金-我是哪吒1 小时前
分布式微服务系统架构第155集:JavaPlus技术文档平台日更-Java线程池实现原理
java·分布式·微服务·云原生·架构
朱杰jjj1 小时前
Docker容器中无法使用vim、vi命令处理
docker·容器·vim
东林牧之2 小时前
CICD[软件安装]:docker安装gitlab
docker·容器·gitlab
cui_hao_nan11 小时前
Docker后端部署
运维·docker·容器
小张是铁粉12 小时前
docker在Linux的安装遇到的问题
linux·docker·容器
没有名字的小羊14 小时前
8.Docker镜像讲解
运维·docker·容器·tomcat
木鱼时刻15 小时前
容器与 Kubernetes 基本概念与架构
容器·架构·kubernetes
LCG元17 小时前
云原生微服务间的异步消息通信:最终一致性与系统容错的架构实战
微服务·云原生·架构
做一个AC梦17 小时前
Docker安装失败:Docker Desktop installation failed
运维·docker·容器