Kubernetes - 实战:资源监控Metrics-Server、Dashboard

在Kubernetes集群中,Metrics-Server 和 Dashboard 是两种重要的资源监控工具,分别提供了API层面的资源使用统计和Web界面形式的可视化展示。

安装Metrics-Server

Metrics-Server 是 Kubernetes 集群的核心监控数据聚合器,用于收集和聚合每个Pod和Node的CPU和内存使用量。以下是安装 Metrics-Server 的实战步骤:

  1. 下载资源清单文件

    • 访问 Metrics-Server 的 GitHub 仓库(https://github.com/kubernetes-sigs/metrics-server/releases)找到最新版的 release 页面。
    • 下载对应的资源清单 YAML 文件,例如:metrics-server.yamlmetrics-server-vX.Y.Z.yaml
  2. 部署 Metrics-Server

    kubectl apply -f https://raw.githubusercontent.com/kubernetes-sigs/metrics-server/release-X.Y.Z/deploy/manifests/base/metrics-server.yaml
    

    或者,如果您已经下载了本地文件:

    kubectl apply -f ./metrics-server.yaml
    
  3. 验证安装

    kubectl get deployment -n kube-system metrics-server
    kubectl get pods -n kube-system -l k8s-app=metrics-server
    

使用 Metrics-Server 监控资源

安装完成后,Kubernetes 中的其他组件(如Horizontal Pod Autoscaler)就可以利用 Metrics-Server 提供的数据来进行决策。您也可以使用 kubectl top 命令查看资源使用情况:

kubectl top nodes
kubectl top pods --all-namespaces

安装Kubernetes Dashboard

Kubernetes Dashboard 提供了直观的 Web UI,便于集群管理员和开发人员监控和管理集群。

  1. 下载 Dashboard 的资源清单文件

    • 通常可以从 Kubernetes 官方仓库或第三方镜像仓库下载,或直接从 GitHub 上的 Kubernetes Dashboard 项目获取。
  2. 部署 Kubernetes Dashboard

    # 下载并部署最新的 Dashboard 资源清单
    kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.X.X/aio/deploy/recommended.yaml
    

    或者,如果是较早版本的 Dashboard,可能需要创建一个 Service Account 并分配适当的角色绑定,然后再部署 Dashboard。

  3. 访问 Dashboard

    • 默认情况下,Dashboard 不对外开放。为了安全起见,您通常需要创建一个 proxy 到 Dashboard 的端口:

      kubectl proxy
      
    • 然后在浏览器中访问:http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/

    • 如果集群启用了 RBAC,还需要创建一个用于登录 Dashboard 的 token,并将其附加到 Service Account 上,或者使用其他身份验证方法(如kubeconfig文件)。

注意

  • 请确保您的集群版本与 Metrics-Server 和 Dashboard 版本兼容。
  • 为了安全起见,在生产环境中建议对 Kubernetes Dashboard 进行严格的访问控制,如限制 IP 地址范围或使用令牌认证。
  • 对于较新的 Kubernetes 版本,可能需要启用或配置 Metrics API 的准入控制器(如--enable-admission-plugins=...,...,MetricsResourceAllocation)来支持 Metrics-Server 的数据集成到 Kubernetes 内核中。
  • 15
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值