Requisiti delle porte

La necessità di gestire il firewall va oltre gli host virtuali: sia i firewall VM che quelli dell'host fisico devono consentire il traffico delle porte richieste dai componenti per comunicare tra loro.

Diagrammi delle porte

Le seguenti immagini mostrano i requisiti delle porte sia per la configurazione di un singolo data center sia per quella di più data center:

Un singolo data center

L'immagine seguente mostra i requisiti delle porte per ogni componente Edge in un'unica configurazione di data center:

Requisiti delle porte per ogni componente Edge in un'unica configurazione di data center

Note su questo diagramma:

  • Le porte con prefisso "M" sono quelle utilizzate per gestire il componente e devono essere aperte sul componente per consentire al server di gestione di accedervi.
  • La UI Edge richiede l'accesso al router, sulle porte esposte dai proxy API, per supportare il pulsante Invia nello strumento di traccia.
  • L'accesso alle porte JMX può essere configurato in modo da richiedere un nome utente o una password. Per ulteriori informazioni, consulta Come eseguire il monitoraggio.
  • Facoltativamente, puoi configurare l'accesso TLS/SSL per determinate connessioni, che possono utilizzare porte diverse. Per ulteriori informazioni, consulta TLS/SSL.
  • Puoi configurare il server di gestione e la UI perimetrale in modo da inviare email tramite un server SMTP esterno. In questo caso, devi assicurarti che il server di gestione e l'interfaccia utente possano accedere alla porta necessaria sul server SMTP (non mostrata). Per SMTP non TLS, il numero di porta è generalmente 25. Per SMTP abilitato per TLS, spesso è 465, ma verifica con il tuo provider SMTP.

Più data center

Se installi la configurazione in cluster a 12 nodi con due data center, assicurati che i nodi nei due data center possano comunicare tramite le porte mostrate di seguito:

Requisiti delle porte per ciascun nodo in una configurazione in cluster a 12 nodi

Tieni presente che:

  • Tutti i server di gestione devono essere in grado di accedere a tutti i nodi Cassandra in tutti gli altri data center.
  • Tutti i processori di messaggi di tutti i data center devono essere in grado di accedere l'uno all'altro sulla porta 4528.
  • Il server di gestione deve essere in grado di accedere a tutti i processori di messaggi sulla porta 8082.
  • Tutti i server di gestione e tutti i nodi Qpid devono poter accedere a Postgres in tutti gli altri data center.
  • Per motivi di sicurezza, ad eccezione delle porte mostrate sopra e di qualsiasi altra richiesta dai tuoi requisiti di rete, tra i data center non devono essere aperte altre porte.

Per impostazione predefinita, le comunicazioni tra i componenti non sono criptate. Puoi aggiungere la crittografia installando Apigee mTLS. Per ulteriori informazioni, consulta Introduzione ad Apigee mTLS.

Dettagli porta

La tabella seguente descrive le porte che devono essere aperte nei firewall dal componente Edge:

Componente Porta Descrizione
Porte HTTP standard 80.443 HTTP più eventuali altre porte utilizzate per gli host virtuali
SSO Apigee 9099 Connessioni da IdP esterni, dal server di gestione e da browser per l'autenticazione.
Cassandra 7000, 9042, 9160 Porte di Apache Cassandra per la comunicazione tra i nodi Cassandra e per l'accesso da parte di altri componenti Edge.
7.199 Porta JMX. Deve essere aperta per l'accesso da parte del server di gestione.
LDAP 10.389 OpenLDAP
Server di gestione 1.099 Porta JMX
4.526 Porta per la cache distribuita e le chiamate di gestione. Questa porta è configurabile.
5636 Trasferimento delle notifiche sull'impegno per la monetizzazione.
8080 Porta per le chiamate API di gestione perimetrale. Questi componenti richiedono l'accesso alla porta 8080 sul server di gestione: router, processore di messaggi, UI, Postgres, SSO Apigee (se abilitato) e Qpid.
UI di gestione 9000 Porta per l'accesso del browser all'UI di gestione
processore di messaggi 1.101 Porta JMX
4.528 Per la cache distribuita e le chiamate di gestione tra i processori di messaggi e per la comunicazione dal router e dal server di gestione.

Un processore di messaggi deve aprire la porta 4528 come porta di gestione. Se disponi di più processori di messaggi, devono poter accedere reciprocamente sulla porta 4528 (indicata dalla freccia a loop nel diagramma in alto per la porta 4528 sul processore di messaggi). Se hai più data center, la porta deve essere accessibile a tutti i processori di messaggi in tutti i data center.

