24.16. Considérations relatives à l'utilisation d'un module de routeur de sortie


24.16.1. À propos d'un pod de routeur de sortie

Le pod routeur egress d'OpenShift Container Platform redirige le trafic vers un serveur distant spécifié à partir d'une adresse IP source privée qui n'est pas utilisée à d'autres fins. Un pod routeur egress peut envoyer du trafic réseau à des serveurs qui sont configurés pour n'autoriser l'accès qu'à partir d'adresses IP spécifiques.

Note

Le module de routeur de sortie n'est pas destiné à chaque connexion sortante. La création d'un grand nombre de modules de routeur de sortie peut dépasser les limites de votre matériel réseau. Par exemple, la création d'un module de routeur de sortie pour chaque projet ou application pourrait dépasser le nombre d'adresses MAC locales que l'interface réseau peut gérer avant de revenir au filtrage des adresses MAC dans le logiciel.

Important

L'image du routeur de sortie n'est pas compatible avec Amazon AWS, Azure Cloud ou toute autre plateforme cloud qui ne prend pas en charge les manipulations de la couche 2 en raison de leur incompatibilité avec le trafic macvlan.

24.16.1.1. Modes du routeur de sortie

En redirect modeun pod routeur de sortie configure les règles iptables pour rediriger le trafic de sa propre adresse IP vers une ou plusieurs adresses IP de destination. Les modules clients qui doivent utiliser l'adresse IP source réservée doivent être modifiés pour se connecter au routeur de sortie plutôt que de se connecter directement à l'adresse IP de destination.

Note

Le plugin CNI egress router supporte uniquement le mode redirect. Il s'agit d'une différence avec l'implémentation du routeur egress que vous pouvez déployer avec OpenShift SDN. Contrairement au routeur de sortie pour OpenShift SDN, le plugin CNI du routeur de sortie ne prend pas en charge le mode proxy HTTP ou le mode proxy DNS.

24.16.1.2. Mise en œuvre d'un pod de routeur de sortie

L'implémentation du routeur de sortie utilise le plugin Container Network Interface (CNI) du routeur de sortie. Le plugin ajoute une interface réseau secondaire à un pod.

Un routeur de sortie est un module qui possède deux interfaces réseau. Par exemple, le module peut avoir des interfaces réseau eth0 et net1. L'interface eth0 se trouve sur le réseau du cluster et le pod continue à l'utiliser pour le trafic réseau ordinaire lié au cluster. L'interface net1 est sur un réseau secondaire et possède une adresse IP et une passerelle pour ce réseau. D'autres pods dans le cluster OpenShift Container Platform peuvent accéder au service de routeur de sortie et le service permet aux pods d'accéder à des services externes. Le routeur egress agit comme un pont entre les pods et un système externe.

Le trafic qui quitte le routeur de sortie passe par un nœud, mais les paquets ont l'adresse MAC de l'interface net1 du pod du routeur de sortie.

Lorsque vous ajoutez une ressource personnalisée de routeur de sortie, l'opérateur de réseau de cluster crée les objets suivants :

  • La définition de l'attachement réseau pour l'interface réseau secondaire net1 du pod.
  • Un déploiement pour le routeur de sortie.

Si vous supprimez une ressource personnalisée de routeur de sortie, l'opérateur supprime les deux objets de la liste précédente qui sont associés au routeur de sortie.

24.16.1.3. Considérations relatives au déploiement

Un pod routeur de sortie ajoute une adresse IP et une adresse MAC supplémentaires à l'interface réseau principale du nœud. Par conséquent, il se peut que vous deviez configurer votre hyperviseur ou votre fournisseur de cloud pour autoriser l'adresse supplémentaire.

Plate-forme Red Hat OpenStack (RHOSP)

Si vous déployez OpenShift Container Platform sur RHOSP, vous devez autoriser le trafic à partir des adresses IP et MAC du pod routeur egress sur votre environnement OpenStack. Si vous n'autorisez pas le trafic, la communication échouera:

$ openstack port set --allowed-address \
  ip_address=<ip_address>,mac_address=<mac_address> <neutron_port_uuid>
Red Hat Virtualization (RHV)
Si vous utilisez RHV, vous devez sélectionner No Network Filter pour le contrôleur d'interface réseau virtuel (vNIC).
VMware vSphere
Si vous utilisez VMware vSphere, consultez la documentation VMware pour sécuriser les commutateurs standard vSphere. Affichez et modifiez les paramètres par défaut de VMware vSphere en sélectionnant le commutateur virtuel de l'hôte dans le client Web vSphere.

En particulier, assurez-vous que les éléments suivants sont activés :

24.16.1.4. Configuration du basculement

Pour éviter les temps d'arrêt, l'opérateur du réseau de cluster déploie le module de routeur de sortie en tant que ressource de déploiement. Le nom du déploiement est egress-router-cni-deployment. Le module correspondant au déploiement a une étiquette app=egress-router-cni.

Pour créer un nouveau service pour le déploiement, utilisez la commande oc expose deployment/egress-router-cni-deployment --port <port_number> ou créez un fichier comme dans l'exemple suivant :

apiVersion: v1
kind: Service
metadata:
  name: app-egress
spec:
  ports:
  - name: tcp-8080
    protocol: TCP
    port: 8080
  - name: tcp-8443
    protocol: TCP
    port: 8443
  - name: udp-80
    protocol: UDP
    port: 80
  type: ClusterIP
  selector:
    app: egress-router-cni

24.16.2. Ressources supplémentaires

Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.