Criar uma instância do Looker (Google Cloud Core) com conexões particulares (acesso a serviços particulares)

Nesta página, explicamos como criar uma instância de produção ou não produção do Looker (Google Cloud Core) de conexões particulares (PSA) que usa o acesso particular a serviços (PSA).

As conexões particulares tornam os serviços acessíveis sem passar pela Internet ou usar endereços IP externo. Como não atravessam a Internet, as conexões particulares geralmente oferecem menor latência e vetores de ataque limitados. As conexões particulares permitem que a instância do Looker (Google Cloud Core) se comunique com outros recursos na nuvem privada virtual (VPC), mas não permitem a comunicação de entrada da Internet pública.

A conectividade particular permite o uso de alguns recursos, como o VPC Service Controls. No entanto, as conexões particulares não são compatíveis com alguns recursos do Looker (Google Cloud Core). Consulte a tabela de compatibilidade de recursos para mais informações.

O Looker (Google Cloud Core) oferece suporte a conexões particulares (PSA) para Enterprise ou Embed edições de instância.

Papéis e permissões necessárias

Para configurar uma instância de conexões particulares (PSA), você precisa ter as seguintes permissões do IAM:

  1. Para criar uma instância do Looker (Google Cloud Core), é necessário ter o papel de administrador do Looker (roles/looker.Admin).
  2. Para ter as permissões necessárias para criar intervalos de endereços IP alocados e gerenciar conexões particulares, peça ao administrador para conceder a você opapel do IAM de administrador de rede do Compute (roles/compute.networkAdmin) no projeto. Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

    Esse papel predefinido contém as permissões necessárias para criar intervalos de endereços IP alocados e gerenciar conexões particulares. Para acessar as permissões exatas que são necessárias, expanda a seção Permissões necessárias:

    Permissões necessárias

    As seguintes permissões são necessárias para criar intervalos de endereços IP alocados e gerenciar conexões particulares:

    • Consulte as redes disponíveis no menu suspenso Rede :
      • compute.addresses.list
      • compute.globalAddresses.list
      • compute.networks.list
      • compute.globalAddresses.list
    • Criar uma rede VPC:
      • compute.addresses.create
      • compute.globalAddresses.create
      • serviceusage.services.enable
    • Alocar um intervalo de IP particular e configurar uma conexão de acesso particular a serviços: compute.networks.addPeering

    Essas permissões também podem ser concedidas com papéis personalizados ou outros papéis predefinidos.

    Se você estiver usando uma rede particular que já foi configurada, não precisará dessas permissões.

Talvez você também precise de outros papéis do IAM para configurar o VPC Service Controls ou as chaves de criptografia gerenciadas pelo cliente (CMEK). Saiba mais acessando as páginas de documentação Suporte do VPC Service Controls para o Looker (Google Cloud Core) ou Ativar a CMEK para o Looker (Google Cloud Core) desses recursos.

Antes de começar

  1. Trabalhe com a equipe de vendas para garantir que seu contrato anual seja concluído e que você tenha cota alocada no projeto.
  2. Verifique se o faturamento está ativado para o projeto do Google Cloud .
  3. No console do Google Cloud, na página do seletor de projetos, crie um Google Cloud projeto ou navegue até um já existente em que você quer criar a instância do Looker (Google Cloud Core).

    Acessar o seletor de projetos

  4. Ative a API Looker para seu projeto no console do Google Cloud. Ao ativar a API, talvez seja necessário atualizar a página do console para confirmar que ela foi ativada.

    Ativar a API

  5. Ative a API Service Networking para seu projeto no console do Google Cloud. Ao ativar a API, talvez seja necessário atualizar a página do console para confirmar que ela foi ativada.

    Ativar a API

  6. Ative a API Compute Engine para seu projeto no console do Google Cloud. Ao ativar a API, talvez seja necessário atualizar a página do console para confirmar que ela foi ativada.

    Ativar a API

  7. Configure um cliente OAuth e crie credenciais de autorização. O cliente OAuth permite autenticar e acessar a instância. É necessário configurar o OAuth para criar uma instância do Looker (Google Cloud Core), mesmo que você esteja usando um método de autenticação diferente para autenticar usuários na instância.

Criar e configurar uma rede VPC

Antes de criar uma conexão particular, é necessário criar e configurar uma rede de nuvem privada virtual (VPC). O Looker (Google Cloud Core) oferece suporte a várias instâncias de conexões particulares (PSA) na mesma VPC, na mesma região ou em regiões diferentes.

  1. Crie uma rede VPC no seu projeto. Como alternativa, se você estiver usando uma VPC compartilhada em vez de criar uma nova rede VPC, conclua as etapas na seção a seguir, Criar uma instância em uma VPC compartilhada, além de concluir as etapas restantes nesta seção para a VPC compartilhada.
  2. Alocar um intervalo de IP IPv4 (bloco CIDR) na VPC para uma conexão de acesso particular a serviços do Looker (Google Cloud Core).
    • Antes de alocar o intervalo, considere as restrições.
    • Ao definir o tamanho do intervalo de endereços IP, lembre-se de que o tamanho mínimo é um bloco /22.
    • O Looker (Google Cloud Core) oferece suporte a todos os intervalos IPv4 em RFC 1918, que especifica endereços IP atribuídos para uso interno (ou seja, em uma organização) e não são roteados na Internet. Especificamente, estes são os seguintes:
      • 10.0.0.0/8
      • 172.16.0.0/12
      • 192.168.0.0/16
    • Os intervalos IPv4 de classe E (240.0.0.0/4) são reservados para uso futuro, conforme indicado na RFC 5735 e RFC 1112, e não são compatíveis com o Looker (Google Cloud Core).
    Quando uma instância do Looker (Google Cloud Core) é criada pela primeira vez em uma região dentro de uma VPC, o Looker cria uma sub-rede somente proxy. A sub-rede somente proxy usa uma sub-rede de intervalo /26 da sub-rede /22 que você reserva ao criar a instância do Looker (Google Cloud Core). Todas as instâncias subsequentes do Looker (Google Cloud Core) de conexões particulares (PSA) na mesma VPC e na mesma região usam a mesma sub-rede somente proxy.
  3. Adicione a conexão de acesso particular a serviços à rede VPC usando o intervalo de IP alocado na etapa anterior para a alocação atribuída.
  4. Depois que a rede VPC for criada, retorne à página Criar instância do Looker no Google Cloud projeto. Talvez seja necessário atualizar a página para que a rede VPC seja reconhecida.

Depois de concluir essas etapas, você pode começar a criar sua instância seguindo as etapas na página de documentação Criar uma instância do Looker (Google Cloud Core) , começando pela seção Antes de começar.

Várias instâncias de conexões particulares na mesma VPC

Se duas ou mais instâncias do Looker (Google Cloud Core) de conexões particulares estiverem localizadas na mesma região e na mesma VPC, e você excluir a primeira instância do Looker (Google Cloud Core) criada na região, a sub-rede somente proxy não será liberada porque ainda está em uso pelas instâncias restantes. Se você tentar criar uma nova instância do Looker (Google Cloud Core) de conexões particulares (PSA) que use o mesmo intervalo de endereços usado para a instância excluída (que contém o intervalo de endereços IP da sub-rede somente proxy), a criação da instância vai falhar e você vai receber um erro "Intervalos de IP esgotados". Para verificar se um intervalo de IP está em uso, verifique o peering de VPC para o Service Networking e as rotas de importação para ver se elas estão usando o intervalo de IP de seu interesse.

Criar uma instância em uma VPC compartilhada

