|
|
这两年看 AWS 账单时,有一项费用越来越容易被忽略:
; F7 k1 Y' S3 v, [- K ZPublic IPv4。
' B0 B7 |) S6 @" E+ S以前很多人开 EC2 的习惯是,机器创建出来顺手配一个公网 IPv4,测试机、跳板机、小服务都这么用。
3 O1 u) c& ]6 Y单台机器看起来没什么。" ?3 ?( |, V; Y7 @
但账号里机器一多,尤其是长期挂着一些低配实例的时候,公网 IPv4 的费用就会慢慢变得很显眼。
4 \3 n! O' z s# f3 R- ?8 @$ A; V$ k6 t' T比如有些项目本身 EC2 配置就不高:
$ j2 a1 m9 u9 F8 F$ N, a2 台生产机3 台测试机1 台跳板机6 台机器全部长期占着公网 IPv4。
% ?$ b% h0 V$ B4 M, d4 b单独看每个 IP 的费用不算夸张,但一年累计下来,就已经不是完全可以忽略的数字了。6 R5 `4 y1 p! A. n' x
更麻烦的是,有些公网 IP 其实根本没有必要存在。: a2 Z# p2 y; c; I
很多服务器并不需要直接暴露公网 IP比较常见的一种架构是:
" Z, c& h# A3 q1 t. UInternet ↓ALB ↓EC2真正需要对公网提供访问的是 ALB。
( L% s( I \: B( ^% b) I后面的 EC2 完全可以放在 Private Subnet,通过内网和 ALB 通信。
; Z2 g" l; D0 q( H$ b6 ~但不少早期项目为了方便,创建 EC2 时直接:6 D h% w1 u) B" x. y
Auto-assign public IPv4 = Enable久而久之,所有服务器都有公网 IP。. V$ P* \1 e! ]: @/ J& D5 A' q* b
功能上当然能用,但实际上多花了一块没太大必要的费用。/ g! U2 F3 b; ?* {
测试环境最容易留下这类资源生产环境一般有人盯。/ Y U. z( q1 L) S8 R& c/ S7 ^
测试机反而最容易出现:5 N2 a, I8 W8 C* P0 g
机器一个月只用几次但是一直开着公网 IPv4 也一直占着甚至 EC2 后来不用了,Elastic IP 还留在那里。
, O. ]9 f+ q% T/ K/ O所以我现在看到 AWS 小额账单时,除了 EC2、EBS、流量,也会顺手看看:
, e t7 r* Y8 P; yPublic IPv4 到底有多少个?$ Q: j g2 B8 Q1 m- n9 i0 C; {
尤其是账号里有十几台、几十台小机器的时候。
2 P$ H4 k8 @2 e) e, x& d0 h能走内网的尽量走内网并不是说所有公网 IPv4 都应该删。$ S* i+ o& R7 g3 T' X* O
有些跳板机、富强、固定出口或者特殊业务,本身就需要公网地址。
$ g" V8 o. B3 y9 D但如果只是:! r8 @. q1 g$ r2 x2 G: w
应用服务器7 N& g% `8 b2 O6 O5 k" }% D
数据库
o% F2 c: R* N( h3 Q* R; fRedis
3 T( d' G1 Q# n: h9 e9 C内部 API
* X* ^' I! `% B; O) G2 ^ {% E1 AWorker% H* i/ i3 Y8 i" V0 C! g2 m
这些资源其实通常没有必要直接暴露公网。
H% D& X) m, \$ n; x可以考虑:6 J# }- X6 n# \- l3 T+ u
Private Subnet+NAT Gateway / NAT Instance+ALB+SSM Session Manager具体怎么设计还是看业务。
2 a. H6 X8 c7 F* j; o这里也不能为了省几个 IPv4,反而搞出更高的 NAT Gateway 成本。# I- P/ A3 G, w4 J$ E# F* U: j
所以重点不是“看到 IPv4 就删”,而是看看:
$ r! P( m [- t8 c6 J( o+ O9 i这个 IP 到底有没有必要长期存在。7 J" t% J0 J' M- T8 Z9 O( `
小账单最容易被这种固定费用吃掉如果一个账号每个月 AWS 只有几百美元,这种固定的小费用反而特别明显。
4 E3 P( [* a& W9 f0 i: Y比如:
) K2 V3 x2 `' ]' S( a2 `1 m0 Z公网 IPv4EBS 快照闲置磁盘CloudWatch LogsRoute 53旧 Elastic IP单独看都不大。, M* ~) w- x" e7 R4 S! }: ~( ]3 C
但这些东西凑在一起,可能就是账单里很稳定的一部分。
4 o6 _ y& j& B+ D/ T9 B很多 AWS 成本优化其实不是去动核心生产架构,而是把这些长期没人管的小项目一点点清掉。
( \* v5 i2 ?' {' c& r6 U% I9 T用量上来以后,再看商务结算如果 AWS 一个月只有几百美元,最应该先做的还是资源清理。& O9 ^- |; o& L7 U0 q9 n* b# B
但如果已经稳定到:! c0 k0 ~: D% z5 z% M
每月几千美元甚至几万美元这个阶段除了技术侧优化,也可以顺手看看账单结算方式。) d0 C6 X) m) M' E; R
我们这边目前主要做 AWS 账单结算和商务支持,不参与客户开发、部署和日常运维。
- |* h, B2 M4 G客户原来的 AWS 环境、技术团队、账号使用方式都可以保持不变,我们主要根据实际月度使用规模评估相应的结算方案和商务优惠。
& V0 w3 ?- z0 g% z9 w# r+ T( k所以如果现在 AWS 已经有一定规模,可以把两件事分开看:
5 @8 \8 Z4 B. a0 p o技术上,把没必要花的钱清掉。8 \# _, i" B+ B$ r) T% [# O' U# ?
商务上,把本来就必须花的钱看看有没有更合适的结算方式。
) B7 ]5 w' i' O- t7 h 这两块一起处理,效果通常比单纯盯着某一个 EC2 实例省几十块更明显。! I8 z" `7 m8 U- w5 _
标签:AWS、EC2、Public IPv4、云成本、AWS账单
8 W0 N" v8 i4 M# Z; N% g, S7 s
) ~8 g, K1 q! D |
|