Installer des instances Filestore dans Cloud Workstations

Cloud Workstations peut installer des instances NFS (Network File System) de Filestore se trouvant sur le même réseau VPC. L'instance Filestore est accessible depuis plusieurs instances Cloud Workstations en même temps.

Pour en savoir plus sur Filestore, consultez la documentation sur Filestore.

Avant de commencer

Créer un projet

  1. Dans votre projet de stations de travail, assurez-vous que vous avez activé l'API Filestore et les API Cloud Workstations.

    Activer les API Filestore et Cloud Workstations

  2. Assurez-vous d'installer et d'initialiser la CLI gcloud. Pour initialiser la CLI gcloud, exécutez la commande suivante:

    gcloud init
    

Rôles requis

Afin d'obtenir les autorisations nécessaires pour créer et mettre à jour des stations de travail, demandez à votre administrateur de vous attribuer les rôles IAM suivants sur votre projet de stations de travail:

  • Si vous êtes administrateur Cloud Workstations, demandez à votre administrateur de vous attribuer le rôle suivant : Administrateur Cloud Workstations (roles/workstations.admin).
  • Si vous êtes administrateur Filestore, demandez à votre administrateur de vous attribuer le rôle suivant : Éditeur Filestore (roles/file.editor).

Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.

Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.

Créer une instance Filestore

Si vous n'avez pas encore créé d'instance Filestore, créez-en une à l'aide de la commande CLI gcloud filestore instances create qui suit. Pour plus d'informations sur la dénomination, consultez les sections Attribuer un nom à votre instance Filestore et Attribuer un nom au partage de fichiers.

  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

Remplacez les éléments suivants :

  • INSTANCE_ID: ID permettant d'identifier de manière unique votre instance Filestore.
  • FILE_SHARE_NAME: nom du répertoire diffusé à partir de l'instance Filestore (par exemple, vol1).
  • NETWORK_NAME: nom du réseau VPC auquel l'instance est connectée. Il doit correspondre au réseau du cluster Cloud Workstations (par exemple, default).
  • LOCATION: région de votre instance Filestore. Elle doit correspondre à la région du cluster de stations de travail.
  • WORKSTATIONS_PROJECT_ID: ID de votre projet de stations de travail.

Obtenir l'adresse IP de l'instance Filestore

Une fois l'instance Filestore créée, obtenez son adresse IP à l'aide de la commande CLI instances filestore describe gcloud:

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

Remplacez les éléments suivants :

  • INSTANCE_ID: ID permettant d'identifier de manière unique votre instance Filestore.
  • LOCATION: région de votre instance Filestore. Elle doit correspondre à la région du cluster de stations de travail.
  • WORKSTATIONS_PROJECT_ID: ID de votre projet de stations de travail.

La commande imprime l'adresse IP au format suivant:

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

Notez le FILESTORE_IP_ADDRESS, car vous en aurez besoin dans les étapes suivantes.

Créer un cluster de stations de travail

Si vous n'avez pas encore créé de cluster de stations de travail, créez-en un à l'aide de la commande gcloud CLI clusters create:

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

Remplacez les éléments suivants :

  • WORKSTATIONS_CLUSTER_NAME: nom du cluster de stations de travail.
  • NETWORK_NAME: nom du réseau VPC auquel les instances Cloud Workstations sont connectées. Il doit correspondre au réseau de l'instance Filestore, par exemple default.
  • LOCATION: nom de la région pour votre cluster de stations de travail. Elle doit correspondre à la région de l'instance Filestore.
  • WORKSTATIONS_PROJECT_ID: ID de votre projet de stations de travail.

Créer une configuration de station de travail et une station de travail

Si vous n'avez pas encore créé de configuration Cloud Workstations ni d'instance de station de travail, consultez les sections Créer une configuration de station de travail et Créer une station de travail.

Installer une instance Filestore sur un poste de travail

Après avoir lancé l'instance Cloud Workstations, accédez à une fenêtre de terminal et exécutez les commandes suivantes pour installer une instance Filestore:

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

Remplacez les éléments suivants :

  • FILE_SHARE_NAME: nom du répertoire diffusé à partir de l'instance Filestore (par exemple, vol1).
  • FILESTORE_IP_ADDRESS: adresse IP de votre instance Filestore.

Une fois que la commande mount aboutit, le contenu de l'instance Filestore s'affiche dans le chemin de partage de fichiers.

Pour plus d'informations sur l'installation d'instances Filestore, consultez la page Installer des partages de fichiers sur des clients Compute Engine.

Créer une image de conteneur personnalisé pour l'installation automatique de Filestore

Vous pouvez utiliser le Dockerfile suivant pour créer une image de conteneur personnalisée qui installe automatiquement une instance Filestore dans Cloud Workstations au démarrage.

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

Remplacez les éléments suivants :

  • FILE_SHARE_NAME: nom du répertoire diffusé à partir de l'instance Filestore (par exemple, vol1).
  • FILESTORE_IP_ADDRESS: adresse IP de votre instance Filestore.

Pour en savoir plus sur la création d'une image de conteneur personnalisée pour Cloud Workstations, consultez la page Personnaliser les images de conteneur.