Crie um gateway de VPN e um gateway de intercâmbio

Esta página descreve como criar um gateway de VPN ou um recurso de gateway de pares.

Os gateways de VPN oferecem conetividade segura entre vários sites, como entre centros de dados nas instalações e ambientes na nuvem. Existem dois componentes de gateway a configurar para a VPN isolada do Google Distributed Cloud (GDC):

  • Um gateway de VPN no GDC.
  • O seu gateway de VPN de intercâmbio. Este é um dispositivo de gateway de VPN físico ou uma aplicação de software na rede ponto a ponto à qual o gateway de VPN se liga. O gateway de pares pode ser um gateway de VPN nas instalações ou um alojado por outro fornecedor de nuvem.

Antes de começar

Para gerir ou ver recursos de VPN a partir da consola do GDC, tem de ter as funções de identidade e acesso necessárias:

  • Administrador de VPN: tem autorizações de leitura e escrita em todos os recursos relacionados com a VPN. Peça ao administrador de IAM da organização para lhe conceder a função de administrador de VPN (vpn-admin).
  • Visualizador de VPN: tem autorizações de leitura em todos os recursos relacionados com VPN. Peça ao administrador de IAM da organização para lhe conceder a função de leitor de VPN (vpn-viewer).
  • Para mais informações, consulte o artigo Definições de funções.

Crie um gateway de VPN

Para criar um gateway de VPN, siga estes passos:

  1. Especifique um nome de interface no gateway para representar o endereço IP. Quando o gateway é criado, é automaticamente atribuído um endereço IPv4 externo. Crie o objeto de gateway de VPN no espaço de nomes da plataforma:

    kubectl --kubeconfig MANAGEMENT_API_SERVER create -n platform -f - <<EOF
    apiVersion: networking.gdc.goog/v1
    kind: VPNGateway
    metadata:
      name: VPN_GW_NAME
    spec:
      interfaces:
      - name: VPN_INTERFACE_NAME
    EOF
    

    Substitua o seguinte:

    • MANAGEMENT_API_SERVER: o caminho kubeconfig do servidor da API zonal. Se ainda não gerou um ficheiro kubeconfig para o servidor da API na sua zona segmentada, consulte Iniciar sessão para ver detalhes.
    • VPN_GW_NAME: o nome do objeto do gateway de VPN. Por exemplo, vpngateway.
    • VPN_INTERFACE_NAME: o nome da interface da VPN. Por exemplo, interface0.
  2. Verifique se o objeto VPN_GW_NAME foi reconciliado corretamente examinando o campo Status. Obtenha os detalhes do objeto de gateway de VPN:

    kubectl --kubeconfig MANAGEMENT_API_SERVER describe -n platform vpngateway VPN_GW_NAME
    

    Examine o resultado. Tem de ser semelhante ao seguinte exemplo:

    
    status:
      conditions:
      - lastTransitionTime: "2024-05-10T00:12:58Z"
        message: All interfaces are assigned an IP.
        observedGeneration: 1
        reason: Ready
        status: "True"
        type: IPsAssigned
      - lastTransitionTime: "2024-05-10T00:12:36Z"
        message: Condition "TunnelsAttached" is not ready.
        observedGeneration: 1
        reason: NotReady
        status: "False"
        type: Ready
      - lastTransitionTime: "2024-05-10T00:12:36Z"
        message: 'At least one interface is not attached to any VPNTunnel: ["interface0"]'
        observedGeneration: 1
        reason: NoTunnelAttached
        status: "False"
        type: TunnelsAttached
      interfaces:
      - ip: 10.252.218.240
        name: interface0
    

O objeto VPNGateway tem de estar anexado a um VPNTunnel. Tratamos deste passo em Crie um túnel de VPN.

Crie um gateway de VPN de intercâmbio

Crie um gateway de VPN de intercâmbio criando um objeto PeerGateway no servidor da API Management. O objeto PeerGateway representa um ponto final de VPN remoto. Uma interface num objeto PeerGateway é usada por um túnel VPN para estabelecer um túnel encriptado para o site remoto. Para criar um gateway de VPN de pares, siga estes passos:

  1. Especifique um nome de interface e o endereço IPv4 externo estático do seu gateway de VPN de pares. O objeto PeerGateway tem de ser criado no espaço de nomes da plataforma:

    kubectl --kubeconfig MANAGEMENT_API_SERVER create -n platform -f - <<EOF
    apiVersion: networking.gdc.goog/v1
    kind: PeerGateway
    metadata:
      name: PEER_GW_NAME
    spec:
      interfaces:
      - name: PEER_INTERFACE_NAME
        ip: PEER_INTERFACE_IP
    EOF
    

    Substitua o seguinte:

    • PEER_GW_NAME: o nome do gateway de VPN de intercâmbio. Por exemplo, peergateway.
    • PEER_INTERFACE_NAME: o nome da interface de pares. Por exemplo, interface0.
    • PEER_INTERFACE_IP: o endereço IPv4 externo estático do seu gateway de VPN de intercâmbio.
  2. Verifique se o objeto PEER_GW_NAME foi reconciliado corretamente examinando o campo Status.

    Obtenha os detalhes do objeto de gateway de VPN de intercâmbio:

    kubectl --kubeconfig MANAGEMENT_API_SERVER describe -n platform peergateway PEER_GW_NAME
    

    Examine o resultado. Tem de ser semelhante ao seguinte exemplo:

    Status:
      Conditions:
        Last Transition Time:  2024-05-10T00:15:25Z
        Message:               Condition "TunnelsAttached" is not ready.
        Observed Generation:   1
        Reason:                NotReady
        Status:                False
        Type:                  Ready
        Last Transition Time:  2024-05-10T00:20:45Z
        Message:               Ready
        Observed Generation:   1
        Reason:                Ready
        Status:                True
        Type:                  ValidGatewayIPs
        Last Transition Time:  2024-05-10T00:15:25Z
        Message:               At least one interface is not attached to any VPNTunnel: ["interface0"]
        Observed Generation:   1
        Reason:                NoTunnelAttached
        Status:                False
        Type:                  TunnelsAttached
    

    O objeto PeerGateway tem de ser referenciado por um VPNTunnel. Tratamos deste passo em Crie um túnel de VPN.

O que se segue?