Backups de bajo costo en Amazon S3 – Simple Storage Service

Amazon S3 (Simple Storage Service), es un servicio de almacenamiento en la nube escalable, con alta disponibilidad, con la posibilidad de manejar un costo según del patrón y frecuencia de uso de los datos, con cifrado de los archivos, y un control de acceso seguro a los recursos.

Amazon S3
Amazon S3

Una de las medidas de gran relevancia para la recuperación de un sistema ante fallas graves, lo constituye el backup periódico, tanto de sus bases de datos, como de otro tipo de archivos recolectados durante su operación.

En sistemas que manejan grandes volúmenes de datos y archivos multimedia, se hace necesario que los backups no solo estén ubicados en la máquina de origen, sino que puedan ser trasladados a otras ubicaciones, de tal forma que se pueda recuperar el sistema aun en el caso de una falla catastrófica.

Es así como Amazon S3 es una herramienta, que junto con los servicios de Amazon EC2, permiten el almacenamiento de grandes volumenes de datos, en diferentes clases de almacenamiento y ciclos de vida, con costos adecuados a dichas características.


Clases de almacenamiento en Amazon S3

Las clases de almacenamiento que maneja Amazon S3 son:

  • Estándar,
  • Capas inteligentes,
  • Estándar – Acceso poco frecuente (IA),
  • Unica Zona – Acceso poco frecuente (Zone IA),
  • Glacier, Archivo profundo de Amazon S3 Glacier y
  • S3 Outposts.

Cada una de estas opciones está pensada en la frecuencia de acceso a los datos y su localización geográfica. De tal modo que se obtiene un menor costo, entre menos frecuencia de acceso se tenga a los datos almacenados. Los costos asociados a cada una de estas opciones se puede encontrar con mayor detalle en esta página oficial de Amazon AWS https://aws.amazon.com/es/s3/pricing/?nc=sn&loc=4 , o por medio de la calculadora de servicios de Amazon Calulator AWS.


Amazon EC2 y Amazon S3

Una de las ventajas de almacenar los backups de la infraestructura de Amazon EC2 en S3, es que la transferencia de datos entre el servidor origen y S3 es gratuita, siempre y cuando ambos sistemas estén en la misma zona de Amazon AWS.

Los archivos provenientes de Amazon EC2 se pueden copiar a Amazon S3, o se pueden sincronizar para evitar la transferencia innecesaria de archivos sin cambios.


Cómo se transfiere un backup desde EC2 a Amazon S3

Considerando que contamos con un servidor EC2 en linux, los siguientes son los pasos para gestionar y transferir un backup a S3:

  • Se instala la consola aws en la máquina linux, mediante el siguiente comando:
curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip"unzip awscli-bundle.zipsudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws
  • Se crea un bucket, por ejemplo itsoftwareco. Por defecto este bucket no es público.
Bucket Amazon S3
Bucket Amazon S3
  • Dentro de este bucket se pueden crear carpetas para organizar la información, por ejemplo itsoftware.com.co.
Carpetas dentro del bucket
Carpetas dentro del bucket
  • Ahora se transfiere el archivo de backup, mediante algún script periódico, por ejemplo 1 vez cada 8 días, mediante el siguiente comando si es para copia:
aws s3 cp ~/code/backup/ s3://itsoftwareco/itsoftware.com.co  --recursive --exclude "*" --include "mibackup_*"

O éste si es para sincronización:

aws s3 sync ~/code/backup/ s3://itsoftwareco/itsoftware.com.co --exclude "" --include "mibackup"

Los archivos son almacenados de forma predeterminada como clase de almacenamiento Estándar. Este tipo de almacenamiento se puede cambiar automáticamente luego de un tiempo o de forma manual.

Archivos de backup en Amazon S3
Archivos de backup en Amazon S3


Cambio de tipo de almacenamiento manualmente

Para realizar esta acción, se escoge el directorio, archivo o archivos que se desean modificar, luego con el botón Acciones, seleccionamos Editar clase de almacenamiento, apareciendo las diferentes opciones, y los requisitos de tiempo, y zonas de disponibilidad para cada uno de ellos:

Acciones Amazon S3
Acciones Amazon S3

Clases de almacenamiento Amazon S3
Clases de almacenamiento Amazon S3

Al final se presiona el botón Guardar Cambios, para aplicar las modificaciones realizadas.

Se debe considerar que un cambio de estado de almacenamiento, antes de que pase el tiempo mínimo de permanencia en el estado actual, ocasiona un costo adicional.


Permisos del bucket

A cada bucket se le asignan permisos, para que pueda ser público o solo accesible mediante una lista o una política del bucket en json.

Permisos del bucket
Permisos del bucket

Ciclo de vida de los backups

Mediante esta opción, a todos los archivos de un bucket se le puede aplicar una política de retención y borrado de datos, transfiriéndolos a las diferentes clases de almacenamiento, para aprovechar el menor costo y también tener los archivos antiguos por un tiempo predeterminado, y evitar así un excesivo tamaño del bucket.

Ciclo de vida de backups Amazon S3
Ciclo de vida de backups Amazon S3

Métricas de buckets Amazon S3

La pestaña de métricas de bucket, muestra un resumen del tamaño y cantidad de objetos, en cada una de sus clases de almacenamiento.

Métricas Amazon S3
Métricas Amazon S3

Facturación Amazon S3

La facturación del servicio Amazon S3 se efectúa según las clases del servicio, y se muestra de forma detallada en el panel de facturación de la cuenta Amazon AWS.


Como conclusión, Amazon S3 es un servicio de gestión de almacenamiento, escalable, flexible y de costo adaptable a las necesidades de cada administración de IT, para mantener al día y en un lugar seguro, los backups que periódicamente se realizan a la infraestructura de servidores.

Este artículo hace parte del sistema de divulgación de conocimiento de ITSoftware SAS.

Deja un comentario

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.