天天看點

技術省錢野路子!輕松節省90%雲端開銷

很多小夥伴抱怨ECS雲伺服器價格過于昂貴,上雲成本過高,但是否了解過搶占式執行個體這種付費方式呢?提供了低至1折的跳樓價,讓您通過技術手段,合法合理地優化成本。

技術省錢野路子!輕松節省90%雲端開銷
搶占式執行個體提供了兩種出價模式,SpotAsPriceGo(即自動出價模式),SpotWithPriceLimit(設定價格上限模式),讓很多使用者有了選擇困難症。本文較長的描述幾種出價方式及應用場景,為您提供最佳實踐指南,希望能幫助您解決選擇困難問題。

出價模式詳解

  模式1:SpotWithPriceLimit

描述:建立執行個體時,設定一個心理預期的最大價格,如果目前市場價格波動,超過您的最大預期價格,則執行個體會被标記中斷。

适用場景:對執行個體的預算以及價格要求極其嚴格,絲毫不能容忍超過預算。

優點:預算控制交給ECS,能夠嚴格保證執行個體計費不會超過您設定的價格上限。

缺點:在價格波動較為劇烈的情況下,中斷機率會急劇增加,導緻不能穩定持有執行個體,可能會極大地影響線上容量。

技術省錢野路子!輕松節省90%雲端開銷

代碼示例:

RunInstancesRequest request = new RunInstancesRequest();request.setVSwitchId("<your-vsw-id>");request.setImageId("<your-image-id>");request.setSecurityGroupId("<your-security-group-id>");request.setSystemDiskCategory("<your-disk-category>"); // 系統盤類型, 例如 "cloud_ssd"request.setSystemDiskSize("<your-disk-size>"); // 系統盤大小, 例如 "40"request.setInstanceType(instanceType);request.setAmount(1);request.setAcceptFormat(FormatType.JSON);request.setInstanceChargeType("PostPaid");request.setSpotStrategy("SpotWithPriceLimit");
           

完整代碼樣例參見:建立與管理搶占式執行個體

  模式2:SpotAsPriceGo

描述:建立執行個體時,不設定最大價格限制。

适用場景:預算要求不嚴格,希望能比較穩定地持有執行個體。由于搶占式執行個體的價格上限是按量價格,是以成本能省多少就是多少。

優點:在價格波動較為劇烈的情況下,仍然能保證執行個體不被中斷,極大降低中斷機率。

缺點:成本控制較難,價格上漲,超出預期上限之後,無法感覺該資訊,導緻成本超出預算。

技術省錢野路子!輕松節省90%雲端開銷
RunInstancesRequest request = new RunInstancesRequest();request.setVSwitchId("<your-vsw-id>");request.setImageId("<your-image-id>");request.setSecurityGroupId("<your-security-group-id>");request.setSystemDiskCategory("<your-disk-category>"); // 系統盤類型, 例如 "cloud_ssd"request.setSystemDiskSize("<your-disk-size>"); // 系統盤大小, 例如 "40"request.setInstanceType(instanceType);request.setAmount(1);request.setAcceptFormat(FormatType.JSON);request.setInstanceChargeType("PostPaid");request.setSpotStrategy("SpotAsPriceGo");
           

  模式3:SpotAsPriceGo+OOSPriceMonitor組合

描述:建立執行個體時,使用SpotAsPriceGo模式,即不設定最大價格限制;同時配置OOS價格上限監控,當執行個體價格超過您的設定門檻值時,OOS會推送消息給您,友善您進行後續操作。

适用場景:對成本有一定要求,同時對執行個體中斷的容忍度較差。

優點:既具備SpotAsPriceGo較低中斷率的穩定性,又具備了SpotWithPriceLimit的價格可預期性。

缺點:需要單獨配置OOS,有一定接入成本。

技術省錢野路子!輕松節省90%雲端開銷

最佳實踐

  推薦使用SpotAsPriceGo出價模式

在價格波動較為劇烈的情況下,選擇SpotAsPriceGo模式将極大降低您執行個體的中斷風險。

而在選擇SpotWithPriceLimit模式前,您需要仔細考慮:

1、您的場景是否真正需要SpotWithPriceLimit模式?據現有線上資料統計,90%以上執行個體都是PriceAsGo模式。如果您對成本要求極其嚴苛,可以參照最佳實踐第二條:使用PriceAsGo+PriceMonitor組合方案替代PriceWithLimit模式來替代,将執行個體中斷的權利掌握在自己手裡。

2、您是否做好了萬全的中斷準備?從我們實際資料來看,每天中斷執行個體裡,95%以上都是由于SpotWithPriceLimit,即價格波動超過設定上限導緻。

此外,您是否注意到了,搶占式執行個體售賣頁,我們已經幫您預設選擇了"使用自動出價模式"了呢?

技術省錢野路子!輕松節省90%雲端開銷

  使用SpotAsPriceGo+PriceMonitor組合方案替代SpotWithPriceLimit模式

1、如果對成本有一定訴求,您可以使用"PriceAsGo+OOS配置的PriceMonitor"組合方式,這樣能極大降低執行個體被中斷機率,同時又能讓您在第一時間獲知價格的變化情況,友善您進行後續操作。

2、當然如果您對成本無特殊訴求,又能做到良好的中斷處理,則可以放心SpotAsPriceGo模式,以達到一定成本優化的目标。

事不宜遲,參照建立與管理搶占式執行個體代碼樣例,開始您的成本優化之旅吧。

關注百曉生,笑談雲計算

技術省錢野路子!輕松節省90%雲端開銷