Créer des règles de réseau de trafic inter-projets

Cette page explique comment configurer des règles de réseau de trafic inter-projets dans Google Distributed Cloud (GDC) sous air gap.

Le trafic inter-projets fait référence à la communication entre les services et les charges de travail provenant de différents espaces de noms de projet, mais au sein de la même organisation.

Par défaut, les services et les charges de travail d'un projet sont isolés des services et charges de travail externes. Toutefois, les services et les charges de travail provenant de différents espaces de noms de projet et appartenant à la même organisation peuvent communiquer entre eux en appliquant des règles de réseau de trafic inter-projets.

Si l'application du trafic inter-projets est nécessaire dans une seule zone, consultez Créer des règles réseau au niveau de la charge de travail.

Avant de commencer

Pour configurer des règles de réseau de trafic intra-projet, vous devez disposer des éléments suivants :

Créer une règle de trafic inter-projets

Vous pouvez définir des règles de trafic d'entrée ou de sortie entre projets pour gérer la communication entre les projets.

Vous pouvez créer des règles de réseau mondiales inter-projets qui s'appliquent à toutes les zones de votre univers GDC. Pour en savoir plus, consultez Qu'est-ce qu'un univers ?

Créer une règle de pare-feu d'entrée globale pour le trafic entre projets

Pour que les charges de travail ou les services d'un projet autorisent les connexions provenant d'autres charges de travail d'un autre projet de votre organisation, vous devez configurer une règle de pare-feu d'entrée pour autoriser le trafic entrant des autres charges de travail du projet.

Cette règle d'entrée globale s'applique à toutes les zones de votre organisation.

Suivez les étapes ci-dessous pour créer une règle de pare-feu et autoriser le trafic entrant provenant de charges de travail d'un autre projet :

Console

  1. Dans la console GDC du projet que vous configurez, accédez à Mise en réseau > Pare-feu dans le menu de navigation pour ouvrir la page Pare-feu.
  2. Cliquez sur Créer dans la barre d'actions pour commencer à créer une règle de pare-feu.
  3. Sur la page Détails de la règle de pare-feu, saisissez les informations suivantes :

    1. Dans le champ Nom, saisissez un nom valide pour votre règle de pare-feu.
    2. Dans la section Direction du trafic, sélectionnez Entrée pour autoriser le trafic entrant des charges de travail d'autres projets.
    3. Dans la section Ciblage, sélectionnez l'une des options suivantes :
      • Toutes les charges de travail utilisateur : autorisez les connexions aux charges de travail du projet que vous configurez.
      • Service : indiquez que cette règle de pare-feu cible un service spécifique dans le projet que vous configurez.
    4. Si votre cible est un service de projet, sélectionnez le nom du service dans la liste des services disponibles dans le menu déroulant Service.
    5. Dans la section De, sélectionnez l'une des deux options suivantes :
      • Tous les projets : autorisez les connexions depuis les charges de travail dans tous les projets de la même organisation.
      • Autre projet et Toutes les charges de travail utilisateur : autorisent les connexions depuis les charges de travail d'un autre projet de la même organisation.
    6. Si vous souhaitez transférer des charges de travail uniquement à partir d'un autre projet, sélectionnez un projet auquel vous avez accès dans la liste des projets du menu déroulant ID du projet.
    7. Si votre cible concerne toutes les charges de travail utilisateur, sélectionnez l'une des options suivantes dans la section Protocoles et ports :
      • Tout autoriser : autorise les connexions utilisant n'importe quel protocole ou port.
      • Protocoles et ports spécifiés : autorisez les connexions utilisant uniquement les protocoles et les ports que vous spécifiez dans les champs correspondants de la règle de pare-feu d'entrée.
  4. Sur la page Détails de la règle de pare-feu, cliquez sur Créer.

Vous avez désormais autorisé les connexions depuis d'autres charges de travail de projet au sein de la même organisation. Une fois la règle de pare-feu créée, elle est visible dans un tableau sur la page Pare-feu.

API

La règle suivante permet aux charges de travail du projet PROJECT_1 d'autoriser les connexions des charges de travail du projet PROJECT_2, ainsi que le trafic de retour pour les mêmes flux. Appliquez la règle :

kubectl --kubeconfig GLOBAL_API_SERVER apply -f - <<EOF
apiVersion: networking.global.gdc.goog/v1
kind: ProjectNetworkPolicy
metadata:
  namespace: PROJECT_1
  name: allow-inbound-traffic-from-PROJECT_2
