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.
Introducción a los clústeres elásticos de Amazon DocumentDB
En esta sección de introducción se explica cómo crear y consultar su primer clúster elástico. Existen diversas maneras de conectarse y comenzar a utilizar los clústeres elásticos. Esta guía utiliza AWS Cloud9, un terminal basado en la web para conectarse y consultar su clúster elástico mediante el intérprete de comandos de mongo directamente desde la AWS Management Console.
Temas
Configuración
Si prefiere conectarse a su Amazon DocumentDB desde su máquina local mediante la creación de una conexión SSH a una instancia de Amazon EC2, consulte Cómo conectarse con Amazon EC2.
Requisitos previos
Antes de crear el primer clúster de Amazon DocumentDB, debe hacer lo siguiente:
- Creación de una cuenta de Amazon Web Services (AWS)
-
Para empezar a utilizar Amazon DocumentDB, debe tener una cuenta de Amazon Web Services (AWS). La AWS cuenta es gratuita. Solo se paga por los servicios y los recursos que se utilicen.
Si no tiene una Cuenta de AWS, complete los siguientes pasos para crearla.
Para suscribirte a una Cuenta de AWS
Siga las instrucciones que se le indiquen.
Parte del procedimiento de registro consiste en recibir una llamada telefónica e indicar un código de verificación en el teclado del teléfono.
Cuando te registras en una Cuenta de AWS, Usuario raíz de la cuenta de AWSse crea una. El usuario raíz tendrá acceso a todos los AWS services y recursos de esa cuenta. Como práctica recomendada de seguridad, asigne acceso administrativo a un usuario y utilice únicamente el usuario raíz para realizar tareas que requieren acceso de usuario raíz.
- Configure los permisos AWS Identity and Access Management (IAM) necesarios.
-
El acceso para gestionar los recursos de Amazon DocumentDB, como clústeres, instancias y grupos de parámetros de clústeres, requiere credenciales que AWS pueda utilizar para autenticar sus solicitudes. Para obtener más información, consulte Identity and Access Management para Amazon DocumentDB.
-
En la barra de búsqueda AWS Management Console, escriba IAM y seleccione IAM en el menú desplegable.
-
Cuando esté en la consola de IAM, seleccione Usuarios en el panel de navegación.
-
Seleccione su nombre de usuario.
-
Haga clic en el botón Añadir permisos.
-
Seleccione Asociar directamente las políticas existentes.
-
Escriba
AmazonDocDBFullAccess
en la barra de búsqueda y selecciónelo en cuanto aparezca en los resultados de búsqueda. -
Haga clic en el botón azul de la parte inferior que dice Siguiente: Revisión.
-
Haga clic en el botón azul de la parte inferior que dice Añadir permisos.
-
- Creación de una Amazon Virtual Private Cloud (Amazon VPC)
-
Este paso solo es necesario si todavía no tiene una Amazon VPC predeterminada. Si no lo hace, complete el paso 1 de la Introducción a Amazon VPC en la Guía del usuario de Amazon VPC. Esto tardará menos de cinco minutos.
Paso 1: crear un clúster elástico
En esta sección, explicamos cómo crear un clúster elástico completamente nuevo, utilizando las instrucciones siguientes AWS Management Console o siguiendo AWS CLI estas instrucciones.
Paso 2: Crea un entorno AWS Cloud9
AWS Cloud9 proporciona un terminal basado en la web que puede utilizar para conectarse a los clústeres elásticos de Amazon DocumentDB y consultarlos mediante el shell mongo.
nota
Nota: El AWS Cloud9 entorno debe estar en el mismo grupo de seguridad que la instancia. Puede cambiar el grupo de seguridad en la consola de Amazon EC2.
-
Utilice su AWS cuenta y acceda a AWS Management Console.
-
Vaya a la consola de AWS Cloud9 . Puede escribir “Cloud9” en el campo de búsqueda para localizarla.
-
En la página de inicio del entorno AWS Cloud9, seleccione Crear entorno.
-
En la página de nombres del entorno, en el campo Nombre, introduzca el nombre que desee.
Elija Next Step (Paso siguiente).
-
En Configuración del entorno, en la sección Tipo de entorno, seleccione Crear una nueva instancia de EC2 para el entorno (acceso directo).
En la sección Tipo de instancia, seleccione un tipo de instancia adecuado para su red.
En la sección Plataforma, seleccione Amazon Linux 2 (recomendado).
-
Expanda Network settings (advanced) (Ajustes de red (Avanzado)).
Elija la VPC y una de las subredes que utilizó al crear el clúster elástico.
Elija Next Step (Paso siguiente).
-
Revise su AWS Cloud9 configuración.
Si la configuración es correcta, seleccione Crear entorno.
Paso 3: instalar el intérprete de comandos de mongo
Una vez que su AWS Cloud9 entorno esté listo, estará listo para conectarse a su clúster. A continuación, instale el shell mongo en el AWS Cloud9 entorno que creó en el paso 3. El intérprete de comandos de mongo es una utilidad de línea de comandos que se utiliza para conectarse y consultar su clúster elástico.
Si su AWS Cloud9 entorno sigue abierto desde el paso 3, vuelva a ese entorno y vaya directamente a la instrucción 3. Si ha navegado fuera de su AWS Cloud9 entorno, en la AWS Cloud9 consola, en la sección Sus entornos, busque el entorno etiquetado con el nombre que estableció en el paso anterior. Seleccione Open HCX.
-
En el símbolo del sistema, cree el archivo de repositorio con el siguiente comando:
echo -e "[mongodb-org-4.0] \nname=MongoDB Repository\nbaseurl=https://repo.mongodb.org/yum/amazon/2013.03/mongodb-org/4.0/x86_64/\ngpgcheck=1 \nenabled=1 \ngpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc" | sudo tee /etc/yum.repos.d/mongodb-org-4.0.repo
-
Cuando esté completo, instale el intérprete de comandos mongo con el siguiente comando:
sudo yum install -y mongodb-org-shell
Paso 4: conectarse a su nuevo clúster elástico
Conéctese a su clúster mediante el intérprete de comandos de mongo que instaló en el paso 4.
-
En la consola de administración de Amazon DocumentDB, en Clústeres, localice su clúster. Ordene por rol para mostrar todos los clústeres con el rol clúster elástico.
-
Elija el clúster que creó seleccionando el identificador del clúster. En Conectividad y seguridad, copie su terminal y péguelo en su AWS Cloud9 entorno.
-
Una vez conectado, debería ver los siguientes datos de salida:
Paso 5: hacer una partición de su colección; insertar y consultar los datos
Los clústeres elásticos aportan compatibilidad para crear particiones en Amazon DocumentDB. Ahora que está conectado a su clúster, puede hacer particiones, insertar datos y ejecutar algunas consultas.
-
Para hacer particiones en una colección, escriba lo siguiente:
sh.shardCollection("db.Employee1" , { "Employeeid" : "hashed" })
-
Para insertar un solo documento, escriba lo siguiente:
db.Employee1.insert({"Employeeid":1, "Name":"Joe", "LastName": "Bruin", "level": 1 })
Se muestra lo siguiente:
WriteResult({ "nInserted" : 1 })
-
Para leer el documento que escribió, introduzca el comando
findOne()
(devuelve un único documento):db.Employee1.findOne()
Se muestra lo siguiente:
{ "_id" : ObjectId("61f344e0594fe1a1685a8151"), "EmployeeID" : 1, "Name" : "Joe", "LastName" : "Bruin", "level" : 1 }
-
Para realizar algunas consultas más, plantéese un caso de uso de perfil de juegos. Primero, inserte algunas entradas en una colección titulada “Empleado”. Introduzca lo siguiente:
db.Employee1.insertMany([ { "Employeeid" : 1, "name" : "Matt", "lastname": "Winkle", "level": 12}, { "Employeeid" : 2, "name" : "Frank", "lastname": "Chen", "level": 2}, { "Employeeid" : 3, "name" : "Karen", "lastname": "William", "level": 7}, { "Employeeid" : 4, "name" : "Katie", "lastname": "Schaper", "level": 3} ])
Se muestra lo siguiente:
{ "acknowledged" : true, "insertedIds" : [ 1, 2, 3, 4 ] }
-
Para devolver todos los documentos de la colección de perfiles, introduzca el comando
find
():db.Employee1.find()
Se muestran los datos que ingresó en el paso 4.
-
Para consultar un solo documento, incluya un filtro (por ejemplo: “Katie”). Introduzca lo siguiente:
db.Employee1.find({name: "Katie"})
Se muestra lo siguiente:
{ "_id" : 4, "name" : "Katie", "lastname": "Schaper", "level": 3}
-
Para buscar un perfil y modificarlo, introduzca el comando
findAndModify
. En este ejemplo, al empleado “Matt” se le asigna un nivel superior de “14”:db.Employee1.findAndModify({ query: { "Employeeid" : 1, "name" : "Matt"}, update: { "Employeeid" : 1, "name" : "Matt", "lastname" : "Winkle", "level" : 14 } })
Aparece el siguiente resultado (tenga en cuenta que el nivel no ha cambiado todavía):
{ "_id" : 1, "name" : "Matt", "lastname" : "Winkle", "level" : 12, }
-
Para verificar el aumento de nivel, introduzca la siguiente consulte:
db.Employee1.find({name: "Matt"})
Se muestra lo siguiente:
{ "_id" : 1, "name" : "Matt", "lastname" : "winkle", "level" : 14 }