Blog de Amazon Web Services (AWS)
Como hacer respaldos y restauración de Amazon RDS Custom para SQL Server 2022 con una integración a Amazon S3
Por Srikanth Katakam y Minesh Chande
Amazon Relational Database Service (Amazon RDS) Custom for SQL Server es un servicio de base de datos administrado para aplicaciones personalizadas y empaquetadas que requieren acceso al sistema operativo (SO) subyacente y al entorno de base de datos (DB), en este caso para SQL Server. Donde Amazon RDS Custom para SQL Server sirve para automatizar la configuración, operación y escalado de bases de datos en la nube, con la ventaja adicional de que otorga acceso a la base de datos y al sistema operativo subyacente. Con esto, se pueden configurar ajustes, instalar controladores y habilitar funciones nativas para cumplir con los requisitos de la aplicación dependiente.
Antes de la versión SQL Server 2022, Amazon RDS Custom, para usuarios de SQL Server, no contaba con soporte directo para respaldo y restauración con Amazon Simple Storage Service (Amazon S3). Lo que los usuarios hacían en ese entonces, era realizar copias de seguridad nativas en el disco local y, si es necesario, cargar el mismo archivo de copia de seguridad en un bucket S3 desde el disco local.
Pero en la actualidad, ya se tiene Amazon RDS Custom para SQL Server compatible con SQL Server 2022, esto significa que este se puede integrar con Amazon S3 y realizar directamente operaciones nativas de respaldo y restauración hacia y desde el bucket S3.
En este post, se muestra cómo se puede realizar la integración de Amazon S3 con Amazon RDS Custom para SQL Server 2022.
Descripción general de la solución
A partir de la versión de SQL Server 2022 (16.x), Microsoft ha incluido soporte para el almacenamiento de objetos, el cuál es compatible con Amazon S3. En esta publicación, se mostrará cómo se puede configurar la integración de Amazon S3 con Amazon RDS Custom para SQL Server (2022) para luego realizar operaciones nativas de backup y restauración en un bucket S3. Para obtener más detalles, consulte Copia de seguridad de SQL Server en URL para almacenamiento de objetos compatibles con S3.
Estos son los pasos a generales de la solución:
- Crea un bucket S3.
- Cree una política de AWS Identity and Access Management (IAM) con los permisos necesarios para acceder al bucket S3.
- Cree un usuario de IAM y adjunte la política de IAM al mismo.
- Cree una instancia RDS Custom para SQL Server (2022).
- Cree credenciales de SQL Server para acceder al bucket S3.
- Realice copias de seguridad nativas utilizando la URL del bucket S3.
- Realice una restauración nativa usando la URL del bucket S3.
Esta solución implica la creación y utilización de nuevos recursos de AWS. Por lo que debe tener en cuenta que incurrirá en costos en su cuenta. Consulte Precios de AWS para obtener más información.
Requisitos previos
Se necesitan los siguientes requisitos previos para implementar esta solución:
- Una cuenta de AWS con los permisos necesarios para crear una instancia de RDS Custom SQL Server y usar Amazon S3
- Entender los conceptos básicos de la siguiente documentación: copia de seguridad y restauración de SQL Server
- Usar Amazon S3
- Tener completa la configuración del entorno y la posibilidad de crear una instancia de RDS Custom para SQL Server
Crear un bucket S3
Cree un bucket S3, en este se almacenarán archivos de respaldo para operaciones de copia de seguridad y restauración. Para obtener más detalles, consulte Creación de un bucket.
En este ejemplo, creamos un bucket S3 llamado cfs-s3-bucket-for-backups
y luego creamos una carpeta llamada ss-2022
en la región us-west-2
.
Crear una política de IAM
Aquí se creará una política IAM para controlar los permisos necesarios sobre acciones del servicio S3. Como parte de está política de IAM, se define el nombre del bucket S3 y se otorgan los siguientes permisos necesarios para acceder al mismo:
s3:ListBucket
para permitir el listado del contenido del buckets3:PutObject
para permitir que los archivos de copia de seguridad se escriban en el buckets3:GetObject
para permitir que los archivos de copia de seguridad se lean desde el bucket
Puede utilizar el siguiente código para crear una política de IAM denominada cfs-iam-policy-for-backups
mediante la interfaz de línea de comandos de AWS (AWS CLI). Esta política otorga los permisos necesarios al bucket S3 llamado cfs-s3-bucket-for-backups
. Aquí debe reemplazar el bucket S3 por el ARN de su bucket :
Crear un usuario de IAM y adjuntar la política de IAM
Después del paso anterior, debe crear un usuario de IAM y adjuntar esta política de IAM. Para obtener instrucciones más detalladas consulte Crear un usuario de IAM en su cuenta de AWS. Es importante crear una llave de acceso y anotar el ID de la llave de acceso, cómo también es importante obtener la llave de acceso secreta;, estas se usarán para crear las credenciales de SQL Server en un paso posterior, estas son necesarias para tener el acceso al bucket de S3 a nivel de base de datos.
Crear una instancia RDS Custom para SQL Server (2022)
Es importante tener todos los requisitos previos antes de crear su primera instancia de RDS Custom para SQL Server. Para mayor detalle consulte Configuración de su entorno para Amazon RDS Custom for SQL Server.
Puede usar el siguiente comando para crear una instancia RDS Custom para SQL Server (usando SQL Server 2022) usando la CLI (Interface de Línea de Comandos)de AWS. En esta debe reemplazar <db-instance-name>
, <key-id>
, <custom-iam-profile>
, <security-group-id>
, y <db-subnet-group>
con los valores apropiados.
Crear credenciales de SQL Server para acceder al bucket S3
Después de que la creación de la instancia sea exitosa, inicie sesión en la base de datos usando SSMS y el usuario principal.
Aquí hay un ejemplo en el que se crean credenciales de SQL Server para la autenticación con el punto de conexión al servicio de almacenamiento de objetos. Utilice el ID de la llave de acceso y el ID de la llave secreta que obtuvo del paso anterior. En el siguiente ejemplo se utiliza una carpeta llamada ss-2022
bajo el bucket de S3 cfs-s3-bucket-for-backups
.
Realizar copias de seguridad nativas usando la URL del bucket S3
El siguiente comando crea una base de datos de llamada test1
y guarda una copia de seguridad completa llamada test-full-1.bak
en el bucket S3 cfs-s3-bucket-for-backups
en la carpeta ss-2022
. Puede reemplazar el nombre de la base de datos y la URL con los valores apropiados.
Realizar restauración nativa usando la URL del bucket S3
El siguiente comando utiliza un archivo de copia de seguridad test-full-1.bak
del bucket S3 y lo restaura en la instancia de RDS Custom para SQL Server con el nombre de base de datos test2
.
Conclusión
En esta publicación, proporcionamos una guía paso a paso para implementar la integración de Amazon S3 en Amazon RDS Custom para SQL Server, usando como esencia la creación de un Bucket de S3, un usuario y una política de IAM. También se demostró cómo crear credenciales de Amazon S3 en SQL Server y luego realizar con éxito operaciones de backup y restauración nativas. Deja comentarios si tiene alguna duda.
Para obtener más información sobre dónde o cuándo usar RDS Custom, puede consultar Trabajar con RDS Custom para SQL Server.
Este blog es una traducción del blog en ingles.
Acerca de los autores
Srikanth Katakam es ingeniero sénior de bases de datos en Amazon Web Services. Trabaja en el equipo de Amazon RDS, enfocándose en motores de bases de datos comerciales, Amazon RDS Custom y SQL Server. Le gusta trabajar en desafíos técnicos en Amazon RDS y le apasiona aprender y compartir conocimientos con sus compañeros de equipo y clientes de AWS.
|
|
Minesh Chande es Arquitecto Senior de Soluciones Especialista en Bases de Datos en Amazon Web Services. Ayuda a clientes de diferentes sectores verticales de la industria a diseñar, migrar y optimizar sus cargas de trabajo de SQL Server a una plataforma de base de datos administrada como Amazon RDS y Amazon RDS Custom.
|
Luiz Rampanelli es arquitecto de soluciones en el equipo de AWS Latam. Cuenta con más de 10 años de experiencia con cargas de trabajo de Microsoft en entornos híbridos y de nube. Trabaja diseñando soluciones siguiendo las mejores prácticas para que los clientes puedan aprovechar al máximo los beneficios de la nube de AWS. | |
Pilar Pinto es Arquitecta de Soluciones para CSC Latam, trabaja con clientes de diversas verticales en empresas SMB. Su foco es la seguridad y buenas prácticas arquitectónicas de las que se benefician estas pequeñas y medianas empresas |