Conexión manual de Amazon EC2 - Amazon DocumentDB

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.

Conexión manual de Amazon EC2

En los siguientes pasos se presupone que ha completado los pasos que se detallan en el tema Requisitos previos.

Paso 1: creación de una instancia de Amazon EC2

En este paso, creará una instancia de Amazon EC2 en la misma región y Amazon VPC que utilizará más adelante para aprovisionar el clúster de Amazon DocumentDB.

  1. En el panel de la consola de Amazon EC2, seleccione Lanzar instancia.

    La sección Lanzar instancia en la consola de Amazon EC2.
  2. Ingrese un nombre o identificador en el campo Nombre ubicado en la sección Nombres y etiquetas.

  3. En la lista desplegable Imagen de máquina de Amazon (AMI), busque la AMI de Amazon Linux 2 y selecciónela.

    La interfaz Imágenes de aplicaciones y sistema operativo con la opción AMI de Amazon Linux 2 seleccionada en la sección Inicio rápido.
  4. Busque y seleccione t3.micro en la lista desplegable de Tipo de instancia.

  5. En la sección Par de claves (inicio de sesión), ingrese el identificador de un par de claves existente o elija Crear un par de claves nuevo.

    La interfaz Par de claves, en la que se muestra el campo del nombre del par de claves y la opción Crear un nuevo par de claves.

    También debe proporcionar un par de claves de Amazon EC2.

    • Si tiene un par de claves de Amazon EC2:

      1. Seleccione un par de claves, elija su par de claves de la lista.

      2. Debe tener el archivo de clave privada (archivo .pem o .ppk) a su disposición para poder iniciar sesión en la instancia de Amazon EC2.

    • Si no tiene un par de claves de Amazon EC2:

      1. Seleccione Crear un par de claves nuevo y aparecerá el cuadro de diálogo Crear par de claves.

      2. Escriba un nombre en el campo Nombre del par de claves.

      3. Seleccione el Tipo de par de claves y el Formato de archivo de clave privada.

      4. Elija Crear par de claves.

    La interfaz Crear par de claves con campos para el nombre, el tipo y el formato de archivo del par de claves. El botón Crear par de claves se encuentra en la esquina inferior derecha.
    nota

    Por motivos de seguridad, le recomendamos encarecidamente que utilice un par de claves para la conectividad a Internet y SSH con la instancia de EC2.

  6. En la sección Configuración de red, en Firewall (grupos de seguridad), elija Crear grupo de seguridad o Seleccionar grupo de seguridad existente.

    La interfaz Configuración de red, en la que se muestran opciones para crear un grupo de seguridad.

    Si opta por seleccionar un grupo de seguridad existente, seleccione uno en la lista desplegable de Grupos de seguridad comunes.

    Si ha optado por crear un grupo de seguridad nuevo, haga lo siguiente:

    1. Compruebe todas las reglas de tráfico que se aplican a la conectividad de EC2.

    2. En el campo IP, elija Mi IP o seleccione Personalizado para elegir entre una lista de bloques de CIDR, listas de prefijos o grupos de seguridad. No recomendamos Cualquier lugar como opción, a menos que la instancia de EC2 se encuentre en una red aislada, ya que permite el acceso a la instancia de EC2 desde cualquier dirección IP.

    El menú desplegable Mi IP.
  7. En la sección Resumen, revise la configuración de EC2 y, si es correcta, elija Lanzar instancia.

Paso 2: crear un grupo de seguridad

Ahora creará un nuevo grupo de seguridad en su Amazon VPC predeterminada. El grupo de seguridad demoDocDB le permite conectarse a su clúster de Amazon DocumentDB en el puerto 27017 (el puerto predeterminado de Amazon DocumentDB) desde su instancia de Amazon EC2.

  1. En la Consola de administración de Amazon EC2, en Red y seguridad, elija Grupos de seguridad.

    Panel de navegación de la consola Amazon DocumentDB con la opción Grupos de seguridad seleccionada en el menú desplegable Red y seguridad.
  2. Elija Creación de grupo de seguridad.

    El botón Crear grupo de seguridad.
  3. En la sección Detalles básicos:

    1. En Nombre del grupo de seguridad, introduzca demoDocDB.

    2. En Descripción, escriba una descripción.

    3. En VPC, acepte el uso de la VPC predeterminada.

  4. En la sección Inbound rules (Reglas de entrada), elija Add rule (agregar regla).

    1. En Tipo, elija Regla TCP personalizada (predeterminada).

    2. En Rango de puertos, introduzca 27017.

    3. En Source (Origen), seleccione Custom (Personalizado). En el campo contiguo, busque el grupo de seguridad que acaba de crear en el paso 1. Es posible que tenga que actualizar el navegador para que la consola Amazon EC2 complete automáticamente el nombre de la fuente .

    La sección de reglas de entrada, en la que se muestran los campos del tipo, el protocolo, el rango de puertos, el origen y la descripción. El botón Añadir regla se encuentra en la esquina inferior izquierda.
  5. Acepte todos los demás valores predeterminados y elija Crear grupo de seguridad.

    El botón Crear grupo de seguridad.

