Monta istanze Filestore in Cloud Workstations

Cloud Workstations può montare istanze di file system di rete Filestore (NFS) che si trovano nella stessa rete VPC. È possibile accedere all'istanza Filestore da più istanze Cloud Workstations contemporaneamente.

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

Prima di iniziare

Creazione di un progetto

  1. Nel tuo progetto Workstations, assicurati di aver abilitato l'API Filestore e le API Cloud Workstations.

    Abilita le API Filestore e Cloud Workstations

  2. Assicurati di installare e inizializzare l'interfaccia a riga di comando gcloud. Per inizializzare l'interfaccia a riga di comando gcloud, esegui questo 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 sul tuo progetto di workstation:

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

Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

Potresti anche essere in grado di 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 l'interfaccia a riga di comando gcloud filestore instances create che segue. Per informazioni sulla denominazione, consulta Denominazione dell'istanza Filestore e Denominazione della 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 l'istanza Filestore.
  • FILE_SHARE_NAME: il nome della directory fornita 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 di workstation.

Ottieni l'indirizzo IP dell'istanza Filestore

Dopo aver creato l'istanza Filestore, recupera il relativo indirizzo IP utilizzando la descrizione delle istanze Filestore gcloud. Il comando dell'interfaccia a riga di comando:

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

Sostituisci quanto segue:

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

Il comando stampa l'indirizzo IP nel seguente formato:

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

Prendi nota del 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 dell'interfaccia a riga di comando 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 di workstation.

Crea una configurazione di workstation e una workstation

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

Monta un'istanza Filestore in una workstation

Dopo aver avviato l'istanza Cloud Workstations, vai a una finestra del terminale ed esegui i comandi seguenti 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 fornita dall'istanza Filestore, ad esempio vol1.
  • FILESTORE_IP_ADDRESS: l'indirizzo IP della tua istanza Filestore.

Dopo che il comando mount ha avuto esito positivo, vedrai i contenuti dell'istanza Filestore nel percorso di condivisione file.

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

Crea un'immagine container 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 fornita dall'istanza Filestore, ad esempio vol1.
  • FILESTORE_IP_ADDRESS: l'indirizzo IP della tua istanza Filestore.

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