Las estaciones de trabajo en la nube pueden activar instancias del sistema de archivos de red (NFS) de Filestore que se encuentran en la misma red de VPC. Varias instancias de Cloud Workstations pueden acceder a la instancia de Filestore al mismo tiempo.
Para obtener más información sobre Filestore, consulta la documentación de Filestore.
Antes de comenzar
Crea tu proyecto
En tu proyecto de estaciones de trabajo, asegúrate de que habilitaste las APIs de Filestore y Cloud Workstations.
Asegúrate de instalar e inicializar la CLI de
gcloud
. Para inicializar la CLI degcloud
, ejecuta el siguiente comando:gcloud init
Roles obligatorios
Para obtener los permisos que necesitas para crear y actualizar estaciones de trabajo, pídele a tu administrador que te otorgue los siguientes roles de IAM en tu proyecto de estaciones de trabajo:
-
Si eres el administrador de Cloud Workstations, pídele a tu administrador que te otorgue el siguiente rol:
Administrador de Cloud Workstations (
roles/workstations.admin
). -
Si eres el administrador de Filestore, pídele al administrador que te otorgue el siguiente rol:
Editor de Filestore (
roles/file.editor
).
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.
Crea una instancia de Filestore
Si aún no creaste una instancia de Filestore, crea una con el siguiente comando filestore instances create
de la CLI de gcloud
: Para obtener información sobre los nombres, consulta Asigna un nombre a tu instancia de Filestore y Asigna un nombre al archivo compartido.
gcloud filestore instances create INSTANCE_ID \
--file-share=name=FILE_SHARE_NAME ,capacity=1TiB \
--tier=ENTERPRISE \
--network=name=NETWORK_NAME \
--region=LOCATION \
--project WORKSTATIONS_PROJECT_ID
Reemplaza lo siguiente:
INSTANCE_ID
: Es el ID que identifica de manera única tu instancia de Filestore.FILE_SHARE_NAME
: Es el nombre del directorio que se entrega desde la instancia de Filestore, por ejemplo,vol1
.NETWORK_NAME
: Es el nombre de la red de VPC a la que está conectada la instancia. Debe coincidir con la red del clúster de Cloud Workstations, por ejemplo,default
.LOCATION
: Es la región de tu instancia de Filestore. Debe coincidir con la región del clúster de Workstation.WORKSTATIONS_PROJECT_ID
: Es el ID del proyecto de las estaciones de trabajo.
Cómo obtener la dirección IP de la instancia de Filestore
Después de crear la instancia de Filestore, obtén su dirección IP con el comando
filestore instances describe
de la CLI de gcloud
:
gcloud filestore instances describe INSTANCE_ID \
--region=LOCATION \
--project WORKSTATIONS_PROJECT_ID
Reemplaza lo siguiente:
INSTANCE_ID
: Es el ID que identifica de manera única tu instancia de Filestore.LOCATION
: Es la región de tu instancia de Filestore. Debe coincidir con la región del clúster de Workstation.WORKSTATIONS_PROJECT_ID
: Es el ID del proyecto de las estaciones de trabajo.
El comando imprime la dirección IP en el siguiente formato:
...
networks:
- connectMode: DIRECT_PEERING
ipAddresses:
- FILESTORE_IP_ADDRESS
...
Toma nota de FILESTORE_IP_ADDRESS
porque la necesitarás en pasos posteriores.
Crear clúster de estación de trabajo
Si aún no creaste un clúster de estaciones de trabajo, crea uno con el comando clusters create
de la CLI de gcloud
:
gcloud workstations clusters create \
WORKSTATIONS_CLUSTER_NAME \
--network=NETWORK_NAME \
--region=LOCATION \
--project=WORKSTATIONS_PROJECT_ID
Reemplaza lo siguiente:
WORKSTATIONS_CLUSTER_NAME
: Es el nombre del clúster de estaciones de trabajo.NETWORK_NAME
: Es el nombre de la red de VPC a la que están conectadas las instancias de Cloud Workstations. Debe coincidir con la red de la instancia de Filestore, por ejemplo,default
.LOCATION
: Es el nombre de la región de tu clúster de estaciones de trabajo. Debe coincidir con la región de la instancia de Filestore.WORKSTATIONS_PROJECT_ID
: Es el ID del proyecto de las estaciones de trabajo.
Crea una configuración de estación de trabajo y una estación de trabajo
Si aún no creaste una configuración de Cloud Workstations ni una instancia de estación de trabajo, consulta Crea una configuración de estación de trabajo y Crea una estación de trabajo.
Activa una instancia de Filestore en una estación de trabajo
Después de iniciar la instancia de Cloud Workstations, ve a una ventana de terminal y ejecuta los siguientes comandos para activar una instancia de Filestore:
sudo rpcbind
mkdir -p FILE_SHARE_NAME
sudo mount -o rw,intr FILESTORE_IP_ADDRESS :/FILE_SHARE_NAME FILE_SHARE_NAME
Reemplaza lo siguiente:
FILE_SHARE_NAME
: Es el nombre del directorio que se entrega desde la instancia de Filestore, por ejemplo,vol1
.FILESTORE_IP_ADDRESS
: Es la dirección IP de tu instancia de Filestore.
Después de que el comando mount
se ejecute correctamente, verás el contenido de la instancia de Filestore en la ruta de acceso de uso compartido de archivos.
Para obtener más información sobre cómo activar instancias de Filestore, consulta Activa los archivos compartidos en clientes de Compute Engine.
Crea una imagen de contenedor personalizada para el automontaje de Filestore
Puedes usar el siguiente Dockerfile para crear una imagen de contenedor personalizada que monte una instancia de Filestore en Cloud Workstations automáticamente durante el inicio.
FROM us-central1-docker.pkg.dev/cloud-workstations-images/predefined/code-oss:latest
RUN echo "#!/bin/bash\n\
sudo rpcbind\n\
sudo mkdir -p /home/user/FILE_SHARE_NAME \n\
sudo mount -o rw,intr FILESTORE_IP_ADDRESS :/FILE_SHARE_NAME /home/user/FILE_SHARE_NAME " | sudo tee -a /etc/workstation-startup.d/011_mount-filestore.sh
RUN sudo chmod +x /etc/workstation-startup.d/011_mount-filestore.sh
Reemplaza lo siguiente:
FILE_SHARE_NAME
: Es el nombre del directorio que se entrega desde la instancia de Filestore, por ejemplo,vol1
.FILESTORE_IP_ADDRESS
: Es la dirección IP de tu instancia de Filestore.
Para obtener más información sobre cómo crear una imagen de contenedor personalizada para Cloud Workstations, consulta Cómo personalizar imágenes de contenedores.