Edge para la nube privada v4.19.01
La necesidad de administrar el firewall va más allá de los hosts virtuales. Tanto los firewalls de host físicos como los de VM deben permitir el tráfico para que los puertos requeridos por los componentes se comuniquen entre sí.
Diagramas de puertos
En las siguientes imágenes, se muestran los requisitos de puerto para la configuración de un solo centro de datos y de varios:
Único centro de datos
En la siguiente imagen, se muestran los requisitos de puerto para cada componente de Edge en una sola configuración de centro de datos:
Notas sobre este diagrama:
- Los puertos con el prefijo “M” son puertos que se usan para administrar el componente y deben estar abiertos en el componente a fin de que el servidor de administración pueda acceder a él.
- La IU de Edge requiere acceso al router, en los puertos expuestos por los proxies de API, para admitir el botón Enviar en la herramienta de seguimiento.
- Se puede configurar el acceso a los puertos JMX para que requiera un nombre de usuario o 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 puertos diferentes. 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 un SMTP sin TLS, el número de puerto suele ser 25. En el caso de SMTP con TLS habilitada, el error suele ser 465, pero consulta con tu proveedor de SMTP.
Varios centros de datos
Si instalas la configuración agrupada en clústeres 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:
Ten en cuenta lo siguiente:
- Todos los servidores de administración deben poder acceder a todos los nodos de Cassandra de todos los demás centros de datos.
- Todos los procesadores de mensajes de 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, a excepción de los puertos que se muestran arriba y cualquier otro requerido por tus propios requisitos de red, no debe haber otros puertos abiertos entre centros de datos.
De forma predeterminada, las comunicaciones entre los componentes no están encriptadas. Puedes agregar encriptación si instalas Apigee mTLS. Para obtener más información, consulta Introducción a Apigee mTLS.
Detalles del puerto
En la siguiente tabla, se describen los puertos que se deben abrir en firewalls, por componente de Edge:
Componente | Puerto | Descripción |
---|---|---|
Puertos HTTP estándar | 80, 443 | HTTP y cualquier otro puerto que uses para hosts virtuales |
Cassandra | 7000, 9042, 9160 | Puertos de Apache Cassandra para la comunicación entre los nodos de Cassandra y el acceso a través de otros componentes de Edge |
7,199 | Puerto JMX. Debe estar abierto para que el servidor de administración tenga acceso. | |
LDAP | 10,389 | OpenLDAP |
Servidor de administración | 1,099 | Puerto JMX |
4,526 | Puerto para la caché distribuida y las llamadas de administración. Este puerto se puede configurar. | |
5,636 | Puerto para las notificaciones de confirmación de monetización. | |
8,080 | Puerto para llamadas a la API de Edge Management. Estos componentes requieren acceso al puerto 8080 en el servidor de administración: router, procesador de mensajes, IU, Postgres y Qpid. | |
IU de administración | 9,000 | Puerto para que el navegador acceda a la IU de administración |
Procesador de mensajes | 1,101 | Puerto JMX |
4,528 | Para la caché distribuida y las llamadas de administración entre los procesadores de mensajes y para la comunicación desde el router y el servidor de administración.
Un Message Processor debe abrir el puerto 4528 como su puerto de administración. Si tienes varios procesadores de mensajes, 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 procesador de mensajes). Si tienes varios centros de datos, debes poder acceder al puerto desde todos los procesadores de mensajes de todos los centros de datos. |
|
8,082 |
Es un puerto de administración predeterminado para Message Processor. Además, debe estar abierto en el componente a fin de que el servidor de administración pueda acceder a él. Si configuras TLS/SSL entre el router y el procesador de mensajes, que el router usará para realizar verificaciones de estado en el procesador de mensajes. El puerto 8082 del Message Processor solo debe estar abierto para el acceso del router cuando se configura TLS/SSL entre el router y el Message Processor. Si no configuras TLS/SSL entre el router y el procesador de mensajes, la configuración predeterminada, el puerto 8082, debe estar abierto en el procesador de mensajes de todos modos para administrar el componente, pero el router no requiere acceso a él. |
|
8,443 | 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 acceda. | |
8,998 | Puerto de Message Processor para las comunicaciones del router | |
Postgres | 22 | Si configuras dos nodos de Postgres para usar la replicación de instancia principal en espera, debes abrir el puerto 22 en cada nodo para obtener acceso SSH. |
1,103 | Puerto JMX | |
4,530 | Para caché distribuida y llamadas de administración | |
5,432 | Se usa para la comunicación de Qpid/Management Server a Postgres | |
8,084 | Puerto de administración predeterminado en el servidor Postgres. Debe estar abierto en el componente para que el servidor de administración pueda acceder. | |
LPD | 1,102 | Puerto JMX |
4,529 | Para caché distribuida y llamadas de administración | |
5,672 |
|
|
8,083 | Es el puerto de administración predeterminado en el servidor Qpid y debe estar abierto en el componente para que el servidor de administración pueda acceder. | |
Router | 4,527 | Para caché distribuida y llamadas de administración.
Un router debe abrir el puerto 4527 como su 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 acceder a cualquier Message Processor. De lo contrario, es posible que veas mensajes de error en los archivos de registro de Message Processor. |
8081 | Es un puerto de administración predeterminado para el router, que debe estar abierto en el componente para que el servidor de administración pueda acceder. | |
15,999 |
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 en el router: curl -v http://routerIP:15999/v1/servers/self/reachable Si se puede acceder al router, la solicitud muestra HTTP 200. |
|
59,001 | Puerto que usa la utilidad apigee-validate para probar la instalación de Edge.
Esta utilidad requiere acceso al puerto 59001 en el router. Consulta Prueba la instalación para obtener más información en el puerto 59001. |
|
SmartDocs | 59,002 | Es el puerto del router Edge al que se envían las solicitudes de la página de SmartDocs. |
ZooKeeper | 2,181 | Lo usan otros componentes, como el servidor de administración, el router, el procesador de mensajes, etcétera. |
2888, 3888 | Lo usa ZooKeeper de forma interna para la comunicación del clúster de ZooKeeper (conocido como ensamble de ZooKeeper). |
En la siguiente tabla, se muestran los mismos puertos, enumerados numéricamente, con los componentes de origen y destino:
Número de puerto | Objetivo | Componente de origen | Componente de destino |
---|---|---|---|
virtual_host_port | HTTP más cualquier otro puerto que uses para el tráfico de llamadas a la API del host virtual. Los puertos 80 y 443 son los más usados; el router de mensajes puede finalizar las conexiones TLS/SSL. | Cliente externo (o balanceador de cargas) | Objeto de escucha en el router de mensajes |
De 1,099 a 1,103 | Administración de JMX | Cliente JMX | Servidor de administración (1099) Procesador de mensajes (1101) Servidor Qpid (1102) Servidor Postgres (1103) |
2181 | Comunicación con el cliente de Zookeeper | Servidor de administración Router Procesador de mensajes Qpid Server Servidor Postgres |
Zookeeper |
2888 y 3888 | Administración de nodos de los cuidadores del zoológico | 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 la caché distribuida y las llamadas de administración, y para las comunicaciones entre los routers | Router del servidor de administración |
Router |
4528 | Para llamadas de caché distribuida entre procesadores de mensajes y para la comunicación desde el router | Servidor de administración Router Procesador de mensajes |
Procesador de mensajes |
4529 | Puerto de administración de RPC para caché distribuida y llamadas de administración | Servidor de administración | Servidor Qpid |
4530 | Puerto de administración de RPC para caché distribuida y llamadas de administración | Servidor de administración | Servidor Postgres |
5432 | Cliente de Postgres | Servidor Qpid | Postgres |
5636 | Monetización | Componente de JMS externo | Servidor de administración |
5672 |
|
Servidor Qpid | Servidor Qpid |
7000 | Comunicaciones entre nodos de Cassandra | Cassandra | Otro nodo de Cassandra |
7199 | Administración de JMX. Debe estar abierto para que el servidor de administración acceda al nodo de Cassandra. | Cliente JMX | Cassandra |
8080 | Puerto de la API de Management | Clientes de la API de Management | Servidor de administración |
De 8081 a 8084 |
Puertos de API de componentes, que se usan para emitir solicitudes a la 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 |
Clientes de la API de Management | Router (8081) Procesador de mensajes (8082) Servidor Qpid (8083) Servidor Postgres (8084) |
8443 | Comunicación entre el router y el procesador de mensajes cuando TLS está habilitado | Router | Procesador de mensajes |
8998 | Comunicación entre el router y el procesador de mensajes | Router | Procesador de mensajes |
9000 | Puerto predeterminado de la IU de administración perimetral | Navegador | Servidor de IU de administración |
9042 | Transporte nativo de CQL | Router Procesador de mensajes Servidor de administración |
Cassandra |
9160 | Cliente de segunda mano de Cassandra | Router Procesador de mensajes Servidor de administración |
Cassandra |
10,389 | Puerto LDAP | Servidor de administración | OpenLDAP |
15999 | 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 | El puerto del router al que se envían las solicitudes de la página de SmartDocs | SmartDocs | Router |
Un Message Processor mantiene un grupo de conexiones dedicado abierto a Cassandra, que está configurado para que nunca agote el tiempo de espera. Cuando un firewall está entre un procesador de mensajes 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 Cassandra, el procesador de mensajes y los routers estén en la misma subred para que un firewall no esté involucrado en la implementación de estos componentes.
Si hay un firewall entre el router y los procesadores de mensajes, y tiene configurado un tiempo de espera de TCP inactivo, recomendamos hacer lo siguiente:
- Establece
net.ipv4.tcp_keepalive_time = 1800
en la configuración de sysctl en el SO Linux, donde 1800 debe ser menor que el tiempo de espera de TCP inactivo del firewall. Esta configuración debe mantener la conexión en un estado establecido para que el firewall no la desconecte. - 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
- Reinicia Message Processor:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- 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
- Reinicia el router:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart