Puntos clave
- Gestionar las copias de seguridad y la recuperación como «Infraestructura como código» (IaC) ayuda a reducir las desviaciones en la configuración y a adaptar la protección de datos a las prácticas modernas en la nube.
- El proveedor de Clumio para Terraform permite definir cuentas, políticas y reglas de protección de AWS de forma declarativa y con control de versiones.
- La protección basada en etiquetas está diseñada para proteger automáticamente los recursos actuales y futuros, lo que ayuda a reducir la intervención manual y a escalar de forma eficiente en todos los entornos.
- Definir las copias de seguridad en Terraform ayuda a mejorar la visibilidad, la reproducibilidad y la gobernanza a través de flujos de trabajo estándar de pull requests.
- Este enfoque puede resultar especialmente útil para entornos de AWS con varias cuentas y para organizaciones que ya utilizan Terraform de forma sistemática.
La nube se define cada vez más como código. Las instancias de EC2, los roles de gestión de identidades y accesos (IAM), las nubes privadas virtuales y las bases de datos se alojan ahora en repositorios con control de versiones y se implementan de forma predecible mediante IaC. Sin embargo, las políticas de Backup and Recovery a menudo siguen configurándose manualmente en consolas web. Esa brecha genera riesgos. Cuando la infraestructura es declarativa pero la protección de datos no lo es, los equipos corren el riesgo de:
- Desviaciones en la configuración.
- La protección varía según las cuentas.
- Errores manuales.
- Hay poca claridad sobre qué es lo que realmente está protegido.
Para las organizaciones que ya utilizan Terraform, las copias de seguridad y la recuperación deberían gestionarse igual que el resto de la pila: mediante código. El proveedor de Terraform de Clumio permite definir la protección de datos de AWS de forma declarativa junto con la infraestructura. Puedes explorar el proveedor y su documentación aquí: https://registry.terraform.io/providers/clumio-code/clumio/latest/docs/guides/getting_started. En esta entrada, vamos a ver cómo automatizar la protección de las cargas de trabajo de AWS utilizando Terraform y Clumio de Commvault, y por qué este enfoque se adapta mejor a las nubes modernas.
El problema de la configuración de las copias de seguridad a través de la consola
En una configuración tradicional, para proteger los recursos de AWS hay que:
- Conectar cuentas de AWS.
- Configurar la protección por separado en varios servicios de AWS.
- Crear copias de seguridad.
- Definir las reglas de protección.
- Asignar recursos manualmente.
- Repetir ese proceso para cada cuenta o entorno.
Incluso en entornos bien gestionados, esto da lugar a:
- Configuración manual repetitiva.
- Aplicación inconsistente de las políticas.
- Protección diferida para los recursos recién creados.
- Control de versiones limitado.
Terraform ya ayuda a resolver este problema en lo que respecta a la infraestructura. El proveedor de Clumio para Terraform amplía ese modelo al ámbito de la protección de datos.
De cero a la protección: utilizando cuatro archivos
La protección de varios servicios de AWS se puede configurar mediante un pequeño conjunto de archivos de Terraform, en lugar de una secuencia de pasos manuales en la interfaz de usuario.
La configuración sigue una estructura sencilla.
- Definir proveedores (AWS + Clumio)
El primer paso es declarar los proveedores. Terraform necesita saber:
- Que estás utilizando AWS.
- Que estás utilizando el proveedor Clumio.
Esto conecta Terraform con ambas plataformas. La documentación oficial del proveedor explica este proceso de configuración con todo detalle en la guía de introducción.
- Conectar cuentas de AWS a Clumio
A continuación, el módulo de Clumio establece la conexión entre AWS y Clumio. Esto elimina la necesidad de configurar manualmente los roles de IAM necesarios para la protección de datos. En lugar de configurar manualmente los roles y los permisos, el módulo se encarga de la integración de forma sistemática. El código fuente del proveedor está disponible públicamente en GitHub. Esto significa que tu integración está definida en código, está sujeta a control de versiones y es reproducible en todos los entornos.
- Definir políticas de copia de seguridad como código
La definición de políticas de copias de seguridad es donde la IaC destaca. En una configuración basada en Terraform:
- Se pueden establecer distintos objetivos de punto de recuperación para los distintos tipos de recursos.
- Se pueden definir varios niveles de retención dentro de la misma política (por ejemplo, retención a corto y largo plazo).
- Esa misma política se puede aplicar automáticamente según unas condiciones definidas.
En lugar de tener que gestionar varias consolas, una única configuración de Terraform define la frecuencia, el periodo de retención y el alcance de los recursos. Esa política se puede reutilizar y revisar como cualquier otra configuración de infraestructura.
- Protección automática basada en etiquetas
Uno de los elementos más escalables de este enfoque es la protección basada en etiquetas. Se puede configurar una regla de protección para que proteja automáticamente cualquier recurso etiquetado con un par clave/valor específico. Por ejemplo: created_by = demo_script Esto significa que:
- Los recursos existentes que coincidan con la etiqueta están protegidos.
- Los recursos futuros con esa etiqueta se incluyen automáticamente.
- No es necesario intervenir manualmente.
En el caso concreto de S3, los grupos de protección también utilizan etiquetas para gestionar cientos de buckets como una única unidad lógica, lo que permite aplicar cambios centralizados en las políticas a gran escala. Esto ayuda a reducir las desviaciones en la configuración.
Aplicar la configuración
Una vez definida, Terraform inicializa el directorio de trabajo, muestra una vista previa de los cambios previstos y aplica la configuración. Terraform está diseñado para respetar las dependencias entre los recursos, creándolos en el orden correcto. La configuración te ayuda a conectar cuentas de AWS, activar políticas, aplicar reglas de protección y proteger los recursos etiquetados. Y lo más importante: toda la estrategia de protección está plasmada en código con control de versiones.
¿Por qué es importante esto para la nube?
Para los equipos que trabajan según los principios de IaC, las copias de seguridad deberían seguir la misma disciplina que el aprovisionamiento de la infraestructura. Definir las copias de seguridad con Terraform ofrece varias ventajas prácticas:
- Control de versiones: Las políticas de copias de seguridad se definen en el código y se pueden revisar, versionar y aprobar mediante flujos de trabajo estándar de solicitudes de incorporación de cambios.
- Reproducibilidad: la misma configuración se puede implementar de forma coherente en las cuentas de desarrollo, pruebas y producción.
- Menor desviación: las configuraciones de Terraform se pueden volver a aplicar para garantizar que se respete el estado declarado, lo que ayuda a que los cambios manuales o realizados fuera de la cadena de comandos vuelvan a ajustarse a la configuración prevista.
- Visibilidad clara: la lógica de protección se refleja en el código, en lugar de estar oculta en la configuración de la interfaz de usuario.
- Separación entre la configuración y la interfaz: la configuración de copia de seguridad se define de forma declarativa, sin depender del estado de la consola.
Cuándo tiene sentido este enfoque
La automatización de las copias de seguridad de Terraform resulta especialmente útil para:
- Entornos de AWS con varias cuentas.
- Sectores regulados que requieren una configuración auditable.
- Plataformas que gestionan infraestructura compartida.
- Organizaciones que ya han adoptado Terraform como estándar.
Si tu infraestructura está definida como código, tu estrategia de protección de datos también debería estarlo.
Cómo empezar
Para profundizar en este enfoque:
- Echa un vistazo a la documentación del proveedor de Clumio para Terraform.
- Echa un vistazo al código fuente del proveedor en GitHub.
- Mira el vídeo de demostración de «Inicio rápido» que aparece más arriba.
También puedes probar Clumio a través de AWS Marketplace.
Preguntas frecuentes
P: ¿Por qué hay que gestionar las copias de seguridad como código?
R: Cuando la infraestructura se define como código, pero las copias de seguridad se configuran manualmente, pueden surgir lagunas e incoherencias. Gestionar las copias de seguridad como código ayuda a alinear la protección con los flujos de trabajo de implementación, a reducir los errores manuales y a ofrecer una visibilidad controlada por versiones de tu estrategia de protección de datos.
P: ¿Qué te permite el proveedor de Clumio para Terraform?
R: El proveedor de Clumio para Terraform permite definir de forma declarativa los recursos de protección de datos de AWS, como las conexiones a cuentas, las copias de seguridad y las reglas de protección. Esto ayuda a los equipos a gestionar las copias de seguridad junto con la infraestructura en el mismo flujo de trabajo de Terraform.
P: ¿Cómo mejora la protección basada en etiquetas la escalabilidad?
R: La protección basada en etiquetas está diseñada para aplicar automáticamente políticas a cualquier recurso que coincida con un par clave/valor específico. Esto ayuda a proteger los recursos actuales y futuros sin necesidad de asignarlos manualmente, lo que facilita la gestión de la protección a gran escala en todas las cuentas y servicios.
P: ¿Cómo ayuda Terraform a reducir las desviaciones de configuración en las copias de seguridad?
R: Terraform mantiene un estado definido para la infraestructura y las políticas de seguridad. Reaplicar las configuraciones ayuda a que los cambios manuales o realizados fuera de la cadena de comandos vuelvan a ajustarse al estado deseado, lo que contribuye a mejorar la coherencia entre los distintos entornos.
P: ¿En qué situaciones tiene más sentido automatizar las copias de seguridad de Terraform?
R: Este enfoque resulta especialmente útil en entornos de AWS con varias cuentas, en sectores regulados que requieren configuraciones auditables, en plataformas que gestionan servicios compartidos y en organizaciones que ya utilizan Terraform como estándar para la infraestructura como código (IaC).
P: ¿Cómo pueden los equipos empezar a utilizar la protección de datos de AWS basada en Terraform?
R: Los equipos pueden empezar consultando la documentación del proveedor de Clumio para Terraform, echando un vistazo al código fuente del proveedor en GitHub y viendo la demostración de «Inicio rápido». Otro paso práctico es probar Clumio a través de AWS Marketplace.
Lawrence Chang es director de ingeniería de Clumio y Vir Choksi es director sénior de marketing de producto en Commvault.