Paso 3: crear un clúster de Amazon DocumentDB

Mientras se aprovisiona la instancia de Amazon EC2, creará su clúster de Amazon DocumentDB.

  1. Navegue hasta la consola de Amazon DocumentDB y elija Clústeres en el panel de navegación.

  2. Seleccione Crear.

  3. Deje la configuración de Tipo de clúster como predeterminada en Clúster basado en instancias.

  4. En Configuración del clúster, ingrese un nombre único en Identificador de clúster. Tenga en cuenta que la consola cambiará todos los nombres de los clústeres a minúsculas independientemente de cómo se ingresen.

    Deje Versión del motor con su valor predeterminado de 5.0.0.

  5. En Configuración del almacenamiento en clúster, deje la configuración predeterminada de Amazon DocumentDB estándar.

  6. En Configuración de instancias:

    • En Clase de instancia de base de datos, elija Clases optimizadas para memoria (incluidas las clases r), que es la opción predeterminada.

      La otra opción de instancia son NVMe las clases respaldadas por comandos. Para obtener más información, consulte Instancias respaldadas por NVMe.

    • En Clase de instancia, elija el tipo de instancia que se adapte a sus necesidades. Para obtener una explicación más detallada de las clases de instancia, consulte Especificaciones de clases de instancias.

    • En Número de instancias, elija el número que mejor refleje sus necesidades. Recuerde que cuanto menor sea el número, menor será el costo y menor será el read/write volumen que puede administrar el clúster.

    La interfaz de configuración con valores predeterminados para el identificador del clúster, la versión del motor y la clase de instancia, con el número de instancias establecido en uno.
  7. En Conectividad, deje la configuración predeterminada de No conectarse a un recurso de computación de EC2.

    nota

    La conexión a un recurso de computación de EC2 crea automáticamente grupos de seguridad para la conexión al clúster. Como en el paso anterior creó estos grupos de seguridad manualmente, debe seleccionar No conectarse a un recurso de computación de EC2 para no crear un segundo conjunto de grupos de seguridad.

  8. En la sección Autenticación, ingrese un nombre de usuario para el usuario principal y, a continuación, elija Autoadministrado. Ingrese una contraseña y, a continuación, confírmela.

    Si, en su lugar, eligió Administrado en AWS Secrets Manager, consulte Administración de contraseñas con Amazon DocumentDB y AWS Secrets Manager para obtener más información.

  9. Elija Create cluster.

Paso 4: conectarse a su instancia de Amazon EC2

La conexión de la instancia de Amazon EC2 le permitirá instalar el intérprete de comandos de MongoDB. La instalación del intérprete de comandos de mongo permite conectarse a su clúster de Amazon DocumentDB y realizar consultas en él. Realice los siguientes pasos:

  1. En la consola Amazon EC2, navegue hasta sus instancias y compruebe si la instancia que acaba de crear se está ejecutando. Si es así, haga clic en el ID de la instancia para seleccionar la instancia.

    Tabla de instancias con una lista de dos instancias de la consola de Amazon EC2
  2. Elija Conectar.

    Resumen de instancias de una instancia de Amazon EC2. El botón Conectar se encuentra en la esquina superior derecha.
  3. Hay cuatro opciones con pestañas para el método de conexión: Amazon EC2 Instance Connect, Session Manager, cliente SSH o consola serie de EC2. Debe elegir uno y seguir sus instrucciones. Cuando haya terminado, elija Conectar.

    Interfaz en la que se muestran las opciones de configuración del método de conexión EC2 Instance Connect.
nota

Si su dirección IP ha cambiado después de iniciar este tutorial o si va a volver a su entorno más adelante, debe actualizar la regla de entrada del grupo de seguridad demoEC2 para habilitar el tráfico entrante desde su nueva dirección de API.

Paso 5: instalación del intérprete de comandos de MongoDB

Ahora puede instalar el intérprete de comandos de MongoDB, que es una utilidad de línea de comandos que se utiliza para conectarse al clúster de Amazon DocumentDB y consultarlo. Actualmente hay dos versiones del intérprete de comandos de MongoDB: la versión más reciente, mongosh, y la versión anterior, el intérprete de comandos de mongo.

importante

Existe una limitación conocida con los controladores de Node.js anteriores a la versión 6.13.1, ya que Amazon DocumentDB no los admite actualmente para la autenticación de identidad de IAM. Los controladores Node.js y las herramientas que utilizan el controlador Node.js (como mongosh) deben actualizarse al controlador Node.js versión 6.13.1 o posterior.

Siga las siguientes instrucciones para instalar el intérprete de comandos de MongoDB en su sistema operativo.

On Amazon Linux

Cómo instalar el intérprete de comandos de MongoDB en Amazon Linux

Si no utiliza IAM y desea utilizar el último intérprete de comandos de MongoDB (mongosh) para conectarse a su clúster de Amazon DocumentDB, siga estos pasos:

  1. Cree el archivo de repositorio. En la línea de comando de la instancia de EC2 que creó, escriba el siguiente comando:

    echo -e "[mongodb-org-5.0] \nname=MongoDB Repository\nbaseurl=https://repo.mongodb.org/yum/amazon/2023/mongodb-org/5.0/x86_64/\ngpgcheck=1 \nenabled=1 \ngpgkey=https://pgp.mongodb.com/server-5.0.asc" | sudo tee /etc/yum.repos.d/mongodb-org-5.0.repo
  2. Cuando esté completo, instale mongosh con una de las siguientes opciones de comando en el símbolo del sistema:

    Opción 1: si eligió Amazon Linux 2023 (predeterminado) durante la configuración de Amazon EC2, introduzca este comando:

    sudo yum install -y mongodb-mongosh-shared-openssl3

    Opción 2: si eligió Amazon Linux 2 durante la configuración de Amazon EC2, introduzca este comando:

    sudo yum install -y mongodb-mongosh

Si utiliza IAM, debe utilizar la versión anterior del intérprete de comandos de MongoDB (5.0) para conectarse al clúster de Amazon DocumentDB. Siga estos pasos:

  1. Cree el archivo de repositorio. En la línea de comando de la instancia de EC2 que creó, escriba el siguiente comando:

    echo -e "[mongodb-org-5.0] \nname=MongoDB Repository\nbaseurl=https://repo.mongodb.org/yum/amazon/2023/mongodb-org/5.0/x86_64/\ngpgcheck=1 \nenabled=1 \ngpgkey=https://pgp.mongodb.com/server-5.0.asc" | sudo tee /etc/yum.repos.d/mongodb-org-5.0.repo
  2. Cuando esté completo, instale el intérprete de comandos de MongoDB 5.0 con la siguiente opción de comando en el símbolo del sistema:

    sudo yum install -y mongodb-org-shell
On Ubuntu
Cómo instalar mongosh en Ubuntu
  1. Importe la clave pública que utilizará el sistema de administración de paquetes.

    curl -fsSL https://pgp.mongodb.com/server-5.0.asc | sudo gpg --dearmor -o /usr/share/keyrings/mongodb-server-5.0.gpg
  2. Cree el archivo de lista mongodb-org-5.0.list para MongoDB mediante el comando correspondiente a su versión de Ubuntu.

    echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-5.0.gpg ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/5.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list
  3. Importe y actualice la base de datos del paquete local utilizando el siguiente comando:

    sudo apt-get update
  4. Instale mongosh.

    sudo apt-get install -y mongodb-mongosh

Para obtener información sobre cómo instalar las versiones anteriores de MongoDB en un sistema Ubuntu, consulte Install MongoDB Community Edition on Ubuntu.

On other operating systems

Para instalar el intérprete de comandos de mongo en otros sistemas operativos, consulte el tema sobre cómo instalar MongoDB Community Edition en la documentación de MongoDB.

Paso 6: administrar TLS de Amazon DocumentDB

Descargue el certificado CA para Amazon DocumentDB con el siguiente código: wget https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem

nota

La seguridad de la capa de transporte (TLS) está habilitada de forma predeterminada para todos los clústeres nuevos de Amazon DocumentDB. Para obtener más información, consulte Managing Amazon DocumentDB cluster TLS settings.

