

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

# 尋找中斷的 競價型執行個體
<a name="finding-an-interrupted-Spot-Instance"></a>

當您描述 EC2 執行個體時，結果會包含 Spot 執行個體。Spot 執行個體的執行個體生命週期為 `spot`。Spot 執行個體的執行個體狀態為 `stopped` 或 `terminated`，視您設定的中斷行為而定。若為已休眠的 Spot 執行個體，執行個體狀態為 `stopped`。

如需中斷原因的其他詳細資訊，請檢查 Spot 要求狀態碼。如需詳細資訊，請參閱[取得 Spot 執行個體請求狀態](spot-request-status.md)。

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

**尋找中斷的 Spot 執行個體**

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

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

1. 套用下列篩選條件：**執行個體生命週期=spot**。

1. 根據您設定的中斷行為，套用**執行個體狀態=已停止**或**執行個體狀態=已終止**篩選條件。

1. 對於每個 Spot 執行個體，在**詳細資訊**索引標籤的**執行個體詳細資訊**下，找到**狀態轉換訊息** 下列程式碼指出 Spot 執行個體已中斷。
   + `Server.SpotInstanceShutdown`
   + `Server.SpotInstanceTermination`

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

**尋找中斷的 Spot 執行個體**  
使用 `--filters` 選項並搭配 [describe-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html) 命令。如需在輸出中列出執行個體 ID，請包含 `--query` 選項。

如果中斷行為是終止 Spot 執行個體，請使用下列範例：

```
aws ec2 describe-instances \
    --filters Name=instance-lifecycle,Values=spot \
              Name=instance-state-name,Values=terminated \
              Name=state-reason-code,Values=Server.SpotInstanceTermination \
    --query "Reservations[*].Instances[*].InstanceId"
```

如果中斷行為是停止 Spot 執行個體，請使用下列範例：

```
aws ec2 describe-instances \
    --filters Name=instance-lifecycle,Values=spot \
              Name=instance-state-name,Values=stopped \
              Name=state-reason-code,Values=Server.SpotInstanceShutdown \
    --query "Reservations[*].Instances[*].InstanceId"
```

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

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

如果中斷行為是終止 Spot 執行個體，請使用下列範例：

```
(Get-EC2Instance `
    -Filter @{Key="instance-lifecycle"; Values="spot"} `
            @{Key="instance-state-name"; Values="terminated"} `
            @{Key="state-reason-code"; Values="Server.SpotInstanceTermination"}).Instances.InstanceId
```

如果中斷行為是停止 Spot 執行個體，請使用下列範例：

```
(Get-EC2Instance `
    -Filter @{Key="instance-lifecycle"; Values="spot"} `
            @{Key="instance-state-name"; Values="stopped"} `
            @{Key="state-reason-code"; Values="Server.SpotInstanceTermination"}).Instances.InstanceId
```

------