spec:
  policyType: Ingress
  subject:
    subjectType: UserWorkload
  ingress:
  - from:
    - projectSelector:
        projects:
          matchNames:
          - PROJECT_2
EOF

Remplacez GLOBAL_API_SERVER par le chemin d'accès kubeconfig du serveur d'API global. Pour en savoir plus, consultez Serveurs d'API globaux et zonaux. Si vous n'avez pas encore généré de fichier kubeconfig pour le serveur d'API, consultez Se connecter pour en savoir plus.

La commande précédente permet à PROJECT_2 d'accéder à PROJECT_1, mais n'autorise pas les connexions initiées à partir de PROJECT_1 vers PROJECT_2. Pour ce dernier, vous avez besoin d'une règle réciproque dans le projet PROJECT_2. Appliquez la règle de réciprocité :

kubectl --kubeconfig GLOBAL_API_SERVER apply -f - <<EOF
apiVersion: networking.global.gdc.goog/v1
kind: ProjectNetworkPolicy
metadata:
  namespace: PROJECT_2
  name: allow-inbound-traffic-from-PROJECT_1
spec:
  policyType: Ingress
  subject:
    subjectType: UserWorkload
  ingress:
  - from:
    - projectSelector:
        projects:
          matchNames:
          - PROJECT_1
EOF

Les connexions vers et depuis PROJECT_1 et PROJECT_2 sont désormais autorisées.

Créer une règle de pare-feu de sortie globale pour le trafic entre projets

Lorsque vous accordez une règle de trafic d'entrée inter-projets pour permettre aux charges de travail d'un projet d'autoriser les connexions des charges de travail d'un autre projet, cette action accorde également le trafic de retour pour les mêmes flux. Par conséquent, vous n'avez pas besoin de règle de réseau de trafic sortant inter-projets dans le projet d'origine.

Cette règle de sortie globale ne s'applique qu'à toutes les zones de votre univers GDC.

Par exemple, si vous créez une règle autorisant le trafic de PROJECT_1 vers PROJECT_2 et que la protection contre l'exfiltration de données est désactivée, vous devez créer une règle d'entrée dans PROJECT_2 et une règle de sortie dans PROJECT_1. Toutefois, les paquets de réponse sont exclus de l'application des règles. Vous n'avez donc pas besoin de règles supplémentaires.

Suivez les étapes ci-dessous pour créer une règle de pare-feu et autoriser le trafic sortant des charges de travail d'un projet :

  1. Dans la console GDC du projet que vous configurez, accédez à Mise en réseau > Pare-feu dans le menu de navigation pour ouvrir la page Pare-feu.
  2. Cliquez sur Créer dans la barre d'actions pour commencer à créer une règle de pare-feu.
  3. Sur la page Détails de la règle de pare-feu, saisissez les informations suivantes :

    1. Dans le champ Nom, saisissez un nom valide pour votre règle de pare-feu.
    2. Dans la section Sens du trafic, sélectionnez Sortie pour indiquer que cette règle de pare-feu contrôle le trafic sortant.
    3. Dans la section Ciblage, sélectionnez l'une des options suivantes :
      • Toutes les charges de travail utilisateur : autorisez les connexions à partir des charges de travail du projet que vous configurez.
      • Service : indiquez que cette règle de pare-feu cible un service spécifique dans le projet que vous configurez.
    4. Si votre cible est un service de projet, sélectionnez le nom du service dans la liste des services disponibles dans le menu déroulant Service.
    5. Dans la section À, sélectionnez l'une des deux options suivantes :
      • Tous les projets : autorisez les connexions aux charges de travail dans tous les projets de la même organisation.
      • Autre projet et Toutes les charges de travail utilisateur : autorisent les connexions aux charges de travail d'un autre projet de la même organisation.
    6. Si vous souhaitez transférer des charges de travail uniquement vers un autre projet, sélectionnez un projet auquel vous avez accès dans la liste des projets du menu déroulant ID du projet.
    7. Si votre cible concerne toutes les charges de travail utilisateur, sélectionnez l'une des options suivantes dans la section Protocoles et ports :
      • Tout autoriser : autorise les connexions utilisant n'importe quel protocole ou port.
      • Protocoles et ports spécifiés : autorisez les connexions en utilisant uniquement les protocoles et les ports que vous spécifiez dans les champs correspondants de la règle de pare-feu de sortie.
  4. Sur la page Détails de la règle de pare-feu, cliquez sur Créer.

Vous avez désormais autorisé les connexions aux charges de travail d'autres projets au sein de la même organisation. Une fois la règle de pare-feu créée, elle est visible dans un tableau sur la page Pare-feu.