Konieczność zarządzania zaporą sieciową wykracza poza hosty wirtualne. Zarówno zapory sieciowe hostów wirtualnych, jak i zapory sieciowe hostów fizycznych muszą zezwalać na ruch na portach wymaganych przez komponenty do komunikacji ze sobą.
Diagramy portów
Na tych obrazach widać wymagania dotyczące portów w przypadku konfiguracji z jednym i wieloma centrami danych:
Jedno centrum danych
Ilustracja poniżej przedstawia wymagania dotyczące portów w przypadku każdego komponentu Edge w ramach jednej konfiguracji centrum danych:
Uwagi do tego diagramu:
- Porty z preiksem „M” to porty używane do zarządzania komponentem. Muszą być otwarte w komponencie, aby serwer zarządzania miał do nich dostęp.
- Aby obsługiwać przycisk Wyślij w narzędziu do śledzenia, interfejs Edge musi mieć dostęp do routera na portach udostępnionych przez serwery proxy interfejsu API.
- Dostęp do portów JMX można skonfigurować tak, aby wymagał podania nazwy użytkownika i hasła. Więcej informacji znajdziesz w artykule Jak monitorować.
- Opcjonalnie możesz skonfigurować dostęp TLS/SSL dla określonych połączeń, które mogą używać różnych portów. Więcej informacji znajdziesz w artykule TLS/SSL.
- Możesz skonfigurować serwer zarządzania i interfejs użytkownika na serwerze Edge tak, aby wysyłały e-maile przez zewnętrzny serwer SMTP. W takim przypadku musisz się upewnić, że serwer zarządzający i interfejs użytkownika mają dostęp do odpowiedniego portu na serwerze SMTP (nie pokazano). W przypadku SMTP bez protokołu TLS numer portu to zwykle 25. W przypadku SMTP z włączonym protokołem TLS często jest to 465, ale sprawdź u dostawcy SMTP.
Wiele centrów danych
Jeśli zainstalujesz 12-węzłową konfigurację klastra z 2 centrami danych, upewnij się, że węzły w obu tych centrach mogą się komunikować przez porty wymienione poniżej:
Uwaga:
- Wszystkie serwery zarządzania muszą mieć dostęp do wszystkich węzłów Cassandra we wszystkich innych centrach danych.
- Wszystkie procesory wiadomości we wszystkich centrach danych muszą mieć dostęp do siebie nawzajem przez port 4528.
- Serwer zarządzający musi mieć dostęp do wszystkich procesorów wiadomości przez port 8082.
- Wszystkie serwery zarządzające i wszystkie węzły Qpid muszą mieć dostęp do Postgresa we wszystkich innych centrach danych.
- Ze względów bezpieczeństwa oprócz wymienionych powyżej portów i innych wymaganych przez Twoją sieć portów nie powinno być żadnych innych otwartych portów między centrami danych.
Domyślnie komunikacja między komponentami nie jest szyfrowana. Aby dodać szyfrowanie, zainstaluj mTLS Apigee. Więcej informacji znajdziesz w artykule Wprowadzenie do mTLS w Apigee.
Szczegóły portu
W tabeli poniżej znajdziesz porty, które należy otworzyć w zaporach sieciowych, według komponentu Edge:
Komponent | Port | Opis |
---|---|---|
Standardowe porty HTTP | 80, 443 | HTTP oraz wszystkie porty używane dla hostów wirtualnych |
Logowanie jednokrotne Apigee | 9099 | połączenia z zewnętrznymi dostawcami usług uwierzytelniania, serwerem zarządzania i przeglądarkami na potrzeby uwierzytelniania; |
Cassandra | 7000, 9042 | Porty Apache Cassandra do komunikacji między węzłami Cassandra i dostępu dla innych komponentów Edge. |
7199 | Port JMX. Musi być dostępny dla serwera zarządzania. | |
LDAP | 10389 | OpenLDAP |
Serwer zarządzania | 1099 | Port JMX |
4526 | Port dla rozproszonej pamięci podręcznej i zarządzania. To gniazdo można konfigurować. | |
5636 | Portowanie powiadomień o zmianach dotyczących monetyzacji. | |
8080 | Port do wywołań interfejsu API do zarządzania Edge. Te komponenty wymagają dostępu do portu 8080 na serwerze zarządzania: Router, Message Processor, UI, Postgres, Apigee SSO (jeśli jest włączone) i Qpid. | |
Interfejs zarządzania | 9000 | Port dla przeglądarki umożliwiający dostęp do interfejsu zarządzania |
procesor komunikatów | 1101 | Port JMX |
4528 | Do rozproszonej pamięci podręcznej i zapytań o zarządzanie między procesorami wiadomości oraz do komunikacji z Routerem i serwerem zarządzania.
Serwer przetwarzania wiadomości musi otworzyć port 4528 jako port zarządzania. Jeśli masz kilka procesorów wiadomości, wszystkie muszą mieć dostęp do siebie przez port 4528 (wskazany na diagramie powyżej strzałką pętli dla portu 4528 na procesorze wiadomości). Jeśli masz kilka centrów danych, port musi być dostępny ze wszystkich procesorów wiadomości we wszystkich centrach danych. |
|
8082 |
Domyślny port zarządzania dla procesora wiadomości. Musi być otwarty w komponencie, aby serwer zarządzania miał do niego dostęp. Jeśli skonfigurujesz TLS/SSL między Routerem a przetwarzaczem wiadomości, Router będzie używać tego protokołu do sprawdzania stanu przetwarzacza wiadomości. Port 8082 na procesorze wiadomości musi być otwarty tylko dla routera, gdy skonfigurujesz protokół TLS/SSL między routerem a procesorem wiadomości. Jeśli nie skonfigurujesz TLS/SSL pomiędzy Routerem a Przetwarzaczem wiadomości, w konfiguracji domyślnej port 8082 musi być nadal otwarty na Przetwarzaczu wiadomości, aby można było zarządzać tym komponentem, ale Router nie wymaga dostępu do tego portu. |
|
8443 | Jeśli protokół TLS jest włączony między routerem a procesorem wiadomości, musisz otworzyć port 8443 na procesorze wiadomości, aby router mógł z niego korzystać. | |
8998 | Port usługi Message Processor do komunikacji z Routerem | |
Postgres | 22 | Jeśli konfigurujesz 2 węzły Postgresa do korzystania z replikacji typu master-standby, musisz otworzyć port 22 na każdym węźle, aby uzyskać dostęp SSH. |
1103 | Port JMX | |
4530 | Do wywołań zarządzania i rozproszonej pamięci podręcznej | |
5432 | Służy do komunikacji z serwerem Qpid/Management z serwerem Postgres | |
8084 | Domyślny port zarządzania na serwerze Postgres; musi być otwarty w komponencie, aby serwer zarządzający mógł uzyskać do niego dostęp. | |
Qpid | 1102 | Port JMX |
4529 | Do wywołań zarządzania i rozproszonej pamięci podręcznej | |
5672 |
Jest też używany do komunikacji między serwerem Qpid a komponentami brokera na tym samym węźle. W topologii z wieloma węzłami Qpid serwer musi mieć możliwość nawiązywania połączeń ze wszystkimi brokerami na porcie 5672. |
|
8083 | Domyślny port zarządzania na serwerze Qpid musi być otwarty w komponencie, aby umożliwić dostęp serwerowi zarządzania. | |
8090 | Domyślny port brokera Qpid; musi być otwarty, aby uzyskać dostęp do konsoli administracyjnej brokera lub interfejsów API administracyjnych na potrzeby monitorowania. | |
Router | 4527 | Do wywołań zarządzania i rozproszonej pamięci podręcznej.
Router musi otworzyć port 4527 jako port zarządzania. Jeśli masz kilka routerów, wszystkie muszą mieć dostęp do siebie przez port 4527 (wskazany strzałką pętli na diagramie powyżej w przypadku portu 4527 na routerze). Nie jest to wymagane, ale możesz otworzyć port 4527 na routerze, aby umożliwić dostęp procesorowi wiadomości. W przeciwnym razie w plikach dziennika usługi Message Processor mogą pojawić się komunikaty o błędzie. |
8081 | Domyślny port zarządzania dla routera musi być otwarty w komponencie, aby umożliwić dostęp serwerowi zarządzania. | |
15999 |
Port kontroli stanu. System równoważenia obciążenia używa tego portu do sprawdzania, czy router jest dostępny. Aby uzyskać stan Routera, system równoważenia obciążenia wysyła żądanie do portu 15999 na Routerze: curl -v http://routerIP:15999/v1/servers/self/reachable Jeśli router jest dostępny, żądanie zwraca kod HTTP 200. |
|
59001 | Port używany do testowania instalacji Edge przez narzędzie apigee-validate .
To narzędzie wymaga dostępu do portu 59001 na routerze. Więcej informacji o porcie 59001 znajdziesz w artykule Testowanie instalacji. |
|
SmartDocs | 59002 | Port na routerze brzegowym, na który wysyłane są żądania stron SmartDocs. |
ZooKeeper | 2181 | Używany przez inne komponenty, takie jak serwer zarządzający, router, przetwarzacz wiadomości itp. |
2888, 3888 | Używany wewnętrznie przez ZooKeeper do komunikacji z klastrem ZooKeeper (znanym jako zestaw ZooKeeper) |
Kolejna tabela zawiera te same porty, ale w kolejności numerycznej, z wyróżnieniem komponentów źródłowych i docelowych:
Numer portu | Cel | Komponent źródłowy | Komponent docelowy |
---|---|---|---|
virtual_host_port | HTTP oraz wszystkie porty używane do przesyłania wywołań interfejsu API hosta wirtualnego. Najczęściej używane są porty 80 i 443. Przekaźnik wiadomości może kończyć połączenia TLS/SSL. | Klient zewnętrzny (lub system równoważenia obciążenia) | Listener w Message Router |
1099–1103 | Zarządzanie JMX | Klient JMX | Management Server (1099) Message Processor (1101) Qpid Server (1102) Postgres Server (1103) |
2181 | Komunikacja z klientami Zookeeper | Management Server Router Message Processor Qpid Server Postgres Server |
Zookeeper |
2888 i 3888 | Zarządzanie internode Zookeeper | Zookeeper | Zookeeper |
4526 | Port zarządzania RPC | Serwer zarządzania | Serwer zarządzania |
4527 | Port zarządzania RPC do wywołań rozproszonej pamięci podręcznej i zarządzania oraz do komunikacji między routerami | Serwer zarządzania Router |
Router |
4528 | Do wywołań rozproszonej pamięci podręcznej między procesorami wiadomości oraz do komunikacji z routerem | Management Server Router Message Processor |
procesor komunikatów |
4529 | Port zarządzania RPC do obsługi rozproszonej pamięci podręcznej i zapytań dotyczących zarządzania | Serwer zarządzania | Qpid Server |
4530 | Port zarządzania RPC do obsługi rozproszonej pamięci podręcznej i zapytań dotyczących zarządzania | Serwer zarządzania | Serwer Postgres |
5432 | Klient Postgres | Qpid Server | Postgres |
5636 | Zarabianie | Zewnętrzny komponent JMS | Serwer zarządzania |
5672 |
Jest też używany do komunikacji między serwerem Qpid a komponentami brokera na tym samym węźle. W topologii z wieloma węzłami Qpid serwer musi mieć możliwość nawiązywania połączeń ze wszystkimi brokerami na porcie 5672. |
Qpid Server | Qpid Server |
7000 | Komunikacja między węzłami Cassandra | Cassandra | Inny węzeł Cassandra |
7199 | Zarządzanie JMX. Musi być otwarty na potrzeby dostępu do węzła Cassandra przez serwer zarządzania. | Klient JMX | Cassandra |
8080 | Port interfejsu API zarządzania | Klienty interfejsu Management API | Serwer zarządzania |
8081–8084 |
Porty interfejsu API komponentów, używane do wysyłania żądań interfejsu API bezpośrednio do poszczególnych komponentów. Każdy komponent otwiera inny port; używany port zależy od konfiguracji, ale musi być otwarty na komponencie, aby serwer zarządzania miał do niego dostęp. |
Klienty interfejsu Management API | Router (8081) Procesor wiadomości (8082) Serwer Qpid (8083) Serwer Postgres (8084) |
8090 | Domyślny port zarządzania dla Brokera Qpid do zarządzania kolejkami i ich monitorowania. | przeglądarka lub klient interfejsu API, | Qpid Broker (apigee-qpidd) |
8443 | Komunikacja między routerem a przetwarzaczem wiadomości po włączeniu protokołu TLS | Router | procesor komunikatów |
8998 | Komunikacja między routerem a procesorem wiadomości | Router | procesor komunikatów |
9000 | Domyślny port interfejsu zarządzania Edge | Przeglądarka | Serwer interfejsu zarządzania |
9042 | Transport natywny w CQL | Router Procesor wiadomości Serwer zarządzający |
Cassandra |
9099 | Uwierzytelnianie za pomocą zewnętrznego dostawcy tożsamości | IDP, przeglądarka i serwer zarządzania | Logowanie jednokrotne Apigee |
10389 | Port LDAP | Serwer zarządzania | OpenLDAP |
15999 | Port kontroli stanu. System równoważenia obciążenia używa tego portu do sprawdzania, czy router jest dostępny. | System równoważenia obciążenia | Router |
59001 | Port używany przez narzędzie apigee-validate do testowania instalacji przeglądarki Edge |
apigee-validate | Router |
59002 | Port routera, na który wysyłane są żądania dotyczące strony SmartDocs | SmartDocs | Router |
Przetwarzacz wiadomości utrzymuje otwarty specjalny pulę połączeń z Cassandra, która jest skonfigurowana tak, aby nigdy nie dochodziło do limitu czasu. Jeśli zapora sieciowa znajduje się między procesorem wiadomości a serwerem Cassandra, może ona spowodować przekroczenie limitu czasu połączenia. Przetwarzacz wiadomości nie jest jednak zaprojektowany do ponownego nawiązywania połączeń z Cassandra.
Aby temu zapobiec, Apigee zaleca, aby serwer Cassandra, przetwarzacz wiadomości i routery znajdowały się w tej samej podsieci, aby zapora sieciowa nie była zaangażowana w wdrażanie tych komponentów.
Jeśli zapora sieciowa znajduje się między routerem a procesorami wiadomości i ma ustawiony czas bezczynności TCP, zalecamy wykonanie tych czynności:
- Ustaw wartość
net.ipv4.tcp_keepalive_time = 1800
w ustawieniach sysctl w systemie Linux, gdzie 1800 powinno być mniejsze niż czas oczekiwania TCP zapory sieciowej. To ustawienie powinno utrzymywać połączenie w stanie ustanowionym, aby zapora sieciowa nie rozłączała połączenia. - W przypadku wszystkich procesorów wiadomości otwórz formularz
/opt/apigee/customer/application/message-processor.properties
i dodaj tę właściwość. Jeśli plik nie istnieje, utwórz go.conf_system_cassandra.maxconnecttimeinmillis=-1
- Ponownie uruchom przetwarzacz wiadomości:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- W przypadku wszystkich routerów edytuj element
/opt/apigee/customer/application/router.properties
, aby dodać tę właściwość. Jeśli plik nie istnieje, utwórz go.conf_system_cassandra.maxconnecttimeinmillis=-1
- Ponownie uruchom router:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart