Requisiti delle porte

La necessità di gestire il firewall va oltre gli host virtuali; sia i firewall host delle VM che quelli fisici 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:

Singolo data center

L'immagine seguente mostra i requisiti delle porte per ogni componente Edge in una singola configurazione del 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 l'accesso al server di gestione.
  • 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 la sezione Come eseguire il monitoraggio.
  • Facoltativamente, puoi configurare l'accesso TLS/SSL per determinate connessioni, che possono utilizzare porte diverse. Per saperne di più, consulta TLS/SSL.
  • Puoi configurare il server di gestione e la UI Edge per l'invio di email tramite un server SMTP esterno. In questo caso, devi assicurarti che il server di gestione e la UI 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 di porta 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 i nodi Qpid devono essere in grado di 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, non devono essere aperte altre porte tra i data center.

Per impostazione predefinita, le comunicazioni tra i componenti non sono criptate. Puoi aggiungere la crittografia installando Apigee mTLS. Per saperne di più, vedi 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ù 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 nodi Cassandra e per l'accesso da parte di altri componenti Edge.
7199 Porta JMX. Deve essere accessibile al server di gestione.
LDAP 10.389 OpenLDAP
Server di gestione 1099 Porta JMX
4526 Porta per le chiamate di gestione e cache distribuite. Questa porta è configurabile.
5636 Porta per le notifiche di commit di 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'interfaccia utente di gestione
processore di messaggi 1101 Porta JMX
4528 Per la cache distribuita e le chiamate di gestione tra 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, tutti devono poter accedere l'uno all'altro sulla porta 4528 (come indicato dalla freccia a loop nel diagramma sopra per la porta 4528 del processore di messaggi). Se disponi di più data center, la porta deve essere accessibile a tutti i responsabili del trattamento dei messaggi in tutti i data center.

8082

La 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 il router e il processore di messaggi, utilizzati 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 a quest'ultimo.

8443 Quando TLS è abilitato tra il router e il processore di messaggi, devi aprire la porta 8443 sul processore di messaggi per l'accesso da parte del router.
8998 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 l'accesso SSH.
1103 Porta JMX
4530 Per chiamate di gestione e cache distribuite
5432 Utilizzato per la comunicazione da Qpid/Management Server a Postgres
8084 Porta di gestione predefinita sul server Postgres; deve essere aperta sul componente per l'accesso da parte del server di gestione.
Qpid 1102 Porta JMX
4529 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: per le comunicazioni tra nodi Qpid in diversi data center.

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

8083 La porta di gestione predefinita sul server Qpid deve essere aperta sul componente per poter essere accessibile da parte del server di gestione.
Router 4527 Per chiamate di gestione e cache distribuite.

Un router deve aprire la porta di gestione 4527. Se disponi di più router, tutti devono poter accedere l'uno all'altro sulla porta 4527 (come indicato dalla freccia a loop nel diagramma sopra per la porta 4527 del router).

Anche se non è necessaria, puoi aprire la porta 4527 sul 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 l'accesso 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 invia 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. Consulta Testare l'installazione per ulteriori informazioni sulla porta 59001.
SmartDocs 59002 La porta sul router perimetrale a cui vengono inviate le richieste di pagine SmartDoc.
ZooKeeper 2181 Utilizzato da altri componenti come server di gestione, router, processore di messaggi e così via
2888, 3888 Utilizzato internamente da ZooKeeper per la comunicazione del cluster ZooKeeper (noto come ensemble 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 Destinazione
virtual_host_port HTTP più qualsiasi altra porta utilizzata per il traffico delle chiamate API dell'host virtuale. Le porte 80 e 443 sono quelle più utilizzate; il router dei 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 di Zookeeper Server di gestione
Router
Processore di messaggi
Server Qpid
Server Postgres
Zookeeper
2888 e 3888 Gestione degli internodi 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 Server di gestione
Router
Processore di messaggi
processore di messaggi
4529 Porta di gestione RPC per chiamate di gestione e cache distribuite Server di gestione Server Qpid
4530 Porta di gestione RPC per chiamate di gestione e cache distribuite 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: per le comunicazioni tra nodi Qpid in diversi data center.

Utilizzato anche per la comunicazione tra il server Qpid e i componenti del broker sullo stesso nodo. Nelle 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 aperta 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 a 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 affinché possa essere accessibile da parte del server di gestione

Client API di gestione Router (8081)
Processore di messaggi (8082)
Server Qpid (8083)
Server Postgres (8084)
8443 Comunicazione tra router e processore di messaggi quando è abilitato TLS Router processore di messaggi
8998 Comunicazione tra router e processore di messaggi Router processore di messaggi
9000 Porta UI di gestione perimetrale predefinita Browser Server UI di gestione
9042 Trasporto nativo CQL Router
Server di gestione
del processore di messaggi
Cassandra
9099 Autenticazione IdP esterna IdP, browser e server di gestione SSO Apigee
9160 Cliente di seconda mano Cassandra Router
Server di gestione
del processore di messaggi
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 di Edge apigee-validate Router
59002 La porta del router a cui vengono inviate le richieste di pagina SmartDocumenti SmartDocs Router

Un processore di messaggi mantiene un pool di connessioni dedicato aperto per Cassandra, che è configurato per non fare mai timeout. Quando un firewall si trova tra un processore di messaggi e il server Cassandra, il firewall può causare 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, il processore di messaggi e i router Cassandra 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 per inattività del firewall. Questa impostazione deve mantenere la connessione in uno stato stabilito in modo che il firewall non lo scolleghi.
  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