Files
nexus/wiki/concepts/Metrics-Server.md

41 lines
1.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "Metrics Server"
type: concept
tags:
- Kubernetes
- EKS
- Metrics
- Monitoring
- Autoscaling
sources:
- ctp-topic-64-scaling-out-with-amazon-eks
last_updated: 2026-04-28
---
## Definition
Metrics Server 是 Kubernetes 集群级别的指标采集组件Metrics API Provider负责从 kubelet 收集 CPU/内存等资源使用指标,为 HPA、VPA 和 `kubectl top` 命令提供标准化的指标数据。
## Key Mechanisms
- **Metrics API**:实现 `metrics.k8s.io` API提供 Pod 和 Node 的资源指标
- **数据采集**:定期从各节点的 kubelet 获取指标数据
- **内存高效**:采用流式处理,仅保留最近 5 分钟的指标数据
- **HPA 依赖**HPA 的标准资源指标CPU/内存)完全依赖 Metrics Server
## Deployment
- 通过 Deployment 部署单个副本(非高可用)
- 通常随 EKS 集群自动安装EKS Add-on 或 eks-charts
- 监控指标Pod CPU/内存利用率、Node CPU/内存容量
## Limitations
- 仅支持标准资源指标CPU、内存
- 不支持自定义/外部指标(需要 Custom Metrics API
- 单副本部署,非高可用设计
## Relationship with HPA
- HPA 通过 Metrics Server 获取 Pod 的 CPU/内存利用率
- 计算公式:`desiredReplicas = ceil(sum(podMetricValue) / targetValue)`
- 目标阈值targetValue通常设置为 70-80%,保留缓冲空间
## Sources
- [[ctp-topic-64-scaling-out-with-amazon-eks]]