Se você estiver criando uma instância do Looker (Google Cloud Core) em uma VPC compartilhada, conclua as etapas a seguir no projeto host da VPC compartilhada:

  1. Ative a API Looker no projeto host da VPC compartilhada no console do Google Cloud. Ao ativar a API, talvez seja necessário atualizar a página do console para confirmar que ela foi ativada.

    Ativar a API

  2. Crie uma conta de serviço no projeto host da VPC compartilhada usando o services identity create comando do gcloud:

    gcloud beta services identity create --service=looker.googleapis.com \
    --project=SHARED_HOST_PROJECT_ID
    

    Substitua SHARED_HOST_PROJECT_ID pelo ID do projeto host da VPC compartilhada.

  3. Conceda à conta de serviço no projeto host da VPC compartilhada um papel do IAM que contenha a permissão do IAM compute.globalAddresses.get. Em seguida, execute o add-iam-policy-binding comando:

    gcloud projects add-iam-policy-binding SHARED_HOST_PROJECT_ID \
        --member=serviceAccount:SA_EMAIL --role=ROLE_NAME

    Substitua:

    • SHARED_HOST_PROJECT_ID: o ID do projeto host da VPC compartilhada.

    • SA_EMAIL: o endereço de e-mail da conta de serviço que você criou no projeto host da VPC compartilhada.

    • ROLE_NAME: o nome do papel que contém a permissão compute.globalAddresses.get. Use um dos seguintes formatos:

      • Papéis predefinidos: roles/SERVICE.IDENTIFIER
      • Papéis personalizados para envolvidos no projeto: projects/PROJECT_ID/roles/IDENTIFIER
      • Papéis personalizados no nível da organização: organizations/ORG_ID/roles/IDENTIFIER

      Para uma lista de papéis predefinidos, consulte Noções básicas sobre papéis.

Depois de criar a conta de serviço e conceder a permissão do IAM, aguarde alguns minutos para que a conta de serviço e a permissão sejam propagadas.

Além disso, aloque um intervalo de IP IPv4 na VPC compartilhada e adicione a conexão de acesso particular a serviços à VPC compartilhada, conforme descrito na seção anterior, Criar e configurar uma rede VPC.

Criar a instância de conexões particulares

O Looker (Google Cloud Core) leva aproximadamente 60 minutos para gerar uma nova instância.

Se você quiser uma instância de conexões particulares (PSA), use a Google Cloud CLI ou o Terraform e configure a instância como conexões particulares (PSA) ao criá-la. As conexões particulares não podem ser adicionadas ou removidas de uma instância depois que ela é criada.

Para criar uma instância de conexões particulares (PSA) usando a Google Cloud CLI, siga estas etapas:

  1. Se você estiver usando CMEK, siga as instruções para criar uma conta de serviço, um keyring e uma chave antes de criar a instância do Looker (Google Cloud Core).
  2. Use o comando gcloud looker instances create para criar a instância:

    gcloud looker instances create INSTANCE_NAME \
    --project=PROJECT_ID \
    --oauth-client-id=OAUTH_CLIENT_ID \
    --oauth-client-secret=OAUTH_CLIENT_SECRET \
    --region=REGION \
    --edition=EDITION \
    --private-ip-enabled \
    --consumer-network=CONSUMER_NETWORK --reserved-range=RESERVED_RANGE
    [--no-public-ip-enabled]\
    [--public-ip-enabled]\
    [--release-channel=RELEASE_CHANNEL]
    

    Substitua:

    • INSTANCE_NAME: um nome para sua instância do Looker (Google Cloud Core). Ele não está associado ao URL da instância.
    • PROJECT_ID: o nome do Google Cloud projeto em que você está criando a instância do Looker (Google Cloud Core).
    • OAUTH_CLIENT_ID e OAUTH_CLIENT_SECRET: o ID do cliente OAuth e a chave secreta OAuth que você criou ao configurar seu cliente OAuth. Depois que a instância for criada, insira o URL dela na seção URIs de redirecionamento autorizados do cliente OAuth.
    • REGION: a região em que sua instância do Looker (Google Cloud Core) está hospedada. Selecione a região que corresponde à região no contrato de assinatura. As regiões disponíveis estão listadas na página de documentação Locais do Looker (Google Cloud Core).
    • EDITION: a edição, o tipo de ambiente (produção ou não produção) e se essa é uma edição de teste para a instância. Para uma instância de conexões particulares (PSA), ela precisa ser core-enterprise-annual, core-embed-annual, nonprod-core-enterprise-annual, nonprod-core-embed-annual, core-trial-enterprise ou core-trial-embed. Escolha o mesmo tipo de edição listado no seu contrato anual e verifique se você tem cota alocada. Não é possível alterar as edições depois que uma instância é criada. Se você quiser mudar uma edição, use a importação e a exportação para mover os dados da instância do Looker (Google Cloud Core) para uma nova instância configurada com uma edição diferente.
    • CONSUMER_NETWORK: sua rede VPC ou rede VPC compartilhada no formato projects/PROJECT_ID/global/networks/NETWORK_NAME. É necessário definir se você estiver criando uma instância de conexões particulares (PSA).
    • RESERVED_RANGE: o intervalo de endereços IP na VPC em que o Google vai provisionar uma sub-rede para sua instância do Looker (Google Cloud Core).
    • RELEASE_CHANNEL: o canal de lançamento da instância. Os valores disponíveis são rapid, regular e no-channel. O padrão durante a visualização é no-channel. Se você não incluir essa flag no comando create, a instância será criada com o canal padrão. Esse recurso está em pré-lançamento.

    Você pode incluir as seguintes flags:

    • --private-ip-enabled ativa conexões particulares (PSA). Isso precisa ser incluído para criar uma instância de conexões particulares (PSA).
    • --public-ip-enabled ativa o IP público.
    • --no-public-ip-enabled desativa o IP público.
    • --async é recomendado ao criar uma instância do Looker (Google Cloud Core).
  3. É possível adicionar mais parâmetros para aplicar outras configurações da instância:

      [--maintenance-window-day=MAINTENANCE_WINDOW_DAY
              --maintenance-window-time=MAINTENANCE_WINDOW_TIME]
      [--deny-maintenance-period-end-date=DENY_MAINTENANCE_PERIOD_END_DATE
              --deny-maintenance-period-start-date=DENY_MAINTENANCE_PERIOD_START_DATE
              --deny-maintenance-period-time=DENY_MAINTENANCE_PERIOD_TIME]
      [--kms-key=KMS_KEY_ID]
      [--accelerated-security-patch-enabled]
      [--no-accelerated-security-patch-enabled]
      [--fips-enabled]
      [--catalog-integration-enabled]
      [--no-catalog-integration-enabled]
    

    Substitua:

    As flags a seguir ativam outras configurações:

À medida que a instância é criada, é possível conferir o status dela na página Instâncias do console. Também é possível conferir a atividade de criação de instâncias clicando no ícone de notificações no menu do Google Cloud console.

Se você escolheu conexões híbridas ao configurar a instância, é possível configurar o acesso de entrada pelo URL da Web da instância. Esse URL pode ser encontrado na página Instâncias do Google Cloud console ou na guia Domínio personalizado da página de detalhes da instância, se você configurou um domínio personalizado. É possível configurar uma lista de permissões de IP para restringir conexões de entrada ao tráfego de determinados endereços IP.

Se você criar uma instância somente de conexões particulares (PSA), um URL não vai aparecer na página Instâncias. Consulte a seção Acessar uma instância de acesso particular a serviços após a criação para mais informações sobre como configurar o acesso à instância de conexões particulares (PSA).

Acessar uma instância de acesso particular a serviços após a criação

Se você criar uma instância ativada apenas para conexões particulares, não vai receber um URL para a instância. Para acessar a instância, é necessário configurar um domínio personalizado para ela e adicionar esse domínio personalizado às credenciais OAuth da instância. Siga as instruções na página de documentação Acessar uma instância do Looker (Google Cloud Core) usando o acesso particular a serviços para criar e acessar um domínio personalizado.

Se você criar uma instância que usa uma configuração de rede híbrida, siga as instruções na página de documentação Configurar um domínio personalizado para uma instância do Looker (Google Cloud Core) que usa conexões públicas para criar e acessar um domínio personalizado.

Solução de problemas de criação de instâncias

Para receber ajuda na solução de problemas, consulte a página de documentação Solução de problemas de falhas na criação de instâncias do Looker (Google Cloud Core).

A seguir