La necessità di gestire il firewall va oltre i soli host virtuali; sia VM che host fisico i firewall devono consentire al traffico di comunicare tra le porte richieste dai componenti e l'altro.
Diagrammi delle porte
Le seguenti immagini mostrano i requisiti delle porte sia per un singolo data center che per più configurazione del data center:
Data center singolo
L'immagine seguente mostra i requisiti delle porte per ogni componente Edge in un singolo dato configurazione di Cloud Center:
Note su questo diagramma:
- Le porte precedute dal prefisso "M" sono porte utilizzate per gestire il componente e devono essere aperte per l'accesso da parte del server di gestione.
- La UI Edge richiede l'accesso al router, tramite le 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 e una password. Consulta Come monitorare per saperne di più.
- Facoltativamente, puoi configurare l'accesso TLS/SSL per determinate connessioni, che possono utilizzare porte diverse. Fai riferimento a TLS/SSL per altro ancora.
- Puoi configurare il server di gestione e la UI perimetrale in modo che inviino le email tramite un server SMTP esterno o server web. In tal caso, è necessario assicurarsi che il server di gestione e l'interfaccia utente possano accedere ai sul server SMTP (non mostrata). Per SMTP non TLS, il numero di porta è in genere 25. Per SMTP abilitato per TLS, spesso è 465, ma verifica con il tuo provider SMTP.
Più data center
Se installi 12 nodi in cluster con due data center, accertati che i nodi nei due data center possono comunicare tramite le porte mostrate di seguito:
Tieni presente che:
- Tutti i server di gestione devono poter accedere a tutti i nodi Cassandra in tutti gli altri dati center.
- Tutti i processori di messaggi in tutti i data center devono essere tutti in grado di accedere l'uno all'altro tramite dalla porta 4528.
- Il server di gestione deve essere in grado di accedere a tutti i processori di messaggi tramite la porta 8082.
- Tutti i server di gestione e tutti i nodi Qpid devono essere in grado di accedere a Postgres in tutti gli altri data center on-premise.
- Per motivi di sicurezza, diverse da quelle mostrate sopra e da tutte le altre in base ai tuoi requisiti di rete, non devono esserci altre porte aperte tra i dati center.
Per impostazione predefinita, le comunicazioni tra i componenti non sono criptate. Puoi aggiungere la crittografia installare Apigee mTLS. Per ulteriori informazioni, vedi Introduzione ad Apigee mTLS.
Dettagli porta
La tabella seguente descrive le porte che devono essere aperte nei firewall, per 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 dai browser per autenticazione. |
Cassandra | 7000, 9042, 9160 | Porte di Apache Cassandra per la comunicazione tra i nodi Cassandra e per l'accesso gli altri componenti Edge. |
7199 | Porta JMX. Deve essere disponibile per l'accesso da parte del 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 relative all'impegno per la monetizzazione. | |
8080 | Porta per le chiamate API di gestione Edge. Questi componenti richiedono l'accesso alla porta 8080 Server di gestione: router, processore di messaggi, UI, Postgres, Apigee SSO (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 cache distribuita e chiamate di gestione tra processori di messaggi e per
la comunicazione tra il router e il 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 l'uno all'altro tramite la porta 4528 (indicata dal la freccia di loop nel diagramma in alto per la porta 4528 sul processore di messaggi). Se disponi più data center, la porta deve essere accessibile a tutti i processori di messaggi in tutti center. |
|
8082 |
La porta di gestione predefinita per il processore di messaggi e 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 utilizzato dal router per eseguire controlli di integrità sul processore di messaggi. La porta 8082 del processore di messaggi deve essere aperta per l'accesso da parte del router solo quando a configurare TLS/SSL tra il router e il processore di messaggi. Se non configuri TLS/SSL tra router e processore di messaggi, la configurazione predefinita, la porta 8082, essere aperta sul processore di messaggi per gestire il componente, ma il router non richiede per accedervi. |
|
8443 | Quando TLS è abilitato tra il router e il processore di messaggi, è necessario aprire la porta 8443 il 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, devi aprire porta 22 su ciascun nodo per l'accesso SSH. |
1103 | Porta JMX | |
4530 | Per chiamate di gestione e cache distribuite | |
5432 | Utilizzato per le comunicazioni da Qpid/Management Server a Postgres | |
8084 | Porta di gestione predefinita sul server Postgres; deve essere aperto sul componente per accedere dal server di gestione. | |
Qpid | 1102 | Porta JMX |
4529 | Per chiamate di gestione e cache distribuite | |
5672 |
Utilizzato anche per la comunicazione tra il server Qpid e i componenti del broker sulla stessa nodo. Nelle topologie con più nodi Qpid, il server deve poter connettersi a tutti sulla porta 5672. |
|
8083 | Porta di gestione predefinita sul server Qpid e deve essere aperta sul componente per l'accesso da parte del server di gestione. | |
8090 | Porta predefinita per il broker di Qpid; deve essere disponibile ad accedere ai console di gestione o API di gestione a scopo di monitoraggio. | |
Router | 4527 | Per chiamate di gestione e cache distribuite.
Un router deve aprire la porta 4527 come porta di gestione. Se disponi di più router, devono essere tutti in grado di accedere l'uno all'altro sulla porta 4527 (indicata dalla freccia diagramma riportato sopra per la porta 4527 del router). Anche se non è necessaria, puoi aprire la porta 4527 sul router per accedere da qualsiasi Processore di messaggi. In caso contrario, potresti visualizzare messaggi di errore nel processore di messaggi di log. |
8081 | Porta di gestione predefinita per il router e deve essere aperta sul componente per l'accesso dal server di gestione. | |
15.999 |
Porta del controllo di integrità. Un bilanciatore del carico utilizza questa porta per determinare se il router è disponibili. Per ottenere lo stato di un router, il bilanciatore del carico invia una richiesta alla porta 15999 sulla 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 da parte dell'utilità apigee-validate .
Questa utilità richiede l'accesso alla porta 59001 sul router. Consulta
Testa l'installazione per ulteriori informazioni sulla porta 59001. |
|
SmartDocs | 59002 | La porta sul router perimetrale a cui vengono inviate le richieste di pagina SmartDocs. |
ZooKeeper | 2181 | Utilizzato da altri componenti come server di gestione, router, processore di messaggi e così via |
2888, 3888 | Utilizzato internamente da ZooKeeper per il cluster ZooKeeper (noto come insieme ZooKeeper) comunicazione |
La tabella successiva mostra le stesse porte, elencate numericamente, con l'origine e la destinazione componenti:
Numero porta | Finalità | Componente di origine | Componente di destinazione |
---|---|---|---|
virtual_host_port | HTTP più eventuali altre porte utilizzate per il traffico delle chiamate API dell'host virtuale. Porte 80 e 443 sono i più comuni; 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 client Zookeeper | Server di gestione Router Processore di messaggi Server Qpid Server Postgres |
Zookeeper |
2888 e 3888 | Gestione degli internodi dello zoo | Zookeeper | Zookeeper |
4526 | Porta di gestione RPC | Server di gestione | Server di gestione |
4527 | Porta di gestione RPC per cache distribuita e chiamate di gestione e per le comunicazioni tra i router | Router server di gestione |
Router |
4528 | Per chiamate cache distribuite tra processori di messaggi e per le comunicazioni dal router | Server di gestione Router Processore di messaggi |
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 |
Utilizzato anche per la comunicazione tra il server Qpid e i componenti del broker sulla stessa nodo. Nelle topologie con più nodi Qpid, il server deve poter connettersi a tutti sulla porta 5672. |
Server Qpid | Server Qpid |
7000 | Comunicazioni tra nodi Cassandra | Cassandra | Altro nodo Cassandra |
7199 | Gestione JMX. Deve essere disponibile per l'accesso sul nodo Cassandra da parte del management Server. | 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, l'esatta porta utilizzata dipende dalla configurazione ma deve essere aperto sul componente per l'accesso 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 è abilitato | 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 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 del controllo di integrità. Un bilanciatore del carico utilizza questa porta per determinare se il router è disponibili. | 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 SmartDocs | SmartDocs | Router |
Un processore di messaggi mantiene un pool di connessioni dedicato aperto per Cassandra, che viene configurato senza timeout. Quando un firewall si trova tra un processore di messaggi e un server Cassandra, il firewall può causare il timeout della connessione. Tuttavia, il processore di messaggi non è progettato ristabilire le connessioni a Cassandra.
Per evitare questa situazione, Apigee consiglia di utilizzare il server Cassandra, il processore di messaggi e I router si trovano 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, il nostro consiglio è di fare quanto segue:
- Configura
net.ipv4.tcp_keepalive_time = 1800
nelle impostazioni sysctl sul sistema operativo Linux, dove 1800 deve essere inferiore al timeout della connessione tcp di inattività del firewall. Questa impostazione deve mantenere connessione in uno stato stabilito in modo che il firewall non scolleghi la connessione. - 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
- Riavvia il processore di messaggi:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- 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
- Riavvia il router:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart