Requisitos del puerto

La necesidad de administrar el firewall va más allá de los hosts virtuales; los firewalls de la VM y del host físico deben permitir el tráfico para los puertos que requieren los componentes para comunicarse entre sí.

Diagramas de puertos

En las siguientes imágenes, se muestran los requisitos de puertos para un solo centro de datos y para una configuración de varios centros de datos:

Un solo centro de datos

En la siguiente imagen, se muestran los requisitos de puertos para cada componente de Edge en una configuración de centro de datos único:

Requisitos de puertos para cada componente de Edge en una configuración de un solo centro de datos

Notas sobre este diagrama:

  • Los puertos que tienen el prefijo "M" son los que se usan para administrar el componente y deben estar abiertos en el componente para que el servidor de administración pueda acceder a ellos.
  • La IU de Edge requiere acceso al Router, en los puertos expuestos por los proxies de API, para admitir el botón Send en la herramienta Trace.
  • Se puede configurar el acceso a los puertos JMX para que requieran un nombre de usuario y una contraseña. Consulta Cómo supervisar para obtener más información.
  • De manera opcional, puedes configurar el acceso TLS/SSL para ciertas conexiones, que pueden usar diferentes puertos. Consulta TLS/SSL para obtener más información.
  • Puedes configurar el servidor de administración y la IU de Edge para enviar correos electrónicos a través de un servidor SMTP externo. Si lo haces, debes asegurarte de que el servidor de administración y la IU puedan acceder al puerto necesario en el servidor SMTP (no se muestra). En el caso de SMTP sin TLS, el número de puerto suele ser 25. Para SMTP habilitado para TLS, suele ser 465, pero consulta con tu proveedor de SMTP.

Varios centros de datos

Si instalas la configuración en clúster de 12 nodos con dos centros de datos, asegúrate de que los nodos de los dos centros de datos puedan comunicarse a través de los puertos que se muestran a continuación:

Requisitos de puertos para cada nodo en una configuración agrupada de 12 nodos

Ten en cuenta lo siguiente:

  • Todos los servidores de administración deben poder acceder a todos los nodos de Cassandra en todos los demás centros de datos.
  • Todos los procesadores de mensajes en todos los centros de datos deben poder acceder entre sí a través del puerto 4528.
  • El servidor de administración debe poder acceder a todos los procesadores de mensajes a través del puerto 8082.
  • Todos los servidores de administración y todos los nodos de Qpid deben poder acceder a Postgres en todos los demás centros de datos.
  • Por motivos de seguridad, además de los puertos que se muestran arriba y cualquier otro que requieran los requisitos de tu propia red, no se deben abrir otros puertos entre los centros de datos.

De forma predeterminada, las comunicaciones entre los componentes no están encriptadas. Puedes agregar encriptación instalando Apigee mTLS. Para obtener más información, consulta Introducción a mTLS de Apigee.

Detalles de la portabilidad

En la siguiente tabla, se describen los puertos que se deben abrir en los firewalls, según el componente de Edge:

Componente Puerto Descripción
Puertos HTTP estándar 80 y 443 HTTP y cualquier otro puerto que uses para hosts virtuales
SSO de Apigee 9099 Conexiones de IDP externos, el servidor de administración y los navegadores para la autenticación.
Cassandra 7000, 9042 Puertos de Apache Cassandra para la comunicación entre nodos de Cassandra y para el acceso de otros componentes de Edge.
7199 Puerto JMX. Debe estar abierto para que el servidor de administración pueda acceder a él.
LDAP 10389 SymasLDAP
Servidor de administración 1099 Puerto JMX
4526 Es el puerto para las llamadas de administración y caché distribuidas. Este puerto se puede configurar.
5636 Es el puerto para las notificaciones de confirmación de monetización.
8080 Es el puerto para las llamadas a la API de administración de Edge. Estos componentes requieren acceso al puerto 8080 en el servidor de administración: Router, Message Processor, IU, Postgres, SSO de Apigee (si está habilitado) y Qpid.
IU de administración 9000 Puerto para el acceso del navegador a la IU de administración
Message Processor 1101 Puerto JMX
4528 Para llamadas de administración y caché distribuidas entre Message Processors, y para la comunicación desde el Router y el servidor de administración.

Un procesador de mensajes debe abrir el puerto 4528 como puerto de administración. Si tienes varios Message Processors, todos deben poder acceder entre sí a través del puerto 4528 (indicado por la flecha de bucle en el diagrama anterior para el puerto 4528 en el Message Processor). Si tienes varios centros de datos, se debe poder acceder al puerto desde todos los Message Processors de todos los centros de datos.

