Créer une passerelle VPN et une passerelle de pairs

Cette page explique comment créer une passerelle VPN ou une ressource de passerelle de pairs.

Les passerelles VPN fournissent une connectivité sécurisée entre plusieurs sites, tels que des centres de données sur site et des environnements cloud. Il existe deux composants de passerelle à configurer pour le VPN Google Distributed Cloud (GDC) air-gapped :

  • Une passerelle VPN dans GDC.
  • Votre passerelle VPN de pairs Il s'agit d'un appareil de passerelle VPN physique ou d'une application logicielle dans le réseau de pairs auquel la passerelle VPN se connecte. La passerelle de pairs peut être une passerelle VPN sur site ou une passerelle hébergée par un autre fournisseur cloud.

Avant de commencer

Pour gérer ou afficher les ressources VPN depuis la console GDC, vous devez disposer des rôles d'identité et d'accès nécessaires :

  • Administrateur VPN : dispose d'autorisations de lecture et d'écriture sur toutes les ressources liées au VPN. Demandez à votre administrateur IAM de l'organisation de vous attribuer le rôle Administrateur VPN (vpn-admin).
  • Lecteur VPN : dispose d'autorisations de lecture sur toutes les ressources liées au VPN. Demandez à votre administrateur IAM de l'organisation de vous attribuer le rôle Lecteur VPN (vpn-viewer).
  • Pour en savoir plus, consultez Définitions des rôles.

Créer une passerelle VPN

Pour créer une passerelle VPN, procédez comme suit :

  1. Spécifiez un nom d'interface sur la passerelle pour représenter l'adresse IP. Lorsqu'une passerelle est créée, une adresse IPv4 externe lui est automatiquement attribuée. Créez l'objet passerelle VPN dans l'espace de noms de la plate-forme :

    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
    

    Remplacez les éléments suivants :

    • MANAGEMENT_API_SERVER : chemin d'accès au fichier kubeconfig du serveur d'API zonal. Si vous n'avez pas encore généré de fichier kubeconfig pour le serveur d'API dans la zone cible, consultez Se connecter pour en savoir plus.
    • VPN_GW_NAME : nom de l'objet de passerelle VPN. Exemple :vpngateway
    • VPN_INTERFACE_NAME : nom de l'interface VPN. Exemple :interface0
  2. Vérifiez que l'objet VPN_GW_NAME a été correctement rapproché en examinant le champ Status. Obtenez les détails de l'objet passerelle VPN :

    kubectl --kubeconfig MANAGEMENT_API_SERVER describe -n platform vpngateway VPN_GW_NAME
    

    Examinez le résultat. Il doit ressembler à l'exemple suivant :

    
    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
    

L'objet VPNGateway doit être associé à un VPNTunnel. Nous traitons cette étape dans Créer un tunnel VPN.

Créer une passerelle VPN de pairs

Créez une passerelle VPN de pairs en créant un objet PeerGateway sur le serveur de l'API Management. L'objet PeerGateway représente un point de terminaison VPN distant. Une interface sur un objet PeerGateway est utilisée par un tunnel VPN pour établir un tunnel chiffré vers le site distant. Pour créer une passerelle VPN de pairs, procédez comme suit :

  1. Spécifiez un nom d'interface et l'adresse IPv4 externe statique de votre passerelle VPN de pairs. L'objet PeerGateway doit être créé dans l'espace de noms de la plate-forme :

    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
    

    Remplacez les éléments suivants :

    • PEER_GW_NAME : nom de la passerelle VPN de pairs. Exemple :peergateway
    • PEER_INTERFACE_NAME : nom de l'interface du pair. Exemple :interface0
    • PEER_INTERFACE_IP : adresse IPv4 externe statique de votre passerelle VPN de pairs.
  2. Vérifiez que l'objet PEER_GW_NAME a été correctement rapproché en examinant le champ Status.

    Obtenez les détails de l'objet passerelle VPN de pairs :

    kubectl --kubeconfig MANAGEMENT_API_SERVER describe -n platform peergateway PEER_GW_NAME
    

    Examinez le résultat. Il doit ressembler à l'exemple suivant :

    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
    

    L'objet PeerGateway doit être référencé par un VPNTunnel. Nous traitons cette étape dans Créer un tunnel VPN.

Étapes suivantes