1) 症狀:你通常會怎麼「感覺到」它
大多數人不是因為看監控發現 Data Transfer,而是因為帳單提醒或月結時被打醒。 典型的症狀很像:
- 「我沒多開什麼資源,月費卻多了一截。」
- 「服務流量變多很正常,但成本上升比例怪怪的。」
- 「某次改網路/改部署之後,開始固定多一筆看不懂的費用。」
- 「同一個 Region 也在收錢?我以為只有跨區才會算。」
2) 為何會花錢:核心機制(不用背費率,但要懂邊界)
Data Transfer 的核心不是距離,而是邊界。 你跨過某個邊界(例如 AZ、Region、到公網、或走某些網路路徑),AWS 就把它當成有成本的搬運。 你越把系統拆得細、越做 HA/備援/同步,資料搬運就越容易「在背景變多」。
3) 常見來源:大多數帳單的 Data Transfer 都在這幾類裡
(A)跨 AZ:HA 做了,但路徑沒整理
多 AZ 很合理,但如果你的 App ↔ DB/Cache 的存取沒有就近,或某些內部服務在不同 AZ 之間頻繁交換資料, 跨 AZ 就會變成一條穩定滴水的成本管線。它不一定爆炸式,但很會「每個月都在」。
(B)NAT 出網:private subnet 的日常行為被你用公網付費
NAT 是最常見的黑洞之一。你以為只是讓 private subnet 上網,但任何拉更新、打外部 API、 甚至某些 SDK 預設路徑,都可能把流量送去 NAT。當用量起來,NAT 會很有存在感。
(C)跨 Region:複寫/同步/備援
跨區備援是買保險,但保險是要付錢的。很多團隊踩雷不是「做跨區」,而是「做得太勤、做得太全」: 全量同步、頻率太高、或把不需要的資料也一起搬走。
(D)內部搬運:log/metrics/pipeline
有些帳單的大頭不是業務流量,而是內部搬運。系統拆細後,log、metrics、事件、資料管線會越來越多, 如果它們跨了 AZ/跨了網段/跨了區,你就會在帳單上看到那份「搬運稅」。
4) 工具能提供什麼:掃描輸出會幫你做的「第一輪縮小」
Data Transfer 最耗時間的不是你不會查,而是你不知道從哪一條路徑開始查。 掃描的輸出重點是把「可疑來源」變成一份你可以交給工程師處理的清單,通常會包含:
- 可疑的成本黑洞類型(例如 NAT / 跨 AZ / 跨區同步 等)
- 可能牽涉的 Region / 相關資源群組(讓你知道要找誰、找哪裡)
- 下一步建議(先查哪條路徑、先看哪個方向)
5) CTA:先掃描,把「猜」變成「有方向」
如果你現在只知道帳單變貴,但不知道是哪段在搬資料,最有效率的做法是先做一次掃描, 把 top 幾個可疑來源抓出來。你不需要一開始就把費率搞懂,你需要的是「先找到那條漏水的管子」。