

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 管理您的 Spot 執行個體
<a name="using-spot-instances-request"></a>

當有容量可用時，Amazon EC2 會啟動 Spot 執行個體。Spot 執行個體會執行，直到它中斷或您自己終止它。

**Topics**
+ [尋找您的 Spot 執行個體](#using-spot-instances-running)
+ [尋找由特定請求啟動的執行個體](#find-request-spot-instances)
+ [停止 Spot 執行個體](#stopping-a-spot-instance)
+ [啟動 Spot 執行個體](#starting-a-spot-instance)
+ [終止 Spot 執行個體](#terminating-a-spot-instance)

## 尋找您的 Spot 執行個體
<a name="using-spot-instances-running"></a>

Spot 執行個體與隨需執行個體會出現在主控台的**執行個體**頁面中。使用下列程序，尋找您的 Spot 執行個體。

------
#### [ Console ]

**尋找您的 Spot 執行個體**

1. 前往 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台。

1. 在導覽窗格中，選擇**執行個體**。

1. 若要尋找所有 Spot 執行個體，請在搜尋窗格中，選擇**執行個體 lifecycle=spot**。

1. 若要驗證執行個體是否為 Spot 執行個體，請選取執行個體，選擇**詳細資訊**索引標籤，然後檢查**生命週期**的值。Spot 執行個體的值為 `spot`，隨需執行個體的值為 `normal`。

------
#### [ AWS CLI ]

**尋找您的 Spot 執行個體**  
使用下面的 [describe-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html) 命令。

```
aws ec2 describe-instances --filters "Name=instance-lifecycle,Values=spot"
```

**若要判斷執行個體是否為 Spot 執行個體**  
使用下面的 [describe-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html) 命令。

```
aws ec2 describe-instances \
    --instance-ids i-1234567890abcdef0 \
    --query "Reservations[*].Instances[*].InstanceLifecycle" \
    --output text
```

若該輸出為 `spot`，表示該執行個體為 Spot 執行個體。如果沒有輸出，執行個體即為隨需執行個體。

------
#### [ PowerShell ]

**尋找您的 Spot 執行個體**  
使用 [Get-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html) cmdlet。

```
Get-EC2Instance -Filter @{Name="instance-lifecycle"; Values="spot"}
```

**若要判斷執行個體是否為 Spot 執行個體**  
使用 [Get-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html) cmdlet。

```
(Get-EC2Instance -InstanceId i-1234567890abcdef0).Instances.InstanceLifecycle
```

若該輸出為 `Spot`，表示該執行個體為 Spot 執行個體。如果沒有輸出，執行個體即為隨需執行個體。

------

## 尋找由特定請求啟動的執行個體
<a name="find-request-spot-instances"></a>

使用下列程序來尋找從特定 Spot 執行個體或 Spot 機群請求啟動的 Spot 執行個體。

------
#### [ Console ]

**尋找請求的 Spot 執行個體**

1. 前往 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台。

1. 在瀏覽窗格中，選擇 **Spot 請求**。包含 Spot 執行個體請求和 Spot 機群請求的清單。

1. 如果已完成 Spot 執行個體請求，**容量**就是 Spot 執行個體的 ID。對於 Spot Fleet ，**容量**表示已完成所請求容量的程度。若要檢視 Spot Fleet 中的執行個體 ID，請選取展開箭頭，或選取該機群並選取 **Instances** (執行個體)。

1. 對於 Spot 機群，**容量**表示已完成所請求容量的程度。若要檢視 Spot 機群中執行個體 ID，請選擇機群 ID 以開啟其詳細資訊頁面，並尋找**執行個體**窗格。

------
#### [ AWS CLI ]

**尋找請求的 Spot 執行個體**  
使用下列 [describe-spot-instance-requests](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-spot-instance-requests.html) 命令。

```
aws ec2 describe-spot-instance-requests \
    --spot-instance-request-ids sir-0e54a519c9EXAMPLE \
    --query "SpotInstanceRequests[*].{ID:InstanceId}"
```

下列為範例輸出：

```
[
    {
        "ID": "i-1234567890abcdef0"
    },
    {
        "ID": "i-0598c7d356eba48d7"
    }
]
```

------
#### [ PowerShell ]

**尋找請求的 Spot 執行個體**  
使用 [Get-EC2SpotInstanceRequest](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2SpotInstanceRequest.html) cmdlet。

```
(Get-EC2SpotInstanceRequest -SpotInstanceRequestId sir-0e54a519c9EXAMPLE).InstanceId
```

------

## 停止 Spot 執行個體
<a name="stopping-a-spot-instance"></a>

如果您現在不需要您的 競價型執行個體，但想稍後重新啟動它們，而不會遺失 Amazon EBS 磁碟區中保留的資料，您可以將其停止。停止 Spot 執行個體的步驟與停止隨需執行個體的步驟類似。

**注意**  
停止 Spot 執行個體時，您可以修改其某些執行個體屬性，但無法修改執行個體類型。  
我們不會對已停止的 Spot 執行個體計費，也不會收取數據傳輸費，但是會收取任何 Amazon EBS 磁碟區的儲存費用。

**限制**
+ 如果從 `persistent` Spot 執行個體請求中啟動 Spot 執行個體，則只能停止 Spot 執行個體。
+ 如果已取消關聯的 Spot 執行個體請求，則無法停止 Spot 執行個體。當 Spot 執行個體請求被取消時，您只能終止 Spot 執行個體。
+ 如果 Spot 執行個體屬於某個機群或啟動群組或可用區域群組，則無法停止它。

------
#### [ Console ]

**停止 Spot 執行個體**

1. 前往 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台。

1. 在導覽窗格中，選擇**執行個體**。

1. 選取 Spot 執行個體。如果您未儲存 Spot 執行個體的執行個體 ID，請參閱 [尋找您的 Spot 執行個體](#using-spot-instances-running)。

1. 選擇 **Instance state (執行個體狀態)**、**Stop instance (停止執行個體)**。

1. 出現確認提示時，請選擇 **Stop (停止)**。

------
#### [ AWS CLI ]

**停止 Spot 執行個體**  
使用 [stop-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/stop-instances.html) 命令手動停止 Spot 執行個體。

```
aws ec2 stop-instances --instance-ids i-1234567890abcdef0
```

------
#### [ PowerShell ]

**停止 Spot 執行個體**  
使用 [Stop-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Stop-EC2Instance.html) cmdlet。

```
Stop-EC2Instance -InstanceId i-1234567890abcdef0
```

------

## 啟動 Spot 執行個體
<a name="starting-a-spot-instance"></a>

您可以啟動之前已停止的 Spot 執行個體。

**先決條件**

只有在下列情況下，才能啟動 Spot 執行個體：
+ 您手動停止了 Spot 執行個體。
+ Spot 執行個體是 EBS 支援的執行個體。
+ Spot 執行個體容量可用。
+ Spot 價格低於您的最高價格。

**限制**
+ 如果 Spot 執行個體屬於某個機群或啟動群組或可用區域群組，則無法啟動它。

啟動 Spot 執行個體的步驟與啟動隨需執行個體的步驟類似。

------
#### [ Console ]

**啟動 Spot 執行個體**

1. 前往 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台。

1. 在導覽窗格中，選擇**執行個體**。

1. 選取 Spot 執行個體。如果您未儲存 Spot 執行個體的執行個體 ID，請參閱 [尋找您的 Spot 執行個體](#using-spot-instances-running)。

1. 選擇 **Instance state (執行個體狀態)**、**Start instance (啟動執行個體)**。

------
#### [ AWS CLI ]

**啟動 Spot 執行個體**  
使用 [start-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/start-instances.html) 命令手動啟動 Spot 執行個體。

```
aws ec2 start-instances --instance-ids i-1234567890abcdef0
```

------
#### [ PowerShell ]

**啟動 Spot 執行個體**  
使用 [Start-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Start-EC2Instance.html) cmdlet。

```
Start-EC2Instance -InstanceId i-1234567890abcdef0
```

------

## 終止 Spot 執行個體
<a name="terminating-a-spot-instance"></a>

**警告**  
**終止執行個體的操作為永久性且無法復原。**  
終止執行個體後，您將無法再連線至該執行個體，且無法復原該執行個體。所有設定為終止時刪除的已連接 Amazon EBS 磁碟區，也會被永久刪除且無法復原。儲存在執行個體儲存體磁碟區的所有資料將永久遺失。如需詳細資訊，請參閱[終止執行個體的運作方式](how-ec2-instance-termination-works.md)。  
在終止執行個體之前，確認您已將終止使用後需要保留的全部資料備份至持久性儲存體。

如果終止持久性 Spot 執行個體請求啟動的執行中或已停止的 Spot 執行個體，Spot 執行個體請求會轉變為 `open` 狀態，以便啟動新的 Spot 執行個體。若要確保沒有啟動新的 Spot 執行個體，您必須先取消 Spot 執行個體請求。

如果您取消具有執行中 Spot 執行個體的 `active` Spot 執行個體請求，則執行中的 Spot 執行個體不會自動終止；您必須手動終止 Spot 執行個體。

如果您取消具有已停止的 Spot 執行個體的 `disabled` Spot 執行個體請求，則 Amazon EC2 Spot 服務會自動終止已停止的 Spot 執行個體。取消 Spot 執行個體請求和 Spot 服務終止 Spot 執行個體之間可能有短暫延遲。

如需詳細資訊，請參閱[若要取消 Spot 執行個體請求](using-spot-instances-cancel.md)。

------
#### [ Console ]

**手動終止 Spot 執行個體**

1. 終止執行個體前，請檢查您的 Amazon EBS 磁碟區不會在終止時被刪除，並確認已將執行個體存放區磁碟區上的所需資料複製到持久性儲存 (例如 Amazon EBS 或 Amazon S3)，藉此確認您不會遺失任何資料。

1. 在 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台。

1. 在導覽窗格中，選擇**執行個體**。

1. 選取 Spot 執行個體。如果您未儲存 Spot 執行個體的執行個體 ID，請參閱 [尋找您的 Spot 執行個體](#using-spot-instances-running)。

1. 選擇**執行個體狀態**、**終止 (刪除) 執行個體**。

1. 出現確認提示時，請選擇**終止 (刪除)**。

------
#### [ AWS CLI ]

**手動終止 Spot 執行個體**  
使用 [terminate-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/terminate-instances.html) 命令手動終止 Spot 執行個體。

```
aws ec2 terminate-instances --instance-ids i-1234567890abcdef0 i-0598c7d356eba48d7
```

------
#### [ PowerShell ]

**手動終止 Spot 執行個體**  
使用 [Remove-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Remove-EC2Instance.html) cmdlet。

```
Remove-EC2Instance -InstanceId i-1234567890abcdef0
```

------