Como usar peering de rede VPC

O peering de rede VPC do Google Cloud permite conectividade de endereço IP interno em duas redes de nuvem privada virtual (VPC), pertencentes ou não ao mesmo projeto ou à mesma organização.

Para detalhes sobre o peering de rede VPC, consulte a Visão geral.

Como criar uma configuração de peering

Antes de começar, você precisa ter o nome da rede VPC com qual fará o peering. Se essa rede estiver localizada em outro projeto, você também precisará ter o respectivo ID do projeto.

Uma configuração de peering estabelece a intensão de se conectar a outra rede VPC. A sua e a outra rede só estarão conectadas depois que cada uma tiver uma configuração de peering para a outra. Quando a outra rede tiver uma configuração correspondente para fazer peering com a sua, o estado de peering será alterado para ACTIVE nas duas redes, que serão conectadas. Se não houver uma configuração de peering correspondente na outra rede, o estado de peering permanecerá INACTIVE, indicando que sua rede não está conectada à outra.

Uma vez conectadas, as duas redes sempre trocarão rotas de sub-rede. Uma alternativa é importar rotas personalizadas estáticas e dinâmicas de uma rede com peering caso ela tenha sido configurada para exportá-las. Para ver mais informações, consulte Como importar e exportar rotas personalizadas.

Console

  1. Acesse a página "Peering de rede VPC" no Console do Google Cloud.
    Acessar a página "Peering de redes VPC"
  2. Clique em Criar conexão.
  3. Clique em Continuar.
  4. Digite um Nome para a conexão de peering.
  5. Em Sua rede VPC, selecione uma rede com qual você quer fazer peering.
  6. Selecione a rede com a qual você fará peering.

    • Se a rede com a qual você quer fazer peering estiver no mesmo projeto, selecione No projeto [NOME-DO-SEU-PROJETO] e, em seguida, a rede desejada.
    • Se a rede com a qual você quer fazer peering estiver em um projeto diferente, selecione Em outro projeto. Especifique o ID do projeto que inclui a rede desejada e o nome da rede VPC.
  7. Para importar ou exportar rotas personalizadas, expanda a seção Trocar rotas personalizadas e escolha Importar rotas personalizadas, Exportar rotas personalizadas ou ambas.

  8. Clique em Criar.

gcloud

Crie uma conexão de Peering de redes VPC. Use as sinalizações --import-custom-routes e --export-custom-routes para importar ou exportar rotas personalizadas de ou para a rede com peering.

gcloud compute networks peerings create [PEERING-NAME] \
    --auto-create-routes \
    --network=[MY-LOCAL-NETWORK] \
    --peer-project [PEER-PROJECT-ID] \
    --peer-network [PEER-NETWORK-NAME] \
    [--import-custom-routes] \
    [--export-custom-routes]

Como atualizar uma conexão de peering

Atualize uma conexão atual com o Peering de redes VPC para alterar se sua rede VPC exportará rotas personalizadas para a rede VPC com peering ou as importará dela.

Sua rede importará rotas personalizadas somente se a rede com peering também estiver exportando rotas personalizadas, e a rede com peering receberá rotas personalizadas somente se as importar.

Console

  1. Acesse a página "Peering de rede VPC" no Console do Google Cloud.
    Acessar a página "Peering de redes VPC"
  2. Selecione a conexão de peering a ser atualizada.
  3. Clique em Editar.
  4. Atualize as configurações de rotas personalizadas marcando ou desmarcando Importar rotas personalizadas ou Exportar rotas personalizadas.

gcloud

Atualize a conexão de peering para alterar as configurações de importação ou exportação das rotas personalizadas.

gcloud compute networks peerings update [PEERING-NAME] \
    --network=[MY-LOCAL-NETWORK] \
    [--[no-]import-custom-routes] \
    [--[no-]export-custom-routes]

Como listar conexões de peering

Liste as conexões de peering atuais para visualizar o status delas e verificar se estão importando ou exportando rotas personalizadas.

