<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Downsizing on Tarragon</title><link>https://tarrragon.github.io/blog/tags/downsizing/</link><description>Recent content in Downsizing on Tarragon</description><generator>Hugo -- gohugo.io</generator><language>zh-TW</language><copyright>Tarragon (CC BY 4.0)</copyright><lastBuildDate>Fri, 03 Jul 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://tarrragon.github.io/blog/tags/downsizing/index.xml" rel="self" type="application/rss+xml"/><item><title>Right-sizing</title><link>https://tarrragon.github.io/blog/devops/08-cost-management/right-sizing/</link><pubDate>Fri, 03 Jul 2026 00:00:00 +0000</pubDate><guid>https://tarrragon.github.io/blog/devops/08-cost-management/right-sizing/</guid><description>&lt;p>過度配置是雲端最大的浪費來源，right-sizing 就是把配置規格調回貼近實際用量。一台長期只用 30% CPU 的機器，那 70% 是純浪費——資源開著、每小時計費，卻沒在做事。right-sizing 是持續對照實際用量調整規格的紀律、不是一次性的動作，因為用量會變、機型會更新、當初配的規格很快就不再是最合適的。&lt;/p>
&lt;h2 id="找出過度配置的資源">找出過度配置的資源&lt;/h2>
&lt;p>right-sizing 的起點是量測實際用量，跟配置規格比對。過度配置有幾種常見形態。最直接的是規格訂太大——CPU、記憶體長期只用一小部分，配了 8 核卻總在 2 核以內晃。第二種是機型世代過時——還在用舊世代的機型，沒升級到單位效能更好的新代，同樣的錢買到更少的效能。第三種是 reserved 買太多用不滿——當初承諾的量高於實際需求，多出來的承諾照付卻沒用到。&lt;/p>
&lt;p>這三種浪費都不會自己報警，要靠定期 review 才抓得到。量測看的是利用率指標（CPU、記憶體、網路、IOPS 的實際使用率），長期偏低就是 downsizing 的候選。這裡要看的是「持續的」利用率，不是某個瞬間——一台平時 20%、但每天有一段跑到 90% 的機器，不能只看平均就砍。&lt;/p>
&lt;h2 id="downsizing-不能砍過飽和點">Downsizing 不能砍過飽和點&lt;/h2>
&lt;p>Downsizing 有一條不能越過的線：不能把規格砍到系統的膝點以下。膝點（knee）是利用率升高時、延遲從平穩轉為快速劣化的那個轉折點——過了它，多一點負載就換來不成比例的延遲惡化。一台利用率長期 30% 的機器看起來浪費，但如果把它砍到平時就跑在 70%，就沒有 headroom 應付突發了——突發一來直接把利用率推過膝點、延遲飆升。飽和曲線與膝點的位置在 &lt;a href="https://tarrragon.github.io/blog/devops/05-capacity-planning/scaling-inflection-point/" data-link-title="規模拐點判斷" data-link-desc="判斷什麼訊號代表該擴容、什麼代表可縮容、以及該往垂直還水平擴時，用飽和曲線的三段區間、膝點的早期訊號與 ramp-up 方法回來讀">模組五 規模拐點判斷&lt;/a> 講過，right-sizing 要在那條曲線上留足 headroom：砍掉純浪費的部分、但保住應付波動與 forecast 誤差的緩衝。&lt;/p>
&lt;p>所以 downsizing 是有邊界的優化，不是「利用率越高越省」。目標是把利用率調到健康區間（膝點以下的 50% 到 70%），而不是頂到極限。砍過頭省下的機器錢，會用一次突發時的服務降級賠回來，而且賠得更多。downsizing 之後要觀察一段時間，確認新規格在真實流量（含波動）下站得住，再確定這個尺寸。&lt;/p>
&lt;h2 id="機型世代與-reserved-回收">機型世代與 reserved 回收&lt;/h2>
&lt;p>機型世代升級是低風險的 right-sizing。雲端持續推出新世代的機型，同樣的規格、新世代常常更便宜或效能更好——換過去幾乎沒有壞處，只需要一次規格變更。定期檢查有沒有停在舊世代，是最容易拿到的成本節省之一。&lt;/p>
&lt;p>reserved 過剩的回收比較麻煩。買了用不滿的 reserved，錢已經承諾出去了，處理的方式是看能不能把承諾轉移到還在用 on-demand 的其他工作負載上，或在有二級市場的情況下轉售。這也是為什麼 reserved 的承諾要保守——承諾的是「確定長期用得到」的基準量，把不確定的部分留給 on-demand。買 reserved 前先把 right-sizing 做完，才不會用折扣鎖住一個過大的規格：一台過度配置的機器買了 reserved，等於用三年的承諾把浪費也鎖了三年。&lt;/p>
&lt;h2 id="下一步路由">下一步路由&lt;/h2>
&lt;ul>
&lt;li>砍規格不能越過的膝點在哪、headroom 怎麼算 → &lt;a href="https://tarrragon.github.io/blog/devops/05-capacity-planning/scaling-inflection-point/" data-link-title="規模拐點判斷" data-link-desc="判斷什麼訊號代表該擴容、什麼代表可縮容、以及該往垂直還水平擴時，用飽和曲線的三段區間、膝點的早期訊號與 ramp-up 方法回來讀">模組五 規模拐點判斷&lt;/a>&lt;/li>
&lt;li>reserved 的承諾模式、怎麼配工作負載 → &lt;a href="https://tarrragon.github.io/blog/devops/08-cost-management/billing-models/" data-link-title="計費模式理解" data-link-desc="看懂雲端帳單怎麼生成時，先認清收費的維度、on-demand/reserved/savings plan/spot 的承諾差異、以及 egress 這類最常被忽略的隱藏成本">計費模式理解&lt;/a>&lt;/li>
&lt;li>定期 review 靠什麼監控、異常怎麼抓 → &lt;a href="https://tarrragon.github.io/blog/devops/08-cost-management/cost-monitoring/" data-link-title="成本監控與告警" data-link-desc="要讓雲端帳單不失控時，靠歸因把每筆花費追到擁有者、用異常告警抓突增、以及選 showback 或 chargeback 讓成本有人負責">成本監控與告警&lt;/a>&lt;/li>
&lt;/ul></description><content:encoded><![CDATA[<p>過度配置是雲端最大的浪費來源，right-sizing 就是把配置規格調回貼近實際用量。一台長期只用 30% CPU 的機器，那 70% 是純浪費——資源開著、每小時計費，卻沒在做事。right-sizing 是持續對照實際用量調整規格的紀律、不是一次性的動作，因為用量會變、機型會更新、當初配的規格很快就不再是最合適的。</p>
<h2 id="找出過度配置的資源">找出過度配置的資源</h2>
<p>right-sizing 的起點是量測實際用量，跟配置規格比對。過度配置有幾種常見形態。最直接的是規格訂太大——CPU、記憶體長期只用一小部分，配了 8 核卻總在 2 核以內晃。第二種是機型世代過時——還在用舊世代的機型，沒升級到單位效能更好的新代，同樣的錢買到更少的效能。第三種是 reserved 買太多用不滿——當初承諾的量高於實際需求，多出來的承諾照付卻沒用到。</p>
<p>這三種浪費都不會自己報警，要靠定期 review 才抓得到。量測看的是利用率指標（CPU、記憶體、網路、IOPS 的實際使用率），長期偏低就是 downsizing 的候選。這裡要看的是「持續的」利用率，不是某個瞬間——一台平時 20%、但每天有一段跑到 90% 的機器，不能只看平均就砍。</p>
<h2 id="downsizing-不能砍過飽和點">Downsizing 不能砍過飽和點</h2>
<p>Downsizing 有一條不能越過的線：不能把規格砍到系統的膝點以下。膝點（knee）是利用率升高時、延遲從平穩轉為快速劣化的那個轉折點——過了它，多一點負載就換來不成比例的延遲惡化。一台利用率長期 30% 的機器看起來浪費，但如果把它砍到平時就跑在 70%，就沒有 headroom 應付突發了——突發一來直接把利用率推過膝點、延遲飆升。飽和曲線與膝點的位置在 <a href="/blog/devops/05-capacity-planning/scaling-inflection-point/" data-link-title="規模拐點判斷" data-link-desc="判斷什麼訊號代表該擴容、什麼代表可縮容、以及該往垂直還水平擴時，用飽和曲線的三段區間、膝點的早期訊號與 ramp-up 方法回來讀">模組五 規模拐點判斷</a> 講過，right-sizing 要在那條曲線上留足 headroom：砍掉純浪費的部分、但保住應付波動與 forecast 誤差的緩衝。</p>
<p>所以 downsizing 是有邊界的優化，不是「利用率越高越省」。目標是把利用率調到健康區間（膝點以下的 50% 到 70%），而不是頂到極限。砍過頭省下的機器錢，會用一次突發時的服務降級賠回來，而且賠得更多。downsizing 之後要觀察一段時間，確認新規格在真實流量（含波動）下站得住，再確定這個尺寸。</p>
<h2 id="機型世代與-reserved-回收">機型世代與 reserved 回收</h2>
<p>機型世代升級是低風險的 right-sizing。雲端持續推出新世代的機型，同樣的規格、新世代常常更便宜或效能更好——換過去幾乎沒有壞處，只需要一次規格變更。定期檢查有沒有停在舊世代，是最容易拿到的成本節省之一。</p>
<p>reserved 過剩的回收比較麻煩。買了用不滿的 reserved，錢已經承諾出去了，處理的方式是看能不能把承諾轉移到還在用 on-demand 的其他工作負載上，或在有二級市場的情況下轉售。這也是為什麼 reserved 的承諾要保守——承諾的是「確定長期用得到」的基準量，把不確定的部分留給 on-demand。買 reserved 前先把 right-sizing 做完，才不會用折扣鎖住一個過大的規格：一台過度配置的機器買了 reserved，等於用三年的承諾把浪費也鎖了三年。</p>
<h2 id="下一步路由">下一步路由</h2>
<ul>
<li>砍規格不能越過的膝點在哪、headroom 怎麼算 → <a href="/blog/devops/05-capacity-planning/scaling-inflection-point/" data-link-title="規模拐點判斷" data-link-desc="判斷什麼訊號代表該擴容、什麼代表可縮容、以及該往垂直還水平擴時，用飽和曲線的三段區間、膝點的早期訊號與 ramp-up 方法回來讀">模組五 規模拐點判斷</a></li>
<li>reserved 的承諾模式、怎麼配工作負載 → <a href="/blog/devops/08-cost-management/billing-models/" data-link-title="計費模式理解" data-link-desc="看懂雲端帳單怎麼生成時，先認清收費的維度、on-demand/reserved/savings plan/spot 的承諾差異、以及 egress 這類最常被忽略的隱藏成本">計費模式理解</a></li>
<li>定期 review 靠什麼監控、異常怎麼抓 → <a href="/blog/devops/08-cost-management/cost-monitoring/" data-link-title="成本監控與告警" data-link-desc="要讓雲端帳單不失控時，靠歸因把每筆花費追到擁有者、用異常告警抓突增、以及選 showback 或 chargeback 讓成本有人負責">成本監控與告警</a></li>
</ul>
]]></content:encoded></item></channel></rss>