

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

# Amazon ECS 容器代理程式組態
<a name="ecs-agent-config"></a>

**適用對象**：EC2 執行個體

Amazon ECS 容器代理程式支援數個組態選項，其中大部分透過環境變數進行設定。

如果是透過 Linux 版的 Amazon ECS 最佳化 AMI 來啟動容器執行個體，您可以在 `/etc/ecs/ecs.config` 檔案中設定這些環境變數，然後重新啟動代理程式。您也可以在啟動時使用 Amazon EC2 使用者資料，將這些組態變數寫入容器執行個體。如需詳細資訊，請參閱[引導 Amazon ECS Linux 容器執行個體傳遞資料](bootstrap_container_instance.md)。

如果是透過 Windows 版的 Amazon ECS 最佳化 AMI 來啟動容器執行個體，您可以使用 PowerShell SetEnvironmentVariable 命令設定這些環境變數，然後重新啟動代理程式。如需詳細資訊，請參閱 *Amazon EC2 User Guide* 中的 [Run commands when you launch an EC2 instance with user data input](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html)，以及[引導 Amazon ECS Windows 容器執行個體傳遞資料](bootstrap_windows_container_instance.md)。

如果您是手動啟用 Amazon ECS 容器代理程式 (適用於非 Amazon ECS 最佳化 AMI)，則可以在用於啟用代理程式的 **docker run** 命令中使用這些環境變數。請搭配使用這些變數和語法 `--env=VARIABLE_NAME=VARIABLE_VALUE`。如需私有儲存庫的身分驗證登入資料這類敏感資訊，您應該將代理環境變數存放至一個檔案中，並使用 `--env-file path_to_env_file` 選項一次傳遞。您可使用下列命令來新增這些變數。

```
sudo systemctl stop ecs
sudo vi /etc/ecs/ecs.config 
# And add the environment variables with VARIABLE_NAME=VARIABLE_VALUE format.
sudo systemctl start ecs
```

## 透過主機 PID 命名空間執行 Amazon ECS 代理程式
<a name="ecs-agent-pid-namespace"></a>

依預設，Amazon ECS 代理程式會透過專用的 PID 命名空間執行。在下列組態中，您可以設定 Amazon ECS 代理程式採用主機 PID 命名空間執行：
+ SELinux 強制執行模式已啟用。
+ Docker 的 SELinux 安全政策設定為 true。

您可以在 `/etc/ecs/ecs.config` 檔案中將 `ECS_AGENT_PID_NAMESPACE_HOST` 環境變數設定為 `true`，實現對此行為進行設定。啟用此變數時，`ecs-init` 會使用主機的 PID 命名空間 (`--pid=host`) 啟動 Amazon ECS 代理程式容器，允許代理程式在 SELinux 強制執行環境中正確引導自身。此功能在 Amazon ECS 代理程式版本 `1.94.0` 及更新版本中可用。

若要啟用此功能，請將以下一行新增至 `/etc/ecs/ecs.config` 檔案：

```
ECS_AGENT_PID_NAMESPACE_HOST=true
```

進行此變更後，請重新啟動 Amazon ECS 代理程式，讓變更生效：

```
sudo systemctl restart ecs
```

若啟用了 SELinux 強制模式，且 Docker 安全政策設定為 true，那麼即使設定了 `ECS_AGENT_PID_NAMESPACE_HOST=true`，下列功能也無法運作。
+ Amazon ECS Exec
+ Amazon EBS 任務連接
+ Service Connect
+ FireLens for Amazon ECS

## 可用參數
<a name="ecs-agent-availparam"></a>

如需有關可用 Amazon ECS 容器代理程式組態參數的資訊，請參閱 GitHub 上的 [Amazon ECS 容器代理程式](https://github.com/aws/amazon-ecs-agent/blob/master/README.md)。