

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

# 更新Amazon GameLift Servers受管容器機群
<a name="containers-update-fleet"></a>

您可以更新受管容器機群的大部分屬性，包括容器群組定義。根據要更新的設定，機群更新可能會啟動新的機群部署。在機群部署中，機群中的所有執行個體都會移除，並以具有新組態的執行個體取代。需要部署的設定包括：
+ 容器群組定義，包括容器映像的更新
+ 連線連接埠範圍和傳入許可
+ 日誌組態

您可以在 [Amazon GameLift Servers主控台](https://console.aws.amazon.com/gamelift/)或 AWS Command Line Interface (AWS CLI) 中追蹤機群部署的狀態，以建立容器機群。

**注意**  
您無法更新機群的執行時間環境。在機群建立時，機群的 Amazon Machine Image (AMI) 會設定為 Linux AMI 的最新版本。部署到此機群的所有容器映像都必須與此版本相容。若要變更機群的 AMI 或升級至較新的版本，您必須建立新的機群。根據最佳實務，建議您每 30 天替換一次機群，以維護託管遊戲伺服器的安全up-to-date執行期環境。如需詳細的指導方針，請參閱 [Amazon GameLift Servers 的安全最佳實務](security-best-practices.md)。

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

在 [Amazon GameLift Servers主控台](https://console.aws.amazon.com/gamelift/)中，選取您要建立機群的 AWS 區域 。容器群組定義必須位於您要建立機群的相同區域。

開啟主控台的左側導覽列，然後選擇**受管容器：機群**。在受管容器機群頁面上，從清單中選擇機群，然後選擇**編輯**。

1. 視需要更新容器機群設定。完成時，請選擇 **Create** (建立)。

1. 如果您的更新需要機群部署，系統會要求您指定部署選項，如下所示：
   + 遊戲工作階段保護。您可以選擇保護具有作用中遊戲工作階段 （安全部署） 的機群執行個體。使用此設定，在遊戲工作階段結束之前，不會取代機群執行個體。或者，您可以選擇取代機群執行個體，無論遊戲工作階段活動為何 （不安全的部署）。不安全的部署在開發和測試階段非常有用，以減少部署時間。
   + 運作狀態百分比下限。您可以管理機群執行個體的取代速度。使用此設定可在部署期間維持最少量的運作狀態任務。較低的值會優先考慮部署速度，而較高的值可確保遊戲伺服器在整個部署期間保持高可用性。
   + 部署失敗策略。決定部署失敗時要採取的動作。部署失敗表示某些更新的容器狀態檢查失敗，並被視為受損。您可以設定部署，將所有機群執行個體自動復原至先前部署的狀態。或者，您可以選擇維護一些受損的機群執行個體，以用於偵錯。

如果您的請求成功，主控台會顯示受管容器機群的**部署**索引標籤。使用此索引標籤來追蹤每個部署的狀態。如果您啟動機群的新部署，此動作會自動取消機群目前正在進行的任何部署。

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

若要使用 建立容器機群 AWS CLI，請開啟命令列視窗並使用 `update-container-fleet`命令。如需此命令的詳細資訊，請參閱《 *AWS CLI 命令參考*[https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/update-container-fleet.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/update-container-fleet.html)》中的 。

下列範例會更新具有下列特性的現有容器機群：
+ 它會更新遊戲伺服器容器群組定義，以使用第 2 版。
+ 它會指定安全部署選項。

```
{
  "DeploymentConfiguration": { 
    "ImpairmentStrategy": "ROLLBACK",
    "MinimumHealthyPercentage": 75,
    "ProtectionStrategy": "WITH_PROTECTION"
  },
  "FleetId": "containerfleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa",
  "GameServerContainerGroupDefinitionName": "arn:aws:gamelift:us-west-2:111122223333:containergroupdefinition/MyAdventureGameContainerGroup:2"
}
```

------

