Edge para nuvem privada v4.19.01
A necessidade de gerenciar o firewall vai além dos hosts virtuais. Os firewalls de VM e de host físico precisam permitir o tráfego para as portas necessárias pelos componentes para se comunicarem entre si.
Diagramas de portas
As imagens a seguir mostram os requisitos de porta para um único data center e para vários data centers:
Data center único
A imagem a seguir mostra os requisitos de porta para cada componente do Edge em uma única configuração de data center:
Observações sobre este diagrama:
- As portas com prefixo "M" são usadas para gerenciar o componente e precisam estar abertas no componente para acesso pelo servidor de gerenciamento.
- A interface do Edge requer acesso ao roteador, nas portas expostas por proxies de API, para oferecer suporte ao botão Send na ferramenta de rastreamento.
- O acesso às portas JMX pode ser configurado para exigir um nome de usuário/senha. Consulte Como monitorar para mais informações.
- Você pode configurar o acesso TLS/SSL para determinadas conexões, que podem usar portas diferentes. Consulte TLS/SSL para mais informações.
- É possível configurar o servidor de gerenciamento e a interface de borda para enviar e-mails por um servidor SMTP externo. Se você fizer isso, verifique se o servidor de gerenciamento e a interface podem acessar a porta necessária no servidor SMTP (não mostrada). Para SMTP sem TLS, o número da porta geralmente é 25. Para SMTP com TLS ativado, geralmente é 465, mas verifique com seu provedor de SMTP.
Vários data centers
Se você instalar a configuração em cluster de 12 nós com dois data centers, verifique se os nós nos dois data centers podem se comunicar pelas portas mostradas abaixo:
Observe que:
- Todos os servidores de gerenciamento precisam acessar todos os nós do Cassandra em todos os outros data centers.
- Todos os processadores de mensagens em todos os data centers precisam ser capazes de acessar uns aos outros pela porta 4528.
- O servidor de gerenciamento precisa acessar todos os processadores de mensagens pela porta 8082.
- Todos os servidores de gerenciamento e todos os nós Qpid precisam acessar o Postgres em todos os outros data centers.
- Por motivos de segurança, além das portas mostradas acima e de qualquer outra exigida pelos requisitos de rede, nenhuma outra porta pode estar aberta entre os data centers.
Por padrão, as comunicações entre os componentes não são criptografadas. É possível adicionar criptografia instalando o mTLS do Apigee. Para mais informações, consulte Introdução à Apigee mTLS.
Detalhes da porta
A tabela abaixo descreve as portas que precisam ser abertas em firewalls por componente de borda:
Componente | Porta | Descrição |
---|---|---|
Portas HTTP padrão | 80, 443 | HTTP mais quaisquer outras portas usadas para hosts virtuais |
Cassandra | 7.000, 9042 e 9.160 | Portas do Apache Cassandra para comunicação entre nós do Cassandra e acesso por outros componentes do Edge. |
7199 | porta JMX. Precisa estar aberto para acesso pelo servidor de gerenciamento. | |
LDAP | 10389 | OpenLDAP |
Servidor de gerenciamento | 1099 | Porta JMX |
4.526 | Porta para chamadas de cache e gerenciamento distribuídas. Essa porta é configurável. | |
5.636 | Porta para notificações de confirmação de monetização. | |
8080 | Porta para chamadas da API Edge Management. Esses componentes exigem acesso à porta 8080 no servidor de gerenciamento: Router, processador de mensagens, interface, Postgres e Qpid. | |
IU de gerenciamento | 9000 | Porta de acesso do navegador à interface de gerenciamento |
processador de mensagens | 1101 | Porta JMX |
4528 | Para chamadas de cache e gerenciamento distribuídas entre processadores de mensagens e para
comunicação do roteador e do servidor de gerenciamento.
Um processador de mensagens precisa abrir a porta 4528 como a porta de gerenciamento. Se você tiver vários processadores de mensagens, todos eles precisarão ser acessados pela porta 4528 (indicada pela seta de loop no diagrama acima para a porta 4528 no processador de mensagens). Se você tiver vários data centers, a porta precisa ser acessível de todos os processadores de mensagens em todos os data centers. |
|
8082 |
Porta de gerenciamento padrão para o processador de mensagens e precisa estar aberta no componente para acesso pelo servidor de gerenciamento. Se você configurar o TLS/SSL entre o roteador e o processador de mensagens, ele será usado pelo roteador para fazer verificações de integridade no processador de mensagens. A porta 8082 no processador de mensagens só precisa estar aberta para acesso pelo roteador quando você configura o TLS/SSL entre o roteador e o processador de mensagens. Se você não configurar o TLS/SSL entre o roteador e o processador de mensagens, a configuração padrão, a porta 8082, ainda precisará estar aberta no processador de mensagens para gerenciar o componente, mas o roteador não precisa ter acesso a ele. |
|
8.443 | Quando o TLS estiver ativado entre o roteador e o processador de mensagens, será necessário abrir a porta 8443 no processador de mensagens para que o roteador tenha acesso. | |
8.998 | Porta do processador de mensagens para comunicações do roteador | |
Postgres | 22 | Ao configurar dois nós do Postgres para usar a replicação mestre-em espera, é necessário abrir a porta 22 em cada nó para acesso SSH. |
1.103 | Porta JMX | |
4530 | Para chamadas de gerenciamento e cache distribuído | |
5.432 | Usado para a comunicação do Qpid/Management Server com o Postgres | |
8084 | Porta de gerenciamento padrão no servidor Postgres. Precisa estar aberta no componente para acesso pelo servidor de gerenciamento. | |
Qpid | 1.102 | Porta JMX |
4529 | Para chamadas de gerenciamento e cache distribuído | |
5.672 |
|
|
8.083 | Porta de gerenciamento padrão no servidor Qpid e precisa estar aberta no componente para acesso pelo servidor de gerenciamento. | |
Roteador | 4527 | Para chamadas de cache e gerenciamento distribuídas.
Um roteador precisa abrir a porta 4527 como a porta de gerenciamento. Se você tiver vários roteadores, eles precisam ser capazes de acessar uns aos outros pela porta 4527 (indicada pela seta de loop no diagrama acima para a porta 4527 no roteador). Embora não seja obrigatório, você pode abrir a porta 4527 no roteador para acesso por qualquer processador de mensagens. Caso contrário, talvez você veja mensagens de erro nos arquivos de registro do processador de mensagens. |
8081 | Porta de gerenciamento padrão do roteador e precisa estar aberta no componente para acesso pelo servidor de gerenciamento. | |
15.999 |
Porta de verificação de integridade. Um balanceador de carga usa essa porta para determinar se o roteador está disponível. Para conferir o status de um roteador, o balanceador de carga faz uma solicitação para a porta 15999 no roteador: curl -v http://routerIP:15999/v1/servers/self/reachable Se o roteador estiver acessível, a solicitação retornará HTTP 200. |
|
59001 | Porta usada para testar a instalação do Edge pelo utilitário apigee-validate .
Esse utilitário requer acesso à porta 59001 no roteador. Consulte
Testar a instalação para saber mais sobre a porta 59001. |
|
SmartDocs | 59002 | A porta no roteador Edge para onde as solicitações de página do SmartDocs são enviadas. |
ZooKeeper | 2181 | Usado por outros componentes, como o servidor de gerenciamento, o roteador, o processador de mensagens etc. |
2.888. 3.888 | Usado internamente pelo ZooKeeper para a comunicação do cluster do ZooKeeper (conhecido como conjunto do ZooKeeper) |
A tabela a seguir mostra as mesmas portas, listadas numericamente, com os componentes de origem e destino:
Número da porta | Finalidade | Componente de origem | Componente de destino |
---|---|---|---|
virtual_host_port | HTTP e todas as outras portas usadas para o tráfego de chamadas de API de host virtual. As portas 80 e 443 são as mais usadas. O roteador de mensagens pode encerrar conexões TLS/SSL. | Cliente externo (ou balanceador de carga) | Ouvinte no Message Router |
1099 a 1103 | Gerenciamento do JMX | Cliente JMX | Servidor de gerenciamento (1099) Processador de mensagens (1101) Servidor Qpid (1102) Servidor Postgres (1103) |
2181 | Comunicação do cliente Zookeeper | Servidor de gerenciamento Roteador Processador de mensagens Servidor Qpid Servidor Postgres |
Zookeeper |
2888 e 3888 | Gerenciamento de internós do Zookeeper | Zookeeper | Zookeeper |
4526 | Porta de gerenciamento de RPC | Servidor de gerenciamento | Servidor de gerenciamento |
4527 | Porta de gerenciamento de RPC para cache distribuído e chamadas de gerenciamento e para comunicações entre roteadores | Servidor de gerenciamento Roteador |
Roteador |
4528 | Para chamadas de cache distribuídas entre processadores de mensagens e para a comunicação do roteador | Servidor de gerenciamento Roteador Processador de mensagens |
processador de mensagens |
4529 | Porta de gerenciamento de RPC para cache distribuído e chamadas de gerenciamento | Servidor de gerenciamento | Servidor Qpid |
4530 | Porta de gerenciamento de RPC para chamadas de cache e gerenciamento distribuídos | Servidor de gerenciamento | Servidor Postgres |
5432 | Cliente Postgres | Servidor Qpid | Postgres |
5636 | Monetização | Componente JMS externo | Servidor de gerenciamento |
5672 |
|
Servidor Qpid | Servidor Qpid |
7.000 | Comunicações entre nós do Cassandra | Cassandra | Outro nó do Cassandra |
7199 | Gerenciamento do JMX. Precisa estar aberto para acesso no nó do Cassandra pelo servidor de gerenciamento. | Cliente JMX | Cassandra |
8080 | Porta da API Management | Clientes da API Management | Servidor de gerenciamento |
8081 a 8084 |
Portas de API de componentes, usadas para emitir solicitações de API diretamente para componentes individuais. Cada componente abre uma porta diferente. A porta exata usada depende da configuração, mas precisa estar aberta no componente para ser acessada pelo servidor de gerenciamento. |
Clientes da API Management | Roteador (8081) Processador de mensagens (8082) Servidor Qpid (8083) Servidor Postgres (8084) |
8443 | Comunicação entre o roteador e o processador de mensagens quando o TLS está ativado | Roteador | processador de mensagens |
8998 | Comunicação entre o roteador e o processador de mensagens | Roteador | processador de mensagens |
9000 | Porta da interface do Gerenciamento de borda padrão | Navegador | Servidor da interface de gerenciamento |
9042 | Transporte nativo CQL | Roteador Processador de mensagens Servidor de gerenciamento |
Cassandra |
9160 | Cliente do Cassandra Thrift | Roteador Processador de mensagens Servidor de gerenciamento |
Cassandra |
10389 | Porta LDAP | Servidor de gerenciamento | OpenLDAP |
15999 | Porta de verificação de integridade. Um balanceador de carga usa essa porta para determinar se o roteador está disponível. | Balanceador de carga | Roteador |
59001 | Porta usada pelo utilitário apigee-validate para testar a instalação do Edge |
apigee-validate | Roteador |
59002 | A porta do roteador para onde as solicitações de página do SmartDocs são enviadas | SmartDocs | Roteador |
Um processador de mensagens mantém um pool de conexões dedicado aberto para o Cassandra, que é configurado para nunca expirar. Quando um firewall está entre um processador de mensagens e o servidor Cassandra, ele pode esgotar o tempo limite da conexão. No entanto, o processador de mensagens não foi projetado para restabelecer conexões com o Cassandra.
Para evitar essa situação, a Apigee recomenda que o servidor Cassandra, o Processador de mensagens e os Roteadores estejam na mesma sub-rede para que um firewall não esteja envolvido na implantação desses componentes.
Se houver um firewall entre o roteador e os processadores de mensagens e tiver um tempo limite de TCP inativo definido, nossas recomendações serão as seguintes:
- Defina
net.ipv4.tcp_keepalive_time = 1800
nas configurações de sysctl no SO Linux, em que 1800 precisa ser menor que o tempo limite de TCP inativo do firewall. Essa configuração precisa manter a conexão em um estado estabelecido para que o firewall não a desconecte. - Em todos os processadores de mensagens, edite
/opt/apigee/customer/application/message-processor.properties
para adicionar a propriedade a seguir. Se o arquivo não existir, crie-o.conf_system_cassandra.maxconnecttimeinmillis=-1
- Reinicie o processador de mensagens:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- Em todos os roteadores, edite
/opt/apigee/customer/application/router.properties
para adicionar a propriedade a seguir. Se o arquivo não existir, crie-o.conf_system_cassandra.maxconnecttimeinmillis=-1
- Reinicie o roteador:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart