

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

# 建立和管理協助程式
<a name="managed-daemons-create-manage"></a>

註冊協助程式任務定義後，請建立協助程式，將它部署到 Amazon ECS 受管執行個體容量提供者。Amazon ECS 會自動在關聯容量提供者的每個 Amazon EC2 執行個體上放置一個協助程式任務，並管理協助程式生命週期。

## 先決條件
<a name="managed-daemons-prerequisites"></a>

建立協助程式之前，請確認您具有下列項目：
+ Amazon ECS 叢集。
+ 與叢集相關聯的一或多個 Amazon ECS 受管執行個體容量提供者。
+ 已註冊的協助程式任務定義。

## 建立協助程式
<a name="managed-daemons-create"></a>

### AWS 管理主控台
<a name="managed-daemons-create-console"></a>

1. 開啟 Amazon ECS 主控台。在左側導覽中，選擇**叢集**，然後選取您的叢集。

1. 選擇**精靈**索引標籤，然後選擇**建立**。

1. 對於**精靈任務定義系列**，請從下拉式清單中選取您的精靈任務定義。

1. 對於**精靈任務定義修訂**，選取要使用的修訂。保留空白以使用最新的修訂版。

1. 針對**協助程式名稱**，輸入唯一的名稱。名稱最多可包含 255 個英數字元、連字號和底線。

1. 針對**容量提供者**，選取一或多個 Amazon ECS 受管執行個體容量提供者。這些會決定哪些執行個體執行您的協助程式任務。

1. （選用） 設定部署設定：
   + **耗盡百分比** - 在更新期間同時耗盡的執行個體百分比。預設：`25`。
   + **使用 CloudWatch alarm(s)** - 開啟 以監控部署運作狀態，並在警示觸發時自動轉返。
   + **製作時間** - Amazon ECS 在將所有執行個體更新為新的常駐程式修訂版後，在完成部署之前等待的分鐘數。在此期間，Amazon ECS 會監控 CloudWatch 警示，並在觸發任何警示時自動復原部署。預設：`0`。

1. (選用) 新增標籤。

1. （選用） 開啟**啟用 ECS Exec** 以在協助程式容器中執行互動式命令以進行故障診斷。

1. 檢閱您的組態，然後選擇**建立**。

### AWS CLI
<a name="managed-daemons-create-cli"></a>

使用您的協助程式組態建立 JSON 檔案，並執行 `create-daemon`命令。

以下是範例 JSON 檔案：

```
{
    "clusterArn": "arn:aws:ecs:us-east-1:123456789012:cluster/my-daemon-cluster",
    "daemonName": "my-monitoring-daemon",
    "daemonTaskDefinitionArn": "arn:aws:ecs:us-east-1:123456789012:daemon-task-definition/my-daemon-task:1",
    "capacityProviderArns": [
        "arn:aws:ecs:us-east-1:123456789012:capacity-provider/my-daemon-capacity-provider"
    ]
}
```

執行下列命令來建立協助程式：

```
aws ecs create-daemon --cli-input-json file://create-daemon.json
```

**必要欄位**
+ `daemonName` - 協助程式的唯一名稱。
+ `clusterArn` - 叢集的 ARN。
+ `daemonTaskDefinitionArn` - 協助程式任務定義的 ARN。
+ `capacityProviderArns` - Amazon ECS 受管執行個體容量提供者 ARNs的陣列。

**選用欄位**
+ `deploymentConfiguration` - 自訂部署行為的`DaemonDeploymentConfiguration`物件。
+ `tags` - 用於標記的鍵/值對。
+ `propagateTags` - 標籤傳播設定。
+ `clientToken` - 等冪符記。

## 驗證協助程式部署
<a name="managed-daemons-verify"></a>

建立協助程式之後，請使用 AWS 管理主控台 或 來驗證其狀態 AWS CLI。

### AWS 管理主控台
<a name="managed-daemons-verify-console"></a>

1. 開啟 Amazon ECS 主控台。在左側導覽中，選擇**叢集**，然後選取您的叢集。

1. 選擇 **Daemons** 索引標籤。

1. 確認您的協助程式顯示**作用中**狀態。

1. 選擇**任務**索引標籤，以確認每個容器執行個體上執行一個協助程式任務。

### AWS CLI
<a name="managed-daemons-verify-cli"></a>

執行下列命令來驗證協助程式狀態：

```
aws ecs list-daemons \
    --cluster-arn arn:aws:ecs:us-east-1:123456789012:cluster/my-daemon-cluster
```

```
aws ecs describe-daemons \
    --daemon-arn arn:aws:ecs:us-east-1:123456789012:daemon/my-daemon-cluster/my-monitoring-daemon
```

## 更新協助程式
<a name="managed-daemons-update"></a>

若要使用新的任務定義修訂版更新協助程式，或新增容量提供者，請使用 AWS 管理主控台 或 AWS CLI。這會觸發所有執行個體的滾動部署。

### AWS 管理主控台
<a name="managed-daemons-update-console"></a>

1. 開啟 Amazon ECS 主控台。在左側導覽中，選擇**叢集**，然後選取您的叢集。

1. 選擇**協助程式**索引標籤，然後選取您要更新的協助程式。

1. 選擇**更新**。

1. 對於**精靈任務定義修訂**，選取新的修訂。

1. （選用） 更新容量提供者或部署設定。

1. 選擇**更新**以開始滾動部署。

### AWS CLI
<a name="managed-daemons-update-cli"></a>

執行 `update-daemon` 命令：

```
aws ecs update-daemon \
    --daemon-arn arn:aws:ecs:us-east-1:123456789012:daemon/my-daemon-cluster/my-monitoring-daemon \
    --daemon-task-definition-arn arn:aws:ecs:us-east-1:123456789012:daemon-task-definition/my-daemon-task:2 \
    --capacity-provider-arns arn:aws:ecs:us-east-1:123456789012:capacity-provider/my-daemon-capacity-provider
```

**重要**  
當您在`UpdateDaemon`請求中提供協助程式組態設定時，Amazon ECS 會使用您指定的設定，而不是預設值。更新之間不會保留協助程式組態設定，包括標籤和啟用執行命令旗標。對 的每次呼叫`UpdateDaemon`都必須包含您要套用的完整組態設定集。從請求中省略的任何設定都會還原為其預設值。

## 刪除協助程式
<a name="managed-daemons-delete"></a>

若要刪除協助程式，請使用 AWS 管理主控台 或 AWS CLI。刪除容量提供者或叢集之前，請等待所有協助程式任務停止。

### AWS 管理主控台
<a name="managed-daemons-delete-console"></a>

1. 開啟 Amazon ECS 主控台。在左側導覽中，選擇**叢集**，然後選取您的叢集。

1. 選擇**協助程式**索引標籤，然後選取您要刪除的協助程式。

1. 選擇 **刪除**。

1. 在確認對話方塊中，選擇**刪除**以確認。

### AWS CLI
<a name="managed-daemons-delete-cli"></a>

執行 `delete-daemon` 命令：

```
aws ecs delete-daemon \
    --daemon-arn arn:aws:ecs:us-east-1:123456789012:daemon/my-daemon-cluster/my-monitoring-daemon
```