Criar uma instância de notebooks gerenciados pelo usuário

Nesta página, mostramos como criar uma instância de notebooks gerenciados pelo usuário usando o console do Google Cloud ou a CLI do Google Cloud. Ao criar a instância, é possível configurar o hardware, o tipo de criptografia, a rede e outros detalhes dela.

Antes de começar

Antes de criar uma instância de notebooks gerenciados pelo usuário, é necessário ter um projeto do Google Cloud e ativar a API Notebooks para esse projeto.
  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Notebooks API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Notebooks API.

    Enable the API

  8. Se você planeja usar GPUs com a instância de notebooks gerenciada pelo usuário, consulte a página de cotas no Console do Google Cloud para garantir que há GPUs suficientes disponíveis no seu projeto. Se as GPUs não estiverem listadas nessa página ou se você precisar de mais cotas, solicite um aumento de cota. Consulte Como solicitar um aumento na cota na página Cotas de recursos do Compute Engine.

Funções exigidas

Caso tenha criado o projeto, você terá o papel do IAM de Proprietário (roles/owner) no projeto, que inclui todas as permissões necessárias. Pule esta seção e comece a criar sua instância de notebooks gerenciados pelo usuário. Se você não criou o projeto, continue nesta seção.

Para garantir que sua conta de usuário tenha as permissões necessárias para criar uma instância de notebooks gerenciados pelo usuário do Vertex AI Workbench, peça ao administrador para conceder à sua conta de usuário os seguintes papéis do IAM no projeto:

Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.

O administrador também pode conceder à sua conta de usuário as permissões necessárias via papéis personalizados ou outros papéis predefinidos.

Criar uma instância de notebooks gerenciados pelo usuário

É possível criar uma instância de notebooks gerenciados pelo usuário usando o console do Google Cloud, a CLI do Google Cloud ou o Terraform.

Console

