Ir al contenido principal
BlogComputeClonación de contenidos en Linode Object Storage con RClone

Clonación de contenidos en Linode Object Storage con RClone

Clonación de contenidos en Linode Object Storage  con RClone

Cuando necesitas mover un gran conjunto de archivos de una ubicación remota a otra, especialmente entre diferentes servicios en la nube, copiar todos los archivos desde el origen a tu máquina local y luego subirlos al nuevo destino puede ser una pesadilla. Imagina manejar un terabyte de archivos. ¿Tienes espacio suficiente en tu ordenador?

Por suerte, hay una forma mejor de hacerlo: rclone. Rclone es una herramienta CLI herramienta que le permite realizar operaciones de archivos por lotes directamente entre ubicaciones remotas, sincronizándolos eficientemente de origen a destino.

En este post, le guiaremos a través del uso de rclone para copiar archivos desde una unidad de almacenamiento en la nube a Linode Object Storage , haciendo que el proceso sea lo más fluido posible.

¿Qué es rclone?

Rclone es un programa de línea de comandos que gestiona archivos en el almacenamiento en la nube. Es como una navaja suiza para el almacenamiento en la nube, ya que se encarga de tareas como sincronizar, copiar y mover archivos.

¿Cómo funciona?

Rclone configura "remotas" para cada servicio en la nube con el que quieras interactuar. Una vez configurados, puedes utilizar comandos rclone para transferir datos entre ellos. Aunque los archivos pasan por tu máquina local, no se almacenan allí a largo plazo.

¿Qué puede hacer con él?

Con rclone, puedes:

  • Sincroniza archivos entre diferentes servicios en la nube.
  • Copie y mueva archivos con eficacia.
  • Monte el almacenamiento en la nube como un sistema de archivos en su máquina local.
  • Cifra archivos para almacenarlos de forma segura.

Rclone es compatible con muchos servicios en la nube, como Linode Object Storage , Google Drive, AWS S3 , Nextcloud, y muchos más. Es una herramienta versátil para gestionar tus datos en la nube.

Ahora que sabemos lo que rclone puede hacer, vamos a demostrar cómo se puede utilizar para sincronizar datos entre Google Drive y Linode Object Storage .

Utilizar rclone implica transferir archivos desde el origen remoto a tu máquina local antes de moverlos al destino remoto. Aunque estos archivos no se guardan localmente, los datos siguen viajando a través de tu conexión a Internet.

Para optimizar el proceso y reducir la carga de tu red doméstica, te recomendamos crear una máquina virtual Linode . De este modo, acortarás la ruta de transferencia de datos. 

Para optimizar su configuración, elija un Linode en la misma región que su cubo Linode Object Storage .

Paso 2: Instalar rclone

Después de configurar su Linode VM, el siguiente paso es instalar rclone. Primero, usa SSH para conectarte a tu instancia Linode . Desde el panel de Linode , puede conectarse a través de la consola LISH.

Ejecute el siguiente comando para descargar e instalar rclone:

~# curl https://rclone.org/install.sh | sudo bash

Compruebe que rclone está instalado correctamente ejecutando lo siguiente:

~# rclone version
rclone v1.66.0- os/version: debian 11.9 (64 bit)- os/kernel: 5.10.0-28-amd64 (x86_64)- os/type: linux- os/arch: amd64- go/version: go1.22.1- go/linking: static- go/tags: none

Tras confirmar que la instalación se ha realizado correctamente, estará listo para configurar rclone con sus remotos de almacenamiento en la nube.

Paso 3: Añadir un nuevo remoto (Google Drive) a rclone

Para empezar a transferir archivos, necesitas configurar rclone para acceder a tu Google Drive. Para ello, necesitarás obtener credenciales. Sigue estas instrucciones para crear una cuenta de servicio y obtener una clave pública/privada para tu cuenta de servicio. Guarda este archivo en tu equipo local como service-account.json. A continuación, utilice SFTP para transferir este archivo a su máquina virtual Linode (ya que rclone necesitará hacer referencia a él).

Con el archivo de clave de cuenta de servicio en tu máquina virtual Linode , utiliza el siguiente comando para configurar la cuenta remota de Google Drive en rclone:

~# rclone config

Siga las instrucciones para configurar un nuevo mando a distancia:

  1. Elija "n" para un new remote.
  2. Name el mando a distancia (por ejemplo: "gdrive").
  3. Para storage typeselecciona "Google Drive" en la lista de opciones.
  4. Deje en blanco client_id y client_secret.
  5. Elija el scope. Para nuestros propósitos, elegiremos "Acceso de sólo lectura a los metadatos y contenidos de los archivos".
  6. Para el archivo service_account, introduzca la ruta al archivo JSON con las credenciales de la cuenta de servicio que descargó anteriormente.
  7. Elija los valores predeterminados para las preguntas restantes.

Para obtener información más detallada, consulta la documentación de rclone para Google Drive.

Una vez completado, rclone tendrá acceso a tu Google Drive, listo para las operaciones de archivo.

Paso 4: Añadir una nueva remota (Linode) a rclone

El siguiente paso es configurar un segundo remoto en rclone, apuntando a Linode Object Storage . Al igual que en el paso anterior, necesitarás obtener tus credenciales de almacenamiento en la nube.

