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.
Ajuste de opciones de configuración antes de crear el entorno
AWS Elastic Beanstalk admite un gran número de opciones de configuración que le permiten modificar los valores que se aplican a los recursos de su entorno. Varias de estas opciones tienen valores predeterminados que pueden invalidarse para personalizar su entorno. Otras opciones se pueden configurar para habilitar características adicionales.
Elastic Beanstalk admite dos métodos para guardar valores de opciones de configuración. Se pueden incluir archivos de configuración en formato YAML o JSON en el código fuente de su aplicación en un directorio denominado .ebextensions
e implementarse como parte del paquete de código fuente de su aplicación. Los archivos de configuración se crean y administran localmente.
Las configuraciones guardadas son plantillas que crea desde un entorno en ejecución o archivo de opciones JSON y almacena en Elastic Beanstalk. Las configuraciones guardadas existentes también se pueden ampliar para crear una nueva configuración.
nota
Los valores definidos en los archivos de configuración y las configuraciones guardadas tienen menos prioridad que los valores configurados durante o después de la creación del entorno, incluidos los valores recomendados aplicados por la consola de Elastic Beanstalk y la CLI de EB. Para obtener más información, consulte Prioridad.
Las opciones se pueden especificar también en un documento JSON y proporcionarse directamente a Elastic Beanstalk al crear o actualizar un entorno con la CLI de EB o la AWS CLI. Las opciones proporcionadas directamente a Elastic Beanstalk de esta forma invalidan todos los demás métodos.
Para ver la lista completa de opciones disponibles, consulte Opciones de configuración.
Métodos
Archivos de configuración (.ebextensions
)
Utilice .ebextensions
para configurar opciones que sean necesarias para que su aplicación funcione y para proporcionar valores predeterminados para otras opciones que se puedan invalidar en un nivel mayor de prioridad. Las opciones especificadas en .ebextensions
tienen el nivel de prioridad más bajo y se invalidan con los valores de cualquier otro nivel.
Para utilizar archivos de configuración, cree una carpeta con el nombre .ebextensions
en la parte superior del código fuente de su proyecto. Agrega un archivo con la extensión .config
y especifique las opciones de la siguiente manera:
option_settings:
- namespace: namespace
option_name: option name
value: option value
- namespace: namespace
option_name: option name
value: option value
Por ejemplo, el siguiente archivo de configuración establece la URL de comprobación de estado de la aplicación en /health
:
healthcheckurl.config
option_settings:
- namespace: aws:elasticbeanstalk:application
option_name: Application Healthcheck URL
value: /health
En JSON:
{
"option_settings" :
[
{
"namespace" : "aws:elasticbeanstalk:application",
"option_name" : "Application Healthcheck URL",
"value" : "/health"
}
]
}
Esto configura el balanceador de carga de Elastic Load Balancing de su entorno de Elastic Beanstalk para que realice una solicitud HTTP a la ruta /health
a cada instancia EC2 con el fin de determinar si está en buen estado o no.
nota
YAML usa la sangría uniforme. Utilice el mismo nivel de sangría cuando sustituya el contenido en el archivo de configuración de ejemplo y asegúrese de que el editor de texto utiliza espacios para la sangría, no tabuladores.
Incluya el directorio .ebextensions
en el paquete de código fuente de la aplicación e impleméntelo en un entorno de Elastic Beanstalk nuevo o existente.
Los archivos de configuración admiten varias secciones además de option_settings
para personalizar el software y los archivos que se ejecutan en los servidores de su entorno. Para obtener más información, consulte .Ebextensions.
Configuraciones guardadas
Cree una configuración guardada para guardar los valores que ha aplicado a un entorno existente durante o después de la creación del entorno mediante la consola de Elastic Beanstalk, la CLI de EB o la AWS CLI. Las configuraciones guardadas pertenecen a una aplicación y se pueden aplicar a entornos nuevos o existentes de dicha aplicación.
Consola de Elastic Beanstalk
Para crear una configuración guardada (consola de Elastic Beanstalk)
Abra la consola de Elastic Beanstalk
y, en la lista Regions (Regiones), seleccione su Región de AWS. -
En el panel de navegación, elija Environments (Entornos) y, a continuación, elija el nombre del entorno en la lista.
nota
Si tiene muchos entornos, utilice la barra de búsqueda para filtrar la lista de entornos.
-
Elija Actions (Acciones) y, a continuación, seleccione Save configuration (Guardar configuración).
-
Utilice el cuadro de diálogo en pantalla para completar la acción.
Las configuraciones guardadas se almacenan en el bucket de S3 de Elastic Beanstalk en una carpeta en la que está incluida el nombre de la aplicación. Por ejemplo, las configuraciones de una aplicación llamada my-app
en la región us-west-2 para el número de cuenta 123456789012 se encuentran en s3://elasticbeanstalk-us-west-2-123456789012/resources/templates/my-app
.
CLI DE EB
La CLI de EB proporciona también subcomandos para interactuar con las configuraciones guardadas en eb config:
Para crear una configuración guardada (CLI de EB)
-
Guarde la configuración actual del entorno asociado:
~/project$
eb config save --cfg
my-app-v1
La CLI de EB guarda la configuración en
~/project/.elasticbeanstalk/saved_configs/
my-app-v1
.cfg.yml -
Modifique la configuración guardada localmente en caso necesario.
-
Cargue la configuración guardada en S3:
~/project$
eb config put
my-app-v1
AWS CLI
Creación de una configuración guardada desde un entorno en ejecución con aws elasticbeanstalk
create-configuration-template
Para crear una configuración guardada (AWS CLI)
-
Identifique el ID de entorno de su entorno de Elastic Beanstalk con
describe-environments
:$
aws elasticbeanstalk describe-environments --environment-name
{ "Environments": [ { "ApplicationName": "my-env", "EnvironmentName": "my-env", "VersionLabel": "89df", "Status": "Ready", "Description": "Environment created from the EB CLI using \"eb create\"", "EnvironmentId": "my-env
e-vcghmm2zwk
", "EndpointURL": "awseb-e-v-AWSEBLoa-1JUM8159RA11M-43V6ZI1194.us-west-2.elb.amazonaws.com", "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.2 running Multi-container Docker 1.7.1 (Generic)", "CNAME": "my-env-nfptuqaper.elasticbeanstalk.com", "Health": "Green", "AbortableOperationInProgress": false, "Tier": { "Version": " ", "Type": "Standard", "Name": "WebServer" }, "HealthStatus": "Ok", "DateUpdated": "2015-10-01T00:24:04.045Z", "DateCreated": "2015-09-30T23:27:55.768Z" } ] } -
Guarde la configuración actual del entorno con
create-configuration-template
:$ aws elasticbeanstalk create-configuration-template --environment-id
e-vcghmm2zwk
--application-namemy-app
--template-namev1
Elastic Beanstalk guarda la configuración en su bucket de Elastic Beanstalk en Amazon S3.
Documento JSON
Si utiliza la AWS CLI para crear y actualizar entornos, también puede proporcionar opciones de configuración en formato JSON. Una biblioteca de archivos de configuración en JSON es útil si utiliza la AWS CLI para crear y administrar entornos.
Por ejemplo, el siguiente documento JSON establece la URL de comprobación de estado de la aplicación en /health
:
~/ebconfigs/healthcheckurl.json
[
{
"Namespace": "aws:elasticbeanstalk:application",
"OptionName": "Application Healthcheck URL",
"Value": "/health"
}
]
Configuración de la CLI de EB
Además de admitir configuraciones guardadas y la configuración directa del entorno con comandos eb config, la CLI de EB tiene un archivo de configuración con una opción denominada default_ec2_keyname
que puede utilizar para especificar un par de claves de Amazon EC2 para el acceso SSH a las instancias de su entorno. La CLI de EB utiliza esta opción para establecer la opción de configuración EC2KeyName
en el espacio de nombres aws:autoscaling:launchconfiguration
.
~/workspace/my-app/.elasticbeanstalk/config.yml
branch-defaults:
master:
environment: my-env
develop:
environment: my-env-dev
deploy:
artifact: ROOT.war
global:
application_name: my-app
default_ec2_keyname: my-keypair
default_platform: Tomcat 8 Java 8
default_region: us-west-2
profile: null
sc: git