在使用伸縮組後,您可以通過設定合適的伸縮策略提高資源使用率,從而降低成本,此時您還可以通過搶佔式執行個體,以更低的價格使用ECS執行個體,從而進一步降低成本,本文為您介紹如何通過搶佔式執行個體降低叢集的成本。
僅ECS類型的伸縮組支援使用搶佔式執行個體。
什麼是搶佔式執行個體?
搶佔式執行個體是一種按需執行個體,效能與常規ECS執行個體無異,價格根據市場供需關係即時變化,相對於隨用隨付執行個體最高能節約90%的執行個體成本,搶佔式執行個體的特性如下:
效能相同:在相同規格情況下,與隨用隨付執行個體除計費模式外無差別。
出價機制:您可以在建立搶佔式執行個體時進行出價。阿里雲會根據當前市場供需情況動態調整市場價格,如果您的出價低於市場價,執行個體會被回收。此外,支援使用自動出價,以按需計費的價格為上限,自動跟隨市場價進行出價。
競價機制:執行個體的價格根據市場供需關係即時變化,會將您的出價與市場價格進行對比,如果您的出價比市場價高且庫存充足,可以建立出搶佔式執行個體。
中斷回收機制:搶佔式執行個體存在中斷回收機制,如果您的出價小於市場價或者庫存不足,會中斷執行個體並回收
保護期:您可以通過設定執行個體使用1小時,保護執行個體在建立後的一小時之內不被回收。
關於搶佔式執行個體的更多資訊,請參見什麼是搶佔式執行個體。
總結:在使用伸縮組時,可以使用單價更低的搶佔式執行個體來降低成本。但需要犧牲一定的穩定性,即無法確保執行個體可以一直被使用或建立。
合理利用搶佔式執行個體降低成本
使用較低單價的搶佔式執行個體能夠有效減少伸縮組內執行個體叢集的成本。然而,由於其固有的不穩定性,您需要仔細評估這種變化對叢集整體穩定性可能帶來的影響。伸縮組的穩定性可以從兩個關鍵方面來考量:
擴容穩定性:指在負載增加時,能夠及時且可靠地啟動新的執行個體以滿足擴容需求。
引入搶佔式執行個體時,可能會因為市場價格波動或庫存不足導致執行個體無法自動被建立,影響擴容穩定性,但您可以通過設定一系列機制提升擴容穩定性。
執行個體穩定性:指保證已啟動的執行個體能夠持續穩定運行,不受非預期中斷的影響。
引入搶佔式執行個體意味著部分執行個體可能因市場價格波動或庫存不足而被自動回收,這要求業務具備快速恢複的能力,並且能夠在執行個體被中斷後無縫切換到其他可用資源上。
在評估了引入搶佔式執行個體可能帶來的成本節約及其對叢集穩定性的影響後,接下來的關鍵是找到一個平衡點,既能有效控製成本,又能確保服務的可靠性和效能。
設計平衡成本和穩定性的方案
您可以按照以下思路設計平衡成本和叢集穩定性的方案。
設定合理的出價策略:通過設定略高於市場價格但低於按需價格的出價,增加擷取搶佔式執行個體的機會,同時減少因頻繁中斷而帶來的管理負擔。
混合使用多種執行個體類型:在伸縮組引入搶佔式執行個體時,需要根據您業務的實際情況,調整搶佔式執行個體和按需執行個體的配比,從而平衡成本和叢集穩定性。
例如:您可以將按量的比例設定為可以保證業務穩定啟動並執行最低容量,對於彈性的部分使用搶佔式執行個體降低成本。
不同配比的伸縮組叢集穩定性與成本的變化如圖所示,隨著搶佔式在叢集中的比例的升高,成本會降低,但穩定性也會降低。
進一步提升叢集穩定性
除了設計合理的平衡成本和穩定性方案,您還可以通過以下幾個配置進一步提升伸縮組內叢集的穩定性。
| |
| |
| |
| |
|
樣本:已有伸縮組使用搶佔式執行個體降低成本
如果您已有伸縮組,您可以參考以下步驟在伸縮組中引入搶佔式執行個體。
步驟一:為伸縮組設定多可用性區域交換器
設定多可用性區域交換器可以組合多個可用性區域的庫存,增加伸縮組可用的搶佔式執行個體庫存。
| |
| |
|
步驟二:為伸縮組設定成本最佳化策略
| |
| |
|
步驟三:修改伸縮配置
本文以修改伸縮配置為例,您也可以根據實際情況,建立新的伸縮配置,具體操作請參見建立ECS伸縮組。
| |
| |
| |
| |
| 以自動出價為例 |
|
(驗證)步驟四:觸發擴容
在配置完成後,您可以觸發一次擴容操作,檢驗伸縮組是否可以按照預期建立搶佔式執行個體。本文以通過修改期望執行個體數觸發擴容為例。
相關參數
按量執行個體所佔比例:70%。
組內最小按量執行個體數:2台
組內期望執行個體數:從0修改為12。
預期結果
隨用隨付執行個體數9台,搶佔式執行個體數3台。
結果說明
組內最小按量執行個體數不計入按量執行個體所佔比例,因此組內總按量執行個體數為
您可以在ECS控制台查看執行個體的付費模式。