温馨提示×

centos如何监控k8s运行状态

小樊
45
2025-10-01 01:01:25
栏目: 智能运维

使用kubectl命令行工具(基础监控)
kubectl是Kubernetes官方命令行工具,无需额外安装,适合快速查看集群基础状态。常用命令包括:

  • 查看节点状态kubectl get nodes(显示节点名称、状态、角色等信息,状态需为Ready);
  • 查看Pod状态kubectl get pods --all-namespaces(查看所有命名空间的Pod运行状态,Running表示正常);
  • 查看Deployment状态kubectl get deployments --all-namespaces(查看Deployment的副本数、更新状态等);
  • 查看详细信息kubectl describe pod <pod-name> -n <namespace>(查看Pod的事件、容器状态等详细信息);
  • 查看集群事件kubectl get events --all-namespaces(查看集群近期事件,如节点异常、Pod调度失败等)。

使用Kubernetes Dashboard(Web可视化)
Kubernetes Dashboard是官方提供的Web UI,适合直观监控集群资源和操作。安装步骤:

  1. 应用Dashboard配置:kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.4.0/aio/deploy/recommended.yaml
  2. 获取访问Token:kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}')(复制token字段值);
  3. 访问Dashboard:浏览器打开https://<node-ip>:30001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/,粘贴Token登录。
    登录后可查看节点、Pod、Deployment、Service等资源的实时状态,支持创建、修改、删除资源。

使用Prometheus+Grafana(专业监控与可视化)
Prometheus(监控数据采集)+Grafana(可视化展示)是企业级Kubernetes监控方案,适合大规模集群。安装步骤:

  1. 部署Prometheus:使用Helm简化部署(需提前安装Helm):helm repo add prometheus-community https://prometheus-community.github.io/helm-charts && helm install prometheus prometheus-community/kube-prometheus-stack
  2. 部署Grafanahelm install grafana prometheus-community/grafana
  3. 配置数据源:登录Grafana(默认地址http://<node-ip>:3000,账号admin/admin),添加Prometheus数据源(地址为http://prometheus-operated.monitoring.svc.cluster.local:9090);
  4. 导入仪表盘:Grafana库中搜索“Kubernetes Cluster Monitoring”(ID:14878),导入后即可查看节点资源使用率、Pod状态、Deployment副本数等可视化图表。

使用Metrics Server(轻量级指标收集)
Metrics Server是Kubernetes官方轻量级指标聚合器,用于收集CPU、内存等资源使用数据,为kubectl top命令提供支持。安装步骤:

  1. 应用Metrics Server配置:kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
  2. 验证运行状态:kubectl get pods -n kube-system | grep metrics-server(确保Pod状态为Running);
  3. 使用kubectl top命令:kubectl top nodes(查看节点资源使用)、kubectl top pods --all-namespaces(查看Pod资源使用)。

使用第三方监控工具(企业级增强)

  • Datadog:云原生监控平台,支持Kubernetes容器、节点、应用的全栈监控,提供异常检测、告警、日志分析等功能。安装需参考官方文档(如使用DaemonSet部署Agent);
  • New Relic:提供Kubernetes性能监控、分布式追踪、错误分析等功能,支持与CI/CD工具集成,适合DevOps团队;
  • Sysdig:容器智能平台,支持容器性能监控、安全检测(如Falco异常检测),可深入分析容器、Pod、节点的运行状态。

补充:系统级命令(宿主机监控)
若需监控CentOS宿主机的资源使用情况(如CPU、内存、磁盘),可使用以下命令:

  • 实时进程与资源监控top(按M排序内存使用,P排序CPU使用)、htop(增强版top,需安装:yum install -y epel-release && yum install -y htop);
  • 内存使用情况free -h(显示总内存、已用、空闲等,-h表示人类可读格式);
  • 磁盘I/O统计iostat -x 1(显示磁盘读写速率、I/O等待时间,需安装sysstatyum install -y sysstat);
  • 网络连接状态netstat -tulnp(显示监听端口、进程信息)或ss -tulnp(更现代的替代工具)。

0