Paso 7: conectarse a su clúster de Amazon DocumentDB

  1. En la consola de Amazon DocumentDB, en Clústeres, localice su clúster. Haga clic en Identificador del clúster para elegir el clúster que creó.

    Lista de clústeres de Amazon DocumentDB en la que se muestra un clúster regional con detalles de la instancia principal.
  2. En la pestaña Conectividad y seguridad, busque Conectar a este clúster con el intérprete de comandos de mongo en el cuadro Conectar:

    Configuración de conexión del clúster con la cadena de conexión de MongoDB resaltada para conectarse a un clúster de Amazon DocumentDB mediante el intérprete de comandos de mongo.

    Copie la cadena de conexión proporcionada y péguela en el terminal.

    Haga los siguientes cambios en ella:

    1. Asegúrese de que tenga el nombre de usuario correcto en la cadena.

    2. Omita <insertYourPassword> para que el intérprete de comandos de mongo le pida la contraseña cuando se conecte.

    3. Opcional: si utiliza la autenticación de IAM o utiliza la versión anterior del intérprete de comandos de MongoDB, modifique la cadena de conexión de la siguiente manera:

      mongo --ssl --host mydocdbcluster.cluster-cozt4xr9xv9b.us-east-1.docdb.amazonaws.com:27017 --sslCAFile global-bundle.pem --username SampleUser1 --password

      Sustituya mydocdbcluster.cluster-cozt4xr9xv9b.us-east-1 por la misma información de su clúster.

  3. Pulse Intro en el terminal. Ahora se le solicitará la contraseña. Introduzca su contraseña.

  4. Cuando introduzca la contraseña y pueda ver el mensaje rs0 [direct: primary] <env-name>>, significa que se ha conectado correctamente a su clúster de Amazon DocumentDB.

¿Tiene problemas para conectarse? Consulte Solución de problemas de Amazon DocumentDB.

Paso 8: insertar y consultar datos

Ahora que está conectado a su clúster, puede realizar algunas consultas para familiarizarse con el uso de una base de datos de documentos.

  1. Para insertar un solo documento, escriba lo siguiente:

    db.collection.insertOne({"hello":"DocumentDB"})

    Obtiene el siguiente resultado:

    { acknowledged: true, insertedId: ObjectId('673657216bdf6258466b128c') }
  2. Puede leer el documento que escribió con el comando findOne() (ya que solo devuelve un documento). La siguiente entrada:

    db.collection.findOne()

    Obtiene el siguiente resultado:

    { "_id" : ObjectId("5e401fe56056fda7321fbd67"), "hello" : "DocumentDB" }
  3. Para realizar algunas consultas más, plantéese un caso de uso de perfiles de juegos. Primero, inserte algunas entradas en una colección titulada profiles. La siguiente entrada:

    db.profiles.insertMany([{ _id: 1, name: 'Matt', status: 'active', level: 12, score: 202 }, { _id: 2, name: 'Frank', status: 'inactive', level: 2, score: 9 }, { _id: 3, name: 'Karen', status: 'active', level: 7, score: 87 }, { _id: 4, name: 'Katie', status: 'active', level: 3, score: 27 } ])

    Obtiene el siguiente resultado:

    { acknowledged: true, insertedIds: { '0': 1, '1': 2, '2': 3, '3': 4 } }
  4. Utilice el comando find() para devolver todos los documentos de la colección de perfiles. La siguiente entrada:

    db.profiles.find()

    Obtendrá un resultado que coincidirá con los datos que escribió en el paso 3.

  5. Utilice una consulta para un único documento mediante un filtro. La siguiente entrada:

    db.profiles.find({name: "Katie"})

    Obtiene el siguiente resultado:

    { "_id" : 4, "name" : "Katie", "status": "active", "level": 3, "score":27}
  6. Ahora intentemos buscar un perfil y modificarlo con el comando findAndModify. Le daremos al usuario Matt 10 puntos adicionales con el siguiente código:

    db.profiles.findAndModify({ query: { name: "Matt", status: "active"}, update: { $inc: { score: 10 } } })

    Se obtiene el siguiente resultado (tenga en cuenta que la puntuación aún no ha aumentado):

    { [{_id : 1, name : 'Matt', status: 'active', level: 12, score: 202}]
  7. Puede comprobar que su puntuación ha cambiado con la siguiente consulta:

    db.profiles.find({name: "Matt"})

    Obtiene el siguiente resultado:

    { "_id" : 1, "name" : "Matt", "status" : "active", "level" : 12, "score" : 212 }

Paso 9: explorar

¡Enhorabuena! Ha completado correctamente la Guía de inicio rápido para Amazon DocumentDB.

Pasos siguientes Descubra cómo aprovechar al máximo esta potente base de datos con algunas de sus características más populares:

nota

Para ahorrar costos, puede detener el clúster de Amazon DocumentDB para reducir los costos o eliminar el clúster. De forma predeterminada, tras 30 minutos de inactividad, el AWS Cloud9 entorno detendrá la instancia Amazon EC2 subyacente.