En esta página, se muestra cómo copiar datos de lo siguiente:
- De buckets de Cloud Storage a archivos compartidos de Filestore
- Computadoras de tu entorno para archivos compartidos de Filestore
- Archivos compartidos de Filestore con buckets de Cloud Storage
Para transferir grandes volúmenes de datos, recomendamos las siguientes opciones:
- Transfer Appliance: Si deseas transferir datos a Google Cloud sin conexión o desde un área con mala conectividad a Internet.
- Servicio de transferencia de almacenamiento: Si deseas transferir datos a Google Cloud desde una fuente de datos en línea, como otro producto de la nube.
- Servicio de transferencia de datos locales: Si deseas transferir datos de un entorno local a Google Cloud.
Antes de comenzar
Para seguir estas instrucciones, debes tener instaladas las herramientas de línea de comandos de gsutil
y gcloud
. Ambas herramientas se incluyen en la
CLI de gcloud.
Copia datos de un bucket de Cloud Storage a un archivo compartido de Filestore
Para copiar datos de un bucket de Cloud Storage a un archivo compartido de Filestore que esté activado en una instancia de VM de Compute Engine, usa el comando gsutil rsync
. El comando gsutil rsync
funciona en las VM de Linux y Windows. Para copiar datos en instancias de VM de Linux, también puedes usar comandos estándar, como rsync
.
Linux
En la consola de Google Cloud, ve a la página Instancias de VM.
Elige una instancia de VM de Compute Engine que tenga activado el archivo destino de archivos de Filestore compartido y, luego, haz clic en SSH para abrir una terminal en esa instancia de VM.
Copia los datos al archivo compartido de Filestore activado mediante la ejecución del siguiente comando. Para sincronizar de manera recurrente los subdirectorios de la ubicación que especificaste, usa la opción
-r
con el comandogsutil rsync
.gsutil rsync gs://bucket mount-directory
Donde:
- bucket es el depósito, directorio o subdirectorio de Cloud Storage desde donde copiar datos.
- mount-directory es el directorio en el cliente en el cual se activa el archivo compartido de Filestore.
Ejemplo
Con el siguiente comando, se copian los datos del bucket data
y todos los subdirectorios al directorio /mnt/filer
.
gsutil rsync -r gs://data /mnt/filer
Windows
En la consola de Google Cloud, ve a la página Instancias de VM.
Elige una instancia de VM de Compute Engine que tenga el archivo compartido de Filestore de destino asignado a una unidad y haz clic en RDP para abrir una conexión de escritorio remoto a esa VM.
Ejecuta el siguiente comando para copiar los datos al archivo compartido de Filestore asignado. Para sincronizar de manera recurrente los subdirectorios de la ubicación que especificaste, usa la opción
-r
con el comandogsutil rsync
.gsutil rsync gs://bucket mount-directory
Donde:
- bucket es el depósito, directorio o subdirectorio de Cloud Storage desde donde copiar datos.
- mount-directory es el directorio en el cliente en el cual se activa el archivo compartido de Filestore.
Ejemplo
El siguiente comando copia los datos del bucket data
y todos los subdirectorios a la unidad Z:
que se asigna al archivo compartido de Filestore.
gsutil rsync -r gs://data Z:\
Copia datos desde una computadora de tu entorno a un archivo compartido de Filestore
Si deseas copiar datos de una computadora de tu entorno a un archivo compartido de Filestore que esté activado en una instancia de VM de Linux de Compute Engine, usa el comando gcloud compute scp
. El comando gcloud compute scp
no funciona en instancias de VM de Windows.
- Usa SSH para conectarte a la computadora que contiene los datos que deseas copiar.
Ejecuta el siguiente comando para verificar si tienes gcloud CLI instalada:
which gcloud
Si gcloud CLI está instalada, el comando mostrará la ruta de instalación. Si no se muestra ninguna ruta de instalación, sigue las instrucciones en Instala gcloud CLI para instalarla.
Copia datos al archivo compartido de Filestore activado:
gcloud compute scp local-data-path client-name:/mount-directory --project=project-id --zone=zone
Donde:
- local-data-path es la ruta de un archivo o directorio local que contiene los datos que deseas copiar en la instancia. Si deseas copiar datos de otros subdirectorios, usa la marca
--recurse
después de local-data-path. - client-name es el nombre de la instancia de VM de Compute Engine en la que está activado el archivo compartido de Filestore.
- mount-directory es el directorio en el cliente en el cual se activa el archivo compartido de Filestore.
- project-id es el ID del proyecto que contiene la instancia de VM del cliente.
Si configuraste el proyecto predeterminado
gcloud
mediantegcloud config set project project-id
, puedes omitir esta marca y usar el proyecto predeterminado en su lugar. - zone es la zona en la que reside la instancia de VM de Compute Engine.
Si configuraste la zona predeterminada
gcloud
mediantegcloud config set compute/zone zone
, puedes omitir esta marca y usar la zona predeterminada en su lugar.
- local-data-path es la ruta de un archivo o directorio local que contiene los datos que deseas copiar en la instancia. Si deseas copiar datos de otros subdirectorios, usa la marca
Ejemplo
El siguiente comando copia los datos del directorio /etc/acme/data
local y sus subdirectorios al directorio /mnt/filer
en la instancia de VM nfs-client
, en el proyecto myproject
, en la zona us-central1-c
:
gcloud compute scp /etc/acme/data --recurse nfs-client:/mnt/filer --project myproject --zone us-central1-c
Copia datos de un archivo compartido de Filestore a un bucket de Cloud Storage
Puedes copiar datos desde un archivo compartido de Filestore que se activa en una instancia de VM de Compute Engine en un depósito de Cloud Storage mediante el comando gsutil rsync
.
Antes de continuar, asegúrate de que la VM de Compute Engine pueda escribir en Cloud Storage:
En la consola de Google Cloud, ve a la página Instancias de VM.
Elige una instancia de VM de Compute Engine que tenga activado el archivo compartido del Filestore de origen.
Comprueba si la instancia tiene permiso de lectura/escritura:
- Haz clic en el nombre de la instancia para abrir la página Detalles de la instancia.
- Expande los permiso de acceso a la API de Cloud y comprueba si Storage tiene permiso de lectura/escritura.
Si la VM de Compute Engine no tiene permiso de escritura y lectura, realiza los siguientes pasos:
- Haz clic en Detener para detener la instancia de Compute Engine.
- Cuando la instancia se haya detenido, haz clic en Editar en la parte superior de la página.
- En Niveles de acceso, selecciona Establecer acceso para cada API.
- En Storage, selecciona Lectura y escritura y haz clic en Guardar.
- Cuando la instancia termine de actualizarse, haz clic en Iniciar en la parte superior de la página.
Para copiar datos de un archivo compartido de Filestore a un bucket de Cloud Storage, realiza lo siguiente:
Linux
En la consola de Google Cloud, ve a la página Instancias de VM.
Elige una instancia de VM de Compute Engine que tenga activado el archivo compartido de archivos de Filestore y, luego, haz clic en SSH para abrir una terminal en esa instancia de VM.
Ejecuta el siguiente comando para copiar los datos del archivo compartido de Filestore activado. Para sincronizar de manera recurrente los subdirectorios de la ubicación que especificaste, usa la opción
-r
con el comandogsutil rsync
.gsutil rsync mount-directory gs://bucket
Donde:
- mount-directory es el directorio en el cliente en el cual se activa el archivo compartido de Filestore.
- bucket es el depósito, directorio o subdirectorio de Cloud Storage desde donde copiar datos.
Ejemplo
Con el siguiente comando, se copian los datos del directorio /mnt/filer
y todos los subdirectorios al bucket archive
.
gsutil rsync -r /mnt/filer gs://archive
Windows
En la consola de Google Cloud, ve a la página Instancias de VM.
Elige una instancia de VM de Compute Engine que tenga activado el archivo compartido de archivos de origen y haz clic en RDP para abrir una conexión de escritorio remota a esa VM.
Ejecuta el siguiente comando para copiar los datos del archivo compartido de Filestore asignado. Para sincronizar de manera recurrente los subdirectorios de la ubicación que especificaste, usa la opción
-r
con el comandogsutil rsync
.gsutil rsync mapped-drive gs://bucket
Donde:
- mapped-drive es la unidad en el cliente a la que se asigna el archivo compartido de Filestore.
- bucket es el bucket, directorio o subdirectorio de Cloud Storage desde donde copiar datos.
Ejemplo
El siguiente comando copia los datos de la unidad asignada Z:
y todos los subdirectorios al bucket archive
.
gsutil rsync -r Z:\ gs://archive
Soluciona problemas
La copia de datos de Cloud Storage a una instancia de Filestore mediante gsutil
puede ser lenta. Para obtener información detallada sobre cómo mejorar el rendimiento, consulta Mejora el rendimiento en los recursos de Google Cloud.