Cloud Workstations puede activar instancias del sistema de archivos de red (NFS) de Filestore que se encuentren 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
Crear tu proyecto
En tu proyecto de estaciones de trabajo, asegúrate de haber habilitado la API de Filestore y las APIs de Cloud Workstations.
Asegúrate de instalar y, luego, inicializar la CLI de
gcloud
. Para inicializar la CLI degcloud
, ejecuta el siguiente comando:gcloud init
Funciones obligatorias
A fin de obtener los permisos que necesitas para crear y actualizar estaciones de trabajo, solicita a tu administrador que te otorgue los siguientes roles de IAM en el proyecto de estaciones de trabajo:
-
Si eres el Administrador de Cloud Workstations, pídele al 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
).
Si quieres obtener más información para otorgar funciones, consulta Administra el acceso.
Es posible que también puedas obtener los permisos necesarios mediante funciones personalizadas, o bien otras funciones predefinidas.
Crea una instancia de Filestore
Si aún no creaste una instancia de Filestore, crea una con el comando gcloud
CLI filestore instances create
que aparece a continuación. Para obtener información sobre nombres, consulta Cómo asignar un nombre a tu instancia de Filestore y Cómo asignar un nombre a los archivos compartidos.
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 para identificar de forma ú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 la instancia de Filestore. Debe coincidir con la región del clúster de la estación de trabajo.WORKSTATIONS_PROJECT_ID
: Es el ID del proyecto de estaciones de trabajo.
Obtener la dirección IP de la instancia de Filestore
Después de crear la instancia de Filestore, obtén su dirección IP mediante el comando filestore instances describe
gcloud
de la CLI:
gcloud filestore instances describe INSTANCE_ID \
--region=LOCATION \
--project WORKSTATIONS_PROJECT_ID
Reemplaza lo siguiente:
INSTANCE_ID
: Es el ID para identificar de forma única tu instancia de Filestore.LOCATION
: Es la región de la instancia de Filestore. Debe coincidir con la región del clúster de la estación de trabajo.WORKSTATIONS_PROJECT_ID
: Es el ID del proyecto de estaciones de trabajo.
El comando imprime la dirección IP en el siguiente formato:
...
networks:
- connectMode: DIRECT_PEERING
ipAddresses:
- FILESTORE_IP_ADDRESS
...
Toma nota del FILESTORE_IP_ADDRESS
, ya que lo necesitarás en pasos posteriores.
Crear clúster de estación de trabajo
Si aún no creaste un clúster de estación 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 la estación de trabajo.NETWORK_NAME
: Es el nombre de la red de VPC a la que se conectan 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 para el clúster de la estación de trabajo. Debe coincidir con la región de la instancia de Filestore.WORKSTATIONS_PROJECT_ID
: Es el ID del proyecto de 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 y 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 de forma correcta, verás el contenido de la instancia de Filestore en la ruta de acceso a los archivos compartidos.
Para obtener más información sobre la activación de instancias de Filestore, consulta Activa los archivos compartidos en clientes de Compute Engine.
Crea una imagen de contenedor personalizada para la activación automática de Filestore
Puedes usar el siguiente Dockerfile para crear una imagen de contenedor personalizada que active una instancia de Filestore en Cloud Workstations automáticamente al 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.
Si quieres obtener más información sobre la creación de una imagen de contenedor personalizada para Cloud Workstations, consulta Personaliza imágenes de contenedor.