Para criar uma instância de notebooks gerenciados pelo usuário usando o console do Google Cloud, faça o seguinte:

  1. No Console do Google Cloud, acesse a página Notebooks gerenciados pelo usuário. Ou acesse notebook.new (https://notebook.new) e pule a próxima etapa.

    Acesse Notebooks gerenciados pelo usuário

  2. Clique em  Criar novo.

    A janela Nova instância é aberta.

  3. Na caixa de diálogo Nova instância, clique em Opções avançadas.

  4. Na seção Detalhes, forneça as seguintes informações para a nova instância:

    • Nome: forneça um nome para a nova instância. O nome precisa começar com uma letra seguida por até 62 letras minúsculas, números ou hifens (-) e não pode terminar com um hífen.
    • Região e Zona: selecione uma região e zona para a nova instância. Para ter o melhor desempenho de rede, selecione a região mais próxima de você. Consulte os locais de notebooks gerenciados pelo usuário disponíveis.
    • Rótulos: opcional. Forneça rótulos personalizados de chave-valor para a instância.
    • Tags: opcional. Forneça tags para a instância.
  5. Na seção Ambiente, forneça as seguintes informações:

    • Sistema operacional: selecione o sistema operacional que você quer usar.
    • Ambiente: selecione o ambiente que você quer usar.
    • Versão: use a versão mais recente ou uma versão anterior das instâncias de notebooks gerenciados pelo usuário.
    • Script pós-inicialização: opcional. Clique em Procurar para selecionar um script para ser executado uma vez, após a criação da instância. O caminho precisa ser um URL ou do Cloud Storage, por exemplo: gs://PATH_TO_FILE/FILE_NAME.
    • Metadados: opcional. Informe as chaves de metadados personalizadas para a instância.
  6. Na seção Tipo de máquina, forneça as seguintes informações:

    • Tipo de máquina: selecione o número de CPUs e a quantidade de RAM para a nova instância. O Vertex AI Workbench fornece estimativas de custo mensais para cada tipo de máquina selecionada.
    • GPU: Opcional. Se você quiser GPUs, selecione o Tipo de GPU e o Número de GPUs para a nova instância. Para informações sobre as diferentes GPUs, consulte GPUs no Compute Engine.

      Selecione Instalar driver de GPU NVIDIA automaticamente para mim.

    • VM protegida: opcional. Marque ou desmarque as seguintes opções:

      • inicialização segura;
      • Módulo de plataforma confiável e virtual (vTPM)
      • monitoramento de integridade
    • Desligamento de inatividade: opcional.

      • Para alterar o número de minutos antes do encerramento, no campo Tempo de inatividade antes do encerramento (minutos), altere o valor para um número inteiro de 10 a 1.440.

      • Para desativar o encerramento por inatividade, desmarque a opção Ativar encerramento por inatividade.

  7. Na seção Discos, forneça as seguintes informações:

    • Discos: opcional. Para mudar as configurações padrão de inicialização ou disco de dados, selecione um Tipo de disco de inicialização, Tamanho do disco de inicialização em GB ou Tipo de disco de dados e Tamanho do disco de dados em GB. Para mais informações sobre tipos de disco, consulte Opções de armazenamento.

    • Excluir na lixeira: opcional. Marque essa caixa de seleção para usar o comportamento padrão da lixeira do sistema operacional. Se você usar o comportamento padrão, os arquivos excluídos usando a interface do usuário do JupyterLab serão recuperados, mas os arquivos excluídos usarão o espaço em disco.

    • Backup: Opcional. Para sincronizar um local do Cloud Storage com o disco de dados da instância, clique em Procurar e especifique o local do Cloud Storage. Para saber mais sobre os custos de armazenamento, consulte Preços do Cloud Storage.

    • Criptografia: selecione Chave de criptografia gerenciada pelo Google ou Chave de criptografia gerenciada pelo cliente (CMEK, na sigla em inglês). Para usar CMEK, consulte Chaves de criptografia gerenciadas pelo cliente.

  8. Na seção Rede, forneça as seguintes informações:

    • Rede: ajuste as opções para usar uma rede no projeto atual ou uma rede VPC compartilhada de um projeto host, se houver configurados. Se você estiver usando uma VPC compartilhada no projeto host, você também precisa conceder o Papel Usuário de rede do Compute (roles/compute.networkUser) para Agente de serviço do Notebooks do projeto de serviço.

      1. No campo Rede, selecione uma rede. É possível selecionar uma rede VPC, desde que ela tenha o Acesso privado do Google ativado ou tenha acesso à Internet. Para mais informações, consulte Opções de configuração de rede.

      2. No campo Sub-rede, selecione a sub-rede que você quer.

    • Para desativar o endereço IP externo, desmarque a caixa de seleção Atribuir endereço IP externo.

    • Para desativar o acesso por proxy, desmarque a caixa de seleção Permitir acesso por proxy.

      .
  9. Na seção IAM e segurança, forneça o seguinte:

    • IAM e segurança: para conceder acesso à interface do JupyterLab da instância, conclua uma das seguintes etapas:

      • Para conceder acesso ao JupyterLab por meio de uma conta de serviço, selecione Conta de serviço.

        • Para usar a conta de serviço padrão do Compute Engine, selecione Usar a conta de serviço padrão do Compute Engine.

        • Para usar uma conta de serviço personalizada, desmarque a opção Usar a conta de serviço padrão do Compute Engine e, no campo E-mail da conta de serviço, digite seu endereço de e-mail da conta de serviço personalizada.

      • Para conceder a um único usuário acesso à interface JupyterLab, faça o seguinte:

        1. Selecione Usuário único e, no campo E-mail do usuário, insira a conta de usuário à qual você quer conceder acesso. Se o usuário especificado não for o criador da instância, você precisará conceder o papel de usuário da conta de serviço (roles/iam.serviceAccountUser) ao conta de serviço da instância.

        2. A instância usa uma conta de serviço para interagir com os serviços e as APIs do Google Cloud;

          • Para usar a conta de serviço padrão do Compute Engine, selecione Usar a conta de serviço padrão do Compute Engine.

          • Para usar uma conta de serviço personalizada, desmarque a opção Usar a conta de serviço padrão do Compute Engine e, no campo E-mail da conta de serviço, digite seu endereço de e-mail da conta de serviço personalizada.

      Para saber mais sobre como conceder acesso, consulte Gerenciar acesso.

    • Opções de segurança: marque ou desmarque as seguintes caixas de seleção:

      • Acesso raiz à instância
      • nbconvert
      • Permitir downloads do arquivo
      • Acesso ao terminal
  10. Na seção Integridade do sistema, forneça as seguintes informações:

    • Atualização do ambiente e integridade do sistema: para atualizar automaticamente para versões de ambiente recém-lançadas, selecione Upgrade automático do ambiente e conclua a Programação de upgrade.

    • Em Relatórios, marque ou desmarque as seguintes caixas de seleção:

      • Relatar a integridade do sistema
      • Relatar métricas personalizadas para o Cloud Monitoring
      • Instalar o Cloud Monitoring
      • Informar o status de DNS dos domínios obrigatórios do Google
  11. Clique em Criar.

    O Vertex AI Workbench cria e inicia automaticamente sua instância de notebooks gerenciados pelo usuário. Quando a instância estiver pronta para uso, o Vertex AI Workbench ativa um link Abrir JupyterLab.

gcloud

Por padrão, a Google Cloud CLI cria uma instância de notebooks gerenciados pelo usuário com um endereço IP externo. Se você criar uma instância sem um endereço IP externo, será necessário especificar uma sub-rede com o Acesso privado do Google ativado. Para mais informações, consulte Opções de configuração de rede.

  1. Para criar uma instância de notebooks gerenciados pelo usuário na linha de comando, no Cloud Shell ou em qualquer terminal em que a CLI do Google Cloud esteja instalada, use o comando gcloud notebooks instances create:

    gcloud notebooks instances create INSTANCE_NAME \
      --vm-image-project=deeplearning-platform-release \
      --vm-image-family=VM_IMAGE_FAMILY \
      --machine-type=MACHINE_TYPE \
      --location=LOCATION
    

    Substitua:

    • INSTANCE_NAME: o nome da nova instância. precisa começar com uma letra seguida por até 62 letras minúsculas, números ou hifens (-), mas não pode terminar com um hífen.
    • VM_IMAGE_FAMILY: o nome da família de imagens que você quer usar para criar sua instância
    • MACHINE_TYPE: o tipo de máquina da VM da instância
    • LOCATION: o local do Google Cloud em que você quer que a nova instância fique
  2. Acesse sua instância no Console do Google Cloud.

Para mais informações sobre todos os comandos para criar uma instância a partir da linha de comando, consulte a documentação da CLI gcloud.

Terraform

O exemplo a seguir usa o recurso google_notebooks_instance do Terraform para criar uma nova instância de notebooks gerenciados pelo usuário chamada notebooks-instance-basic.

Para saber como aplicar ou remover uma configuração do Terraform, consulte Comandos básicos do Terraform.

resource "google_notebooks_instance" "basic_instance" {
  name         = "notebooks-instance-basic"
  location     = "us-central1-a"
  machine_type = "e2-medium"

  vm_image {
    project      = "deeplearning-platform-release"
    image_family = "tf-ent-2-9-cu113-notebooks"
  }
}

Abrir o notebook

Para abrir uma instância de notebooks gerenciado pelo usuário, conclua estas etapas:
  1. No Console do Google Cloud, ao lado do nome da instância de notebooks gerenciados pelo usuário, clique em Abrir JupyterLab.

  2. Sua instância de notebooks gerenciados pelo usuário abre o JupyterLab.

Opções de configuração de rede

Uma instância de notebooks gerenciada pelo usuário precisa acessar endpoints de serviço fora da rede VPC.

Você pode fornecer esse acesso de uma das seguintes maneiras:

Se você usa o VIP private.googleapis.com ou restricted.googleapis.com para fornecer acesso aos endpoints do serviço, adicione entradas DNS para cada um dos endpoints de serviço necessários:

  • notebooks.googleapis.com
  • *.notebooks.cloud.google.com
  • *.notebooks.googleusercontent.com
  • *.kernels.googleusercontent.com

Tags de rede

Sua nova instância de notebooks gerenciado pelo usuário tem automaticamente as tags de rede deeplearning-vm e notebook-instance atribuídas.

Essas tags permitem gerenciar o acesso à rede de e para sua instância de notebooks gerenciados pelo usuário referenciando as tags nas regras de firewall da rede VPC. Para mais informações sobre tags de rede, consulte Adicionar tags de rede.

Para visualizar as tags de rede de uma instância de notebooks gerenciados pelo usuário, faça o seguinte:

  1. No console do Google Cloud, acesse a página Instâncias de VMs.

    Acessar instâncias de VM

  2. Clique no nome da instância.

  3. Na seção Rede, localize Tags de rede.

Solução de problemas

Se você encontrar problemas ao criar uma instância, consulte Como solucionar problemas do Vertex AI Workbench para receber ajuda.

A seguir