本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立 Spot 執行個體請求
若要使用 Spot 執行個體,您可以建立 Spot 執行個體請求,其中包含所需的執行個體數量、執行個體類型,以及 Availability Zone (可用區域)。如果容量可用,Amazon EC2 會即刻履行您的請求。否則,Amazon EC2 會等到您的請求可以完成,或是您取消請求。
您可以在 Amazon EC2 主控台或 run-instances
-
您已經在使用啟動執行個體精靈或 run-instances
命令來啟動隨需執行個體,而且您只想透過變更單一參數來變更為啟動 Spot 執行個體。 -
您不需要具有不同執行個體類型的多個執行個體。
通常不建議在啟動 Spot 執行個體時使用此方法,因為您無法指定多個執行個體類型,並且無法在同一請求中同時啟動 Spot 執行個體和隨需執行個體。如需有關啟動 Spot 執行個體的慣用方法,其中包括啟動含有使用多個執行個體類型的 Spot 執行個體和隨需執行個體的機群,請參閱使用哪種 Spot 請求方法最好?
如果您一次請求多個 Spot 執行個體,Amazon EC2 會建立不同的 Spot 執行個體請求,如此您就可以單獨追蹤每個請求的狀態。如需追蹤 Spot 執行個體請求的詳細資訊,請參閱 取得 Spot 執行個體請求狀態。
- Console
-
使用啟動執行個體精靈建立 Spot 執行個體請求
步驟 1–9 與您用於啟動隨需執行個體的步驟相同。在步驟 10 中,您可以設定 Spot 執行個體請求。
在 https://console.aws.amazon.com/ec2/
開啟 Amazon EC2 主控台。 -
在螢幕上方的導覽列上,選取「區域」。
-
從 Amazon EC2 主控台儀表板選擇 Launch Instance (啟動執行個體)。
-
(選用) 在 Name and tags (名稱和標籤) 下,您可以命名執行個體,並標記 Spot 執行個體請求、執行個體、磁碟區和彈性圖形。如需標籤的相關資訊,請參閱標記您的 Amazon EC2 資源。
-
對於 Name (名稱),輸入執行個體的描述性名稱。
執行個體名稱是一個標籤,其中鍵是 Name (名稱),而值是您指定的名稱。如果您未指定名稱,則可以透過其 ID 來標識執行個體,該 ID 將在您啟動執行個體時自動產生。
-
若要標記 Spot 執行個體請求、執行個體、磁碟區和彈性圖形,請選擇 Add additional tags (新增其他標籤)。選取 Add tag (新增標籤),然後輸入鍵和值,然後選取要標記的資源類型。為每個要新增的其他標籤重新選擇 Add tag (新增標籤)。
-
-
在 Application and OS Images (Amazon Machine Image) (應用程式和作業系統映像 (Amazon Machine Image)) 下,選取執行個體的作業系統,然後選取 AMI。如需詳細資訊,請參閱應用程式和作業系統映像 (Amazon Machine Image)。
-
在 Instance type (執行個體類型) 下,選取符合您執行個體硬體組態和大小要求的執行個體類型。如需詳細資訊,請參閱執行個體類型。
-
在 Key pair (login) (金鑰對 (登入)),選擇現有的金鑰對,或選擇 Create new key pair (建立新的金鑰對) 以建立新的金鑰對。如需詳細資訊,請參閱Amazon EC2 金鑰對和 Amazon EC2 執行個體。
重要
如果您選擇 Proceed without key pair (Not recommended) (繼續而不使用金鑰對 (不建議)) 選項,您將無法連線到執行個體,除非您選擇已設定為允許使用者透過其他方式登入的 AMI。
-
在 Network settings (網路設定) 下,使用預設設定,或視需要選擇 Edit (編輯) 以便設定網路設定。
安全群組構成網路設定的一部分,並定義執行個體的防火牆規則。這些規則會指定應交付至您執行個體的傳入網路流量。
如需詳細資訊,請參閱Network settings (網路設定)。
-
您選取的 AMI 包含一或多個儲存體磁碟區,包含根設備磁碟區。在 Configure storage (設定儲存) 下,您可以透過選擇 Add new volume (新增新磁碟區),指定要連接到執行個體的額外磁碟區。如需詳細資訊,請參閱設定儲存。
-
在 Advanced details (進階詳細資訊),請設定 Spot 執行個體請求,如下所示:
-
在購買選項下方,選取請求 Spot 執行個體核取方塊。
-
您可以保留 Spot 執行個體請求的預設組態,也可以選擇右側的 Customize (自訂) 為您的 Spot 執行個體請求指定自訂設定。
當您選擇 Customize (自訂) 時,會出現下列欄位。
-
Maximum price (最高價格):您可以採用 Spot 價格 (以隨需價格為上限) 請求 Spot 執行個體,也可以指定您願意支付的最高金額。
警告
如果您指定最高價格,您的執行個體將會比選擇無最高價時更頻繁地遭到中斷。
如果您指定最高價格,則價格必須超過 0.001 美元。指定低於 USD $0.001 的值會導致啟動失敗。
-
No maximum price (無最高價格):您的 Spot 執行個體將以目前的 Spot 價格啟動。價格絕不會超過隨需價格。(建議)
-
Set your maximum price (per instance/hour) (設定您的最高價格 (每個執行個體/小時)):您可以指定您願意支付的最高金額。
-
如果您指定的最高價小於目前的 Spot 價格,則不會啟動 Spot 執行個體。
-
如果您指定的最高價格大於目前的 Spot 價格,Spot 執行個體將會啟動並按目前的 Spot 價格收費。Spot 執行個體執行後,如果 Spot 價格超過您的最高價格,Amazon EC2 將中斷您的 Spot 執行個體。
-
無論您指定的最高價格如何,都將始終按當前 Spot 價格向您收取費用。
若要回顧 Spot 價格的趨勢,請參閱 Spot 執行個體定價歷史記錄。
-
-
-
Request type (請求類型):您選擇的 Spot 執行個體請求類型會決定 Spot 執行個體中斷時會發生什麼狀況。
-
One-time (一次性):Amazon EC2 會為您的 Spot 執行個體發出一次性請求。如果您的 Spot 執行個體中斷,即不會重新提交請求。
-
Persistent request (持久性請求):Amazon EC2 會為您的 Spot 執行個體發出持久性請求。如果您的 Spot 執行個體中斷,系統會重新提交請求以補充中斷的 Spot 執行個體。
若未指定數值,則預設值為一次性請求。
-
-
Valid to (有效至):持久性 Spot 執行個體請求的到期日期。
一次性請求不支援此欄位。一次性請求在請求中的所有執行個體均啟動,或是您取消請求之前,都會繼續維持有效運作。
-
No request expiry date (無請求過期日期):請求會維持在有效狀態,直到您將其取消為止。
-
Set your request expiry date (設定您的請求過期日期):持久性請求在您指定的日期之前會維持在有效狀態,或者直到您將其取消為止。
-
-
Interruption behavior (中斷行為):您選擇的行為會決定 Spot 執行個體中斷時會發生什麼狀況。
-
針對持久性請求,有效值為 Stop (停止) 和 Hibernate (休眠)。當執行個體停止時,將收取 EBS 磁碟區儲存費用。
注意
Spot 執行個體現在使用與隨需執行個體相同的休眠功能。若要啟用休眠功能,您可以在此選擇休眠,也可以從停止 - 休眠行為欄位 (顯示於啟動執行個體精靈下半部) 中選擇啟用。如需休眠必要條件,請參閱Amazon EC2 執行個體休眠的先決條件。
-
針對一次性請求,有效值僅有 Terminate (終止)。
若未指定值,則預設值為 Terminate (終止),這對於持久性 Spot 執行個體請求無效。如果您保留預設值,並嘗試啟動持久性 Spot 執行個體請求,則會出現錯誤。
如需詳細資訊,請參閱Spot 執行個體中斷的行為。
-
-
-
-
在 Summary (摘要) 面板上,針對 Number of instances (執行個體的數量),輸入要啟動的執行個體數量。
注意
Amazon EC2 為每個 Spot 執行個體建立一個單獨的請求。
-
在 Summary (摘要) 面板上,檢閱執行個體的詳細資訊,並進行任何必要的變更。提交 Spot 執行個體請求後,您就無法變更請求的參數。您可以直接導覽至啟動執行個體精靈中的某個區段,方法是在 Summary (摘要) 面板中選擇其連結。如需詳細資訊,請參閱Summary。
-
當您準備好啟動執行個體時,請選擇 Launch instance (啟動執行個體)。
如果執行個體無法啟動或狀態立即進入
terminated
而非running
,請參閱對 Amazon EC2 執行個體啟動問題進行疑難排解。
- AWS CLI
-
建立 Spot 執行個體請求
使用 run-instances
命令,並在 --instance-market-options
參數中指定 Spot 執行個體選項。aws ec2 run-instances \ --image-id
ami-0abcdef1234567890
\ --instance-typet2.micro
\ --count5
\ --subnet-idsubnet-08fc749671b2d077c
\ --key-nameMyKeyPair
\ --security-group-idssg-0b0384b66d7d692f9
\ --instance-market-optionsfile://
spot-options.json
以下是在 JSON 檔案中指定
--instance-market-options
的資料結構。您也可以指ValidUntil
和InstanceInterruptionBehavior
。如果您沒有在資料結構中指定欄位,則會使用預設值。以下範例會建立
persistent
請求。{ "MarketType": "spot", "SpotOptions": { "SpotInstanceType": "
persistent
" } }若要使用 request-spot-instances
建立 Spot 執行個體請求 注意
我們強烈反對使用 request-spot-instances
命令來請求 Spot 執行個體,因為這是一個沒有計劃投資的舊式 API。如需詳細資訊,請參閱使用哪種 Spot 請求方法最好? 使用 request-spot-instances
命令來建立一次性請求。 aws ec2 request-spot-instances \ --instance-count
5
\ --type "one-time" \ --launch-specification file://specification.json
使用 request-spot-instances
命令來建立一個永久的請求。 aws ec2 request-spot-instances \ --instance-count
5
\ --type "persistent" \ --launch-specification file://specification.json
例如,啟動規格檔案以搭配這些命令使用,請參閱Spot 執行個體請求啟動規格範例。如果您從 Spot 請求主控台下載啟動規格檔案,則必須改用 request-spot-fleet
命令 (Spot 請求主控台使用 Spot 機群指定 Spot 執行個體請求)。