Cludex|AWS 雲端成本黑洞偵測器 Cludex
Cost Holes / Compute

成本黑洞:Idle EC2(閒置 / 過度配置)

Idle EC2 的可怕不是「很貴」,而是它很容易被你用一句話合理化:先留著,免得哪天要用。 但雲端的計費方式很殘酷:你不使用,它也照算;你用不到那麼大,它也照算。 這頁把閒置與過度配置拆成可操作的角度,讓你更快判斷:哪些真的需要常駐、哪些只是歷史遺跡。

Idle EC2 cost hole illustration

1) 症狀:你通常會怎麼察覺到它

很少有人是因為看到 CPU 長期 1% 就立刻處理,更多是因為月結時發現: 「奇怪,我們明明沒有新增功能,怎麼 compute 這一塊一直很固定?」 Idle EC2 的症狀往往是「穩定、持久、很難被注意到」。

  • 成本不暴衝,但每個月都固定一筆,久了加起來很有感。
  • 團隊裡沒人敢關:怕關了出事、怕找不到 owner、怕某個批次 job 半夜會跑。
  • 以為是 EC2 的錢,後來發現 EBS/快照也跟著一起在付。
  • 環境越多(dev/stage/prod/feature env),遺留越容易長出來。

2) 為何會花錢:它不是「閒置才算」,而是「開著就算」

EC2 的基本邏輯很直接:只要 instance 在跑(running),不管你有沒有用到它的算力,都會計費。 所以 Idle EC2 其實有兩個面向: (1)真的沒在用但一直開著(2)有在用但規格太大。 第二種更常見,因為大家都怕效能不夠,於是一路往上加,最後也沒有人回頭看。

你可以用一句話自我檢查: 如果這台機器今天消失,誰會在 10 分鐘內發現? 如果答案是「不確定」或「可能要等月結」,那它多半不是核心服務。

3) 常見來源:閒置/過度配置通常從哪裡來

(A)臨時機器變常駐:救火用的,救完就忘了

這類最典型:某次壓測、某次事故、某次需要快速搬資料,先開一台大的; 事情結束後沒人把它降回來或關掉,久了就變成「反正一直都在」。

(B)多環境與重複部署:dev/stage 的存在感被你低估

你覺得 dev/stage 成本應該很小,但只要規格跟 prod 差不多,或是環境越疊越多, 這些成本加總起來就很可觀。尤其是「feature env」這種短期環境,最容易變成遺跡。

(C)Auto Scaling / Capacity 設太保守:上去之後不回來

有些不是「閒置」,而是「長期過量」。你把最小台數設高、或縮容條件太嚴格, 讓系統永遠維持在你以為的安全線上。安全沒錯,但你可能在買過多的安全。

(D)周邊成本一起長:EBS、Snapshot、EIP、Load Balancer

Idle EC2 常常不是只有 instance 費用。你開著它,通常也帶著磁碟、快照、甚至一些網路資源。 所以你以為你在省「一台小機器」,其實你在省一整套周邊。

4) 工具能提供什麼:掃描輸出會幫你把「猜」變成「清單」

右尺寸(right-sizing)這件事,最大的阻力通常不是技術,而是不確定: 你不知道哪台能動、哪台不能動;不知道 owner 是誰;也不知道它是不是真的閒。 掃描的目的不是替你按下關機鍵,而是先把可疑的候選清楚列出來,讓你更快做決策。

  • 列出疑似閒置或過度配置的 instance(讓你先從 top 幾個看)
  • 提示可能的風險與下一步(例如先觀察、先降規、或先標記 owner)
  • 把「可省」變成可追蹤的工作項(不再只靠記憶)

5) 下一步:怎麼處理最不容易翻車

你不需要一上來就大砍。最穩的順序通常是: 先確認 owner → 先標記用途 → 先做低風險調整(例如排程停機或降規) → 再處理真正多餘的。 這樣你省到的錢,才不會用事故的代價還回去。

務實做法(命中率高):
  • 先從「非核心、可重建、可回滾」的環境下手(dev/stage、短期 env)。
  • 能排程就先排程(下班停、週末停),通常最容易看到效果。
  • 先降規再關:很多服務只需要一半規格就能穩定跑。
  • 把 owner 設清楚:沒有 owner 的資源,永遠會再長回來。
先掃描 Idle EC2 黑洞,抓出最可疑的候選
連接 AWS 後只做讀取掃描,不會刪資源、不會改設定。你會更快知道哪幾台可能閒置、哪幾台可能過度配置,以及下一步建議怎麼做最安全。
免責聲明:此頁為成本結構與排查思路整理,非 AWS 官方定價文件;實際計費依 AWS Billing/Cost Explorer 顯示為準。任何降規/停機前,請先確認服務 SLA 與回滾方案。