As estações de trabalho na nuvem podem montar instâncias do sistema de ficheiros em rede (NFS) do Filestore que estão na mesma rede da VPC. A instância do Filestore pode ser acedida por várias instâncias do Cloud Workstations em simultâneo.
Para mais informações sobre o Filestore, consulte a documentação do Filestore.
Antes de começar
Antes de começar, crie o seu projeto e configure as funções de IAM necessárias.
Crie o seu projeto
No seu projeto de estações de trabalho, certifique-se de que ativou a API Filestore e as APIs Cloud Workstations.
Certifique-se de que instala e inicializa a CLI
gcloud
. Para inicializar a CLIgcloud
, execute o seguinte comando:gcloud init
Funções necessárias
Para receber as autorizações de que precisa para criar e atualizar estações de trabalho, peça ao seu administrador que lhe conceda as seguintes funções da IAM no seu projeto de estações de trabalho:
-
Se for o administrador do Cloud Workstations, peça ao seu administrador que lhe conceda a seguinte função:
Administrador do Cloud Workstations (
roles/workstations.admin
). -
Se for o administrador do Filestore, peça ao seu administrador para lhe conceder a seguinte função:
Editor do Filestore (
roles/file.editor
).
Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.
Também pode conseguir as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.
Crie uma instância do Filestore
Se ainda não criou uma instância do Filestore, crie uma através do comando gcloud
CLI filestore instances create
que se segue. Para obter informações sobre a atribuição de nomes, consulte os artigos
Atribuir um nome à instância do Filestore
e Atribuir um nome à partilha de ficheiros.
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
Substitua o seguinte:
INSTANCE_ID
: o ID para identificar exclusivamente a sua instância do Filestore.FILE_SHARE_NAME
: o nome do diretório publicado a partir da instância do Filestore, por exemplo,vol1
.NETWORK_NAME
: o nome da rede VPC à qual a instância está ligada. Deve corresponder à rede do cluster de estações de trabalho na nuvem, por exemplo,default
.LOCATION
: a região da sua instância do Filestore. Deve corresponder à região do cluster da estação de trabalho.WORKSTATIONS_PROJECT_ID
: o ID do projeto das suas estações de trabalho.
Obtenha o endereço IP da instância do Filestore
Após a criação da instância do Filestore, obtenha o respetivo endereço IP através do comando CLI filestore instances describe:gcloud
gcloud filestore instances describe INSTANCE_ID \
--region=LOCATION \
--project WORKSTATIONS_PROJECT_ID
Substitua o seguinte:
INSTANCE_ID
: o ID para identificar exclusivamente a sua instância do Filestore.LOCATION
: a região da sua instância do Filestore. Deve corresponder à região do cluster da estação de trabalho.WORKSTATIONS_PROJECT_ID
: o ID do projeto das suas estações de trabalho.
O comando imprime o endereço IP no seguinte formato:
...
networks:
- connectMode: DIRECT_PEERING
ipAddresses:
- FILESTORE_IP_ADDRESS
...
Tome nota do FILESTORE_IP_ADDRESS
porque precisa deste
nos passos seguintes.
Crie um cluster de estações de trabalho
Se ainda não criou um cluster de estações de trabalho, crie um através do comando
gcloud
CLI clusters create
:
gcloud workstations clusters create \
WORKSTATIONS_CLUSTER_NAME \
--network=NETWORK_NAME \
--region=LOCATION \
--project=WORKSTATIONS_PROJECT_ID
Substitua o seguinte:
WORKSTATIONS_CLUSTER_NAME
: o nome do cluster da estação de trabalho.NETWORK_NAME
: o nome da rede da VPC à qual as instâncias do Cloud Workstations estão ligadas. Deve corresponder à rede da instância do Filestore, por exemplo,default
.LOCATION
: o nome da região do cluster da estação de trabalho. Deve corresponder à região da instância do Filestore.WORKSTATIONS_PROJECT_ID
: o ID do projeto das suas estações de trabalho.
Crie uma configuração de estação de trabalho e uma estação de trabalho
Se ainda não criou uma configuração de estações de trabalho na nuvem e uma instância de estação de trabalho, consulte os artigos Criar uma configuração de estação de trabalho e Criar uma estação de trabalho.
Monte uma instância do Filestore numa estação de trabalho
Depois de iniciar a instância do Cloud Workstations, aceda a uma janela de terminal e execute os seguintes comandos para montar uma instância do Filestore:
sudo rpcbind
mkdir -p FILE_SHARE_NAME
sudo mount -o rw,intr FILESTORE_IP_ADDRESS:/FILE_SHARE_NAME FILE_SHARE_NAME
Substitua o seguinte:
FILE_SHARE_NAME
: o nome do diretório publicado a partir da instância do Filestore, por exemplo,vol1
.FILESTORE_IP_ADDRESS
: o endereço IP da sua instância do Filestore.
Depois de o comando mount
ser bem-sucedido, vê o conteúdo da instância do Filestore no caminho da partilha de ficheiros.
Para mais informações sobre a montagem de instâncias do Filestore, consulte o artigo Montar partilhas de ficheiros em clientes do Compute Engine.
Crie uma imagem de contentor personalizada para a montagem automática do Filestore
Pode usar o Dockerfile seguinte para criar uma imagem de contentor personalizada que monte automaticamente uma instância do Filestore nas Estações de trabalho na nuvem no arranque.
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
Substitua o seguinte:
FILE_SHARE_NAME
: o nome do diretório publicado a partir da instância do Filestore, por exemplo,vol1
.FILESTORE_IP_ADDRESS
: o endereço IP da sua instância do Filestore.
Para mais informações sobre como criar uma imagem de contentor personalizada para o Cloud Workstations, consulte o artigo Personalize imagens de contentores.