Amazon EC2 Spot 功能

使用 Amazon EC2 Spot 執行個體,您可以請求相同的 Amazon EC2 執行個體,以降低運算費用並提升應用程式輸送量。選擇使用 Spot 執行個體的方法之後,就能透過 Spot 管理主控台、CLI、API,或使用與啟動隨需執行個體一樣的界面請求 Spot 執行個體。只要有足夠的容量就會滿足您的請求。

您也可以選擇啟動範本或是預先設定或自訂 Amazon Machine Image (AMI)、設定 Spot 執行個體的安全和網路存取、從多個執行個體類型和位置中選擇、使用靜態 IP 端點,以及將持久性區塊儲存連接到您的 Spot 執行個體。Spot 價格取決於 EC2 備用容量的長期供需趨勢。您支付的 Spot 價格是執行中執行個體每個執行個體小時一開始生效的價格,然後以最接近的秒數計費。

Amazon EC2 所提供的功能和工具可以協助您優化節省開支且使用 Spot 執行個體的應用程式效能。

Amazon EC2 Spot 執行個體

產品關鍵功能

Amazon EC2 Auto Scaling 整合

您可以使用 Amazon EC2 Auto Scaling 群組來啟動和管理 Spot 執行個體,維持應用程式的可用性,並且根據您定義的條件和最高出價,自動擴展或縮減 Amazon EC2 Spot 執行個體的容量。若要進一步了解如何使用 Auto Scaling 搭配 Spot 執行個體,請瀏覽 Auto Scaling 開發人員指南。若要擴展 EC2 外的其他服務,您可以使用 AWS Auto Scaling

使用分配策略優化成本或降低中斷的可能性

使用 Amazon EC2 叢集可透過單一 API 呼叫佈建 EC2 執行個體類型、可用區域和購買模型間的運算容量,以協助優化擴展、效能和成本。您可以指定要透過 EC2 叢集啟動的隨需和 Spot 容量。此外還能定義您偏好的執行個體類型,以及是否根據核心、執行個體或記憶體擴展容量。閱讀 AWS 部落格來了解更多內容。

您可以透過 Amazon EC2 Auto Scaling 存取 EC2 叢集功能,以在單一 Auto Scaling 群組中的 EC2 執行個體類型、可用區域和購買選項之間佈建和自動擴展運算容量。您也可以在 Spot 叢集使用相同的功能。

EC2 Auto Scaling、EC2 叢集和 Spot 叢集中的分配策略,能判斷如何從 Spot 執行個體集區履行叢集中的 Spot 執行個體。容量優化分配策略透過分析容量指標,嘗試從可用性最高的 Spot 執行個體集區佈建 Spot 執行個體。這種策略很適合中斷成本較高的工作負載,包括大數據和分析、影像和媒體轉譯、機器學習和高效能運算。最低價格分配策略會根據 ‘N’ 個最低價格集區的多樣化來啟動 Spot 執行個體。

隨需 Run Instances 功能整合

Spot 執行個體可透過包含一個額外參數的 RunInstances API 啟動。透過 RunInstances 啟動的 Spot 執行個體與任何 EC2 執行個體都相同;它們以市場導向的低價提供 Amazon EC2 的可靠性、安全性、效能、控制及彈性。請求容量時,只需將市場選項指定為 Spot 即可。進一步了解透過 RunInstances API 啟動 Spot 執行個體。

停止/休眠和恢復工作負載

Spot 可在中斷時休眠或停止 (關機) 執行個體,而不是在容量不再可用時終止執行個體。當容量變得可用時,執行個體將可從之前的狀態繼續執行,讓執行個體更快地恢復其工作。進一步了解停止/開始和休眠。

追蹤 Spot 執行個體執行和終止的時機

