Configuration requise au niveau des ports

La gestion du pare-feu ne se limite pas aux hôtes virtuels. Les pare-feu des VM et des hôtes physiques doivent autoriser le trafic pour les ports requis par les composants afin de communiquer entre eux.

Diagrammes des ports

Les images suivantes montrent les exigences relatives aux ports pour une configuration à un seul centre de données et pour une configuration à plusieurs centres de données :

Un seul centre de données

L'image suivante montre les exigences de port pour chaque composant Edge dans une configuration à centre de données unique :

Exigences concernant les ports pour chaque composant Edge dans une configuration à un seul centre de données

Remarques sur ce diagramme :

  • Les ports préfixés par "M" sont des ports utilisés pour gérer le composant et doivent être ouverts sur le composant pour que le serveur de gestion puisse y accéder.
  • L'interface utilisateur Edge nécessite d'accéder au routeur, sur les ports exposés par les proxys d'API, pour prendre en charge le bouton Envoyer dans l'outil de trace.
  • L'accès aux ports JMX peut être configuré pour exiger un nom d'utilisateur et un mot de passe. Pour en savoir plus, consultez Surveillance.
  • Vous pouvez éventuellement configurer l'accès TLS/SSL pour certaines connexions, qui peuvent utiliser différents ports. Pour en savoir plus, consultez TLS/SSL.
  • Vous pouvez configurer le serveur de gestion et l'interface utilisateur Edge pour envoyer des e-mails via un serveur SMTP externe. Si vous le faites, vous devez vous assurer que le serveur de gestion et l'UI peuvent accéder au port nécessaire sur le serveur SMTP (non indiqué). Pour le protocole SMTP non TLS, le numéro de port est généralement 25. Pour le protocole SMTP compatible avec TLS, il s'agit souvent du port 465, mais vérifiez auprès de votre fournisseur SMTP.

Plusieurs centres de données

Si vous installez la configuration en cluster à 12 nœuds avec deux centres de données, assurez-vous que les nœuds des deux centres de données peuvent communiquer sur les ports indiqués ci-dessous :

Exigences concernant les ports pour chaque nœud dans une configuration en cluster de 12 nœuds

Remarque :

  • Tous les serveurs de gestion doivent pouvoir accéder à tous les nœuds Cassandra de tous les autres centres de données.
  • Tous les processeurs de messages de tous les centres de données doivent pouvoir accéder les uns aux autres via le port 4528.
  • Le serveur de gestion doit pouvoir accéder à tous les processeurs de messages sur le port 8082.
  • Tous les serveurs de gestion et tous les nœuds Qpid doivent pouvoir accéder à Postgres dans tous les autres centres de données.
  • Pour des raisons de sécurité, aucun autre port que ceux indiqués ci-dessus et ceux requis par votre propre réseau ne doit être ouvert entre les centres de données.

Par défaut, les communications entre les composants ne sont pas chiffrées. Vous pouvez ajouter le chiffrement en installant Apigee mTLS. Pour en savoir plus, consultez Présentation d'Apigee mTLS.

Détails du transfert

Le tableau ci-dessous décrit les ports à ouvrir dans les pare-feu, par composant Edge :

Composant Port Description
Ports HTTP standards 80, 443 HTTP et tous les autres ports que vous utilisez pour les hôtes virtuels
Apigee SSO 9099 Connexions depuis des IdP externes, le serveur de gestion et les navigateurs pour l'authentification.
Cassandra 7000, 9042 Ports Apache Cassandra pour la communication entre les nœuds Cassandra et pour l'accès par d'autres composants Edge.
7199 Port JMX. Il doit être ouvert pour que le serveur de gestion puisse y accéder.
LDAP 10389 SymasLDAP
Serveur de gestion 1099 Port JMX
4526 Port pour les appels de gestion et de cache distribué. Ce port est configurable.
5636 Port pour les notifications d'engagement de monétisation.
8080 Port pour les appels à l'API de gestion Edge. Ces composants nécessitent un accès au port 8080 sur le serveur de gestion : routeur, processeur de messages, interface utilisateur, Postgres, Apigee SSO (si activé) et Qpid.
Interface utilisateur de gestion 9000 Port pour l'accès au navigateur à l'interface utilisateur de gestion
Processeur de messages 1101 Port JMX
4528 Pour les appels de gestion et de cache distribués entre les processeurs de messages, et pour la communication depuis le routeur et le serveur de gestion.

Un processeur de messages doit ouvrir le port 4528 en tant que port de gestion. Si vous disposez de plusieurs processeurs de messages, ils doivent tous pouvoir accéder les uns aux autres via le port 4528 (indiqué par la flèche en boucle dans le diagramme ci-dessus pour le port 4528 sur le processeur de messages). Si vous disposez de plusieurs centres de données, le port doit être accessible à partir de tous les processeurs de messages de tous les centres de données.

8082

