Inicio rápido de Amazon DocumentDB mediante AWS CloudFormation
Esta sección contiene pasos y otra información que le ayudarán a comenzar rápidamente a utilizar Amazon DocumentDB (con compatibilidad con MongoDB) mediante AWS CloudFormation. Para obtener información general acerca de Amazon DocumentDB, consulte Qué es Amazon DocumentDB (compatible con MongoDB).
En estas instrucciones, se utiliza una plantilla de AWS CloudFormation para crear un clúster e instancias en la Amazon VPC predeterminada. Para obtener instrucciones sobre cómo crear estos recursos usted mismo, consulte Introducción a Amazon DocumentDB.
importante
La pila de AWS CloudFormation que crea esta plantilla crea varios recursos, incluidos los recursos de Amazon DocumentDB (por ejemplo, un clúster e instancias) y Amazon Elastic Compute Cloud, (por ejemplo, un grupo de subredes).
Algunos de estos recursos no se incluyen en la capa gratuita. Para obtener más información, consulte Precios de Amazon DocumentDB
Esta pila de AWS CloudFormation solo pretende ser una base para un tutorial. Si utiliza esta plantilla para un entorno de producción, le recomendamos que utilice políticas de IAM y seguridad más estrictas. Para obtener información sobre cómo proteger los recursos, consulte Seguridad de Amazon VPC y Seguridad y redes de Amazon EC2.
Temas
Requisitos previos
Antes de crear un clúster de Amazon DocumentDB, debe hacer lo siguiente:
-
Una VPC predeterminada de Amazon
-
Los permisos necesarios de IAM
Permisos de IAM necesarios
Los siguientes permisos permiten crear recursos para la pila de AWS CloudFormation:
Políticas administradas de AWS
-
AWSCloudFormationReadOnlyAccess
-
AmazonDocDBFullAccess
Permisos de IAM adicionales
La siguiente política describe los permisos adicionales que son necesarios para crear y eliminar esta pila de AWS CloudFormation.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:GetSSHPublicKey", "iam:ListSSHPublicKeys", "iam:CreateRole", "iam:CreatePolicy", "iam:PutRolePolicy", "iam:CreateInstanceProfile", "iam:AddRoleToInstanceProfile", "iam:GetAccountSummary", "iam:ListAccountAliases", "iam:GetRole",
"iam:DeleteRole"
,"iam:RemoveRoleFromInstanceProfile"
,"iam:DeleteRolePolicy"
,"iam:DeleteInstanceProfile"
, "cloudformation:*Stack", "ec2:DescribeKeyPairs", "ec2:*Vpc", "ec2:DescribeInternetGateways", "ec2:*InternetGateway", "ec2:createTags", "ec2:*VpcAttribute", "ec2:DescribeRouteTables", "ec2:*RouteTable", "ec2:*Subnet", "ec2:*SecurityGroup", "ec2:AuthorizeSecurityGroupIngress", "ec2:DescribeVpcEndpoints", "ec2:*VpcEndpoint", "ec2:*SubnetAttribute", "ec2:*Route", "ec2:*Instances","ec2:DeleteVpcEndpoints"
], "Resource": "*" }, { "Sid": "iamPassRole", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "rds.amazonaws.com" } } } ] }
nota
Los permisos en negrita de la política anterior solo son necesarios para eliminar una pila: iam:DeleteRole
, iam:RemoveRoleFromInstanceProfile
, iam:DeleteRolePolicy
, iam:DeleteInstanceProfile
y ec2:DeleteVpcEndpoints
. Tenga en cuenta también que ec2:*Vpc
concede permisos ec2:DeleteVpc
.
Pares de claves de Amazon EC2
Debe tener un par de claves (y el archivo PEM) disponibles en la región en la que vaya a crear la pila de AWS CloudFormation. Si necesita crear un par de claves, consulte Pares de claves e instancias de Amazon EC2 en la Guía del usuario de Amazon EC2.
Lanzamiento de una pila de AWS CloudFormation de Amazon DocumentDB
En esta sección se describe cómo lanzar y configurar una pila AWS CloudFormation de Amazon DocumentDB.
-
Inicie sesión en la AWS Management Console en https://console.aws.amazon.com/
. -
En la tabla siguiente se muestran las plantillas de pilas de Amazon DocumentDB para cada Región de AWS. Elija Lanzar pila para la Región de AWS en la que desea lanzar la pila.
Región Ver plantilla Ver en Designer iniciar Este de EE. UU. (Ohio) Ver plantilla Ver en Designer Este de EE. UU. (Norte de Virginia) Ver plantilla Ver en Designer Oeste de EE. UU. (Oregón)
Ver plantilla Ver en Designer Asia Pacific (Bombay)
Ver plantilla Ver en Designer Asia-Pacífico (Seúl)
Ver plantilla Ver en Designer Asia-Pacífico (Singapur)
Ver plantilla Ver en Designer Asia-Pacífico (Sídney)
Ver plantilla Ver en Designer Asia-Pacífico (Tokio)
Ver plantilla Ver en Designer Canadá (centro)
Ver plantilla Ver en Designer Europa (Fráncfort)
Ver plantilla Ver en Designer Europa (Irlanda)
Ver plantilla Ver en Designer Europa (Londres)
Ver plantilla Ver en Designer Europa (París)
Ver plantilla Ver en Designer -
Crear pila: describe la plantilla de Amazon DocumentDB que ha seleccionado. Cada pila se basa en una plantilla (un archivo JSON o YAML) que contiene la configuración de los recursos de AWS que desea incluir en la pila. Como eligió lanzar una pila a partir de las plantillas proporcionadas anteriormente, su plantilla ya se ha configurado para crear una pila de Amazon DocumentDB para la Región de AWS que eligió.
Cuando lanza una pila de AWS CloudFormation, la protección de eliminación del clúster de Amazon DocumentDB se deshabilita de forma predeterminada. Si desea habilitar la protección de eliminación para el clúster, complete los pasos siguientes. De lo contrario, elija Next (Siguiente) para continuar con el paso siguiente.
Para habilitar la protección de eliminación para el clúster de Amazon DocumentDB:
-
Elija View in Designer (Ver en Designer) en la esquina inferior derecha de la página Create stack (Crear pila).
-
Modifique la plantilla utilizando el editor JSON y YAML integrado en la página de AWS CloudFormation Designer resultante de la consola. Desplácese hasta la sección
Resources
y modifíquela para incluirDeletionProtection
, de la siguiente manera. Para obtener más información acerca del uso de AWS CloudFormation Designer, consulte ¿Qué es AWS CloudFormation Designer?JSON:
"Resources": { "DBCluster": { "Type": "AWS::DocDB::DBCluster", "DeletionPolicy": "Delete", "Properties": { "DBClusterIdentifier": { "Ref": "DBClusterName" }, "MasterUsername": { "Ref": "MasterUser" }, "MasterUserPassword": { "Ref": "MasterPassword" }, "DeletionProtection": "true" } },
YAML:
Resources: DBCluster: Type: 'AWS::DocDB::DBCluster' DeletionPolicy: Delete Properties: DBClusterIdentifier: !Ref DBClusterName MasterUsername: !Ref MasterUser MasterUserPassword: !Ref MasterPassword DeletionProtection: 'true'
-
Elija Create stack (Crear pila) ( ) en la esquina superior izquierda de la página para guardar los cambios y crear una pila con estos cambios habilitados.
-
Después de guardar los cambios, se le redirigirá a la página Create stack (Crear pila).
-
Elija Siguiente para continuar.
-
-
Especificar los detalles de la pila: introduce el nombre y los parámetros de la pila de su plantilla. Los parámetros se definen en la plantilla y le permiten ingresar valores personalizados al crear o actualizar una pila.
-
En Stack name (Nombre de la pila), escriba un nombre para su pila o acepte el nombre proporcionado. El nombre de la pila puede incluir letras (A-Z y a-z), números (0-9) y guiones (-).
-
En Parameters (Parámetros), escriba los siguientes detalles:
-
DBClusterName: introduzca un nombre para el clúster de Amazon DocumentDB o acepte el nombre proporcionado.
Restricciones en cuanto a la nomenclatura de los clústeres:
-
Debe tener [1-63] letras, números o guiones.
-
El primer carácter debe ser una letra.
-
No puede terminar por un guion ni contener dos guiones consecutivos.
-
Debe ser único para todos los clústeres de Amazon RDS, Amazon Neptune y Amazon DocumentDB por Cuenta de AWS y por región.
-
-
DBInstanceClass: en el menú desplegable, seleccione una clase de instancia para su clúster de Amazon DocumentDB.
-
DBInstanceName: introduzca un nombre para su instancia de Amazon DocumentDB o acepte el nombre proporcionado.
Restricciones en cuanto a la nomenclatura de las instancias:
-
Debe tener [1-63] letras, números o guiones.
-
El primer carácter debe ser una letra.
-
No puede terminar por un guion ni contener dos guiones consecutivos.
-
Debe ser único para todas las instancias de Amazon RDS, Neptune y Amazon DocumentDB por Cuenta de AWS y por región.
-
-
MasterPassword: la contraseña de la cuenta de administrador de la base de datos.
-
MasterUser: el nombre de usuario de la cuenta de administrador de la base de datos. MasterUser debe comenzar con una letra y solo puede contener caracteres alfanuméricos.
-
Elija Next (Siguiente) para guardar los cambios y continuar.
-
-
Configure opciones de pila: configure las etiquetas, los permisos y las opciones adicionales de su pila.
-
Etiquetas: especifique los pares de etiquetas (clave-valor) para aplicarlos a los recursos de su pila. Puede agregar hasta 50 etiquetas únicas para cada pila.
-
Permisos: opcionales. Elija un rol de IAM para definir explícitamente cómo AWS CloudFormation puede crear, modificar o eliminar recursos en la pila. Si no elige un rol, AWS CloudFormation utiliza permisos en función de sus credenciales de usuario. Antes de especificar un rol de servicio, asegúrese de que tiene permiso para pasarlo (
iam:PassRole
). El permisoiam:PassRole
especifica los roles que puede utilizar.nota
Cuando especifica un rol de servicio, AWS CloudFormation siempre lo utiliza para todas las operaciones que se realizan en esa pila. Otros usuarios con permisos para realizar operaciones en esta pila podrán utilizar este rol, aunque no tengan permiso para pasarlo. Si el rol incluye permisos que el usuario no debería tener, puede escalar involuntariamente los permisos de un usuario. Asegúrese de que el rol concede privilegios mínimos.
-
Opciones avanzadas: puede definir las siguientes opciones avanzadas:
-
Política de pilas: opcional. Define los recursos que desea proteger de actualizaciones involuntarias durante una actualización de pila. De forma predeterminada, se pueden actualizar todos los recursos durante una actualización de pila.
Puede introducir la política de pilas directamente como JSON o cargar un archivo JSON que contenga la política de pilas. Para obtener más información, consulte Evitar actualizaciones en los recursos de la pila.
-
Configuración de reversión: opcional. Especifique las alarmas de CloudWatch para que AWS CloudFormation monitoree cuando se crea y actualiza la pila. Si la operación alcanza un umbral de alarma, AWS CloudFormation lo restaura.
-
Opciones de notificación: opcional. Especifique los temas para el sistema de notificación simple (SNS).
-
Opciones de creación de la pila: opcional. Puede especificar las opciones siguientes:
-
Restauración en caso de error: si la pila se debería restaurar o no en caso de error de creación de la pila.
-
Tiempo de espera: se han agotado los minutos de espera de la creación de la pila.
-
Protección de terminación: impide que se elimine una pila accidentalmente.
nota
La protección de terminación de AWS CloudFormation es diferente del concepto de protección de eliminación de Amazon DocumentDB. Para obtener más información, consulte Protección de terminación y protección de eliminación.
-
-
Elija Siguiente para continuar.
-
-
Revisar <stack-name>: revise la plantilla, los detalles y las opciones de configuración de la pila. También puede abrir un quick-create link (enlace de creación rápida) en la parte inferior de la página para crear pilas con las mismas configuraciones básicas que esta.
-
Elija Create (Crear) para crear la pila.
-
De forma alternativa, puede elegir Create change set (Crear conjunto de cambios). Un conjunto de cambios es una vista previa de cómo se configurará esta pila antes de crear la pila. Esto le permite examinar varias configuraciones antes de ejecutar el conjunto de cambios.
-
Acceso al clúster de Amazon DocumentDB
Una vez que la pila de AWS CloudFormation se haya completado, puede utilizar una instancia Amazon EC2 para conectarse a su clúster de Amazon DocumentDB. Para obtener información sobre la conexión a una instancia de Amazon EC2 mediante SSH, consulte Conexión a la instancia de Linux en Guía del usuario de Amazon EC2.
Una vez conectado, consulte las siguientes secciones que contienen información sobre cómo usar Amazon DocumentDB.
Protección de terminación y protección de eliminación
Es una práctica recomendada de Amazon DocumentDB para habilitar la protección de eliminación y la protección de terminación. La protección de terminación de CloudFormation es una característica claramente diferente de la característica de protección de eliminación de Amazon DocumentDB.
-
Protección de terminación: puede evitar que una pila se elimine accidentalmente; para ello, habilite la protección de terminación para su pila de CloudFormation. Si un usuario intenta eliminar una pila con protección de terminación habilitada en ella, la eliminación falla y la pila no cambia. La protección de terminación se deshabilita de forma predeterminada cuando se crea una pila mediante CloudFormation. Es posible habilitar la protección de terminación en una pila al crearla. Para obtener más información, consulte Configuración de opciones de pila de AWS CloudFormation.
-
Protección de eliminación: Amazon DocumentDB también ofrece la posibilidad de habilitar la protección contra la eliminación de un clúster. Si un usuario intenta eliminar un clúster de Amazon DocumentDB con la protección de eliminación habilitada en él, la eliminación falla y el clúster permanece sin cambios. La protección de eliminación, cuando está habilitada, protege contra las eliminaciones accidentales de Amazon DocumentDB de la AWS Management Console, la AWS CLI y CloudFormation. Para obtener más información sobre cómo habilitar y deshabilitar la protección de eliminación para un clúster de Amazon DocumentDB, consulte Protección contra eliminación.