8082

Puerto de administración predeterminado para el procesador de mensajes, que debe estar abierto en el componente para que el servidor de administración pueda acceder a él.

Si configuras TLS/SSL entre el Router y el Message Processor, el Router lo usa para realizar verificaciones de estado en el Message Processor.

El puerto 8082 en Message Processor solo debe estar abierto para que Router acceda a él cuando configures TLS/SSL entre Router y Message Processor. Si no configuras TLS/SSL entre el Router y el procesador de mensajes, la configuración predeterminada, el puerto 8082 aún debe estar abierto en el procesador de mensajes para administrar el componente, pero el Router no requiere acceso a él.

8443 Cuando se habilita TLS entre el router y el procesador de mensajes, debes abrir el puerto 8443 en el procesador de mensajes para que el router pueda acceder a él.
8998 Puerto del procesador de mensajes para las comunicaciones del router
Postgres 22 Si configuras dos nodos de Postgres para usar la replicación principal en espera, debes abrir el puerto 22 en cada nodo para el acceso SSH.
1103 Puerto JMX
4530 Para llamadas de administración y caché distribuida
5432 Se usa para la comunicación del servidor de administración o Qpid a Postgres.
8084 Puerto de administración predeterminado en el servidor de Postgres; debe estar abierto en el componente para que el servidor de administración pueda acceder a él.
Qpid 1102 Puerto JMX
4529 Para llamadas de administración y caché distribuida
5672
  • Centro de datos único: Se usa para enviar estadísticas de Router y Message Processor a Qpid.
  • Varios centros de datos: Se usa para las comunicaciones entre nodos de Qpid en diferentes centros de datos.

También se usa para la comunicación entre el servidor de Qpid y los componentes del agente en el mismo nodo. En las topologías con varios nodos de Qpid, el servidor debe poder conectarse a todos los brokers en el puerto 5672.

8083 Puerto de administración predeterminado en el servidor de Qpid que debe estar abierto en el componente para que el servidor de administración pueda acceder a él.
8090 Puerto predeterminado del agente de Qpid; debe estar abierto para acceder a la consola de administración o a las APIs de administración del agente con fines de supervisión.
Router 4527 Para llamadas de administración y caché distribuida

Un router debe abrir el puerto 4527 como puerto de administración. Si tienes varios routers, todos deben poder acceder entre sí a través del puerto 4527 (indicado por la flecha de bucle en el diagrama anterior para el puerto 4527 en el router).

Si bien no es obligatorio, puedes abrir el puerto 4527 en el router para que cualquier procesador de mensajes tenga acceso. De lo contrario, es posible que veas mensajes de error en los archivos de registro del procesador de mensajes.

8081 Puerto de administración predeterminado del router que debe estar abierto en el componente para que el servidor de administración pueda acceder a él.
15999

Es el puerto de verificación de estado. Un balanceador de cargas usa este puerto para determinar si el router está disponible.

Para obtener el estado de un Router, el balanceador de cargas realiza una solicitud al puerto 15999 del Router:

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

Si se puede acceder al router, la solicitud devuelve HTTP 200.

59001 Es el puerto que usa la utilidad apigee-validate para probar la instalación de Edge. Esta utilidad requiere acceso al puerto 59001 del router. Consulta Cómo probar la instalación para obtener más información sobre el puerto 59001.
SmartDocs 59002 Es el puerto del router perimetral al que se envían las solicitudes de páginas de SmartDocs.
ZooKeeper 2181 Otros componentes, como el servidor de administración, el router, el procesador de mensajes, etcétera, lo usan.
2888, 3888 ZooKeeper lo usa internamente para la comunicación del clúster de ZooKeeper (conocido como conjunto de ZooKeeper).

En la siguiente tabla, se muestran los mismos puertos, enumerados de forma numérica, con los componentes de origen y destino:

