Nesta página, descrevemos como usar o VPC Service Controls para configurar uma instância de notebooks gerenciados pelo usuário em um perímetro de serviço.
Antes de começar
Consulte a Visão geral do VPC Service Controls.
Criar uma instância de notebooks gerenciados pelo usuário. Essa instância ainda não está em um perímetro de serviço.
Crie um perímetro de serviço usando o VPC Service Controls. Esse perímetro protege os recursos gerenciados pelo Google dos serviços especificados por você. Ao criar o perímetro de serviço, faça o seguinte:
Quando você precisar adicionar projetos ao perímetro de serviço, adicione o que contém a instância de notebooks gerenciados.
Quando você precisar adicionar serviços ao perímetro, inclua a API Notebooks.
Se você criou o perímetro de serviço sem adicionar os projetos e serviços necessários, consulte Como gerenciar perímetros de serviço para saber como atualizá-lo.
Configurar entradas DNS usando o Cloud DNS
As instâncias de notebooks gerenciados pelo usuário usam vários domínios que não são gerenciados por uma rede de nuvem privada virtual por padrão. Para garantir que sua rede VPC processe corretamente as solicitações enviadas a esses domínios, use o Cloud DNS para adicionar registros DNS. Para mais informações sobre rotas VPC, consulte Visão geral de rotas.
Para criar uma zona gerenciada de um domínio, adicione uma entrada DNS que roteará a solicitação e executar a transação para concluir as etapas a seguir.
Repita esses passos para cada um dos vários domínios em que você processará solicitações, começando com *.notebooks.googleapis.com
.
No Cloud Shell
ou em qualquer ambiente em que a ferramenta de linha de comando gcloud
esteja instalada, digite o seguinte comando da ferramenta de linha de comando gcloud
.
Para criar uma zona gerenciada privada para um dos domínios que a rede VPC precisa gerenciar:
gcloud dns managed-zones create ZONE_NAME \ --visibility=private \ --networks=https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK_NAME \ --dns-name=DNS_NAME \ --description="Description of your managed zone" --target-network=TARGET_NETWORK --target-project=TARGET_PROJECT
Substitua:
ZONE_NAME
: um nome para a zona a ser criada. Você precisa usar uma zona separada para cada domínio. Esse nome de zona é usado em todas as etapas a seguir.PROJECT_ID
: o ID do projeto que hospeda a rede VPC.NETWORK_NAME
: o nome da rede VPC que você criou anteriormente.DNS_NAME
: a parte do nome de domínio que vem após o*.
. Por exemplo, o DNS_NAME de*.notebooks.googleapis.com
énotebooks.googleapis.com
TARGET_NETWORK
: o ID da rede privada da rede para encaminhar consultasTARGET_PROJECT
: o ID do projeto da rede privada para encaminhar consultas;
Inicie uma transação.
gcloud dns record-sets transaction start --zone=ZONE_NAME
Adicione o registro A DNS a seguir. Isso redireciona o tráfego para os endereços IP restritos do Google.
gcloud dns record-sets transaction add \ --name=DNS_NAME. \ --type=A 199.36.153.4 199.36.153.5 199.36.153.6 199.36.153.7 \ --zone=ZONE_NAME \ --ttl=300
Inclua o registro CNAME DNS a seguir para apontar para o registro A que você acabou de adicionar. Isso redireciona todo o tráfego que corresponde ao domínio para os endereços IP listados na etapa anterior.
gcloud dns record-sets transaction add \ --name=\*.DNS_NAME. \ --type=CNAME DNS_NAME. \ --zone=ZONE_NAME \ --ttl=300
Execute a transação.
gcloud dns record-sets transaction execute --zone=ZONE_NAME
Repita essas etapas para cada um dos domínios a seguir. Para cada repetição, altere ZONE_NAME e DNS_NAME para os valores apropriados para esse domínio. Mantenha PROJECT_ID e NETWORK_NAME sempre iguais. Você já realizou essas tarefas para
*.notebooks.googleapis.com
.*.notebooks.googleapis.com
*.notebooks.cloud.google.com
*.notebooks.googleusercontent.com
Configure o perímetro de serviço
Depois de configurar os registros DNS, crie um perímetro de serviço ou atualize um existente para adicionar seu projeto ao perímetro de serviço.
Usar o Container Registry no perímetro de serviço
Se você quiser usar o Container Registry no perímetro de serviço, siga estas etapas para configurar as entradas DNS e o perímetro de serviço.
Usar VPC compartilhada
Se você estiver usando uma VPC compartilhada,
será necessário adicionar o host e os projetos de serviço ao perímetro
de serviço. No projeto host, também é necessário conceder o
papel de Usuário da rede do Compute
(roles/compute.networkUser
) ao
Agente de serviço de notebooks
no projeto de serviço. Para mais informações, consulte Como gerenciar
perímetros de serviço.
Acessar a instância de notebooks gerenciados pelo usuário
Siga as etapas para abrir um notebook.
Como instalar extensões Jupyter em notebooks gerenciados pelo usuário
As extensões de notebooks gerenciados pelo usuário são armazenadas no
bucket público deeplearning-platform-ui-public
. Se você tentar instalar extensões JupyterLab,
mas API Cloud Storage for restrita,
talvez veja um erro NETWORK_NOT_IN_SAME_SERVICE_PERIMETER
.
Como acessar o proxy de notebooks gerenciados pelo usuário em uma estação de trabalho sem Internet.
Para acessar instâncias de notebooks gerenciados pelo usuário em uma estação de trabalho com acesso limitado à Internet, verifique com seu administrador de TI se você consegue acessar os seguintes domínios:
- *.accounts.google.com
- *.accounts.youtube.com
- *.gstatic.com
- *.googleusercontent.com
- *.datalab.cloud.google.com
A seguir
- Instalar as dependências na nova instância de notebooks gerenciados pelo usuário.