

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

# 修改 EC2 Fleet
<a name="modify-ec2-fleet"></a>

您可以修改 EC2 機群的總目標容量、Spot 容量和隨需容量。如果機群新的總目標容量減少到低於機群的目前大小，您也可以修改是否應終止執行中的執行個體。

## 考量事項
<a name="modify-ec2-fleet-considerations"></a>

修改 EC2 機群時，請考慮下列事項：
+ **機群類型** – 您僅可以修改 `maintain` 類型的 EC2 機群。您無法修改 `request` 或 `instant` 類型的 EC2 機群。
+ **機群參數** – 您可以修改 EC2 機群的下列參數：
  + `target-capacity-specification` – 增加或減少以下的目標容量：
    + `TotalTargetCapacity`
    + `OnDemandTargetCapacity`
    + `SpotTargetCapacity`
  + `excess-capacity-termination-policy` – 如果機群的總目標容量減少到低於 EC2 Fleet 的目前大小，是否應終止執行中的執行個體。有效的值如下：
    + `no-termination`
    + `termination`
+ **增加總目標容量時的機群行為** – 當您增加總目標容量時，EC2 機群會根據為 `DefaultTargetCapacityType` 指定的執行個體購買選項 (即隨需執行個體或 Spot 執行個體) 並根據指定的[配置策略](ec2-fleet-allocation-strategy.md)啟動其他執行個體。
+ **減少 Spot 目標容量時的機群行為** – 當您降低 Spot 目標容量時，EC2 機群會刪除超過新目標容量的任何開放請求。您可以請求機群終止 Spot 執行個體，直到機群大小達到新的目標容量。當 EC2 Fleet 因為目標容量減少而終止 Spot 執行個體時，執行個體會收到 Spot 執行個體中斷通知。

  會根據配置策略選取要終止的執行個體：
  + `capacity-optimized` – 從可用容量最少的集區中終止執行個體。
  + `price-capacity-optimized` – 使用價格與可用容量的組合：從可用容量最少，且在這些集區中價格最高的集區終止執行個體。
  + `diversified` – 在所有集區中終止執行個體。
  + `lowest-price` – 從價格最高的集區終止執行個體。

  或者，您可以請求該 EC2 機群將機群保持為目前的大小，但不能取代任何中斷的或您手動終止的 Spot 執行個體。
+ **機群狀態** – 您可以修改處於 `submitted` 或 `active` 狀態中的 EC2 機群。當您修改機群時，機群會進入 `modifying` 狀態。

## 修改 EC2 機群的命令
<a name="modify-ec2-fleet-commands"></a>

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

**修改 EC2 機群的總目標容量**  
使用 [modify-fleet](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-fleet.html) 命令。

```
aws ec2 modify-fleet \
    --fleet-id fleet-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE \
    --target-capacity-specification TotalTargetCapacity=20
```

如果您要降低目標容量，但希望保持目前的大小，則可以按照下列方式修改前一個範例。

```
aws ec2 modify-fleet \
    --fleet-id fleet-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE \
    --target-capacity-specification TotalTargetCapacity=10 \
    --excess-capacity-termination-policy no-termination
```

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

**修改 EC2 機群的總目標容量**  
使用 [Edit-EC2Fleet](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2Fleet.html) cmdlet。

```
Edit-EC2Fleet `
    -FleetId "fleet-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" `
    -TargetCapacitySpecification_TotalTargetCapacity 20
```

如果您要降低目標容量，但希望保持目前的大小，則可以按照下列方式修改前一個範例。

```
Edit-EC2Fleet `
    -FleetId "fleet-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" `
    -TargetCapacitySpecification_TotalTargetCapacity 20 `
    -ExcessCapacityTerminationPolicy "NoTermination"
```

------