Número de puerto Objetivo Componente fuente Componente de destino
virtual_host_port HTTP y cualquier otro puerto que uses para el tráfico de llamadas a la API del host virtual. Los puertos 80 y 443 se usan con mayor frecuencia, y el Message Router puede finalizar las conexiones TLS/SSL. Cliente externo (o balanceador de cargas) Agente de escucha en Message Router
1099 a 1103 Administración de JMX Cliente JMX Servidor de administración (1099)
Message Processor (1101)
Servidor de Qpid (1102)
Servidor de Postgres (1103)
2181 Comunicación del cliente de Zookeeper Servidor de administración
Router
Procesador de mensajes
Servidor Qpid
Servidor Postgres
Zookeeper
2888 y 3888 Administración de nodos internos de Zookeeper Zookeeper Zookeeper
4526 Puerto de administración de RPC Servidor de administración Servidor de administración
4527 Puerto de administración de RPC para llamadas de administración y caché distribuida, y para comunicaciones entre routers Servidor de administración
Router
Router
4528 Para llamadas a la caché distribuida entre Message Processors y para la comunicación desde el Router Servidor de administración
Router
Message Processor
Message Processor
4529 Puerto de administración de RPC para llamadas de administración y caché distribuida Servidor de administración Servidor de Qpid
4530 Puerto de administración de RPC para llamadas de administración y caché distribuida Servidor de administración Servidor de Postgres
5432 Cliente de Postgres Servidor de Qpid Postgres
5636 Monetización Componente JMS externo Servidor de administración
5672
  • Centro de datos único: Se usa para enviar estadísticas de Router y Message Processor a Qpid.
  • Varios centros de datos: Se usa para las comunicaciones entre nodos de Qpid en diferentes centros de datos.

También se usa para la comunicación entre el servidor de Qpid y los componentes del agente en el mismo nodo. En las topologías con varios nodos de Qpid, el servidor debe poder conectarse a todos los brokers en el puerto 5672.

Servidor de Qpid Servidor de Qpid
7000 Comunicaciones entre nodos de Cassandra Cassandra Otro nodo de Cassandra
7199 Administración de JMX El servidor de administración debe poder acceder a él en el nodo de Cassandra. Cliente JMX Cassandra
8080 Puerto de la API de Management Clientes de la API de Management Servidor de administración
8081 a 8084

Son los puertos de la API de componentes, que se usan para emitir solicitudes de API directamente a componentes individuales. Cada componente abre un puerto diferente. El puerto exacto que se usa depende de la configuración, pero debe estar abierto en el componente para que el servidor de administración pueda acceder a él.

Clientes de la API de Management Router (8081)
Message Processor (8082)
Qpid Server (8083)
Postgres Server (8084)
8090 Es el puerto de administración predeterminado del agente de Qpid para administrar y supervisar las colas. Navegador o cliente de API Agente de Qpid (apigee-qpidd)
8443 Comunicación entre el router y el procesador de mensajes cuando TLS está habilitado Router Message Processor
8998 Comunicación entre el router y Message Processor Router Message Processor
9000 Puerto predeterminado de la IU de administración de Edge Navegador Servidor de la IU de administración
9042 Transporte nativo de CQL Router
Message Processor
Management Server
Cassandra
9099 Autenticación de IdP externo IDP, navegador y servidor de administración SSO de Apigee
10,389 Puerto LDAP Servidor de administración SymasLDAP
15999 Es el puerto de verificación de estado. Un balanceador de cargas usa este puerto para determinar si el router está disponible. Balanceador de cargas Router
59001 Puerto que usa la utilidad apigee-validate para probar la instalación de Edge apigee-validate Router
59002 Es el puerto del router al que se envían las solicitudes de páginas de SmartDocs. SmartDocs Router

Un procesador de mensajes mantiene abierto un grupo de conexiones dedicado a Cassandra, que está configurado para que nunca se agote el tiempo de espera. Cuando hay un firewall entre un Message Processor y un servidor de Cassandra, el firewall puede agotar el tiempo de espera de la conexión. Sin embargo, el procesador de mensajes no está diseñado para restablecer las conexiones con Cassandra.

Para evitar esta situación, Apigee recomienda que el servidor de Cassandra, el procesador de mensajes y los routers estén en la misma subred para que no se involucre un firewall en la implementación de estos componentes.

Si hay un firewall entre el router y los procesadores de mensajes, y tiene establecido un tiempo de espera de TCP inactivo, te recomendamos que hagas lo siguiente:

  1. Establece net.ipv4.tcp_keepalive_time = 1800 en la configuración de sysctl en el SO Linux, donde 1800 debe ser inferior al tiempo de espera de TCP inactivo del firewall. Este parámetro de configuración debería mantener la conexión en un estado establecido para que el firewall no la desconecte.
  2. En todos los procesadores de mensajes, edita /opt/apigee/customer/application/message-processor.properties para agregar la siguiente propiedad. Si el archivo no existe, créalo.
    conf_system_cassandra.maxconnecttimeinmillis=-1
  3. Reinicia el Message Processor:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
  4. En todos los routers, edita /opt/apigee/customer/application/router.properties para agregar la siguiente propiedad. Si el archivo no existe, créalo.
    conf_system_cassandra.maxconnecttimeinmillis=-1
  5. Reinicia el router:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart