Acesso público de entrada a uma instância do Looker (Google Cloud Core) usando o Private Service Connect

Esta página de documentação explica como usar o Private Service Connect para configurar o roteamento de clientes para o Looker (Google Cloud Core), também chamado de tráfego de entrada.

O Private Service Connect permite que os consumidores acessem serviços gerenciados de maneira privada na rede VPC, na rede híbrida ou publicamente quando implantado com um balanceador de carga de aplicativo externo regional. Assim, produtores serviço gerenciado conseguem hospedar esses serviços em redes VPC separadas e oferecer uma conexão privada ou pública aos consumidores.

Ao usar o Private Service Connect para acessar o Looker (Google Cloud Core), você é o consumidor de serviço e o Looker (Google Cloud Core) é o produtor de serviços. O acesso de entrada ao Looker (Google Cloud Core) exige que a VPC do consumidor seja adicionada como uma VPC permitida para a instância do Private Service Connect do Looker (Google Cloud Core).

Esta documentação descreve como configurar um domínio personalizado e fornece orientações sobre como acessar o Looker (Google Cloud Core) usando um back-end do Private Service Connect backend para conectividade privada ou pública com certificados.

A implantação recomendada para acessar o Looker (Google Cloud Core) é por meio de um balanceador de carga de aplicativo com um back-end. Essa configuração também permite a autenticação de certificado de domínio personalizado, adicionando uma camada extra de segurança e controle para o acesso do usuário.

Criar um domínio personalizado

A primeira etapa após a criação da instância do Looker (Google Cloud Core) é configurar um domínio personalizado e atualizar as credenciais OAuth da instância. As próximas seções orientam você no processo.

Ao criar um domínio personalizado para instâncias de conexões particulares (Private Service Connect), o domínio personalizado precisa atender aos seguintes requisitos:

  • O domínio personalizado precisa consistir em pelo menos três partes, incluindo pelo menos um subdomínio. Por exemplo, subdomain.domain.com.
  • O domínio personalizado não pode conter nenhum dos seguintes:
    • looker.com
    • google.com
    • googleapis.com
    • gcr.io
    • pkg.dev

Configurar um domínio personalizado

Depois que a instância do Looker (Google Cloud Core) for criada, você poderá configurar um domínio personalizado.

Antes de começar

Antes de personalizar o domínio da instância do Looker (Google Cloud Core), identifique onde os registros DNS do domínio estão armazenados para que você possa atualizá-los.

Funções exigidas

Para receber as permissões necessárias para criar um domínio personalizado para uma instância do Looker (Google Cloud Core), peça para o administrador conceder a você opapel do IAM de Administrador do Looker (roles/looker.admin) no projeto em que a instância reside. Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Também é possível conseguir as permissões necessárias com papéis personalizados ou outros papéis predefinidos.

Criar um domínio personalizado

No Google Cloud console, siga estas etapas para personalizar o domínio da instância do Looker (Google Cloud Core):

  1. Na página Instâncias, clique no nome da instância em que você quer configurar um domínio personalizado.
  2. Clique na guia Domínio personalizado.
  3. Clique em Adicionar um domínio personalizado.

    O painel Adicionar um novo domínio personalizado será aberto.

  4. Usando apenas letras, números e traços, insira o nome do host de até 64 caracteres para o domínio da Web que você quer usar. Por exemplo: looker.examplepetstore.com.

  5. Clique no botão Continuar.

  6. A seção Atualizar seus registros DNS será aberta. O IP público de entrada está listado no campo Dados.

  7. Clique em CONCLUÍDO no painel Adicionar um novo domínio personalizado para retornar à guia DOMÍNIO PERSONALIZADO.

A atualização do domínio personalizado leva de 10 a 15 minutos para ser concluída.

Depois que o domínio personalizado for configurado, ele será exibido na coluna Domínio na guia DOMÍNIO PERSONALIZADO da página de detalhes da instância do Looker (Google Cloud Core) no Google Cloud console.

Depois que o domínio personalizado for criado, você poderá conferir informações sobre ele ou excluí-lo.

Atualizar as credenciais OAuth

  1. Acesse o cliente OAuth navegando no Google Cloud console até APIs e serviços > Credenciais e selecionando o ID do cliente OAuth usado pela instância do Looker (Google Cloud Core).
  2. Clique no botão Adicionar URI para atualizar o campo Origens JavaScript autorizadas no cliente OAuth para incluir o mesmo nome DNS que sua organização usará para acessar o Looker (Google Cloud Core). Por exemplo, se o domínio personalizado for looker.examplepetstore.com, insira looker.examplepetstore.com como o URI.

  3. Atualize ou adicione o domínio personalizado à lista de URIs de redirecionamento autorizados para as credenciais OAuth usadas ao criar a instância do Looker (Google Cloud Core). Adicione /oauth2callback ao final do URI. Por exemplo, se o domínio personalizado for looker.examplepetstore.com, insira looker.examplepetstore.com/oauth2callback.

Acesso público ao Looker (Google Cloud Core)

Depois de configurar o domínio personalizado, a próxima etapa é criar um certificado autoassinado ou um certificado gerenciado pelo Google com autorização de DNS. Depois que o certificado for criado, você poderá implantar um balanceador de carga de aplicativo externo regional com um back-end do Private Service Connect como o serviço de back-end. Depois que o balanceador de carga for implantado, você poderá atualizar o DNS público com o domínio do cliente e o endereço IP do balanceador de carga como o registro A.

Funções exigidas

Papel

Descrição

Administrador de rede do Compute (roles/compute.networkAdmin)

Concede controle total sobre a rede VPC que inicia uma conexão com uma instância do Looker (Google Cloud Core), incluindo a criação e o gerenciamento de um proxy de destino HTTPS.

Papel de administrador do Compute Load Balancer (roles/compute.loadBalancerAdmin)

Crie back-ends do Private Service Connect.

Administrador do Looker (roles/looker.admin)

Concede controle total sobre os recursos do Looker (Google Cloud Core), incluindo a criação de uma instância ativada para o Private Service Connect e a criação de um domínio personalizado.

Administrador do DNS (roles/dns.admin) (opcional)

Concede controle total sobre os recursos do Cloud DNS, incluindo zonas e registros DNS.

Proprietário do Gerenciador de certificados (roles/certificatemanager.owner) (opcional)

Necessário para criar e gerenciar recursos do Gerenciador de certificados.

Configuração de rede

Os seguintes componentes de rede são necessários:

O Looker (Google Cloud Core) implantado com o Private Service Connect oferece suporte a grupos de endpoints de rede (NEGs, na sigla em inglês) do Private Service Connect, chamados de back-ends, que são integrados aos Google Cloud balanceadores de carga. Consulte o codelab do Looker PSC Northbound Regional External L7 ALB (em inglês) para instruções sobre como acessar publicamente uma instância do Looker (Google Cloud Core) ativada para o Private Service Connect usando um back-end.

Um exemplo de configuração de rede de back-end do Private Service Connect para acesso público é mostrado no diagrama a seguir:

A arquitetura de rede para acessar uma instância do Looker (Google Cloud Core) no local usando um back-end.

Como mostrado no diagrama, os clientes públicos acessam o Looker (Google Cloud Core) realizando uma busca DNS especificando o domínio do cliente do Looker (Google Cloud Core) que retorna o endereço IP do balanceador de carga de aplicativo externo regional como o registro A. Depois que o tráfego é recebido pelo balanceador de carga, o serviço de back-end (que consiste no back-end do Private Service Connect) se conecta a um anexo de serviço em uma VPC do produtor gerenciada pelo Google que hospeda o Looker (Google Cloud Core). Verifique se a rede VPC do consumidor tem permissão de entrada na instância do Looker (Google Cloud Core).

Solução de problemas

Ao configurar o acesso de entrada a uma instância do Looker (Google Cloud Core) usando um back-end do Private Service Connect, você pode encontrar problemas em que a instância não é provisionada ou o balanceador de carga não consegue acessar o serviço de back-end.

Se os registros do balanceador de carga mostrarem erros failed_to_pick_backend e no healthy upstream (HTTP 503) e o grupo de endpoints de rede (NEG) permanecer preso em um status pending, as etapas obrigatórias de configuração de rede para o projeto do consumidor estarão ausentes. Especificamente, o projeto do consumidor não está autorizado a se conectar ao serviço do produtor do Looker (Google Cloud Core) ou um recurso de anexo de rede não foi criado na VPC do consumidor.

Para resolver esses problemas, conclua as seguintes etapas obrigatórias de configuração de rede:

  1. Lista de permissões da VPC: adicione a rede do consumidor à lista de VPCs permitidas para conexões de entrada nas configurações do Looker (Google Cloud Core). A adição dessa rede autoriza a VPC do consumidor a estabelecer uma conexão com o serviço do produtor do Looker (Google Cloud Core).
  2. Configuração do anexo de rede: crie um recurso de anexo de rede na VPC do consumidor e associe-o à instância do Looker (Google Cloud Core).

A seguir