首页主机资讯怎样监控centos上k8s的部署状态

怎样监控centos上k8s的部署状态

时间2025-10-15 22:59:04发布访客分类主机资讯浏览1141
导读:一、基础监控:使用kubectl命令行工具 kubectl是Kubernetes原生命令行工具,无需额外安装,适合快速查看集群及部署状态,是运维人员的基础工具。 查看节点状态:kubectl get nodes,可获取节点的Ready状态...

一、基础监控:使用kubectl命令行工具

kubectl是Kubernetes原生命令行工具,无需额外安装,适合快速查看集群及部署状态,是运维人员的基础工具。

  • 查看节点状态kubectl get nodes,可获取节点的Ready状态(是否正常运行)、内存/CPU资源容量及使用情况。
  • 查看Pod状态kubectl get pods --all-namespaces,显示所有命名空间下Pod的运行状态(Running/Pending/CrashLoopBackOff等)、重启次数及所属Deployment。
  • 查看Deployment状态kubectl get deployments --all-namespaces,查看Deployment的副本数(Desired/Current/Ready)、更新状态及可用副本数。
  • 查看Service状态kubectl get services --all-namespaces,确认Service的ClusterIP、端口映射及关联的Pod是否正常。
  • 查看集群事件kubectl get events --all-namespaces,获取集群内资源变更、错误告警等事件(如Pod调度失败、节点异常)。
  • 查看详细信息kubectl describe pod < pod-name> -n < namespace> (查看Pod的详细事件、容器状态)、kubectl describe deployment < deployment-name> -n < namespace> (查看Deployment的更新历史、滚动升级状态)。

二、可视化监控:Kubernetes Dashboard

Kubernetes Dashboard是官方提供的Web UI,适合直观查看集群资源及部署状态,支持实时监控和简单操作(如扩缩容、重启Pod)。

  • 安装Dashboard:执行kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml(以最新版本为准)。
  • 访问Dashboard:通过kubectl proxy启动代理,然后在浏览器访问http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/
  • 登录方式:使用kubectl -n kube-system create token admin-user生成Token(需提前创建admin-user),输入Token即可登录。
  • 功能:查看节点、Pod、Deployment、Service等资源的实时状态,支持筛选、排序及查看详情。

三、专业监控:Prometheus+Grafana组合

Prometheus+Grafana是云原生监控黄金组合,适合生产环境,提供全面的指标收集、存储、可视化及告警功能,覆盖节点、容器、Deployment等全栈监控。

  • Prometheus:开源时间序列数据库,负责收集和存储指标数据。可通过Helm Chart快速部署(helm repo add prometheus-community https://prometheus-community.github.io/helm-charts; helm install prometheus prometheus-community/kube-prometheus-stack),部署后会自动收集Kubernetes集群的节点、Pod、Deployment等指标。
  • Grafana:开源可视化工具,负责将Prometheus中的指标转换为直观的仪表盘。安装后(helm install grafana grafana/grafana),添加Prometheus作为数据源(地址为http://prometheus-server),导入官方或自定义仪表盘(如Kubernetes Cluster Monitoring、Node Exporter Full等),即可查看CPU、内存、Pod状态、Deployment副本数等可视化图表。
  • 优势:支持告警规则(如Deployment副本数低于阈值时发送邮件/Slack通知)、自定义查询(PromQL语言)、动态仪表盘配置。

四、日志监控:ELK Stack或Loki+Grafana

日志是排查部署问题的关键,ELK(Elasticsearch+Logstash+Kibana)或Loki+Grafana组合可收集、存储及分析Kubernetes集群的日志(Pod、节点、应用日志)。

  • ELK Stack
    • Elasticsearch:存储日志数据;Logstash:收集并解析日志(如从容器标准输出、节点日志文件);Kibana:可视化日志(支持全文搜索、过滤、聚合)。
    • 部署方式:通过Helm Chart或手动部署(如kubectl apply -f elasticsearch.yamlkubectl apply -f logstash.yamlkubectl apply -f kibana.yaml)。
  • Loki+Grafana
    • Loki:轻量级日志聚合系统(专为云原生设计,与Prometheus集成);Grafana:直接查询Loki日志并可视化。
    • 部署方式:helm install loki grafana/loki-stack,配置Grafana数据源为Loki,即可查看应用日志(如kubectl logs的输出)。
  • 常用操作kubectl logs < pod-name> -n < namespace> (查看Pod日志)、kubectl logs -f < pod-name> -n < namespace> (实时跟踪日志)。

五、第三方监控工具

若需要企业级支持更丰富的功能,可选择第三方监控工具,这些工具通常提供开箱即用的Kubernetes监控方案:

  • Datadog:支持监控Kubernetes集群、应用性能、日志及分布式追踪,提供实时告警、容量规划等功能,适合大规模生产环境。
  • New Relic:提供应用性能监控(APM)、基础设施监控及Kubernetes集群可视化,支持根因分析(RCA)和业务影响分析。
  • Sysdig:专注于容器和Kubernetes监控,提供深度性能分析、安全检测(如容器逃逸、权限滥用)及故障排查功能,支持与Prometheus集成。

以上方法可根据需求选择:基础监控用kubectl,可视化用Dashboard,专业监控用Prometheus+Grafana,日志监控用ELK/Loki,企业级需求用第三方工具

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 怎样监控centos上k8s的部署状态
本文地址: https://pptw.com/jishu/727501.html
怎样监控centos k8s集群状态 如何在centos上回滚k8s部署

游客 回复需填写必要信息