La nécessité de gérer le 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 que les ports requis par les composants puissent communiquer entre eux.
Schémas des ports
Les images suivantes illustrent les exigences de port pour la configuration d'un seul centre de données et de plusieurs centres de données:
Centre de données unique
L'image suivante montre les exigences de port pour chaque composant Edge dans une configuration de centre de données unique:
Remarques sur ce diagramme:
- Les ports précédés de la lettre "M" sont des ports utilisés pour gérer le composant. Ils doivent être ouverts sur le composant pour que le serveur de gestion puisse y accéder.
- L'interface utilisateur Edge nécessite l'accès au routeur, sur les ports exposés par les proxys d'API, pour prendre en charge le bouton Envoyer dans l'outil de traçage.
- L'accès aux ports JMX peut être configuré pour exiger un nom d'utilisateur/mot de passe. Pour en savoir plus, consultez la page Surveiller.
- Vous pouvez éventuellement configurer l'accès TLS/SSL pour certaines connexions, qui peuvent utiliser différents ports. Pour en savoir plus, consultez la section TLS/SSL.
- Vous pouvez configurer le serveur de gestion et l'interface utilisateur Edge pour envoyer des e-mails via un serveur SMTP externe. Dans ce cas, vous devez vous assurer que le serveur de gestion et l'interface utilisateur peuvent accéder au port nécessaire sur le serveur SMTP (non illustré). Pour le protocole SMTP non TLS, le numéro de port est généralement 25. Pour le serveur SMTP sur lequel le protocole TLS est activé, il s'agit souvent de 465. 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 via les ports ci-dessous:
Remarques:
- Tous les serveurs de gestion doivent pouvoir accéder à l'ensemble des 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 via 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é, en dehors des ports indiqués ci-dessus et de ceux requis par votre propre réseau, aucun autre port 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 plus d'informations, consultez la page Présentation de l'authentification mTLS d'Apigee.
Détails du port
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 utilisés pour les hôtes virtuels |
Authentification unique Apigee | 9099 | Les connexions depuis des IdP externes, le serveur de gestion et des navigateurs pour l'authentification. |
Cassandra | 7000, 9042, 9160 | Ports Apache Cassandra pour la communication entre les nœuds Cassandra et pour l'accès par d'autres composants de périphérie. |
7199 | Port JMX. Ce serveur doit être ouvert au serveur de gestion pour y accéder. | |
LDAP | 10389 | OpenLDAP |
Serveur de gestion | 1099 | Port JMX |
4526 | Port pour le cache distribué et les appels de gestion. Ce port est configurable. | |
5636 | Transfert des notifications d'engagement de monétisation. | |
8080 | Port pour les appels d'API de gestion de périphérie. Ces composants nécessitent un accès au port 8080 sur le serveur de gestion: routeur, processeur de messages, UI, Postgres, SSO Apigee (si activé) et Qpid. | |
UI de gestion | 9000 | Port permettant au navigateur d'accéder à l'interface utilisateur de gestion |
Processeur de messages | 1101 | Port JMX |
4528 | Pour les appels de cache distribué et de gestion entre les processeurs de messages, ainsi que pour la communication entre le routeur et le serveur de gestion.
Un processeur de messages doit ouvrir le port 4528 comme port de gestion. Si vous disposez de plusieurs processeurs de messages, ils doivent tous pouvoir accéder les uns aux autres sur le port 4528 (indiqué par la flèche en forme de boucle dans le schéma ci-dessus pour le port 4528 sur le processeur de messages). Si vous avez plusieurs centres de données, le port doit être accessible depuis tous les processeurs de messages de tous les centres. |
|
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 sur le processeur de messages. Le port 8082 sur le processeur de messages ne doit être ouvert au 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, c'est-à-dire le port 8082, doit toujours être ouvert sur le processeur de messages pour gérer le composant, mais le routeur n'a pas besoin d'y accéder. |
|
8443 | Lorsque 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 du routeur | |
Postgres | 22 | Si vous configurez deux nœuds Postgres pour utiliser la réplication en attente maître, vous devez ouvrir le port 22 sur chaque nœud pour l'accès SSH. |
1103 | Port JMX | |
4530 | Pour les appels de cache distribué et de gestion | |
5432 | Utilisé pour la communication de Qpid (serveur de gestion) vers 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 cache distribué et de gestion | |
5672 |
Également utilisé pour la communication entre le serveur Qpid et les composants de l'agent sur le même nœud. Dans les topologies comportant plusieurs nœuds Qpid, le serveur doit pouvoir se connecter à tous les agents sur le port 5672. |
|
8083 | Port de gestion par défaut sur le serveur Qpid et doit être ouvert sur le composant pour que le serveur de gestion puisse y accéder. | |
8090 | Port par défaut pour l'agent Qpid. Il doit être ouvert pour accéder à la console de gestion de l'agent ou aux API de gestion à des fins de surveillance. | |
Routeur | 4527 | Pour les appels de cache distribué et de gestion.
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 forme de 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 que n'importe quel processeur de messages puisse y accéder. Sinon, vous risquez de voir des messages d'erreur dans les fichiers journaux du processeur de messages. |
8081 | Port de gestion par défaut pour le routeur. Il doit être ouvert sur le composant pour que le serveur de gestion puisse y accéder. | |
15999 |
Port de 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 le code HTTP 200. |
|
59001 | Port utilisé pour tester l'installation d'Edge par l'utilitaire apigee-validate .
Cet utilitaire a besoin d'accéder au port 59001 du routeur. Pour en savoir plus sur le port 59001, consultez la section Tester l'installation. |
|
SmartDocs | 59002 | Port du routeur Edge où les requêtes de page 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 affiche les mêmes ports, répertoriés numériquement, avec les composants source et de destination:
Numéro du port | Objectif | Composant source | Composant de destination |
---|---|---|---|
virtual_host_port | HTTP ainsi que tous les autres ports que vous utilisez pour le trafic des appels d'API de l'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 avec le client Zookeeper | Serveur de gestion Routeur Processeur de messages Serveur Qpid Serveur Postgres |
ZooKeeper |
2 888 et 3 888 | Gestion des internœuds 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 | Routeur du serveur de gestion |
Routeur |
4528 | Pour les appels au cache distribué entre les processeurs de messages et pour la communication à partir du 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 |
Également utilisé pour la communication entre le serveur Qpid et les composants de l'agent sur le même nœud. Dans les topologies comportant plusieurs nœuds Qpid, le serveur doit pouvoir se connecter à tous les agents sur le port 5672. |
Serveur Qpid | Serveur Qpid |
7000 | Communications entre les nœuds Cassandra | Cassandra | Autre nœud Cassandra |
7199 | Gestion JMX. Ce serveur doit être ouvert pour que le serveur de gestion puisse accéder au nœud Cassandra. | Client JMX | Cassandra |
8080 | Port de l'API de gestion | Clients de l'API de gestion | Serveur de gestion |
Entre 8081 et 8084 |
Ports de l'API des composants, utilisés pour émettre des requêtes API directement vers des composants individuels. Chaque composant ouvre un port différent. Le port exact utilisé dépend de la configuration, mais doit être ouvert sur le composant pour que le serveur de gestion puisse y accéder. |
Clients de l'API de gestion | Routeur (8081) Processeur de messages (8082) Serveur Qpid (8083) Serveur Postgres (8084) |
8090 | Port de gestion par défaut pour l'agent Qpid pour la gestion et la surveillance des files d'attente. | Navigateur ou client API | Courtier Qpid (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 d'interface utilisateur de gestion |
9042 | Transport natif CQL | Routeur Processeur de messages Serveur de gestion |
Cassandra |
9099 | Authentification du fournisseur d'identité externe | IdP, navigateur et serveur de gestion | Authentification unique Apigee |
9160 | Client d'occasion Cassandra | Routeur Processeur de messages Serveur de gestion |
Cassandra |
10389 | Port LDAP | Serveur de gestion | OpenLDAP |
15999 | Port de 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 sur lequel les requêtes de page SmartDocs sont envoyées | SmartDocs | Routeur |
Un processeur de messages conserve un pool de connexions dédié ouvert à Cassandra, configuré pour ne jamais arriver à expiration. Lorsqu'un pare-feu se situe entre un processeur de messages et un serveur Cassandra, il peut expirer le délai de connexion. Toutefois, le processeur de messages n'est pas conçu pour rétablir les connexions avec 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'aucun pare-feu n'intervienne dans le déploiement de ces composants.
Si un pare-feu se trouve 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:
- Définissez
net.ipv4.tcp_keepalive_time = 1800
dans les paramètres sysctl sous Linux, où 1 800 doit être inférieur au délai avant expiration du protocole TCP du pare-feu. Ce paramètre doit maintenir la connexion à un état établi afin que le pare-feu ne la déconnecte pas. - 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
- Redémarrez le processeur de messages :
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- 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
- Redémarrez le routeur :
/opt/apigee/apigee-service/bin/apigee-service edge-router restart