用途:为 Kubernetes 集群实施云成本优化,降低云支出,适用于成本增长、缺少按团队/应用/环境的成本分摊、请求与限额不匹配实际用量、手工扩缩容导致过度配置等场景。
主要能力:部署 Kubecost/OpenCost 做成本可见性与分摊,并接入云厂商账单 API;分析资源请求与实际用量差异,获取 rightsizing 建议;实现水平自动扩缩容(HPA)与垂直自动扩缩容(VPA);为可容忍中断的无状态工作负载使用 Spot/可抢占实例;通过 ResourceQuota 与预算告警做成本控制,并建立 showback/chargeback 与 FinOps 文化。
必要用法:需要有运行工作负载的 Kubernetes 集群、云厂商账单 API 访问权限、Metrics Server 或 Prometheus。安装示例:helm repo add kubecost https://kubecost.github.io/cost-analyzer/;helm repo update;helm install kubecost kubecost/cost-analyzer --namespace kubecost --create-namespace。VPA 安装:git clone https://github.com/kubernetes/autoscaler.git,进入 vertical-pod-autoscaler 后执行 ./hack/vpa-up.sh。可用 kubectl port-forward -n kubecost svc/kubecost-cost-analyzer 9090:9090 访问界面。
限制与注意事项:不要立即套用 VPA 激进建议,先以 Off 模式观察;HPA 与 VPA 不可用于同一指标,避免冲突;Spot 仅用于容错的无状态负载并配合 PodDisruptionBudget;决策需足够的历史数据(至少 7 天,VPA 建议约 30 天);容量规划用 P95/P99 而非平均值;还需关注出网流量、存储与 PVC 成本。部分配置模板在扩展示例中,具体价格、收费与平台细节资料未完整提供。