8082

Porta di gestione predefinita per il processore di messaggi. Deve essere aperta sul componente per l'accesso da parte del server di gestione.

Se configuri TLS/SSL tra router e processore di messaggi, utilizzato dal router per eseguire controlli di integrità sul processore di messaggi.

La porta 8082 sul processore di messaggi deve essere aperta per l'accesso da parte del router solo quando configuri TLS/SSL tra il router e il processore di messaggi. Se non configuri TLS/SSL tra il router e il processore di messaggi, la configurazione predefinita, la porta 8082, deve comunque essere aperta sul processore di messaggi per poter gestire il componente, ma il router non richiede l'accesso.

8443 Quando TLS è abilitato tra il router e il processore di messaggi, devi aprire la porta 8443 sul processore di messaggi per consentire l'accesso da parte del router.
8.998 Porta del processore di messaggi per le comunicazioni dal router
Postgres 22 Se configuri due nodi Postgres per l'utilizzo della replica in standby master, devi aprire la porta 22 su ciascun nodo per ottenere l'accesso SSH.
1.103 Porta JMX
4.530 Per chiamate di gestione e cache distribuite
5.432 Utilizzato per la comunicazione da Qpid/Management Server a Postgres
8084 Porta di gestione predefinita sul server Postgres; deve essere aperta sul componente per consentire l'accesso da parte del server di gestione.
Qpid 1.102 Porta JMX
4.529 Per chiamate di gestione e cache distribuite
5672
  • Singolo data center: utilizzato per inviare analisi dal router e dal processore di messaggi a Qpid.
  • Più data center: utilizzato per le comunicazioni tra nodi Qpid in diversi data center.

Utilizzato anche per la comunicazione tra i componenti del server Qpid e del broker sullo stesso nodo. In topologie con più nodi Qpid, il server deve essere in grado di connettersi a tutti i broker sulla porta 5672.

8083 Porta di gestione predefinita sul server Qpid e deve essere aperta sul componente per poter essere accessibile da parte del server di gestione.
8090 Porta predefinita per il broker di Qpid; deve essere aperta per accedere alla console di gestione del broker o alle API di gestione del broker a fini di monitoraggio.
Router 4.527 Per chiamate di gestione e cache distribuite.

Un router deve aprire la porta 4527 come porta di gestione. Se disponi di più router, devono poter accedere reciprocamente sulla porta 4527 (indicata dalla freccia a loop nel diagramma in alto per la porta 4527 del router).

Anche se non è necessaria, puoi aprire la porta 4527 del router per l'accesso da parte di qualsiasi processore di messaggi. In caso contrario, potresti visualizzare messaggi di errore nei file di log del processore di messaggi.

8081 Porta di gestione predefinita per il router e deve essere aperta sul componente per poter essere accessibile da parte del server di gestione.
15.999

Porta per il controllo di integrità. Un bilanciatore del carico utilizza questa porta per determinare se il router è disponibile.

Per ottenere lo stato di un router, il bilanciatore del carico effettua una richiesta alla porta 15999 sul router:

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

Se il router è raggiungibile, la richiesta restituisce HTTP 200.

59.001 Porta utilizzata per testare l'installazione Edge dall'utilità apigee-validate. Questa utilità richiede l'accesso alla porta 59001 del router. Per saperne di più sulla porta 59001, consulta Testare l'installazione.
SmartDocs 59002 La porta sul router Edge dove vengono inviate le richieste di pagina SmartDocs.
ZooKeeper 2.181 Utilizzato da altri componenti come server di gestione, router, processore di messaggi e così via
2888, 3888 Utilizzato internamente da ZooKeeper per la comunicazione sul cluster ZooKeeper (noto come insieme ZooKeeper)

La tabella successiva mostra le stesse porte, elencate numericamente, con i componenti di origine e di destinazione:

Numero porta Finalità Componente di origine Componente di destinazione
virtual_host_port HTTP e qualsiasi altra porta utilizzata per il traffico delle chiamate API dell'host virtuale. Le porte 80 e 443 sono quelle più utilizzate. Il router di messaggi può terminare le connessioni TLS/SSL. Client esterno (o bilanciatore del carico) Listener sul router dei messaggi
Da 1099 a 1103 Gestione JMX Client JMX Server di gestione (1099)
Processore di messaggi (1101)
Server Qpid (1102)
Server Postgres (1103)
2181 Comunicazione con il cliente Zookeeper Server di gestione
Router
Processore di messaggi
Server Qpid
Server Postgres
Zookeeper
2888 e 3888 Gestione degli interni di Zookeeper Zookeeper Zookeeper
4526 Porta di gestione RPC Server di gestione Server di gestione
4527 Porta di gestione RPC per le chiamate di gestione e cache distribuite e per le comunicazioni tra router Router
Server di gestione
Router
4528 Per le chiamate alla cache distribuita tra i processori di messaggi e per la comunicazione dal router Processore di messaggi
Router
del server di gestione
processore di messaggi
4529 Porta di gestione RPC per cache distribuita e chiamate di gestione Server di gestione Server Qpid
4530 Porta di gestione RPC per cache distribuita e chiamate di gestione Server di gestione Server Postgres
5432 Client Postgres Server Qpid Postgres
5636 Monetizzazione Componente JMS esterno Server di gestione
5672
  • Singolo data center: utilizzato per inviare analisi dal router e dal processore di messaggi a Qpid.
  • Più data center: utilizzato per le comunicazioni tra nodi Qpid in diversi data center.

Utilizzato anche per la comunicazione tra i componenti del server Qpid e del broker sullo stesso nodo. In topologie con più nodi Qpid, il server deve essere in grado di connettersi a tutti i broker sulla porta 5672.

Server Qpid Server Qpid
7000 Comunicazioni tra nodi Cassandra Cassandra Altro nodo Cassandra
7199 Gestione JMX. Deve essere aperto per l'accesso al nodo Cassandra da parte del server di gestione. Client JMX Cassandra
8080 Porta API di gestione Client API di gestione Server di gestione
Da 8081 all'8084

Porte API dei componenti, utilizzate per inviare richieste API direttamente ai singoli componenti. Ogni componente apre una porta diversa; la porta esatta utilizzata dipende dalla configurazione, ma deve essere aperta sul componente per poter essere accessibile da parte del server di gestione

Client API di gestione Router (8081)
Processore di messaggi (8082)
Qpid Server (8083)
Server Postgres (8084)
8090 Porta di gestione predefinita per il broker di Qpid per gestire e monitorare le code. Browser o client API Broker Qpid (apigee-qpidd)
8443 Comunicazione tra router e processore di messaggi quando TLS è attivato Router processore di messaggi
8998 Comunicazione tra router e processore di messaggi Router processore di messaggi
9000 Porta UI predefinita di gestione perimetrale Browser Server UI di gestione
9042 Trasporto nativo CQL Router
Processore di messaggi
Server di gestione
Cassandra
9099 Autenticazione IdP esterno IdP, browser e server di gestione SSO Apigee
9160 Cliente di articoli usati Cassandra Router
Processore di messaggi
Server di gestione
Cassandra
10389 Porta LDAP Server di gestione OpenLDAP
15999 Porta per il controllo di integrità. Un bilanciatore del carico utilizza questa porta per determinare se il router è disponibile. Bilanciatore del carico Router
59001 Porta utilizzata dall'utilità apigee-validate per testare l'installazione Edge apigee-validate Router
59002 La porta del router a cui vengono inviate le richieste di pagina SmartDocs SmartDocs Router

Un processore di messaggi mantiene un pool di connessioni dedicato aperto a Cassandra, che è configurato per non scadere mai. Quando un firewall si trova tra un processore di messaggi e il server Cassandra, il firewall può impostare il timeout della connessione. Tuttavia, il processore di messaggi non è progettato per ristabilire le connessioni a Cassandra.

Per evitare questa situazione, Apigee consiglia che il server Cassandra, il processore di messaggi e i router si trovino nella stessa subnet, in modo che non sia coinvolto un firewall nel deployment di questi componenti.

Se un firewall si trova tra il router e i processori di messaggi e ha un timeout TCP inattivo, consigliamo di procedere come segue:

  1. Imposta net.ipv4.tcp_keepalive_time = 1800 nelle impostazioni sysctl sul sistema operativo Linux, dove 1800 deve essere inferiore al timeout TCP inattivo per il firewall. Questa impostazione deve mantenere la connessione in uno stato stabilito in modo che il firewall non disconnetti la connessione.
  2. In tutti i processori di messaggi, modifica /opt/apigee/customer/application/message-processor.properties per aggiungere la seguente proprietà. Se il file non esiste, crealo.
    conf_system_cassandra.maxconnecttimeinmillis=-1
  3. Riavvia il processore di messaggi:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
  4. Su tutti i router, modifica /opt/apigee/customer/application/router.properties per aggiungere la seguente proprietà. Se il file non esiste, crealo.
    conf_system_cassandra.maxconnecttimeinmillis=-1
  5. Riavvia il router:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart