

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
<a name="connect-ec2-manual"></a>

**Topics**
+ [Paso 1: creación de una instancia de Amazon EC2](#manual-connect-ec2.launch-ec2-instance)
+ [Paso 2: crear un grupo de seguridad](#manual-connect-ec2.security-group)
+ [Paso 3: crear un clúster de Amazon DocumentDB](#manual-connect-ec2.launch-cluster)
+ [Paso 4: conectarse a su instancia de Amazon EC2](#manual-connect-ec2.connect)
+ [Paso 5: instalación del intérprete de comandos de MongoDB](#manual-connect-ec2.install-mongo-shell)
+ [Paso 6: administrar TLS de Amazon DocumentDB](#manual-connect-ec2.tls)
+ [Paso 7: conectarse a su clúster de Amazon DocumentDB](#manual-connect-ec2.connect-use)
+ [Paso 8: insertar y consultar datos](#manual-cloud9-insert-query)
+ [Paso 9: explorar](#manual-connect-ec2.explore)

En los siguientes pasos se presupone que ha completado los pasos que se detallan en el tema [Requisitos previos](connect-ec2.md#connect-ec2-prerequisites).

## Paso 1: creación de una instancia de Amazon EC2
<a name="manual-connect-ec2.launch-ec2-instance"></a>

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.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/ec2/launch-instance.png)

1. Ingrese un nombre o identificador en el campo **Nombre** ubicado en la sección **Nombres y etiquetas**.

1. 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.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/ec2/linux2-ami.png)

1. Busque y seleccione **t3.micro** en la lista desplegable de **Tipo de instancia**.

1. 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.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/ec2/key-pair.png)

   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.

     1. 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**.

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

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

     1. 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.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/ec2/create-key-pair.png)
**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.

1. 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.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/ec2/firewall.png)

   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.

   1. 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.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/ec2/ip-field.png)

1. 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
<a name="manual-connect-ec2.security-group"></a>

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](https://console.aws.amazon.com/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.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/ec2/nav-security-groups.png)

1. Elija **Creación de grupo de seguridad**.  
![\[El botón Crear grupo de seguridad.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/ec2/create-sg-btn-2.png)

1. En la sección **Detalles básicos**:

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

   1. En **Descripción**, escriba una descripción.

   1. En **VPC**, acepte el uso de la VPC predeterminada.

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

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

   1. En **Rango de puertos**, introduzca `27017`.

   1. 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.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/ec2/inbound-rules.png)

1. Acepte todos los demás valores predeterminados y elija **Crear grupo de seguridad**.  
![\[El botón Crear grupo de seguridad.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/ec2/create-sg-btn-2.png)

## Paso 3: crear un clúster de Amazon DocumentDB
<a name="manual-connect-ec2.launch-cluster"></a>

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.

1. Seleccione **Crear**.

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

1. 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**.

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

1. 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](db-instance-nvme.md).
   + 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](db-instance-classes.md#db-instance-class-specs).
   + 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.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/create-cluster/instance-config.png)

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

1. 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](docdb-secrets-manager.md) para obtener más información.

1. Elija **Create cluster**.

## Paso 4: conectarse a su instancia de Amazon EC2
<a name="manual-connect-ec2.connect"></a>

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\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/ec2/ec2-instance-table.png)

1. Elija **Conectar**.  
![\[Resumen de instancias de una instancia de Amazon EC2. El botón Conectar se encuentra en la esquina superior derecha.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/ec2/ec2-instance-summary.png)

1. 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.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/ec2/connect-options.png)

**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
<a name="manual-connect-ec2.install-mongo-shell"></a>

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

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

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

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

1. Importe y actualice la base de datos del paquete local utilizando el siguiente comando:

   ```
   sudo apt-get update
   ```

1. 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](https://docs.mongodb.com/v3.6/tutorial/install-mongodb-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](https://www.mongodb.com/docs/manual/administration/install-community/) en la documentación de MongoDB.

------

## Paso 6: administrar TLS de Amazon DocumentDB
<a name="manual-connect-ec2.tls"></a>

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](https://docs.aws.amazon.com/documentdb/latest/developerguide/security.encryption.ssl.html).

## Paso 7: conectarse a su clúster de Amazon DocumentDB
<a name="manual-connect-ec2.connect-use"></a>

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.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/cluster-connect-choose.png)

1. 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.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/connect-mongosh.png)

   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.

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

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

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

1. 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](https://docs.aws.amazon.com/documentdb/latest/developerguide/troubleshooting.html).

## Paso 8: insertar y consultar datos
<a name="manual-cloud9-insert-query"></a>

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')
   }
   ```

1. 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" }
   ```

1. 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 } }
   ```

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

1. 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}
   ```

1. 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}]
   ```

1. 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
<a name="manual-connect-ec2.explore"></a>

¡Enhorabuena\$1 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:
+  [Administración de Amazon DocumentDB](https://docs.aws.amazon.com/documentdb/latest/developerguide/managing-documentdb.html) 
+  [Escalado](https://docs.aws.amazon.com/documentdb/latest/developerguide/operational_tasks.html) 
+  [Copia de seguridad y restauración](https://docs.aws.amazon.com/documentdb/latest/developerguide/backup_restore.html) 

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