Saltar al contenido principal
Version: 25.9

Usar Cloudflare R2 como storage para microservicios

Cuando en la ejecución de un microservicio es necesario "llamar" a un archivo, ya sea para copiarlo, descargarlo o escribir en él es muy importante elegir la ubicación correcta de este. En entornos de trabajo presencial, sin usuarios trabajando, en movilidad o desde casa, la opción más segura y sencilla consiste en utilizar un almacenamiento accesible por todos los dispositivos de la red corporativa; no obstante, en escenarios donde hay dispositivos en movilidad que no pueden acceder remotamente al repositorio de red corporativa puede ser necesario optar por un diseño de repositorio de acceso público y seguro.

Supongamos que queremos instalar una aplicación en todos los dispositivos independientemente de si están en casa, en movilidad o en la red de la oficina. Para ayudarnos a cumplir este tipo de requerimientos existen múltiples opciones de servicios cloud, donde Cloudflare actúa como un proxy de seguridad y rendimiento entre los usuarios y los servidores. Sus principales servicios (CDN y protección DDoS) hacen que cualquier cosa en internet sea más rápida, segura y fiable.

R2 es su servicio de almacenamiento de objetos en la nube (similar a Amazon S3) que se distingue por su política de cero tarifas de salida (egress fees), permitiendo también cuentas gratuitas con condiciones más que suficientes, incluso, para entornos productivos.

Para poder utilizarlo es necesario:

  1. Crear una cuenta asociada a un correo electrónico siguiendo los pasos de este vínculo: https://developers.cloudflare.com/fundamentals/account/create-account/
  2. Al acabar, se debe verificar el correo electrónico asociado. Si no has recibido el email recuerda consultar tu bandeja de correo no deseado.
  3. Una vez creada y activada la cuenta, se debe activar R2 desde el menú de usuario/billing/subscriptions. Pedirá una forma de pago para los excesos, pero es gratis cumpliendo ciertas condiciones.
info

Las cuentas gratuitas de R2 incluyen:

Gratis
Almacenamiento10 GB al mes
Operaciones de clase A1 millón de solicitudes al mes
Operaciones de clase B10 millones de solicitudes al mes
Salida (transferencia de datos a Internet)Gratis 1

Todo el detalle disponible en: https://developers.cloudflare.com/r2/pricing/#free-tier

Subir ficheros

Para poder alojar y utilizar los ficheros subidos será necesario:

  1. Crear un bucket.
  2. Dentro del bucket, hay un botón llamado Upload que permite subir ficheros.

alt text

Establecer formas de acceso

Cloudflare permite diversas formas de acceso como:

Con fines demostrativos, en este articulo utilizaremos Public buckets.

Acceder a los ficheros desde microservicios

Cada fichero subido a R2 genera un vínculo único en sus propiedades. Es posible verlo haciendo clic en el fichero:

alt text

Ese enlace permite obtener el fichero desde el microservicio utilizando, por ejemplo, el cmdlet Invoke-WebRequest de PowerShell o simplemente pidiendo un microservicio creado con IA con instrucciones que incluyan la URL de descarga:

alt text

Es recomendable siempre, si no se utiliza la creación de microservicios con IA, registrar los hitos en la ejecución para que, en caso de algún error o mal funcionamiento, sea más sencillo identificar el problema:

alt text