云上成本控制的五个杠杆:从按需到预留的实操配置
杠杆一:先算清账单口径,再谈优化
成本优化的第一步不是买预留实例,而是把账单拆到业务维度。华为云成本中心支持按企业项目(Enterprise Project)和标签(Tag)分账。创建资源时通过 tag 打标,命令如下:
hcloud ECS CreateServers --cli-region=cn-north-4 \ --server.name=web-01 --server.flavor_ref=c6.large.2 \ --server.tags.1.key=project --server.tags.1.value=order
然后在成本中心把标签设为拆分维度,就能看到每个项目的实际消耗。踩过的坑:标签只在创建时传入,后期通过控制台批量打标,部分已计费的历史用量不会重新归属,账单仍然对不上。解决办法是在 IaC 模板(Terraform 的 tags 块)中固化标签,禁止手工创建资源,配合配置审计(Config)规则检查无标签资源。
杠杆二:规格选型,用监控数据反推
很多实例 CPU 平均利用率低于 10%。不要凭感觉降配,先用 CES 拉 30 天数据:
hcloud CES ShowMetricData --cli-region=cn-north-4 \ --namespace=SYS.ECS --metric_name=cpu_util \ --dim.0=instance_id, --filter=average \ --period=3600 --from=2024-01-01T00:00:00Z \ --to=2024-01-31T00:00:00Z
若 P95 低于 20%,可以降一到两档规格。c6.xlarge.2(4U8G)降到 c6.large.2(2U4G),按需单价约从 0.62 元/小时降到 0.31 元/小时,单台每月省约 220 元。注意内存型业务不能只看 CPU,要同时看 mem_util。
杠杆三:预留实例与节省计划,覆盖稳定基线
按需实例适合波动负载,稳定基线用预留更划算。以 c6.large.2 为例,1 年期预留相对按需折扣约 40%–50%,3 年期更高。策略是:用近 3 个月的最低负载水位确定预留数量,超出部分仍走按需。踩坑:预留实例绑定的是可用区(AZ)和规格,最初按 AZ1 买了 10 台,后来扩容到 AZ2,AZ2 的实例无法抵扣。解决办法是预留时优先选「区域级」可抵扣的节省计划,或在多 AZ 均衡部署并在每个 AZ 各买一部分。
杠杆四:存储与带宽,最容易被忽视
云硬盘按容量计费,EVS 通用型 SSD 约 0.35 元/GiB/月。一个常见问题是为数据盘预分配了 500 GiB,实际只用 80 GiB。云硬盘支持在线扩容不支持缩容,所以初始容量宁小勿大,不够再加。
带宽方面,按带宽计费和按流量计费要按业务形态选择。固定高流量用按带宽更省;波动流量用按流量,但一定要设带宽上限,否则被刷流量时费用失控。用如下命令检查弹性公网 IP 的计费方式:
hcloud EIP ListPublicips --cli-region=cn-north-4 \ --fields=id,publicip_address,charge_mode,bandwidth_size
另一个坑:对象存储 OBS 的旧版本对象没有配置生命周期规则,版本堆积导致存储费翻倍。配置规则自动转低频或过期删除:
hcloud obs put-lifecycle obs://my-bucket \
--lifecycle='{"Rules":[{"ID":"expire-old","Prefix":"logs/","Status":"Enabled","Expiration":{"Days":30},"NoncurrentVersionExpiration":{"NoncurrentDays":7}}]}'杠杆五:闲置与生命周期管理
开发测试环境的实例夜间和周末应停机。ECS 关机后仍收取系统盘和弹性公网 IP 费用,但计算资源停止计费。用函数工作流(FunctionGraph)定时触发,调用 API 批量关机:
hcloud ECS BatchStopServers --cli-region=cn-north-4 \ --os-stop.servers.1.id= --os-stop.type=SOFT
同时清理无人认领的弹性公网 IP、未挂载的云硬盘、超过 90 天未使用的镜像。这些资源单价低,但数量多,月度汇总常在总账单的 10% 左右。建议每周跑一次资源盘点,把 status=DOWN 的 EIP 和 status=available 的 EVS 列出来核对。
小结
成本控制按收益排序:预留覆盖基线、规格按监控降配、存储带宽按实际用量收敛、闲置资源定期回收。所有动作都建立在准确的分账口径上,标签和 IaC 是前提。每次优化前后都用同一口径对比账单,避免把业务增长误判为优化失败。
- 点赞
- 收藏
- 关注作者
评论(0)