Console

  1. Acesse a página "Peering da rede VPC" no Console do Google Cloud para listar todas as conexões de peering no seu projeto.
    Acessar a página "Peering de redes VPC"
  2. Selecione a conexão de peering para visualizar os detalhes dela.

gcloud

gcloud compute networks peerings list \
    --network=[MY-LOCAL-NETWORK]

Como listar rotas a partir de conexões de peering

Liste as rotas que sua rede VPC está importando de uma rede VPC com peering ou exportando para ela. Para rotas exportadas, é possível verificar se uma rede com peering está aceitando ou rejeitando suas rotas personalizadas. Para rotas importadas, é possível verificar se sua rede está aceitando ou rejeitando rotas personalizadas de uma rede com peering.

Console

  1. Acesse a página "Peering da rede VPC" no Console do Google Cloud para listar todas as conexões de peering no seu projeto.
    Acessar a página "Peering de redes VPC"
  2. Selecione a conexão de peering para visualizar os detalhes dela.
  3. Veja as rotas personalizadas que sua rede está importando ou exportando. Use o seletor de região para visualizar rotas dinâmicas em uma determinada região. As rotas de sub-rede e as rotas estáticas são globais e mostradas para todas as regiões.

    • Para visualizar as rotas personalizadas importadas, selecione a guia Rotas importadas.
    • Para visualizar as rotas personalizadas exportadas, selecione a guia Rotas exportadas.

gcloud

gcloud compute networks peerings list-routes [PEERING-NAME] \
    --network=[MY-LOCAL-NETWORK]
    --region=[REGION] \
    --direction=INCOMING|OUTGOING
  • A sinalização --region lista todos as rotas dinâmicas de uma determinada região. As rotas de sub-rede e estáticas são globais. Elas são mostradas para todas as regiões.
  • O parâmetro --direction especifica se é preciso listar as rotas importadas (INCOMING) ou exportadas (OUTGOING).

Como excluir uma conexão de peering de redes VPC

Você ou um administrador de rede VPC com peering podem excluir uma configuração de peering. Quando uma configuração de peering é excluída, a conexão de peering alterna para INACTIVE na outra rede, e todas as rotas compartilhadas entre as redes são removidas.

Console

  1. Acesse a página "Peering de rede VPC" no Console do Google Cloud.
    Acessar a página "Peering de redes VPC"
  2. Marque a caixa de seleção ao lado do peering que você quer remover.
  3. Clique em Excluir.

gcloud

gcloud compute networks peerings delete [PEERING-NAME] \
    --network [NETWORK-NAME]

Exemplo de configuração de peering de redes VPC

Considere uma organização organization-a que precisa que o peering de rede VPC seja estabelecido entre a network-a em project-a e a network-b em project-b. Para que o peering de rede VPC seja estabelecido com sucesso, é necessário que os administradores da network-a e da network-b configurem a associação de peering separadamente.

Etapa 1: fazer o peering entre a network-a e a network-b

Um usuário com as devidas permissões de IAM em project-a configura a network-a para fazer peering com a network-b. Por exemplo, usuários com o papel roles/editor ou roles/compute.networkAdmin podem configurar o peering.

Peering da network-a para a network-b
Peering da network-a para a network-b (clique para ampliar)

Antes de começar, é necessário ter os códigos de projeto e os nomes das redes em que você quer fazer peering.

Console

  1. Acesse a página "Peering de rede VPC" no Console do Google Cloud.
    Acessar a página "Peering de redes VPC"
  2. Clique em Criar conexão.
  3. Clique em Continuar.
  4. Insira um Nome de peer-ab para esse lado da conexão.
  5. Em Sua rede VPC, selecione a rede para peering.
  6. Defina os botões de opção Peering da rede VPC para In another project, a menos que você queira fazer peering dentro do mesmo projeto.
  7. Especifique o código de projeto do outro projeto.
  8. Especifique o nome da outra rede VPC.
  9. Clique em Criar.
  10. Importe e exporte rotas personalizadas.
    1. Expanda a seção Rotas personalizadas.
    2. Selecione Importar rotas personalizadas e Exportar rotas personalizadas.

gcloud

gcloud compute networks peerings create peer-ab \
    --network network-a \
    --peer-project project-b \
    --peer-network network-b \
    --import-custom-routes \
    --export-custom-routes

Neste ponto, o estado de peering permanece INACTIVE porque não há configuração correspondente na network-b em project-b.

Quando o estado de peering se torna ACTIVE, o peering de redes VPC troca as rotas de sub-rede automaticamente. O Google Cloud também troca rotas personalizadas (rotas estáticas e rotas dinâmicas), importando-as ou exportando-as pela conexão de peering. É necessário configurar as duas redes para trocar rotas personalizadas antes de serem compartilhadas. Para ver mais informações, consulte Como importar e exportar rotas personalizadas.

Para ver o estado atual, visualize a conexão de peering:

Console

  1. Acesse a página "Peering de rede VPC" no Console do Google Cloud.
    Acessar a página "Peering de redes VPC"
  2. O status diz "Aguardando a conexão da rede com peering".

gcloud

gcloud compute networks peerings list --network network-a
NAME      NETWORK   PEER_PROJECT PEER_NETWORK AUTO_CREATE_ROUTES   IMPORT_CUSTOM_ROUTES EXPORT_CUSTOM_ROUTES STATE    STATE_DETAILS
peer-ab   network-a project-b    network-b    True                 True                 True                 INACTIVE The peering network has not been configured.

Etapa 2: fazer o peering entre a network-b e a network-a

É necessário que um NetworkAdmin ou um usuário com as devidas permissões de IAM defina, em project-b, a configuração correspondente da network-b para a network-a para que o peering se torne ACTIVE em nas duas extremidades.

Peering da network-b para a network-a (clique para ampliar)
Peering da network-a para a network-b (clique para ampliar)

Console

  1. Acesse a página "Peering de rede VPC" no Console do Google Cloud.
    Acessar a página "Peering de redes VPC"
  2. Clique em Criar conexão.
  3. Clique em Continuar.
  4. Insira um Nome de peer-ba para esse lado da conexão.
  5. Em Sua rede VPC, selecione a rede para peering.
  6. Defina os botões de opção Peering da rede VPC para In another project, a menos que você queira fazer peering dentro do mesmo projeto.
  7. Especifique o código de projeto do outro projeto.
  8. Especifique o nome da outra rede VPC.
  9. Clique em Criar.
  10. Importe e exporte rotas personalizadas.
    1. Expanda a seção Rotas personalizadas.
    2. Selecione Importar rotas personalizadas e Exportar rotas personalizadas.

gcloud

gcloud compute networks peerings create peer-ba \
     --network network-b \
     --peer-project project-a \
     --peer-network network-a \
     --import-custom-routes \
     --export-custom-routes

Etapa 3: o peering de redes VPC se torna ACTIVE

Assim que o peering passa para o estado ACTIVE, as rotas de sub-rede e as rotas personalizadas são trocadas. Os seguintes fluxos de tráfego são configurados:

  • Entre instâncias de VM nas redes com peering: conectividade de malha completa.
  • De instâncias de VM em uma rede até endpoints de balanceamento de carga TCP/UDP internos na rede com peering.
Peering ATIVO (clique para ampliar)
Peering ATIVO (clique para ampliar)

Console

  1. Acesse a página "Peering de rede VPC" no Console do Google Cloud.
    Acessar a página "Peering de redes VPC"
  2. O status diz "Conectado".
  3. Vá para a página Peering de redes VPC no outro projeto e veja se o status também é "Conectado".

gcloud

gcloud compute networks peerings list --network network-a
NAME      NETWORK   PEER_PROJECT PEER_NETWORK AUTO_CREATE_ROUTES   IMPORT_CUSTOM_ROUTES EXPORT_CUSTOM_ROUTES STATE    STATE_DETAILS
peer-ab  network-a   project-b    network-b   True                 True                 True                 ACTIVE   The peering became ACTIVE at 2016-06-08T15:10:14.111-07:00.
gcloud compute networks peerings list --network network-b
NAME      NETWORK   PEER_PROJECT PEER_NETWORK AUTO_CREATE_ROUTES   IMPORT_CUSTOM_ROUTES EXPORT_CUSTOM_ROUTES STATE    STATE_DETAILS
peer-ba  network-b   project-a    network-a   True                 True                 True                 ACTIVE   The peering became ACTIVE at 2016-06-08T15:10:14.111-07:00.

As rotas para prefixos CIDR de rede com peering agora estão visíveis em todos os pares da rede VPC. Elas são rotas implícitas geradas para conexões de peering ativas e não dispõem de recursos de rota correspondentes. O procedimento a seguir mostra rotas para todas as redes VPC para project-a.

Console

  1. Acesse a página "Rotas" no Console do Google Cloud.
    Acessar a página "Rotas"

gcloud

gcloud compute routes list --project project-a
NAME                              NETWORK    DEST_RANGE     NEXT_HOP                  PRIORITY
default-route-2a865a00fa31d5df    network-a  0.0.0.0/0      default-internet-gateway  1000
default-route-8af4732e693eae27    network-a  10.0.0.0/16                              1000
peering-route-4732ee69e3ecab41    network-a  10.8.0.0/16    peer-ab                   1000
peering-static-route              network-a  10.138.0.0/20  peer-ab                   1000

Como criar várias conexões de peering

Considere o cenário em que as instâncias de VM na network-a precisam acessar serviços de duas organizações externas diferentes: SaaS1 e SaaS2. Para acessá-los usando apenas endereços IP internos, é preciso ter duas conexões de peering:

  • A network-a faz peering com a network-b, que está em SaaS1.
  • A network-a faz peering com a network-c, que está em SaaS2.

Com o peering de rede VPC, não importa se a network-b e a network-c estão em projetos e organizações diferentes.

Peering entre organizações (clique para ampliar)
Peering entre organizações (clique para ampliar)

Para criar essa configuração, basta criar duas sessões de peering diferentes.

Restrições

Nenhuma sobreposição de intervalos de IP de sub-rede em redes VPC com peering

Nenhum intervalo de IP de sub-rede pode se sobrepor a outro em uma rede VPC com peering.

Verificações realizadas na configuração do Peering de redes VPC

No momento de fazer o peering, o GCP verifica se há sub-redes com intervalos de IP sobrepostos entre as duas redes VPC ou em qualquer uma das redes com peering. Se houver uma sobreposição, o peering não está estabelecido. Como uma conectividade de malha completa é criada entre instâncias de VM, as sub-redes nas redes VPC com peering não podem ter intervalos de IP sobrepostos. Isso causaria problemas de roteamento.

Intervalos de IP de sub-rede sobrepostos entre duas sub-redes em peering (clique para ampliar)
Intervalos de IP de sub-rede sobrepostos entre duas sub-redes em peering (clique para ampliar)

Uma sub-rede com intervalos de IP sobrepostos entre sub-redes em peering de uma determinada rede VPC causaria um conflito de roteamento. Por exemplo, imagine que a rede VPC N1 já tenha estabelecido peering com a rede VPC N2. A rede VPC N3, então, tentaria fazer peering com a N2. Este peering seria inválido, porque a N3 tem uma sub-rede Subnet_5 com um intervalo de IP que se sobrepõe com a Subnet_1 na rede N1.

Intervalos de IP de sub-rede sobrepostos com três sub-redes em peering (clique para ampliar)
Intervalos de IP de sub-rede sobrepostos com três sub-redes em peering (clique para ampliar)

Verificações realizadas na criação de uma sub-rede em cenários de peering de redes VPC

Quando uma sub-rede VPC é criada ou um intervalo de IP de sub-rede é expandido, o GCP executa uma verificação para garantir que a nova faixa de sub-rede não se sobrepõe aos intervalos de IP de sub-redes na mesma rede VPC ou em redes VPC com peering direto. Caso isso ocorra, a ação de criação ou expansão falhará. Por exemplo, quando uma nova sub-rede subnet_3 é criada na rede N2 na figura a seguir, os intervalos de IP não podem se sobrepor com os intervalos de IP definidos na rede N1 com peering direto.

Verificação de criação de sub-rede (clique para ampliar)
Verificação de criação de sub-rede (clique para ampliar)

O GCP também garante que nenhuma sobreposição de intervalos de IP de sub-rede seja permitida em redes VPC que tenham uma rede com peering em comum. Caso isso ocorra, a ação de criação ou expansão falhará. Por exemplo, quando uma nova sub-rede subnet_5 é criada na rede N3 na figura a seguir, os intervalos de IP não podem se sobrepor com os intervalos de IP definidos na rede N2 com peering direto ou na rede N1, porque a N1 já faz peering com a N2.

Verificação de criação de sub-rede com três sub-redes em peering (clique para ampliar)
Verificação de criação de sub-rede com três sub-redes em peering (clique para ampliar)

Redes legadas não são compatíveis no peering de redes VPC

Redes legadas são redes que não dispõem de sub-redes. As redes legadas não podem fazer peering com outras redes e não são compatíveis com o Peering de redes VPC.

Nenhum DNS do Compute Engine entre projetos

Os nomes de DNS internos do Compute Engine criados em uma rede não são acessíveis para redes com peering. O endereço IP da VM precisa ser usado para acessar as instâncias dela na rede.

Tags e contas de serviço não podem ser utilizadas em redes com peering

Não é possível usar uma tag ou conta de serviço de uma rede em peering na outra rede em peering.

GKE com peering de rede VPC

O peering de rede VPC com GKE é compatível quando usado com aliases de IP e rotas personalizadas. Os Serviços do Kubernetes, se forem expostos pelo Balanceamento de carga TCP/UDP interno, e os IPs de pod poderão ser alcançados nas redes VPC.

Limites

Consulte Limites de peering de rede VPC.

Solução de problemas

P: Minha conexão de peering está configurada, mas não consigo alcançar VMs com peering ou balanceadores de carga internos.

Depois que a conexão de peering se torna ACTIVE, pode demorar até um minuto para que todos os fluxos de tráfego sejam configurados entre as redes VPC com peering. Esse tempo depende do tamanho das redes VPC que estão com peering. Se você acabou de configurar a conexão de peering, aguarde um minuto e tente novamente. Além disso, verifique se não há regras de firewall bloqueando o acesso entre os CIDRs de sub-rede da rede VPC com peering.

P: Quando eu tento configurar a conexão de peering, recebo um erro informando que outra operação de peering está em andamento.

Para evitar a contenção com atualizações de roteamento e similares, o GCP permite apenas uma atividade relacionada ao peering de cada vez em redes com peering. Por exemplo, se você configura o peering com uma rede e logo depois tenta configurar outra, é provável que as tarefas do primeiro peering ainda não tenham sido concluídas. Pode demorar até um minuto para que isso ocorra. Como alternativa, seu par de rede atual pode estar adicionando um balanceador de carga interno ou uma VM, os quais afetam o que pode ser acessado entre as redes. Na maioria dos casos, é preciso aguardar um ou dois minutos e repetir a operação de peering.

P: Quando tento excluir uma rede VPC com peerings ACTIVE, recebo uma mensagem de erro.

Para poder excluir uma rede VPC, é necessário excluir primeiro todas as configurações de peering na rede. Consulte Como excluir uma conexão de peering de redes VPC.

P: É possível fazer peering de redes VPC que tenham sub-redes com intervalos de IP primários ou secundários sobrepostos?

Não. Só é possível fazer peering de redes VPC que tenham sub-redes com intervalos de IP de sub-rede primários ou secundários exclusivos.

P: Como posso ter certeza de que as novas sub-redes que eu criar na minha rede VPC não terão intervalos de IP em conflito com sub-redes ou rotas em redes com peering?

Antes de criar novas sub-redes, liste as rotas a partir de conexões de peering. Não utilize nenhum dos destinos delas como intervalos de IP primários ou secundários ao criar novas sub-redes na sua rede VPC.

P: Tenho uma rede VPC que faz peering com outra e quero criar uma sub-rede nela. Como posso criá-la de modo que não se sobreponha ao peering das sub-redes com peering?

Neste momento, não há nenhum comando que o ajude a descobrir isso. Pergunte ao administrador da rede com peering para descobrir quais rotas de sub-rede já estão nessa rede.

P: Existem preocupações de segurança ou privacidade com o uso do peering de redes VPC?

Depois que o peering é configurado, as redes VPC conhecem os intervalos de sub-rede uma da outra. Além disso, cada rede VPC com peering é capaz de enviar e receber o tráfego de todas as VMs na outra rede, a menos que haja regras de firewall para evitar isso. Outro aspecto a considerar é que as redes com peering não têm visibilidade entre si.

P: Como posso determinar se há alguma solicitação de outras redes VPC para se conectarem à minha rede VPC usando o peering de redes VPC?

Não há como listar solicitações de peering para sua rede VPC. Só é possível ver as configurações de peering que você criou.

O Peering de redes VPC exige que tanto sua rede como a outra criem uma configuração de peering entre si antes de estabelecer uma conexão. Mesmo que o administrador da outra rede VPC crie uma configuração de peering para sua rede, nenhuma conexão de peering será criada, a menos que você crie uma configuração de peering para essa rede.

P: Como disponibilizo rotas em uma rede com peering para uma rede local conectada à minha rede VPC usando o Cloud VPN ou o Cloud Interconnect?

O Peering de redes VPC não aceita roteamento transitivo, ou seja, as rotas importadas de outras redes não são anunciadas automaticamente pelos roteadores do Cloud Router na sua rede VPC. No entanto, é possível usar divulgações de intervalo de IP personalizadas do Cloud Router na sua rede VPC a fim de compartilhar rotas para destinos na rede com peering.

Para túneis do Cloud VPN que usam roteamento estático, você precisa configurar rotas estáticas para os intervalos de destino da rede com peering na sua rede local.

P: Por que as rotas personalizadas não são trocadas entre redes com peering?

Primeiro, liste as rotas nas suas conexões de peering. Se não forem exibidas rotas para os destinos esperados, faça o seguinte:

  • Liste conexões de peering. Encontre a rede com os intervalos de destino desejados e certifique-se de que o estado de peering esteja ACTIVE. Se a conexão de peering estiver INACTIVE, não haverá na outra rede uma configuração de peering para sua rede. Se você não gerencia a outra rede, será necessário coordenar com um administrador de rede que a gerencie.

  • Atualize a configuração de peering na sua rede a fim de que ela seja configurada para importar rotas personalizadas da outra rede. Verifique se a outra rede foi configurada para exportar rotas personalizadas.

P: Por que o tráfego destinado a uma rede com peering está sendo descartado?

Primeiro, liste as conexões de peering para certificar-se de que sua rede ainda está conectada à outra. Se o estado de peering estiver INACTIVE, não haverá na outra rede uma configuração de peering para sua rede. Se você não gerencia a outra rede, será necessário entrar em contato com um administrador que gerencie.

Em seguida, liste as rotas de conexões de peering. Só é possível importar a quantidade de rotas permitida pelos limites do peering de redes VPC.

P: Por que o tráfego está sendo enviado para um próximo salto inesperado?

Analise a ordem de roteamento para ver se outra rota foi escolhida.

P: Por que minha rede VPC não faz peering com uma determinada rede VPC?

Se não for possível criar uma configuração de peering com determinadas redes VPC, uma política da organização pode estar restringindo as redes VPC com as quais sua rede pode fazer peering. Na política da organização, adicione a rede à lista de peerings permitidos ou entre em contato com o administrador da organização. Para ver mais informações, consulte a restrição constraints/compute.restrictVpcPeering.

A seguir