

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

# 中的系統維護 AWS OpsWorks for Chef Automate
<a name="opscm-maintenance"></a>

**重要**  
AWS OpsWorks for Chef Automate 已於 2024 年 5 月 5 日終止服務，並已針對新客戶和現有客戶停用。我們建議現有客戶遷移至 Chef SaaS 或其他解決方案。如果您有任何問題，可以在 [AWS re：Post](https://repost.aws/) 或透過 [AWS Premium Support](https://aws.amazon.com/support) 聯絡 AWS 支援 團隊。

強制性系統維護可確保最新的 Chef Server 和 Chef Automate Server 次要版本一律在 AWS OpsWorks for Chef Automate 伺服器上執行，包括安全性更新。每週至少需要進行一次系統維護。如有需要 AWS CLI，您可以使用 設定每日自動維護。除了排定的系統維護之外，您也可以使用 隨需 AWS CLI 執行系統維護。

當有新的 Chef 軟體次要版本可用時，系統維護的設計會在其通過 AWS 測試之後，自動更新伺服器上 Chef Automate 和 Chef Server 的次要版本。AWS 會執行廣泛的測試，驗證 Chef 升級已生產就緒，而不會中斷現有的客戶環境，因此在 Chef 軟體發行後和可供現有 OpsWorks for Chef Automate 伺服器套用之間，可能會有延遲。若要隨需更新 Chef 軟體的次要版本，請參閱本主題中的[隨需啟動系統維護](#opscm-maintenance-startdemand)。

系統維護會從作為維護程序一部分而執行的備份啟動新的執行個體，這有助於降低定期維護的降級或受損 Amazon EC2 執行個體的風險。

**重要**  
系統維護會刪除您新增至 AWS OpsWorks for Chef Automate 伺服器的任何檔案或自訂組態。如需如何修復組態或檔案遺失的詳細資訊，請參閱本主題中的[在維護之後還原自訂組態和檔案](#opscm-maintenance-restore)。

**Topics**
+ [確保節點信任 OpsWorks 憑證授權單位](#w2ab1b9c40c15)
+ [設定系統維護](#w2ab1b9c40c17)
+ [隨需啟動系統維護](#opscm-maintenance-startdemand)
+ [在維護之後還原自訂組態和檔案](#opscm-maintenance-restore)

## 確保節點信任 OpsWorks 憑證授權單位
<a name="w2ab1b9c40c15"></a>

**注意**  
如果您搭配 AWS OpsWorks for Chef Automate 伺服器使用自訂網域和憑證，則不需要本節中的步驟。

您使用 AWS OpsWorks for Chef Automate 伺服器管理的節點必須使用憑證向伺服器進行驗證。在系統維護期間， 會 OpsWorks 取代伺服器執行個體，並透過憑證授權單位 (CA) 來重新產生新 OpsWorks 憑證。若要在維護完成後自動還原與受管節點的通訊，節點應該信任隨附於入門套件的 OpsWorks CA，並且託管在 支援的區域中 AWS OpsWorks for Chef Automate。當您使用 OpsWorks CA 建立節點和伺服器之間的信任時，節點會在維護後重新連線至新的伺服器執行個體。如果您使用中所述的 EC2 `userdata`指令碼來新增 EC2 節點[在 中自動新增節點 AWS OpsWorks for Chef Automate](opscm-unattend-assoc.md)，則節點已設定為信任 OpsWorks CA。
+ 針對 Linux 式的節點，CA 的 S3 儲存貯體位置為 `https://opsworks-cm-${REGION}-prod-default-assets.s3.amazonaws.com/misc/opsworks-cm-ca-2020-root.pem`。 OpsWorks 信任的 CA 必須存放在路徑 中`/etc/chef/opsworks-cm-ca-2020-root.pem`。
+ 針對 Windows 式的節點，CA 的 S3 儲存貯體位置為 `https://opsworks-cm-$env:AWS_REGION-prod-default-assets.s3.amazonaws.com/misc/opsworks-cm-ca-2020-root.pem`。 OpsWorks CA 必須存放在根 Chef 資料夾中；例如， `C:\chef\opsworks-cm-ca-2020-root.pem`

在這兩種路徑中，區域變數會解析為下列其中一項。
+ `us-east-2`
+ `us-east-1`
+ `us-west-1`
+ `us-west-2`
+ `ap-northeast-1`
+ `ap-southeast-1`
+ `ap-southeast-2`
+ `eu-central-1`
+ `eu-west-1`

## 設定系統維護
<a name="w2ab1b9c40c17"></a>

當您建立新的 AWS OpsWorks for Chef Automate 伺服器時，您可以在[國際標準時間 ](https://en.wikipedia.org/wiki/Coordinated_Universal_Time)(UTC) 中設定工作日和時間，以啟動系統維護。維護會在您指定的小時啟動。因為您應預期伺服器在系統維護期間離線，請選擇一般工作時間內伺服器需求較低的時間。當維護正在進行中時，伺服器狀態將為 `UNDER_MAINTENANCE`。

您也可以變更現有 AWS OpsWorks for Chef Automate 伺服器上的系統維護設定，方法是變更伺服器**設定**頁面之**系統維護**區域中的設定，如下列螢幕擷取畫面所示。

![\[Chef Automate Server 設定，顯示系統維護區段。\]](http://docs.aws.amazon.com/zh_tw/opsworks/latest/userguide/images/opscm_exist_update_maintenance.png)


在 **System maintenance (系統維護)** 區段中，將日和小時設為您希望開始系統維護的時間。

### 使用 設定系統維護 AWS CLI
<a name="w2ab1b9c40c17c10"></a>

您也可以使用 AWS CLI設定系統維護的自動開始時間。 AWS CLI 可讓您視需要透過省略三字元工作日字首來設定每日自動維護。

在 `create-server` 命令中，在指定建立伺服器執行個體的必要項目 (例如執行個體類型、執行個體描述檔 ARN 和伺服器角色 ARN) 之後，將 `--preferred-maintenance-window` 參數新增到您的命令。在下列 `create-server` 範例中，`--preferred-maintenance-window` 設為 `Mon:08:00`，表示您已將維護設定在每週一 UTC 上午 8:00 開始 data at rest。

```
aws opsworks-cm create-server --engine "Chef" --engine-model "Single" --engine-version "12" --server-name "automate-06" --instance-profile-arn "arn:aws:iam::1019881987024:instance-profile/aws-opsworks-cm-ec2-role" --instance-type "t2.medium" --key-pair "amazon-test" --service-role-arn "arn:aws:iam::044726508045:role/aws-opsworks-cm-service-role" --preferred-maintenance-window "Mon:08:00"
```

在 `update-server` 命令中，您可以單獨更新 `--preferred-maintenance-window` 的值 (若需要的話)。在下列範例中，維護時段已設為週五 UTC 下午 6:15。data at rest。

```
aws opsworks-cm update-server --server-name "shiny-kitchen" --preferred-maintenance-window "Fri:18:15"
```

若要將維護時段的開始時間變更為每天 UTC 下午 6:15，請省略三個字元的工作日字首，如以下範例所示。

```
aws opsworks-cm update-server --server-name "shiny-kitchen" --preferred-maintenance-window "18:15"
```

如需使用 設定偏好系統維護時段的詳細資訊 AWS CLI，請參閱 [create-server](https://docs.aws.amazon.com/cli/latest/reference/opsworkscm/update-server.html) 和 [update-server](https://docs.aws.amazon.com/cli/latest/reference/opsworkscm/update-server.html)。

## 隨需啟動系統維護
<a name="opscm-maintenance-startdemand"></a>

若要隨需開始系統維護，在您設定的每週或每日自動維護之外，請執行下列 AWS CLI 命令。您無法在 AWS 管理主控台中啟動隨需維護。

```
aws opsworks-cm start-maintenance --server-name server_name
```

如需此命令的詳細資訊，請參閱 [start-maintenance](https://docs.aws.amazon.com/cli/latest/reference/opsworkscm/start-maintenance.html)。

## 在維護之後還原自訂組態和檔案
<a name="opscm-maintenance-restore"></a>

系統維護可以刪除或變更您已新增至 AWS OpsWorks for Chef Automate 伺服器的自訂檔案或組態。

如果在維護執行後，您的 Chef 伺服器缺少您使用 或 SSH 新增的檔案`RunCommand`或設定，您可以使用 Amazon Machine Image (AMI) 來啟動新的 Amazon EC2 執行個體。可用的 AMI 是由伺服器的維護前組態建置而成的。

新的執行個體狀態會和維護前的 Chef 伺服器相同，因此會包含您遺失的檔案和設定。

**重要**  
您無法使用新的執行個體還原您的伺服器。執行個體無法做為 Chef 伺服器執行。您只能使用執行個體復原您的檔案和組態設定。

若要從 AMI 啟動 EC2 執行個體，請在 Amazon EC2 主控台中開啟**啟動**精靈，選擇**我的 AMIs**，然後選擇具有伺服器名稱的 AMI。請遵循 Amazon EC2 精靈步驟，如同任何其他執行個體啟動一樣。