1. Introdução
Neste codelab, você vai criar um back-end do Private Service Connect e do balanceador de carga de aplicativo regional L7 para ter acesso de entrada ao Looker. O acesso de norte a sul ao Looker exige que a VPC do consumidor esteja na lista de permissões da instância PSC do Looker.
O Private Service Connect é um recurso da rede do Google Cloud que permite que consumidores acessem serviços gerenciados de maneira particular na rede VPC deles. Da mesma forma, ele permite que produtores do serviço gerenciado hospedem esses serviços em redes VPC separadas e ofereçam uma conexão particular aos consumidores. Por exemplo, quando você usa o Private Service Connect para acessar o Looker, você é o consumidor de serviços e o Google é o produtor de serviços, conforme destacado na Figura 1.
Figura 1.
O acesso de ida, também conhecido como PSC reverso, permite que o consumidor crie um serviço publicado como produtor para permitir que o Looker acesse endpoints locais, em uma VPC, serviços gerenciados e a Internet. As conexões de saída podem ser implantadas em qualquer região, independentemente de onde o PSC do Looker está implantado, conforme destacado na Figura 2.
Figura 2.
O que você vai aprender
- Requisitos de rede
- Atualização da lista de permissões do Looker para acesso de norte
- Criar um back-end do Private Service Connect na VPC do consumidor
- Certificados autoassinados e do Google
O que é necessário
- Projeto do Google Cloud com permissões de proprietário
- Domínio registrado
- Instância PSC do Looker
2. O que você vai criar
Você vai estabelecer uma rede de consumidor na lista de permissões, looker-psc-demo, para implantar um balanceador de carga de aplicativo L7 externo regional e um NEG de back-end PSC que exige um certificado autoassinado ou do Google. Em ambos os métodos, é necessário um domínio registrado que corresponda ao domínio personalizado definido no Looker.
3. Requisitos de rede
Confira abaixo os requisitos de rede:
Componentes | Descrição |
VPC (looker-psc-demo) | VPC de modo personalizado |
Sub-rede PSC NEG | Usado para alocar um endereço IP para o grupo de endpoints de rede |
Sub-rede somente proxy | Cada um dos proxies do balanceador de carga recebe um endereço IP interno. Os pacotes enviados de um proxy para um endpoint ou VM de back-end têm um endereço IP de origem da sub-rede somente proxy. |
Serviço de back-end | Um serviço de back-end atua como uma ponte entre o balanceador de carga e os recursos de back-end. No tutorial, o serviço de back-end está associado ao NEG do PSC. |
4. Topologia do codelab
5. Configuração e requisitos
Configuração de ambiente autoguiada
- Faça login no Console do Google Cloud e crie um novo projeto ou reutilize um existente. Crie uma conta do Gmail ou do Google Workspace, se ainda não tiver uma.
- O Nome do projeto é o nome de exibição para os participantes do projeto. É uma string de caracteres não usada pelas APIs do Google e pode ser atualizada quando você quiser.
- O ID do projeto precisa ser exclusivo em todos os projetos do Google Cloud e não pode ser mudado após a definição. O console do Cloud gera automaticamente uma string exclusiva. Em geral, não importa o que seja. Na maioria dos codelabs, é necessário fazer referência ao ID do projeto, normalmente identificado como
PROJECT_ID
. Se você não gostar do ID gerado, crie outro aleatório. Se preferir, teste o seu e confira se ele está disponível. Ele não pode ser mudado após essa etapa e permanece durante o projeto. - Para sua informação, há um terceiro valor, um Número do projeto, que algumas APIs usam. Saiba mais sobre esses três valores na documentação.
- Em seguida, ative o faturamento no console do Cloud para usar os recursos/APIs do Cloud. A execução deste codelab não vai ser muito cara, se tiver algum custo. Para encerrar os recursos e evitar cobranças além deste tutorial, exclua os recursos criados ou exclua o projeto. Novos usuários do Google Cloud estão qualificados para o programa de US$ 300 de avaliação sem custos.
Inicie o Cloud Shell
Embora o Google Cloud e o Spanner possam ser operados remotamente do seu laptop, neste codelab usaremos o Google Cloud Shell, um ambiente de linha de comando executado no Cloud.
No Console do Google Cloud, clique no ícone do Cloud Shell na barra de ferramentas superior à direita:
O provisionamento e a conexão com o ambiente levarão apenas alguns instantes para serem concluídos: Quando o processamento for concluído, você verá algo como:
Essa máquina virtual contém todas as ferramentas de desenvolvimento necessárias. Ela oferece um diretório principal persistente de 5 GB, além de ser executada no Google Cloud. Isso aprimora o desempenho e a autenticação da rede. Neste codelab, todo o trabalho pode ser feito com um navegador. Você não precisa instalar nada.
6. Antes de começar
Ativar APIs
No Cloud Shell, verifique se o ID do projeto está configurado:
gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
project=[YOUR-PROJECT-ID]
region=[YOUR-REGION]
echo $project
echo $region
Ative todos os serviços necessários:
gcloud services enable compute.googleapis.com
7. Rede do consumidor
Na próxima seção, você vai criar a rede de consumidor que será atualizada na lista de permissões da VPC do PSC do Looker.
Rede VPC
No Cloud Shell, faça o seguinte:
gcloud compute networks create looker-psc-demo --subnet-mode custom
Criar sub-redes
No Cloud Shell, crie a sub-rede do grupo de endpoints de rede do consumidor:
gcloud compute networks subnets create consumer-psc-neg-subnet --network looker-psc-demo --range 172.16.30.0/28 --region $region --enable-private-ip-google-access
No Cloud Shell, crie a sub-rede somente proxy regional do produtor:
gcloud compute networks subnets create $region-proxy-only-subnet \
--purpose=REGIONAL_MANAGED_PROXY \
--role=ACTIVE \
--region=$region \
--network=looker-psc-demo \
--range=10.10.10.0/24
Reserve o endereço IP do balanceador de carga
No Cloud Shell, reserve um endereço IP externo para o balanceador de carga:
gcloud compute addresses create regional-alb-static-ip \
--region=$region \
--network-tier=STANDARD
No Cloud Shell, confira o endereço IP reservado:
gcloud compute addresses describe regional-alb-static-ip --region=us-central1 | grep -i address:
Exemplo de saída:
user@cloudshell$ gcloud compute addresses describe regional-alb-static-ip --region=us-central1 | grep -i address:
address: 35.208.202.244
8. Criar um domínio personalizado
Siga estas etapas para estabelecer um domínio personalizado:
Exemplo de domínio personalizado
O domínio personalizado looker.cosmopup.com existe como um subdomínio DNS público associado a um registro A dos endereços IP estáticos (regional-alb-static-ip) definidos anteriormente. Veja a captura de tela tirada de um terminal que valida a pesquisa DNS.
Em seguida, crie o domínio do cliente usando o subdomínio looker.cosmopup.com
Exemplo de OAuth
Confira abaixo um exemplo de credenciais OAuth para origens autorizadas e callback para o subdomínio looker.cosmopup.com.
9. Certificados
É possível criar certificados do Compute Engine ou do Gerenciador de certificados. Use um dos métodos a seguir para criar certificados usando o Gerenciador de certificados:
- Certificados regionais autogerenciados. Para informações sobre como criar e usar certificados autogerenciados regionais, consulte implantar um certificado autogerenciado regional. Mapas de certificados não são compatíveis.
- Certificados regionais gerenciados pelo Google. Mapas de certificados não são compatíveis. O Gerenciador de certificados aceita os seguintes tipos de certificados regionais gerenciados pelo Google:
- Certificados regionais gerenciados pelo Google com autorização de DNS por projeto. Para mais informações, consulte Implantar um certificado regional gerenciado pelo Google.
- Certificados (particulares) regionais gerenciados pelo Google com o Certificate Authority Service. Para mais informações, consulte Implantar um certificado regional gerenciado pelo Google com o serviço de AC.
10. Lista de permissões da VPC do Looker
Conferir as VPCs permitidas
Na próxima seção, você vai usar a interface do Cloud Console para conferir a lista de VPCs permitidos do Looker.
No console do Cloud, navegue até:
Looker → Instância do Looker → Detalhes
Exemplo abaixo, nenhuma entrada está na lista de VPCs permitidas:
Atualizar VPCs permitidas
Atualize sua instância do Looker para oferecer suporte ao acesso de norte a sul adicionando looker-psc-demo como uma VPC permitida.
No console do Cloud, navegue até:
Looker → Instância do Looker → Editar
Conexões → VPCs permitidas
Selecione o projeto em que o looker-psc-demo está implantado, seguido pelo looker-psc-demo da VPC e clique em "Continuar".
Validar VPCs permitidas
Acessar a lista de VPCs permitidas atualizada
No console do Cloud, navegue até:
Looker → Instância do Looker → Detalhes
11. Criar back-end do PSC
O PSC do Looker como produtor de serviços gera um URI de anexo de serviço usado pelos consumidores de serviços para implantar endpoints e back-ends e ter acesso ao Looker. Na próxima etapa, você vai identificar o URI do anexo de serviço do PSC do Looker e criar um back-end de grupo de endpoints de rede (NEG) do Private Service Connect na VPC do consumidor.
Identificar o anexo do serviço PSC do Looker
No console do Cloud, navegue e copie o URI do anexo de serviço:
Looker → Instância do Looker → Detalhes
Criar o grupo de endpoints de rede do PSC
No Cloud Shell, faça o seguinte para atualizar o psc-target-service:
gcloud compute network-endpoint-groups create looker-northbound-neg \
--network-endpoint-type=private-service-connect \
--psc-target-service=[UPDATE WITH YOU LOOKER SERVICE ATTACHMENT URI] \
--region=$region \
--network=looker-psc-demo \
--subnet=consumer-psc-neg-subnet
Exemplo:
gcloud compute network-endpoint-groups create looker-northbound-neg \
--network-endpoint-type=private-service-connect \
--psc-target-service=projects/t7ec792caf2a609d1-tp/regions/us-central1/serviceAttachments/looker-psc-f51982e2-ac0d-48b1-91bb-88656971c183 \
--region=$region \
--network=looker-psc-demo \
--subnet=consumer-psc-neg-subnet
Validar a criação de um grupo de endpoints de rede PSC
No Cloud Shell, faça o seguinte, garantindo que o pscConnectionStatus seja aceito:
gcloud compute network-endpoint-groups describe looker-northbound-neg --region=$region | grep -i pscConnectionStatus:
Exemplo:
user@cloudshell$ gcloud compute network-endpoint-groups describe looker-northbound-neg --region=$region | grep -i pscConnectionStatus:
pscConnectionStatus: ACCEPTED
Criar um balanceador de carga de aplicativo regional
Nas etapas a seguir, você vai usar o console do Cloud para criar o balanceador de carga de aplicativo externo regional e associar os certificados gerados à configuração do front-end.
No console do Cloud, navegue até:
Serviços de rede → Balanceamento de carga → Criar balanceador de carga
Selecione as seguintes opções:
Criar a configuração de front-end
Selecione as opções a seguir e personalize o ambiente com base na sua implantação:
- Região usada na implantação da infraestrutura de rede
- A sub-rede somente proxy é preenchida automaticamente com base na sua região
- O IP estático definido anteriormente está disponível com base na sua região
Ao selecionar "Certificado", a opção para usar um certificado atual ou novo é aberta:
Faça upload do certificado e da chave privada e selecione CRIAR:
Selecione CONCLUÍDO para concluir a configuração de front-end:
Criar a configuração de back-end
Selecione as seguintes opções:
Criar as regras de roteamento
Selecione as seguintes opções (padrão):
Revisar e finalizar
Verifique a configuração e selecione CREATE:
O balanceador de carga está ativado:
Acessar a interface do Looker
Agora que o balanceador de carga está operacional, você pode acessar seu domínio do Looker personalizado em um navegador da Web. É importante observar que você pode encontrar um aviso dependendo do tipo de certificado que está usando, por exemplo, certificado não confiável x confiável.
Confira abaixo um exemplo (certificado não confiável) de acesso ao domínio personalizado do Looker, looker.cosmopup.com, que tem acesso norte à interface do Looker:
12. Limpar
Excluir componentes do laboratório em um único terminal do Cloud Shell
gcloud compute forwarding-rules delete regional-external-alb-fr --region=$region -q
gcloud compute target-https-proxies delete regional-external-alb-target-proxy --region=$region -q
gcloud compute url-maps delete regional-external-alb --region=$region -q
gcloud compute backend-services delete looker-psc-neg-backend-svc --region=$region -q
gcloud compute addresses delete regional-alb-static-ip --region=$region -q
gcloud compute network-endpoint-groups delete looker-northbound-neg --region=$region -q
gcloud compute networks delete looker-psc-demo -q
13. Parabéns
Parabéns, você configurou e validou a conectividade de sentido único para o Looker usando um domínio do cliente e um balanceador de carga de aplicativo externo regional.
Você criou a infraestrutura do consumidor, aprendeu a criar um NEG de PSC, um domínio personalizado e conheceu as diferentes opções de certificado. Há muitas coisas interessantes para você começar a usar o Looker.
Cosmopup acha que os codelabs são incríveis.
Qual é a próxima etapa?
Confira alguns destes codelabs:
- Como usar o Private Service Connect para publicar e consumir serviços
- Conectar-se a serviços on-prem por rede híbrida usando o Private Service Connect e um balanceador de carga do proxy TCP interno
- Acesso a todos os codelabs publicados do Private Service Connect
Leituras e vídeos complementares
Documentos de referência
- Usar certificados SSL autogerenciados | Balanceamento de carga | Google Cloud
- Implantar um certificado regional gerenciado pelo Google
- Criar um back-end do Private Service Connect | VPC | Google Cloud
- Criar um back-end do Private Service Connect | VPC | Google Cloud
- Criar uma instância do Looker (Google Cloud Core) do Private Service Connect
- Como publicar um serviço usando o Private Service Connect