使用 Spot 執行個體時,絕對不會支付超過您所指定的最高價格。如果 Spot 價格超過您願意為特定執行個體支付的最高價或容量不再可用時,將會自動終止該執行個體 (或停用/休眠,如果您在持久性請求選擇此行為)。Spot 提供三種功能,協助您更有效的追蹤和控制 Spot 執行個體執行和終止 (或停用/休眠) 的時機。

終止通知
如果您需要在中斷前儲存狀態、上傳最終日誌檔或從 Elastic Load Balancer 移除 Spot 執行個體,可以使用終止通知在中斷前兩分鐘發出通知。進一步了解管理中斷。

持久性請求
您可選擇將請求設定為保持開放狀態,如此一來,當執行個體中斷時,新的執行個體就會在該處啟動。您也可以在中斷時停用 Amazon EBS 支援的執行個體,然後在 Spot 容量符合您的價格時重新啟動。進一步了解持久性和一次性請求。

區塊期間
如果您需要持續執行工作負載 1 到 6 小時,也可以在請求 Spot 執行個體時指定期間需求。進一步了解 Spot 執行個體的區塊期間。 

Amazon EMR 整合

Amazon Web Services 客戶能夠在 Spot 執行個體上執行 Amazon Elastic MapReduce (EMR) 叢集,並且大幅降低在受管 Hadoop 叢集中處理大量資料的費用。客戶可以透過使用多個執行個體群組功能,輕鬆混合 Spot 執行個體與隨需執行個體和/或預留執行個體,以執行他們的 EMR 叢集。 若要進一步了解如何設定 EMR 叢集搭配 Spot 執行個體,請瀏覽 Amazon EC2 User Guide

Amazon CloudFormation 整合

AWS CloudFormation 讓組織和部署 AWS 資源集 (包含 EC2 Spot 執行個體) 變得更輕鬆,並讓您能夠描述任何相依項或在執行時間傳入的特殊參數。如需可使用 Spot 執行個體之使用 CloudFormation 的高效能運算架構範例,請參閱 cfncluster 示範。若要進一步了解如何設定 CloudFormation 搭配 Spot 執行個體,請瀏覽 Amazon EC2 User Guide

Amazon ECS 整合

Amazon Elastic Container Service (ECS) 客戶能夠在 Spot 執行個體上執行 Amazon ECS 叢集,以降低在 Amazon ECS 上執行容器化應用程式的操作成本。Amazon ECS 主控台也與 Amazon EC2 Spot 執行個體緊密整合,客戶可使用建立叢集精靈輕鬆地使用 Spot 執行個體設定 ECS 叢集。要進一步了解 ECS,請瀏覽 Amazon ECS 產品頁面

Amazon Batch 整合

AWS Batch 可在 AWS 規劃、排程及執行客戶批次運算工作負載。AWS Batch 還可代表您動態請求 Spot 執行個體,進一步降低執行批次任務的成本。要進一步了解 Batch,請瀏覽 AWS Batch 產品頁面

ThinkBox Deadline 整合

Thinkbox Deadline 可讓您輕鬆透過 AWS 入口網站使用 Spot 叢集在 EC2 上啟動轉譯伺服器陣列。您可選擇想要的第三方產品,如 Autodesk Maya、Autodesk 3dsMax,並啟動 EC2 Spot 叢集。Deadline 10 隨附一個檔案系統,可自動將您的資產檔案同步到 Amazon S3。要進一步了解 Deadline,請瀏覽 Thinkbox Deadline

啟動時連接加密的 EBS 磁碟區

您可以在啟動時指定未加密的快照,然後在啟動執行個體時請求 Spot 執行個體建立加密的 EBS 磁碟區。請於提交 Spot 請求時,在區塊型設備映射指定 "Encrypted: true" 做為加密行為。若您已經使用加密 EBS 磁碟區,請指定沒有「加密」標記的快照 ID,Spot 將持續在您現有加密 EBS 快照建立加密磁碟區。

控制 Spot 執行個體預算

