Montare le istanze Filestore in Cloud Workstations

Cloud Workstations può montare le istanze NFS (Network File System) di Filestore che si trovano nella stessa rete VPC. All'istanza Filestore possono accedere contemporaneamente più istanze Cloud Workstations.

Per ulteriori informazioni su Filestore, consulta la documentazione di Filestore.

Prima di iniziare

Creazione di un progetto

  1. Nel progetto delle stazioni di lavoro, assicurati di aver attivato l'API Filestore e le API Cloud Workstations.

    Abilita le API Filestore e Cloud Workstations

  2. Assicurati di installare e inizializzare la gcloud CLI. Per inizializzare l'interfaccia a riga di comando gcloud, esegui il seguente comando:

    gcloud init
    

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per creare e aggiornare le workstation, chiedi all'amministratore di concederti i seguenti ruoli IAM nel progetto delle workstation:

  • Se sei un amministratore di Cloud Workstations, chiedi all'amministratore di concederti il seguente ruolo: Cloud Workstations Admin (roles/workstations.admin).
  • Se sei un amministratore di Filestore, chiedi all'amministratore di concederti il seguente ruolo: Editor di Filestore (roles/file.editor).

Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Crea un'istanza di Filestore

Se non hai ancora creato un'istanza Filestore, creane una utilizzando il seguente comando gcloudCLI filestore instances create. Per informazioni sulla denominazione, consulta Assegnare un nome all'istanza Filestore e Assegnare un nome alla condivisione file.

  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

Sostituisci quanto segue:

  • INSTANCE_ID: l'ID per identificare in modo univoco la tua istanza Filestore.
  • FILE_SHARE_NAME: il nome della directory pubblicata dall'istanza Filestore, ad esempio vol1.
  • NETWORK_NAME: il nome della rete VPC a cui è connessa l'istanza. Deve corrispondere alla rete del cluster Cloud Workstations, ad esempio default.
  • LOCATION: la regione dell'istanza Filestore. Deve corrispondere alla regione del cluster di workstation.
  • WORKSTATIONS_PROJECT_ID: l'ID del progetto delle tue stazioni di lavoro.

Ottenere l'indirizzo IP dell'istanza Filestore

Dopo aver creato l'istanza Filestore, ottieni il relativo indirizzo IP utilizzando il comando gcloud CLI filestore instances describe:

  gcloud filestore instances describe INSTANCE_ID \
    --region=LOCATION \
    --project WORKSTATIONS_PROJECT_ID

Sostituisci quanto segue:

  • INSTANCE_ID: l'ID per identificare in modo univoco la tua istanza Filestore.
  • LOCATION: la regione dell'istanza Filestore. Deve corrispondere alla regione del cluster di workstation.
  • WORKSTATIONS_PROJECT_ID: l'ID del progetto delle tue stazioni di lavoro.

Il comando stampa l'indirizzo IP nel seguente formato:

...
networks:
- connectMode: DIRECT_PEERING
  ipAddresses:
  - FILESTORE_IP_ADDRESS
...

Prendi nota del valore FILESTORE_IP_ADDRESS, perché ti servirà nei passaggi successivi.

Crea cluster di workstation

Se non hai ancora creato un cluster di workstation, creane uno utilizzando il comando gcloud CLI clusters create:

gcloud workstations clusters create \
    WORKSTATIONS_CLUSTER_NAME \
    --network=NETWORK_NAME \
    --region=LOCATION \
    --project=WORKSTATIONS_PROJECT_ID

Sostituisci quanto segue:

  • WORKSTATIONS_CLUSTER_NAME: il nome del cluster di workstation.
  • NETWORK_NAME: il nome della rete VPC a cui sono connesse le istanze Cloud Workstations. Deve corrispondere alla rete dell'istanza Filestore, ad esempio default.
  • LOCATION: il nome della regione per il cluster di workstation. Deve corrispondere alla regione dell'istanza Filestore.
  • WORKSTATIONS_PROJECT_ID: l'ID del progetto delle tue stazioni di lavoro.

Crea una configurazione e una workstation

Se non hai ancora creato una configurazione di Cloud Workstations e un'istanza della workstation, consulta Creare una configurazione della workstation e Creare una workstation.

Montare un'istanza Filestore in una workstation

Dopo aver lanciato l'istanza Cloud Workstations, vai a una finestra del terminale ed esegui i seguenti comandi per montare un'istanza Filestore:

sudo rpcbind
mkdir -p FILE_SHARE_NAME
sudo mount -o rw,intr FILESTORE_IP_ADDRESS:/FILE_SHARE_NAME FILE_SHARE_NAME

Sostituisci quanto segue:

  • FILE_SHARE_NAME: il nome della directory pubblicata dall'istanza Filestore, ad esempio vol1.
  • FILESTORE_IP_ADDRESS: l'indirizzo IP della tua istanza Filestore.

Dopo l'esecuzione del comando mount, vedrai i contenuti dell'istanza Filestore nel percorso della condivisione file.

Per ulteriori informazioni sul montaggio delle istanze Filestore, consulta Montaggio delle condivisioni file sui client Compute Engine.

Creare un'immagine del contenitore personalizzata per il montaggio automatico di Filestore

Puoi utilizzare il seguente Dockerfile per creare un'immagine container personalizzata che monta automaticamente un'istanza Filestore in Cloud Workstations all'avvio.

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

Sostituisci quanto segue:

  • FILE_SHARE_NAME: il nome della directory pubblicata dall'istanza Filestore, ad esempio vol1.
  • FILESTORE_IP_ADDRESS: l'indirizzo IP della tua istanza Filestore.

Per ulteriori informazioni sulla creazione di un'immagine del contenitore personalizzata per Cloud Workstations, consulta Personalizzare le immagini del contenitore.