Monta 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 tuo progetto workstation, assicurati di aver abilitato le API Filestore e API Cloud Workstations.

    Abilita le API Filestore e Cloud Workstations

  2. Assicurati di installare e inizializzare Interfaccia a riga di comando gcloud. A inizializza 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 seguenti ruoli IAM sul tuo progetto di workstation:

  • Se sei un amministratore di Cloud Workstations, chiedi all'amministratore di concederti il seguente ruolo: Cloud Workstations Admin (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 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 l'interfaccia a riga di comando gcloud filestore instances create che segue. 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 gestita dalla Istanza Filestore, ad esempio vol1.
  • NETWORK_NAME: il nome della rete VPC a cui è connessa l'istanza. Deve corrispondere alla rete 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 suo indirizzo IP utilizzando vengono descritte le istanze di Filestore Comando interfaccia a riga di comando gcloud:

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

Sostituisci quanto segue:

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

Il comando visualizza l'indirizzo IP nel seguente formato:

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

Prendi nota di FILESTORE_IP_ADDRESS perché ne hai bisogno 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 della workstation in un cluster Kubernetes.
  • 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. it deve corrispondere alla regione dell'istanza Filestore.
  • WORKSTATIONS_PROJECT_ID: l'ID del progetto delle tue stazioni di lavoro.

Crea una configurazione di workstation 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.

Monta 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 gestita dalla Istanza Filestore, ad esempio vol1.
  • FILESTORE_IP_ADDRESS: l'indirizzo IP del tuo Filestore.

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

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

Crea un'immagine container personalizzata per il montaggio automatico di Filestore

Puoi usare il Dockerfile seguente per creare un'immagine container personalizzata 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 gestita dalla Istanza Filestore, ad esempio vol1.
  • FILESTORE_IP_ADDRESS: l'indirizzo IP del tuo Filestore.

Per saperne di più sulla creazione di un'immagine container personalizzata per Cloud Workstations, vedi Personalizzare le immagini container.