Añadir una instancia de Amazon RDS DB a su entorno Python de Elastic Beanstalk - AWS Elastic Beanstalk

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.

Añadir una instancia de Amazon RDS DB a su entorno Python de Elastic Beanstalk

En este tema se proporcionan instrucciones para crear un Amazon RDS mediante la consola de Elastic Beanstalk. Puede utilizar una instancia de base de datos de Amazon Relational Database Service (RDSAmazon) para almacenar los datos recopilados y modificados por la aplicación. La base de datos se puede adjuntar al entorno y administrarse con Elastic Beanstalk, o bien, crearse como desacoplada y administrarse de forma externa a través de otro servicio. En estas instrucciones, la base de datos se acopla a su entorno y se administra mediante Elastic Beanstalk. Para obtener más información sobre la integración de Amazon RDS con Elastic Beanstalk, consulte. Añadir una base de datos al entorno de Elastic Beanstalk

Añadir una instancia de base de datos al entorno

Para agregar una instancia de base de datos al entorno
  1. Abra la consola de Elastic Beanstalk y, en la lista Regiones, seleccione su. Región de AWS

  2. 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.

  3. En el panel de navegación, elija Configuration (Configuración).

  4. En la categoría de configuración Database (Base de datos), seleccione Edit (Editar).

  5. Seleccione un motor de base de datos y escriba el nombre de usuario y la contraseña.

  6. Para guardar los cambios, elija Aplicar en la parte inferior de la página.

Se tarda alrededor de 10 minutos en añadir una instancia de base de datos. Cuando se haya completado la actualización del entorno, el nombre de host de la instancia de base de datos y otra información de conexión estarán disponibles para su aplicación mediante las siguientes propiedades de entorno

Nombre de la propiedad Descripción Valor de la propiedad

RDS_HOSTNAME

El nombre de host de la instancia de base de datos.

En la pestaña Conectividad y seguridad de la RDS consola de Amazon: Endpoint.

RDS_PORT

El puerto en donde la instancia de base de datos acepta las conexiones. El valor predeterminado varía dependiendo del motor de base de datos.

En la pestaña Conectividad y seguridad de la RDS consola de Amazon: Puerto.

RDS_DB_NAME

El nombre de la base de dato, ebdb.

En la pestaña Configuración de la RDS consola de Amazon: Nombre de base de datos.

RDS_USERNAME

El nombre de usuario que ha configurado para la base de datos.

En la pestaña Configuración de la RDS consola de Amazon: nombre de usuario principal.

RDS_PASSWORD

La contraseña que ha configurado para la base de datos.

No está disponible como referencia en la RDS consola de Amazon.

Para obtener más información sobre la configuración de una instancia de bases de datos acopladas a un entorno de Elastic Beanstalk, consulte Añadir una base de datos al entorno de Elastic Beanstalk.

Descargar un controlador

Añada el controlador de base de datos al archivo de requisitos de su proyecto.

ejemplo requirements.txt — Django con mi SQL
Django==2.2 mysqlclient==2.0.3
Paquetes de controladores comunes para Python
  • Mi — SQL mysqlclient

  • Postgre — SQL psycopg2

  • Oracle: cx_Oracle

  • SQLServidor — adodbapi

Para obtener más información, consulte Python DatabaseInterfaces y Django 2.2: bases de datos compatibles.

Conexión a una base de datos

Elastic Beanstalk proporciona información de conexión para instancias de base de datos asociadas en propiedades de entorno. Use os.environ['VARIABLE'] para leer las propiedades y configurar una conexión con la base de datos.

ejemplo Archivo de configuración de Django: diccionario DATABASES
import os if 'RDS_HOSTNAME' in os.environ: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': os.environ['RDS_DB_NAME'], 'USER': os.environ['RDS_USERNAME'], 'PASSWORD': os.environ['RDS_PASSWORD'], 'HOST': os.environ['RDS_HOSTNAME'], 'PORT': os.environ['RDS_PORT'], } }