Port de gestion par défaut pour le processeur de messages. Il doit être ouvert sur le composant pour que le serveur de gestion puisse y accéder.

Si vous configurez TLS/SSL entre le routeur et le processeur de messages, utilisé par le routeur pour effectuer des vérifications de l'état du processeur de messages.

Le port 8082 du processeur de messages ne doit être ouvert pour l'accès par le routeur que lorsque vous configurez TLS/SSL entre le routeur et le processeur de messages. Si vous ne configurez pas TLS/SSL entre le routeur et le processeur de messages, la configuration par défaut (port 8082) doit toujours être ouverte sur le processeur de messages pour gérer le composant, mais le routeur n'a pas besoin d'y accéder.

8443 Lorsque le protocole TLS est activé entre le routeur et le processeur de messages, vous devez ouvrir le port 8443 sur le processeur de messages pour que le routeur puisse y accéder.
8998 Port du processeur de messages pour les communications provenant du routeur
Postgres 22 Si vous configurez deux nœuds Postgres pour utiliser la réplication maître-veille, vous devez ouvrir le port 22 sur chaque nœud pour l'accès SSH.
1103 Port JMX
4530 Pour les appels de gestion et de cache distribué
5432 Utilisé pour la communication entre le serveur Qpid/de gestion et Postgres
8084 Port de gestion par défaut sur le serveur Postgres. Il doit être ouvert sur le composant pour que le serveur de gestion puisse y accéder.
Qpid 1102 Port JMX
4529 Pour les appels de gestion et de cache distribué
5672
  • Centre de données unique : utilisé pour envoyer des données analytiques du routeur et du processeur de messages à Qpid.
  • Plusieurs centres de données : utilisé pour les communications entre les nœuds Qpid dans différents centres de données.

Elle est également utilisée pour la communication entre les composants du serveur et du broker Qpid sur le même nœud. Dans les topologies comportant plusieurs nœuds Qpid, le serveur doit pouvoir se connecter à tous les courtiers sur le port 5672.

8083 Port de gestion par défaut sur le serveur Qpid. Il doit être ouvert sur le composant pour que le serveur de gestion puisse y accéder.
8090 Port par défaut du courtier Qpid. Il doit être ouvert pour accéder à la console de gestion ou aux API de gestion du courtier à des fins de surveillance.
Routeur 4527 Pour les appels de gestion et de cache distribué.

Un routeur doit ouvrir le port 4527 comme port de gestion. Si vous disposez de plusieurs routeurs, ils doivent tous pouvoir accéder les uns aux autres sur le port 4527 (indiqué par la flèche en boucle dans le schéma ci-dessus pour le port 4527 sur le routeur).

Bien que cela ne soit pas obligatoire, vous pouvez ouvrir le port 4527 sur le routeur pour permettre l'accès à n'importe quel processeur de messages. Sinon, des messages d'erreur peuvent s'afficher dans les fichiers journaux du processeur de messages.

8081 Port de gestion par défaut du routeur. Il doit être ouvert sur le composant pour que le serveur de gestion puisse y accéder.
15999

Port de la vérification de l'état. Un équilibreur de charge utilise ce port pour déterminer si le routeur est disponible.

Pour obtenir l'état d'un routeur, l'équilibreur de charge envoie une requête au port 15999 du routeur :

curl -v http://routerIP:15999/v1/servers/self/reachable

Si le routeur est accessible, la requête renvoie HTTP 200.

59001 Port utilisé pour tester l'installation Edge par l'utilitaire apigee-validate. Cet utilitaire nécessite d'accéder au port 59001 du routeur. Pour en savoir plus sur le port 59001, consultez Tester l'installation.
SmartDocs 59002 Port du routeur Edge auquel les demandes de pages SmartDocs sont envoyées.
ZooKeeper 2181 Utilisé par d'autres composants tels que le serveur de gestion, le routeur, le processeur de messages, etc.
2888, 3888 Utilisé en interne par ZooKeeper pour la communication du cluster ZooKeeper (appelé ensemble ZooKeeper)

Le tableau suivant présente les mêmes ports, listés par ordre numérique, avec les composants source et de destination :

Numéro du port Objectif Composant source Composant de destination
virtual_host_port HTTP et tous les autres ports que vous utilisez pour le trafic d'appels d'API d'hôte virtuel. Les ports 80 et 443 sont les plus couramment utilisés. Le routeur de messages peut mettre fin aux connexions TLS/SSL. Client externe (ou équilibreur de charge) Écouteur sur le routeur de messages
1099 à 1103 Gestion JMX Client JMX Serveur de gestion (1099)
Processeur de messages (1101)
Serveur Qpid (1102)
Serveur Postgres (1103)
2181 Communication du client Zookeeper Serveur de gestion
Routeur
Processeur de messages
Serveur Qpid
Serveur Postgres
ZooKeeper
2888 et 3888 Gestion des nœuds internes de Zookeeper ZooKeeper ZooKeeper
4526 Port de gestion RPC Serveur de gestion Serveur de gestion
4527 Port de gestion RPC pour le cache distribué et les appels de gestion, ainsi que pour les communications entre les routeurs Serveur de gestion
Routeur
Routeur
4528 Pour les appels de cache distribué entre les processeurs de messages et pour la communication depuis le routeur Serveur de gestion
Routeur
Processeur de messages
Processeur de messages
4529 Port de gestion RPC pour le cache distribué et les appels de gestion Serveur de gestion Serveur Qpid
4530 Port de gestion RPC pour le cache distribué et les appels de gestion Serveur de gestion Serveur Postgres
5432 Client Postgres Serveur Qpid Postgres
5636 Monétisation Composant JMS externe Serveur de gestion
5672
  • Centre de données unique : utilisé pour envoyer des données analytiques du routeur et du processeur de messages à Qpid.
  • Plusieurs centres de données : utilisé pour les communications entre les nœuds Qpid dans différents centres de données.

Elle est également utilisée pour la communication entre les composants du serveur et du broker Qpid sur le même nœud. Dans les topologies comportant plusieurs nœuds Qpid, le serveur doit pouvoir se connecter à tous les courtiers sur le port 5672.

Serveur Qpid Serveur Qpid
7000 Communications entre les nœuds Cassandra Cassandra Autre nœud Cassandra
7199 Gestion JMX. Doit être ouvert pour que le serveur de gestion puisse accéder au nœud Cassandra. Client JMX Cassandra
8080 Port de l'API Management Clients de l'API Management Serveur de gestion
8081 à 8084

Ports de l'API des composants, utilisés pour envoyer des requêtes d'API directement à des composants individuels. Chaque composant ouvre un port différent. Le port exact utilisé dépend de la configuration, mais il doit être ouvert sur le composant pour que le serveur de gestion puisse y accéder.

Clients de l'API Management Routeur (8081)
Processeur de messages (8082)
Serveur Qpid (8083)
Serveur Postgres (8084)
8090 Port de gestion par défaut du courtier Qpid pour gérer et surveiller les files d'attente. Navigateur ou client API Qpid Broker (apigee-qpidd)
8443 Communication entre le routeur et le processeur de messages lorsque TLS est activé Routeur Processeur de messages
8998 Communication entre le routeur et le processeur de messages Routeur Processeur de messages
9000 Port de l'interface utilisateur de gestion Edge par défaut Navigateur Serveur de l'interface utilisateur de gestion
9042 Transport natif CQL Routeur
Processeur de messages
Serveur de gestion
Cassandra
9099 Authentification avec un fournisseur d'identité externe IdP, navigateur et serveur de gestion Apigee SSO
10389 Port LDAP Serveur de gestion SymasLDAP
15999 Port de la vérification de l'état. Un équilibreur de charge utilise ce port pour déterminer si le routeur est disponible. Équilibreur de charge Routeur
59001 Port utilisé par l'utilitaire apigee-validate pour tester l'installation Edge apigee-validate Routeur
59002 Port du routeur vers lequel les demandes de pages SmartDocs sont envoyées SmartDocs Routeur

Un processeur de messages maintient un pool de connexions dédié ouvert à Cassandra, qui est configuré pour ne jamais expirer. Lorsqu'un pare-feu se trouve entre un processeur de messages et un serveur Cassandra, il peut entraîner un délai d'expiration de la connexion. Toutefois, le processeur de messages n'est pas conçu pour rétablir les connexions à Cassandra.

Pour éviter cette situation, Apigee recommande que le serveur Cassandra, le processeur de messages et les routeurs se trouvent dans le même sous-réseau afin qu'un pare-feu ne soit pas impliqué dans le déploiement de ces composants.

Si un pare-feu est installé entre le routeur et les processeurs de messages, et qu'un délai d'inactivité TCP est défini, nous vous recommandons de procéder comme suit :

  1. Définissez net.ipv4.tcp_keepalive_time = 1800 dans les paramètres sysctl sur l'OS Linux, où 1800 doit être inférieur au délai d'inactivité TCP du pare-feu. Ce paramètre doit maintenir la connexion dans un état établi afin que le pare-feu ne la déconnecte pas.
  2. Sur tous les processeurs de messages, modifiez /opt/apigee/customer/application/message-processor.properties pour ajouter la propriété suivante. Si le fichier n'existe pas, créez-le.
    conf_system_cassandra.maxconnecttimeinmillis=-1
  3. Redémarrez le processeur de messages :
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
  4. Sur tous les routeurs, modifiez /opt/apigee/customer/application/router.properties pour ajouter la propriété suivante. Si le fichier n'existe pas, créez-le.
    conf_system_cassandra.maxconnecttimeinmillis=-1
  5. Redémarrez le routeur :
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart