

# Configuración del agente de contenedor de Amazon ECS
<a name="ecs-agent-config"></a>

**Se aplica a**: instancias de EC2

El agente de contenedor de Amazon ECS admite una serie de opciones de configuración, la mayoría de las cuales se establecen a través de variables de entorno. 

Si la instancia de contenedor se lanzó con la variante de Linux de la AMI optimizada para Amazon ECS, puede establecer estas variables de entorno en el archivo `/etc/ecs/ecs.config` y, a continuación, reiniciar el agente. También puede escribir estas variables de configuración en sus instancias de contenedor con datos de usuario de Amazon EC2 en el momento del lanzamiento. Para obtener más información, consulte [Arranque de instancias de contenedor de Linux de Amazon ECS para la transferencia de datos](bootstrap_container_instance.md).

Si la instancia de contenedor se lanzó con la variante de Windows de la AMI optimizada para Amazon ECS, puede establecer estas variables de entorno en el comando PowerShell SetEnvironmentVariable y luego reiniciar el agente. Para obtener más información, consulte [Ejecución de comandos al lanzar una instancia de EC2 con la entrada de datos de usuario](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html) en la *Guía del usuario de Amazon EC2* y [Arranque de instancias de contenedor de Windows de Amazon ECS para la transferencia de datos](bootstrap_windows_container_instance.md).

Si está iniciando manualmente el agente de contenedor de Amazon ECS (para AMI no optimizadas para Amazon ECS), puede utilizar estas variables de entorno en el comando **docker run** que utiliza para iniciar el agente. Utilice estas variables con la sintaxis `--env={{VARIABLE_NAME}}={{VARIABLE_VALUE}}`. En el caso de información confidencial, por ejemplo credenciales de autenticación para repositorios privados, debe almacenar las variables de entorno del agente en un archivo y transmitirlas a la vez con la opción `--env-file {{path_to_env_file}}`. Puede utilizar los siguientes comandos para agregar las variables.

```
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
```

## Ejecución del agente de Amazon ECS con el espacio de nombres PID del host
<a name="ecs-agent-pid-namespace"></a>

De forma predeterminada, el agente de Amazon ECS se ejecuta con su propio espacio de nombres PID. En las siguientes configuraciones, puede configurar el agente de Amazon ECS para que se ejecute con el espacio de nombres PID del host:
+ El modo de aplicación de SELinux está activado.
+ La política de seguridad SELinux de Docker está establecida como verdadera.

Puede configurar este comportamiento estableciendo la variable de entorno `ECS_AGENT_PID_NAMESPACE_HOST` en `true` en su archivo `/etc/ecs/ecs.config`. Cuando esta variable esté habilitada, `ecs-init` iniciará el contenedor del agente de Amazon ECS con el espacio de nombres PID del host (`--pid=host`), lo que permitirá que el agente se inicie correctamente en entornos que utilizan SELinux. Esta característica está disponible en las versiones de agente `1.94.0` de Amazon ECS y posteriores.

Para habilitar esta característica, agregue la siguiente línea a su archivo `/etc/ecs/ecs.config`:

```
ECS_AGENT_PID_NAMESPACE_HOST=true
```

Tras realizar este cambio, reinicie el agente de Amazon ECS para que surta efecto:

```
sudo systemctl restart ecs
```

Las siguientes características no funcionarán cuando el modo de aplicación de SELinux esté activado y la política de seguridad de Docker esté configurada como verdadera, incluso cuando esté configurado `ECS_AGENT_PID_NAMESPACE_HOST=true`.
+ Amazon ECS Exec
+ Tarea adjunta de Amazon EBS
+ Service Connect
+ FireLens para Amazon ECS

## Parámetros disponibles
<a name="ecs-agent-availparam"></a>

Para obtener más información acerca de la utilización del agente de contenedor, consulte [Parámetros de configuración del agente de contenedor de Amazon ECS](https://github.com/aws/amazon-ecs-agent/blob/master/README.md).