請求 Spot 執行個體時,Spot 預設會將您願意為每個 Spot 執行個體小時支付的最高價設定為隨需價格。您也可以在請求中指定您願意為每個執行個體小時支付的最高價,以便為 Spot 執行個體預算實施額外的控制。在執行個體執行的這段時間,您將持續支付生效的 Spot 價格。如果 Spot 價格超出您的最高價,則會自動終止、停止或休眠您的執行個體。進一步了解 Spot 的運作方式。

容器重新平衡

您可以使用 EC2 Auto Scaling 的容量重新平衡功能,主動管理 Spot 執行個體生命週期。容量重新平衡善用全新的 EC2 執行個體重新平衡建議,這是一種在 Spot 執行個體處於較高中斷風險時傳送的訊號。該訊號能夠比兩分鐘的 Spot 執行個體中斷通知更早到達,讓您有機會主動將工作負載重新平衡到沒有較高中斷風險的新 Spot 執行個體或現有 Spot 執行個體。一旦偵測到重新平衡建議訊號,EC2 Auto Scaling 中的容量重新平衡功能就會自動嘗試,從而在用新 Spot 執行個體取代 Spot 執行個體方面搶占先機。

閱讀更多有關容器重新平衡的資訊。

第三方整合

您可以使用適用於 Jenkins 和 Atlassian Bamboo 的 Spot 機群外掛程式,在 Spot 執行個體上執行持續整合建構任務。

使用案例

Spot 執行個體非常適合各種工作負載。您的應用程式越分散、越具可擴展性和容錯能力,就越能輕鬆節省開支和增加輸送量。

大數據和分析
使用 Spot 執行個體來快速追蹤大數據、機器學習以及 NLP 工作負載。Spot 執行個體可為執行時間要求苛刻的超大規模工作負載,提供加速、擴展和深度的成本節省,以實現快速數據分析。將 Spot 執行個體與 Amazon EMR、Hadoop 或 Spark 一起使用來處理大量資料。

高效能運算
執行大量平行任務來加速大數據運算工作負載,例如基因體序列、CFD 與演算法交易。Spot 執行個體與 AWS Batch、AWS CloudFormation 與其他 AWS 服務整合,為多個大數據運算工作負載提供完整解決方案。
 

CI/CD 與測試
使用 EC2 Spot 附加元件根據要完成的任務數量來設定 Jenkins 以自動擴展 Spot 執行個體叢集。運用較舊一代的 CI 執行個體來提升成本的節省,因為這些程序不需要許多能源來進行測試。負載、整合、早期開發測試和安全測試都能受益於 Spot 執行個體帶來的彈性和低價優勢。

 

容器化工作負載
使用 Spot 執行個體來以少量成本執行大規模容器叢集容器是無狀態的、可容錯的、非常適合 Spot 執行個體。使用 Amazon ECS 或 Kubernetes 建立 Spot 叢集來執行任何規模的容器化工作負載。
 

Web 服務
使用 Spot 執行個體為 Web 服務與應用程式節省高達 90% 的費用。在負載平衡器後方部署 EC2 來擴展數以千計的執行個體,使用 Spot 執行個體來服務數十億個服務請求。

 

影像和媒體轉譯
媒體與娛樂工作程式可以跟專案與即時性需求使用 Spot 執行個體、擴展現場部署或雲端基礎設施的近無限容量來以具成本效率的方法管理轉譯工作負載。BYOL 或運用根據用量而定的授權來透過 Thinkbox Marketplace 執行常見轉譯與內容建立軟體,例如 Autodesk Maya、Autodesk Arnold、Vray, Redshift、以及其他軟體。

了解如何開始使用

有多種免費開始使用 Amazon EC2 的方法。

進一步了解 
註冊免費帳戶

立即存取 AWS 免費方案。 

註冊 
開始在主控台進行建置

開始在 AWS 主控台使用 Amazon EC2 進行建置。

登入