

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Personalización avanzada de entornos con archivos de configuración (`.ebextensions`)
<a name="ebextensions"></a>

Puede agregar archivos de AWS Elastic Beanstalk configuración (`.ebextensions`) al código fuente de la aplicación web para configurar el entorno y personalizar los AWS recursos que contiene. Los archivos de configuración son documentos con formato YAML o JSON y con una extensión de archivo `.config` que se sitúan en una carpeta llamada `.ebextensions` y se implementan en el [paquete de código fuente](applications-sourcebundle.md) de la aplicación.

**Example .ebextensions/ .config network-load-balancer**  
En este ejemplo se realiza un simple cambio de configuración. Modifica una opción de configuración para establecer el tipo de equilibrador de carga del entorno en el equilibrador de carga de red.  

```
option_settings:
  aws:elasticbeanstalk:environment:
    LoadBalancerType: network
```

Recomendamos utilizar YAML para los archivos de configuración, ya que es más fácil de leer que JSON. YAML admite comentarios, comandos multilínea, varias alternativas de uso de comillas, etc. Sin embargo, puede realizar cualquier cambio de configuración en los archivos de configuración de Elastic Beanstalk exactamente igual usando YAML o JSON.

**Sugerencia**  
Cuando esté desarrollando o probando nuevos archivos de configuración, lance un entorno limpio que ejecute la aplicación predeterminada e impleméntelos en este entorno. Si los archivos de configuración no tienen un formato correcto, se producirán error irrecuperables al lanzar un nuevo entorno.

En la sección `option_settings` de un archivo de configuración, se definen los valores de las [opciones de configuración](command-options.md). Las opciones de configuración le permiten configurar el entorno de Elastic Beanstalk AWS , los recursos que contiene y el software que ejecuta la aplicación. Los archivos de configuración son solo uno de los diferentes mecanismos para definir las opciones de configuración.

La [`Resources`sección](environment-resources.md) le permite personalizar aún más los recursos del entorno de su aplicación y definir AWS recursos adicionales además de las funciones que ofrecen las opciones de configuración. Puede añadir y configurar cualquier recurso compatible con Elastic Beanstalk que utilice para crear entornos. AWS CloudFormation

Las demás secciones de un archivo de configuración (`packages`,`sources`,`files`, `users` `groups` `commands``container_commands`, y`services`) le permiten configurar las EC2 instancias que se lanzan en su entorno. Cuando se lanza un servidor en el entorno, Elastic Beanstalk ejecuta las operaciones definidas en estas secciones para preparar el sistema operativo y el sistema de almacenamiento de la aplicación.

Para obtener ejemplos de .ebextensions de uso común, consulte el [Repositorio de archivos de configuración de Elastic Beanstalk](https://github.com/awsdocs/elastic-beanstalk-samples/tree/master/configuration-files).

**Requisitos**
+ **Ubicación**: Elastic Beanstalk procesará todas las carpetas de `.ebextensions` presentes en la implementación. No obstante, le recomendamos que coloque todos sus archivos de configuración en una sola carpeta, denominada `.ebextensions`, en la raíz de su paquete de código fuente. Los exploradores de archivos pueden ocultar las carpetas que comienzan con un punto, así que asegúrese de agregar la carpeta al crear el paquete de código fuente. Para obtener más información, consulte [Creación de una agrupación de orígenes de aplicación en Elastic Beanstalk.](applications-sourcebundle.md).
+ **Naming (Denominación)**: los archivos de configuración deben tener la extensión de archivo `.config`.
+ **Formatting (Formato)**: los archivos de configuración deben cumplir las especificaciones de formato de YAML o JSON.

  Si utiliza YAML, use siempre espacios para aplicar sangría a las claves en los diferentes niveles de anidación. Para obtener más información acerca de YAML, consulte [YAML Ain't Markup Language (YAML™) (versión 1.1)](http://yaml.org/spec/current.html).
+ **Uniqueness (Unicidad)**: use cada clave una sola vez en cada archivo de configuración.
**Advertencia**  
Si utiliza una clave (por ejemplo, `option_settings`) dos veces en el mismo archivo de configuración, se descartará una de las secciones. Combine secciones duplicadas en una sola sección o colóquelas en archivos de configuración distintos.

El proceso de implementación varía ligeramente en función del cliente que se utilice para administrar los entornos. Consulte las secciones siguientes para obtener más detalles:
+ [Consola de Elastic Beanstalk](environment-configuration-methods-during.md#configuration-options-during-console-ebextensions)
+ [CLI DE EB](environment-configuration-methods-during.md#configuration-options-during-ebcli-ebextensions)
+ [AWS CLI](environment-configuration-methods-during.md#configuration-options-during-awscli-ebextensions)

**Topics**
+ [Opciones de configuración](ebextensions-optionsettings.md)
+ [Personalización de software en servidores Linux](customize-containers-ec2.md)
+ [Personalización de software en servidores Windows](customize-containers-windows-ec2.md)
+ [Añadir y personalizar recursos del entorno de Elastic Beanstalk](environment-resources.md)