Linode Object Storage Las credenciales son similares a las de AWS S3 . Puede obtener su Clave de acceso y Clave secreta en Linode Cloud Manager . En la página Object Storage haga clic en Create Access Key.

Después de crear tu Clave de Acceso y Clave Secreta, cópialas.

Utilice el siguiente comando para configurar el remoto Linode en rclone:

~# rclone version

Siga las instrucciones para configurar un nuevo mando a distancia:

  1. Elija "n" para un new remote.
  2. Name el mando a distancia (por ejemplo: "linode").
  3. Para storage type, seleccione "Amazon S3 Compliant Storage Providers" de la lista de opciones.
  4. Para providerseleccione "Linode Object Storage " en la lista de opciones.
  5. Seleccione "Introducir credenciales AWS en el siguiente paso".
  6. Para access_key_id, pegue la clave de acceso que copió anteriormente.
  7. Para secret_access_key, pegue la clave secreta que copió anteriormente.
  8. Seleccione la región para su cubo Linode Object Storage .
  9. Elija los valores predeterminados para las preguntas restantes.

Para conocer los pasos detallados, consulte la documentación de rclone para Linode Object Storage .

Una vez completado, rclone tendrá acceso a tu Linode Object Storage , listo para sincronizar archivos desde Google Drive.

Paso 5: Sincronizar

Con Google Drive y Linode Object Storage configurados como remotos en rclone, ahora puedes sincronizar archivos entre ellos.

Para nuestra demostración, queremos sincronizar el contenido de los datos en nuestro Google Drive a una carpeta llamada datos en nuestro Linode Object Storage bucket.

Empecemos por echar un vistazo a lo que hay en nuestra carpeta de Google Drive:

~# rclone size gdrive:/data
Total objects: 4.138k (4138)
Total size: 145.477 KiB (148968 Byte)

Esto es lo que vemos en nuestro cubo Linode Object Storage :

~# rclone size linode:/data
2024/05/18 16:06:40 Failed to size: directory not found

Como era de esperar, la carpeta de datos no existe (todavía).

Para sincronizar nuestros archivos, podríamos utilizar el siguiente comando básico:

~# rclone sync gdrive:/data linode:/data

Este comando copiará archivos de tu Google Drive (origen) a tu Linode Object Storage (destino).

Si quisiéramos supervisar el proceso de transferencia, añadiríamos el indicador -progress:

~# rclone sync \     gdrive:/data \     linode:/data \     --progress

Podemos optimizar aún más el proceso de sincronización configurando el número de transferencias simultáneas con el indicador -transfers:

~# rclone sync \     gdrive:/data \     linode:/data \     --progress –transfers=8

A medida que comienza nuestra sincronización, vemos que rclone actualiza constantemente los estados de las transferencias:

Transferred:        6.152 KiB / 145.195 KiB, 4%, 421 B/s, ETA 5m37s
Transferred:        175 / 4138, 4%
Elapsed time:       16.1s
Transferring:
*    6/09843537-bc73-4def-a900-eb229b3ea126.txt: transferring
*    6/0a8fdcd4-2ded-4e69-8c08-37cbc74a3546.txt: transferring
*    6/0aed5c04-4a1b-4c6d-9fb8-7e490a959587.txt: transferring
*    6/0b35ae54-fae6-45f3-8f68-1445d8433e10.txt: transferring
*    6/0b9c8a7c-e6a9-44a3-8e89-28cb9e0fd695.txt: transferring
*    6/0bfddb9a-4f06-409b-ad6b-ee3c741dcf95.txt: transferring
*    6/0c2ebdda-87b7-44cf-9d9c-3e802880fc9c.txt: transferring
*    6/0c5a9407-ed90-40e1-85b3-18054f845cec.txt: transferring

Tras la sincronización inicial, podemos volver a ejecutar el comando para asegurarnos de que todos los archivos están actualizados. Rclone solo transferirá los archivos nuevos o modificados, lo que agiliza las sincronizaciones posteriores.

~# rclone sync gdrive:/data linode:/data --progress
Transferred:        0 B / 0 B, -, 0 B/s, ETA -
Checks:             4138 / 4138, 100%
Elapsed time:       10.0s

Este paso garantiza que tus archivos se transfieran de forma eficiente y se mantengan sincronizados entre Google Drive y Linode Object Storage .

Conclusión

En este post, te hemos guiado a través del uso de rclone para transferir archivos de manera eficiente desde Google Drive a Linode Object Storage . Aunque hemos utilizado específicamente Google Drive y Linode Object Storage para nuestra demostración, rclone soporta docenas de proveedores de almacenamiento en la nube.

Recapitulemos:

  • Rclone permite realizar operaciones de archivos por lotes directamente entre servicios en la nube.
  • Configurar una máquina virtual Linode en la misma región que su Linode Object Storage puede optimizar sus transferencias.
  • Configurar rclone con Google Drive y Linode Object Storage remotos es sencillo y potente.
  • La función de sincronización de rclone te ayuda a mantener tus archivos actualizados sin intervención manual.

¿Listo para agilizar sus transferencias de archivos? Pruebe Linode Object Storage hoy mismo y compruebe lo fácil que puede ser gestionar sus datos en la nube.

Comentarios

Dejar una respuesta

Su dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *.