Edge for Private Cloud w wersji 4.18.01
Wymagania sprzętowe
Aby zapewnić wysoką dostępność infrastruktury w środowisku produkcyjnym, musisz spełniać poniższe minimalne wymagania sprzętowe. W przypadku wszystkich scenariuszy instalacji opisanych w sekcji Topologie instalacji tabele poniżej zawierają minimalne wymagania sprzętowe dotyczące komponentów instalacji.
W tych tabelach wymagania dotyczące dysku twardego obowiązują oprócz ilości miejsca na dysku twardym wymaganego przez system operacyjny. W zależności od aplikacji i ruchu w sieci instalacja może wymagać więcej lub mniej zasobów niż wymienione poniżej.
Komponent instalacyjny | RAM | CPU | Minimalny dysk twardy |
---|---|---|---|
Cassandra | 16 GB | 8-rdzeniowy | 250 GB pamięci lokalnej z dyskiem SSD lub szybkim HDD, który obsługuje 2000 IOPS |
Procesor/router wiadomości na tym samym komputerze | 16 GB | 8-rdzeniowy | 100GB |
Analytics – Postgres/Qpid na tym samym serwerze (niezalecane w środowisku produkcyjnym) | 16GB* | 8-rdzeniowy* | 500 GB – 1 TB** pamięci masowej***, najlepiej z backendem SSD, obsługującą co najmniej 1000 IOPS* |
Analytics – samodzielny Postgres | 16GB* | 8-rdzeniowy* | 500 GB – 1 TB** pamięci masowej***, najlepiej z backendem SSD, obsługującą co najmniej 1000 IOPS* |
Analytics – wersja samodzielna Qpid | 8 GB | 4-rdzeniowy | 30–50 GB pamięci lokalnej z dyskiem SSD lub szybkim HDD
W przypadku instalacji większych niż 250 TPS zalecany jest dysk HDD z pamięcią lokalną obsługującą 1000 IOPS. Domyślny rozmiar kolejki Qpid to 20 GB. Jeśli chcesz zwiększyć pojemność, dodaj kolejne węzły Qpid. |
Inne (OpenLDAP, UI, Management Server) | 4 GB | 2-rdzeniowy | 60GB |
* Dostosuj wymagania systemowe Postgres na podstawie przepustowości:
- Mniej niż 250 TPS: możesz uwzględnić 8 GB, 4-rdzeniowy i zarządzaną pamięć masową sieciową*** obsługującą co najmniej 1000 IOPS
- Ponad 250 TPS: 16 GB, 8-rdzeniowa, zarządzana pamięć sieciowa*** obsługująca co najmniej 1000 IOPS
- Ponad 1000 TPS: 16 GB, 8-rdzeniowa, zarządzana pamięć sieciowa*** obsługująca co najmniej 2000 IOPS
- Ponad 2000 TPS: 32 GB, 16-rdzeniowa, zarządzana pamięć sieciowa*** obsługująca co najmniej 2000 IOPS
- Ponad 4000 TPS: 64 GB, 32-rdzeniowa, zarządzana pamięć sieciowa*** obsługująca co najmniej 4000 IOPS
** Wartość dysku twardego Postgres jest określana na podstawie gotowych do użycia statystyk przechwyconych przez Edge. Jeśli dodasz do danych Analytics wartości niestandardowe, musisz je odpowiednio zwiększyć. Aby oszacować wymaganą ilość miejsca na dane, użyj tej formuły:
bytes of storage needed =
(# bytes of analytics data/request) *
(requests/second) *
(seconds/hour) *
(hours of peak usage/day) *
(days/month) *
(months of data retention)
Na przykład:
(2K bytes) * (100 req/sec) * (3600 secs/hr) * (18 peak hours/day) * (30 days/month) * (3 months retention)
= 1,194,393,600,000 bytes or 1194.4 GB
*** W przypadku bazy danych Postgresql zalecane jest użycie Network Storage, ponieważ:
- Daje możliwość dynamicznego skalowania rozmiaru pamięci masowej w górę, jeśli jest to wymagane.
- IOPS sieci można dostosowywać na bieżąco w większości obecnych podsystemów środowiska, pamięci masowej i sieci.
- Zrzuty poziomu miejsca na dane można włączyć w ramach rozwiązań do tworzenia kopii zapasowych i przywracania.
Poniżej znajdziesz też wymagania sprzętowe, które musisz spełnić, jeśli chcesz zainstalować usługi zarabiania:
Komponent z generowaniem przychodu | RAM | CPU | Dysk twardy |
---|---|---|---|
Serwer zarządzania (z usługami zarabiania) | 8 GB | 4-rdzeniowy | 60GB |
Analytics – Postgres/Qpid na tym samym serwerze | 16 GB | 8-rdzeniowy | 500 GB – 1 TB pamięci sieciowej, najlepiej z backendem SSD, obsługujące co najmniej 1000 IOPS lub skorzystaj z reguły z tabeli powyżej. |
Analytics – samodzielny Postgres | 16 GB | 8-rdzeniowy | 500 GB – 1 TB pamięci sieciowej, najlepiej z backendem SSD, obsługujące co najmniej 1000 IOPS lub skorzystaj z reguły z tabeli powyżej. |
Analytics – wersja samodzielna Qpid | 8 GB | 4-rdzeniowy | 40–500 GB pamięci lokalnej z dyskiem SSD lub szybkim HDD
W przypadku instalacji większych niż 250 TPS zalecany jest dysk HDD z pamięcią lokalną obsługującą 1000 IOPS. |
Poniżej znajdziesz listę wymagań sprzętowych, które należy spełnić, aby zainstalować API BaaS:
Komponent API BaaS | RAM | CPU | Dysk twardy |
---|---|---|---|
ElasticSearch* | 8 GB | 4-rdzeniowy | 60–80 GB |
Stos API BaaS* | 8 GB | 4-rdzeniowy | 60–80 GB |
Portal API BaaS | 1GB | 2-rdzeniowy | 20GB |
Cassandra** | 16 GB | 8-rdzeniowy | 250 GB pamięci lokalnej z dyskiem SSD lub szybkim HDD, który obsługuje 2000 IOPS |
* Możesz zainstalować ElasticSearch i stos API BaaS API w tym samym węźle. Jeśli tak, skonfiguruj ElasticSearch tak, aby używał 4 GB pamięci (domyślnie). Jeśli usługa ElasticSearch jest zainstalowana w własnym węźle, skonfiguruj ją do używania 6 GB pamięci.
** Opcjonalnie; zwykle dla usług Edge i API BaaS używasz tego samego klastra Cassandra.
Wymagania dotyczące systemu operacyjnego i oprogramowania innych firm
Te instrukcje instalacji i dostarczone pliki instalacyjne zostały przetestowane pod kątem systemów operacyjnych i oprogramowania innych firm wymienionych w sekcji Obsługiwane oprogramowanie i obsługiwane wersje.
Tworzenie użytkownika Apigee
Procedura instalacji powoduje utworzenie użytkownika systemu Unix o nazwie „apigee”. Katalogi i pliki brzegowe należą do „apigee”, podobnie jak procesy Edge. Oznacza to, że komponenty Edge działają jako użytkownik „apigee”. W razie potrzeby możesz uruchomić komponenty jako inny użytkownik.
Katalog instalacji
Domyślnie instalator zapisuje wszystkie pliki w katalogu /opt/apigee
. Nie możesz zmienić tej lokalizacji w katalogu. Nie możesz zmienić tego katalogu, ale możesz utworzyć dowiązanie symboliczne, aby zmapować obiekt /opt/apigee
na inną lokalizację, jak opisano poniżej.
W instrukcjach w tym przewodniku katalog instalacji jest oznaczony jako /opt/apigee
.
Tworzenie dowiązania symbolicznego z /opt/apigee
Przed utworzeniem dowiązania symbolicznego musisz najpierw utworzyć użytkownika i grupę o nazwie „apigee”. Jest to ta sama grupa i użytkownik utworzone w instalatorze Edge.
Aby utworzyć dowiązanie symboliczne, wykonaj te czynności przed pobraniem pliku bootstrap_4.18.01.sh. Wszystkie te czynności musisz wykonać jako użytkownik root:
- Utwórz użytkownika i grupę „apigee”:
groupadd -r apigee > useradd -r -g apigee -d /opt/apigee -s /sbin/nologin -c "Apigee platform user" apigee
- Utwórz dowiązanie symboliczne z elementu
/opt/apigee
do wybranego katalogu głównego instalacji:ln -Ts /srv/myInstallDir /opt/apigee
gdzie /srv/myInstallDir to żądana lokalizacja plików Edge.
- Zmień własność katalogu głównego i dowiązania symbolicznego do instalacji na użytkownika „apigee”:
chown -h apigee:apigee /srv/myInstallDir /opt/apigee
Java
Na każdym komputerze musi być zainstalowana obsługiwana wersja środowiska Java 1.8 przed instalacją. Listę obsługiwanych pakietów JDK znajdziesz w sekcji Obsługiwane oprogramowanie i obsługiwane wersje.
Sprawdź, czy JAVA_HOME
wskazuje katalog główny pakietu JDK użytkownika wykonującego instalację.
SELinux
W zależności od ustawień SELinux przeglądarka Edge może napotkać problemy z instalowaniem i uruchamianiem komponentów Edge. W razie potrzeby możesz wyłączyć funkcję SELinux lub ustawić ją w trybie mniej rygorystycznym podczas instalacji, a następnie włączyć ją ponownie po instalacji. Więcej informacji znajdziesz w artykule Instalowanie narzędzia Edge apigee-setup.
Ustawienia sieci
Zalecamy sprawdzenie ustawień sieci przed rozpoczęciem instalacji. Instalator oczekuje, że wszystkie maszyny mają stałe adresy IP. Aby sprawdzić ustawienie, użyj tych poleceń:
hostname
zwraca nazwę maszynyhostname -i
zwraca adres IP nazwy hosta, którą można zaadresować z innych maszyn.
W zależności od typu i wersji systemu operacyjnego może być konieczna edycja /etc/hosts
i /etc/sysconfig/network
, jeśli nazwa hosta jest nieprawidłowa. Więcej informacji znajdziesz w dokumentacji używanego systemu operacyjnego.
Jeśli serwer ma wiele kart interfejsów, polecenie „nazwa hosta -i” zwraca listę adresów IP rozdzielonych spacjami. Domyślnie instalator Edge używa pierwszego zwróconego adresu IP, co w niektórych sytuacjach może nie być prawidłowe. Możesz też ustawić tę właściwość w pliku konfiguracji instalacji:
ENABLE_DYNAMIC_HOSTIP=y
Gdy ta właściwość ma wartość „y”, instalator prosi o wybranie adresu IP, którego chcesz użyć podczas instalacji. Wartością domyślną jest „n”. Więcej informacji znajdziesz w dokumentacji pliku konfiguracji brzegowej.
Otoki TCP
Otoki TCP mogą blokować komunikację w niektórych portach i wpływać na instalację OpenLDAP, Postgres i Cassandra. W tych węzłach sprawdź /etc/hosts.allow
i /etc/hosts.deny
, aby upewnić się, że nie ma ograniczeń na temat wymaganych portów OpenLDAP, Postgres i Cassandra.
IPtables
Sprawdź, czy nie ma zasad iptables, które blokują połączenia między węzłami na wymaganych portach brzegowych. W razie potrzeby możesz zatrzymać iptables podczas instalacji za pomocą polecenia:
sudo/etc/init.d/iptables stop
W CentOS 7.x:
systemctl stop firewalld
Sprawdź, czy router brzegowy ma dostęp do pliku /etc/rc.d/init.d/functions
Węzły routera brzegowego i BaaS Portal używają routera Nginx i wymagają uprawnień do odczytu w usłudze /etc/rc.d/init.d/functions
.
Jeśli Twój proces zabezpieczeń wymaga ustawienia uprawnień na urządzeniu /etc/rc.d/init.d/functions
, nie ustawiaj ich na wartość 700, bo inaczej router się nie uruchomi. Aby możliwy był odczyt pliku /etc/rc.d/init.d/functions
, uprawnienia można ustawić na wartość 744.
Cassandra
Wszystkie węzły Cassandra muszą być połączone z pierścieniem. Cassandra przechowuje repliki danych w wielu węzłach, aby zapewnić niezawodność i odporność na awarie. Strategia replikacji każdego obszaru kluczy Edge określa węzły Cassandra, w których umieszczane są repliki. Więcej informacji znajdziesz w artykule Informacje o współczynniku replikacji Cassandra i poziomie spójności.
Cassandra automatycznie dostosowuje rozmiar sterty Java na podstawie dostępnej pamięci. Więcej informacji znajdziesz w artykule o dostrajaniu zasobów Java. w przypadku spadku wydajności lub dużego zużycia pamięci,
Po zainstalowaniu Edge dla Private Cloud możesz sprawdzić, czy Cassandra jest prawidłowo skonfigurowana, sprawdzając plik /opt/apigee/apigee-cassandra/conf/cassandra.yaml
. Sprawdź na przykład, czy skrypt instalacji Edge for Private Cloud ma ustawione te właściwości:
cluster_name
initial_token
partitioner
seeds
listen_address
rpc_address
snitch
Baza danych PostgreSQL
Po zainstalowaniu Edge możesz dostosować te ustawienia bazy danych PostgreSQL na podstawie ilości pamięci RAM dostępnej w systemie:
conf_postgresql_shared_buffers = 35% of RAM # min 128kB conf_postgresql_effective_cache_size = 45% of RAM conf_postgresql_work_mem = 512MB # min 64kB
Aby ustawić te wartości:
- Edytuj plik postgresql.properties:
vi /opt/apigee/customer/application/postgresql.properties
Jeśli plik nie istnieje, utwórz go.
- Ustaw wymienione powyżej właściwości.
- Zapisz zmiany.
- Ponownie uruchom bazę danych PostgreSQL:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
Ograniczenia systemu
Sprawdź, czy w węzłach Cassandra i procesorach wiadomości ustawiono te limity systemu:
- W węzłach Cassandra ustaw limity memlock i twardych (memlock), nofile oraz przestrzeni adresowej (jako) dla użytkownika instalacyjnego (domyślnie jest to „apigee”) w
/etc/security/limits.d/90-apigee-edge-limits.conf
, jak pokazano poniżej:apigee soft memlock unlimited apigee hard memlock unlimited apigee soft nofile 32768 apigee hard nofile 65536 apigee soft as unlimited apigee hard as unlimited
- W węzłach procesora wiadomości ustaw maksymalną liczbę deskryptorów plików na 64 tys. w
/etc/security/limits.d/90-apigee-edge-limits.conf
, jak pokazano poniżej:apigee soft nofile 32768 apigee hard nofile 65536
W razie potrzeby możesz zwiększyć ten limit. Stanie się tak, jeśli na przykład masz otwartych w tym samym czasie dużą liczbę plików tymczasowych.
jsvc
Element „jsvc” jest wymagany do korzystania z interfejsu API BaaS. Podczas instalacji interfejsu API BaaS instalowana jest wersja 1.0.15-dev.
Usługi zabezpieczeń sieci (NSS)
Network Security Services (NSS) to zestaw bibliotek, które ułatwiają tworzenie z włączonymi zabezpieczeniami aplikacji klienckich i serwerowych. Sprawdź, czy masz zainstalowaną wersję NSS w wersji 3.19 lub nowszej.
Aby sprawdzić aktualną wersję:
yum info nss
Aby zaktualizować NSS:
yum update nss
Więcej informacji znajdziesz w tym artykule przygotowanym przez RedHat.
Wyłącz wyszukiwanie DNS w IPv6 podczas korzystania z NSCD (demonsu pamięci podręcznej usługi nazw)
Jeśli zainstalowano i włączono demon pamięci podręcznej NSCD (Name Service Cache), procesory wiadomości będą przeprowadzać 2 wyszukiwania DNS: jedno dla IPv4 i jedno dla IPv6. Jeśli używasz NSCD, wyłącz wyszukiwanie DNS w IPv6.
Aby wyłączyć wyszukiwanie DNS w IPv6:
- W każdym węźle procesora wiadomości edytuj
/etc/nscd.conf
- Ustaw tę właściwość:
enable-cache hosts no
Wyłącz protokół IPv6 w Google Cloud Platform dla RedHat/CentOS 7
Jeśli instalujesz Edge w RedHat 7 lub CentOS 7 w Google Cloud Platform, musisz wyłączyć IPv6 we wszystkich węzłach Qpid.
Instrukcje dotyczące wyłączania protokołu IPv6 znajdziesz w dokumentacji systemu RedHat lub CentOS dotyczącego Twojego systemu operacyjnego. Na przykład możesz:
- Otwórz plik
/etc/hosts
w edytorze. - Wstaw znak „#” w kolumnie 1 z tych wierszy, aby dodać komentarz:
#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
- Zapisz plik.
AWS AMI
Jeśli instalujesz Edge w obrazie AWS Amazon Machine Image (AMI) dla Red Hat Enterprise Linux 7.x, musisz najpierw uruchomić to polecenie:
yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
Narzędzia,
Instalator używa w standardowej wersji tych narzędzi systemu UNIX podanych przez EL5 lub EL6.
awk |
expr |
libxlst |
obr./min |
unzip |
basename |
grep |
Lua-Socket |
rpm2cpio |
dodanie użytkownika |
powłoka bash |
nazwa hosta |
ls |
sed |
wc |
bc |
id |
net-tools |
sudo |
Wget |
curl |
Libaio |
perl (z usługi Procps) |
smoła |
Xerces-C |
Cyrus-Sasl | libdb4 | pgrep (z procps) | tr | mniam |
date |
libdb-cxx |
ps |
uuid |
konfiguracja chkconfig |
dirname | libibverbs | pwd | uname | |
echo | librdmacm | python |
nieaktualny
Zalecamy synchronizację czasów działania serwerów. Może to być narzędzie ntpdate
, które sprawdza, czy serwery są synchronizowane pod względem czasu. Możesz zainstalować narzędzie za pomocą yum install ntp
. Jest to szczególnie przydatne w przypadku replikowania konfiguracji OpenLDAP. Pamiętaj, że ustawiasz strefę czasową serwera w strefie czasowej UTC.
Openldap 2.4
Instalacja lokalna wymaga OpenLDAP 2.4. Jeśli serwer ma połączenie z internetem, skrypt instalacji Edge pobiera i instaluje OpenLDAP. Jeśli serwer nie ma połączenia z internetem, przed uruchomieniem skryptu instalacji Edge musisz upewnić się, że interfejs OpenLDAP jest już zainstalowany. W systemie RHEL/CentOS możesz uruchomić yum install openldap-clients openldap-servers
, aby zainstalować OpenLDAP.
W przypadku instalacji 13-hostowych i 12-hostowych z 2 centrami danych wymagana jest replikacja OpenLDAP, ponieważ istnieje wiele węzłów hostujących OpenLDAP.
Zapory sieciowe i hosty wirtualne
Termin virtual
jest często przeciążony w IT, dlatego dotyczy wdrożenia Apigee Edge na potrzeby wdrożenia chmury prywatnej i hostów wirtualnych. Uściślijmy, że termin virtual
ma 2 główne zastosowania:
- Maszyny wirtualne: niewymagane, ale niektóre wdrożenia wykorzystują technologię maszyn wirtualnych do tworzenia izolowanych serwerów dla komponentów Apigee. Hosty maszyn wirtualnych, takie jak hosty fizyczne, mogą mieć interfejsy sieci i zapory sieciowe.
- Hosty wirtualne: punkty końcowe sieci – analogicznie do hosta wirtualnego Apache.
Router w maszynie wirtualnej może ujawniać wiele hostów wirtualnych (o ile różnią się od siebie aliasem hosta lub portem interfejsu).
Na przykład na jednym serwerze fizycznym A
mogą być uruchomione 2 maszyny wirtualne o nazwach „VM1” i „VM2”. Załóżmy, że maszyna „VM1” ujawnia interfejs wirtualnej sieci Ethernet, który otrzymuje w maszynie wirtualnej adres „eth0” i który ma przypisany adres IP 111.111.111.111
przez maszynę wirtualizacji lub serwer DHCP sieci. Załóżmy, że VM2 ujawnia interfejs wirtualnej sieci Ethernet również o nazwie „eth0” i otrzymuje adres IP 111.111.111.222
.
Możemy mieć router Apigee uruchomiony w każdej z tych 2 maszyn wirtualnych. Routery ujawniają wirtualne punkty końcowe hosta, jak w tym hipotetycznym przykładzie:
Router Apigee w maszynie wirtualnej VM1 udostępnia 3 hosty wirtualne w interfejsie eth0 (który ma określony adres IP), api.mycompany.com:80
, api.mycompany.com:443
i test.mycompany.com:80
.
Router w maszynie wirtualnej 2 ujawnia łącze api.mycompany.com:80
(ta sama nazwa i port, które są dostępne dla maszyny wirtualnej VM1).
Fizyczny system operacyjny hosta może mieć zaporę sieciową. W takim przypadku zapora sieciowa musi być skonfigurowana tak, aby przekazywać ruch TCP powiązany z portami udostępnianymi w zwirtualizowanych interfejsach (111.111.111.111:{80, 443}
i 111.111.111.222:80
). Ponadto system operacyjny każdej maszyny wirtualnej może udostępniać własną zaporę sieciową w interfejsie eth0, która również musi zezwalać na łączenie się ruchu przez porty 80 i 443.
Ścieżka bazowa to trzeci komponent odpowiedzialny za kierowanie wywołań interfejsu API do różnych serwerów proxy interfejsu API, które mogły zostać przez Ciebie wdrożone. Pakiety proxy interfejsów API mogą współdzielić punkt końcowy, jeśli mają różne ścieżki bazowe. Na przykład jedną ścieżkę bazową można zdefiniować jako http://api.mycompany.com:80/
, a drugą jako http://api.mycompany.com:80/salesdemo
.
W tym przypadku potrzebny jest system równoważenia obciążenia lub dyrektor ruchu rozdzielający ruch http://api.mycompany.com:80/ między 2 adresy IP (111.111.111.111
w maszynie wirtualnej 1 i 111.111.111.222
w maszynie wirtualnej 2). Ta funkcja jest specyficzna dla Twojej instalacji i jest konfigurowana przez lokalną grupę sieci.
Ścieżka bazowa jest ustawiana podczas wdrażania interfejsu API. Powyższy przykład pozwala wdrożyć 2 interfejsy API (mycompany
i testmycompany
) w organizacji mycompany-org
z hostem wirtualnym o aliasie hosta api.mycompany.com
i portem ustawionym na 80
. Jeśli nie zadeklarujesz ścieżki bazowej we wdrożeniu, router nie będzie wiedzieć, do którego interfejsu API ma wysyłać przychodzące żądania.
Jeśli jednak wdrożysz interfejs API testmycompany
pod podstawowym adresem URL /salesdemo
, użytkownicy będą mieli dostęp do tego interfejsu API za pomocą: http://api.mycompany.com:80/salesdemo
. Jeśli wdrożysz interfejs API mycompany przy użyciu podstawowego adresu URL /
, użytkownicy będą uzyskiwać dostęp do interfejsu API za pomocą adresu URL http://api.mycompany.com:80/
.
Wymagania dotyczące portu brzegowego
Konieczność zarządzania zaporą sieciową wykracza poza hosty wirtualne. Zarówno maszyny wirtualne, jak i fizyczne zapory sieciowe muszą zezwalać na ruch na portach wymaganych przez komponenty do komunikacji ze sobą.
Poniższa ilustracja przedstawia wymagania dotyczące portów w przypadku każdego komponentu Edge:
Uwagi do tego diagramu:
- * Port 8082 w procesorze wiadomości musi być otwarty na dostęp dla routera tylko podczas konfigurowania protokołu TLS/SSL między routerem i procesorem wiadomości. Jeśli nie skonfigurujesz protokołu TLS/SSL między routerem a procesorem wiadomości, domyślna konfiguracja, port 8082 nadal musi być otwarty w procesorze wiadomości, aby można było zarządzać komponentem, ale router nie wymaga do niego dostępu.
- Porty z prefiksem „M” to porty używane do zarządzania komponentem. Muszą one być otwarte w komponencie oraz muszą być otwarte w komponencie, aby umożliwić dostęp serwerowi zarządzania.
- Te komponenty wymagają dostępu do portu 8080 na serwerze zarządzania: Router, procesor wiadomości, interfejs użytkownika, Postgres i Qpid.
- Jako port zarządzania komponent przetwarzający wiadomości musi otworzyć port 4528. Jeśli masz kilka procesorów wiadomości, wszystkie muszą mieć dostęp do siebie przez port 4528 (co wskazuje strzałka zapętlenia na diagramie powyżej dla portu 4528 takiego procesora). Jeśli masz kilka centrów danych, port musi być dostępny dla wszystkich podmiotów przetwarzających wiadomości we wszystkich centrach danych.
- Nie jest to wymagane, ale możesz otworzyć port 4527 w routerze, aby uzyskać dostęp dla dowolnego procesora wiadomości. W przeciwnym razie w plikach dziennika procesora wiadomości mogą pojawiać się komunikaty o błędach.
- Router musi mieć otwarty port 4527 jako port zarządzania. Jeśli masz kilka routerów, wszystkie muszą mieć dostęp do siebie przez port 4527 (na co wskazuje strzałka w pętli na diagramie powyżej 4527 w routerze).
- Interfejs Edge wymaga dostępu do routera na portach udostępnianych przez serwery proxy interfejsu API w celu obsługi przycisku Wyślij w narzędziu do śledzenia.
- Serwer zarządzania wymaga dostępu do portu JMX w węzłach Cassandra.
- 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 niektórych połączeń, które mogą używać różnych portów. Więcej informacji znajdziesz w sekcji TLS/SSL.
- W przypadku konfigurowania 2 węzłów Postgres do używania replikacji gotowości mastera w każdym węźle musisz otworzyć port 22 w każdym węźle, aby uzyskać dostęp przez SSH. Aby umożliwić dostęp przez SSH, możesz opcjonalnie otworzyć porty w poszczególnych węzłach.
- Serwer zarządzania i interfejs użytkownika Edge możesz skonfigurować tak, aby wysyłać e-maile przez zewnętrzny serwer SMTP. Jeśli to zrobisz, musisz się upewnić, że serwer zarządzania i interfejs użytkownika mają dostęp do potrzebnego portu na serwerze SMTP. W przypadku serwera SMTP bez szyfrowania TLS numer portu to zwykle 25. W przypadku SMTP z włączonym protokołem TLS jest to często wartość 465, ale skontaktuj się z dostawcą SMTP.
W tabeli poniżej znajdziesz porty, które należy otworzyć w zaporach sieciowych za pomocą komponentu Edge:
Komponent | Port | Opis |
---|---|---|
Standardowe porty HTTP | 80 443 | HTTP oraz wszelkie inne porty używane na potrzeby hostów wirtualnych. |
Serwer zarządzania | 8080 | Port wywołań interfejsu Edge Management API. Te komponenty wymagają dostępu do portu 8080 serwera zarządzania: router, procesor wiadomości, interfejs użytkownika, Postgres i Qpid. |
1099 | Port JMX | |
4526 | Na potrzeby rozproszonej pamięci podręcznej i wywołań zarządzania | |
Interfejs zarządzania | 9000 | Port dostępu przeglądarki do interfejsu zarządzania |
procesor komunikatów | 8998 | Port procesora wiadomości do komunikacji z routerem |
8082 |
Domyślny port zarządzania na potrzeby procesora wiadomości, który musi być otwarty w komponencie, aby umożliwić dostęp serwerowi zarządzania. Jeśli skonfigurujesz protokół TLS/SSL między routerem a procesorem wiadomości, który będzie używany przez router do przeprowadzania kontroli stanu procesora wiadomości. |
|
1101 | Port JMX | |
4528 | Na potrzeby rozproszonej pamięci podręcznej i wywołań zarządzania między procesorami wiadomości oraz do komunikacji z routera i serwera zarządzania | |
Router | 8081 | Domyślny port zarządzania dla routera, który musi być otwarty w komponencie, aby uzyskać dostęp przez serwer zarządzania. |
4527 | Na potrzeby rozproszonej pamięci podręcznej i wywołań zarządzania | |
15999 |
Port kontroli stanu. System równoważenia obciążenia używa tego portu do określenia, czy router jest dostępny. Aby uzyskać stan routera, system równoważenia obciążenia wysyła do niego żądanie do portu 15999: curl -v http://routerIP:15999/v1/servers/self/reachable Jeśli router jest osiągalny, żądanie zwraca HTTP 200. |
|
59001 | Port używany do testowania instalacji Edge przez narzędzie apigee-validate .
To narzędzie wymaga dostępu do portu 59001 w routerze. Więcej informacji na temat portu 59001 znajdziesz w sekcji Testowanie instalacji. |
|
ZooKeeper | 2181 | używane przez inne komponenty, takie jak serwer zarządzania, router czy procesor wiadomości. |
2888, 3888 | Używany wewnętrznie przez komunikację dotyczącą klastra ZooKeeper (znanego jako zespół ZooKeeper) | |
Cassandra | 7000, 9042, 9160 | Porty Apache Cassandra do komunikacji między węzłami Cassandra i umożliwiające dostęp do innych komponentów Edge. |
7199 | Port JMX. Musi być otwarty, aby mógł uzyskać do niego dostęp przez serwer zarządzania. | |
Qpid | 5672 | Służy do komunikacji między routerem i procesorem wiadomości z serwerem Qpid |
8083 | Domyślny port zarządzania na serwerze Qpid, który musi być otwarty w komponencie, aby umożliwić dostęp serwerowi zarządzania. | |
1102 | Port JMX | |
4529 | Na potrzeby rozproszonej pamięci podręcznej i wywołań zarządzania | |
Postgres | 5432 | Służy do komunikacji między serwerem Qpid/serwerem zarządzania a Postgres |
8084 | Domyślny port zarządzania na serwerze Postgres, który musi być otwarty w komponencie, aby był dostępny dla serwera zarządzania. | |
1103 | Port JMX | |
4530 | Na potrzeby rozproszonej pamięci podręcznej i wywołań zarządzania | |
22 | W przypadku konfigurowania 2 węzłów Postgres do używania replikacji gotowości mastera w każdym węźle musisz otworzyć port 22 w każdym węźle, aby uzyskać dostęp przez SSH. | |
LDAP | 10389 | OpenLDAP |
SmartDocs | 59002 | Port na routerze brzegowym, do którego wysyłane są żądania stron SmartDokumentacja. |
W następnej tabeli znajdziesz te same porty wymienione liczbowo z komponentami źródłowymi i docelowymi:
Numer portu | Purpose | Komponent źródłowy | Komponent docelowy |
---|---|---|---|
virtual_host_port | HTTP oraz wszelkie inne porty używane do ruchu związanego z wywołaniami interfejsu API hosta wirtualnego, Najczęściej używane są porty 80 i 443. Router wiadomości może zakończyć połączenia TLS/SSL. | Klient zewnętrzny (lub system równoważenia obciążenia) | Detektor w routerze wiadomości |
1099–1103 | Zarządzanie JMX | Klient JMX | Management Server (1099) Message Processor (1101) Qpid Server (1102) Postgres Server (1103) |
2181 | Komunikacja z klientem Zookeeper | Serwer zarządzania Router Procesor wiadomości Serwer Qpid Serwer Postgres |
opiekun zoologiczny |
2888 i 3888 | Zarządzanie węzłem zoologicznym | opiekun zoologiczny | opiekun zoologiczny |
4526 | Port zarządzania RPC | Serwer zarządzania | Serwer zarządzania |
4527 | Port zarządzania RPC na potrzeby wywołań zarządzania rozproszoną pamięcią podręczną i zarządzania oraz do komunikacji między routerami | Serwer zarządzania routerem |
Router |
4528 | Do wywołań rozproszonej pamięci podręcznej między procesorami wiadomości oraz komunikacji z routera | Serwer zarządzania router przetwarzający wiadomości |
procesor komunikatów |
4529 | Port zarządzania RPC na potrzeby rozproszonej pamięci podręcznej i wywołań zarządzania | Serwer zarządzania | Serwer Qpid |
4530 | Port zarządzania RPC na potrzeby rozproszonej pamięci podręcznej i wywołań zarządzania | Serwer zarządzania | Serwer Postgres |
5432 | Klient Postgres | Serwer Qpid | Postgres |
5672 |
Służy do wysyłania analiz z routera i procesora wiadomości do Qpid |
Router Przetwarzający wiadomości |
Serwer Qpid |
7000 | Komunikacja między węzłami Cassandra | Cassandra | Inny węzeł Cassandra |
7199 | Zarządzanie JMX. Musi być otwarty, aby mógł uzyskać dostęp 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ń do interfejsu API bezpośrednio do poszczególnych komponentów. Każdy komponent otwiera inny port. Dokładny użyty port zależy od konfiguracji, ale musi być otwarty w komponencie, aby serwer zarządzania mógł uzyskać dostęp do tego portu |
Klienty interfejsu Management API | Router (8081) Przetwarzający wiadomości (8082) Serwer Qpid (8083) Serwer Postgres (8084) |
8998 | Komunikacja między routerem a procesorem wiadomości | Router | procesor komunikatów |
9000 | Domyślny port interfejsu zarządzania brzegiem sieci | Przeglądający | Serwer interfejsu zarządzania |
9042 | Transport natywny CQL | Router Serwer wiadomości Serwer zarządzania |
Cassandra |
9160 | klient hazardowy Cassandra | Router Serwer wiadomości Serwer zarządzania |
Cassandra |
10389 | Port LDAP | Serwer zarządzania | OpenLDAP |
15999 | Port kontroli stanu. System równoważenia obciążenia używa tego portu do określenia, czy router jest dostępny. | System równoważenia obciążenia | Router |
59001 | Port używany przez narzędzie apigee-validate do testowania instalacji Edge |
apigee-validate | Router |
59002 | Port routera, do którego wysyłane są żądania stron SmartDokumentacja | SmartDocs | Router |
Procesor wiadomości utrzymuje dedykowaną pulę połączeń otwartą dla systemu Cassandra, która jest skonfigurowana tak, aby nigdy nie przekraczać limitu czasu. Jeśli zapora sieciowa znajduje się między procesorem wiadomości a serwerem Cassandra, może ona przekroczyć limit czasu na połączenie. Procesor wiadomości nie służy jednak do przywracania połączeń z Cassandra.
Aby zapobiec takiej sytuacji, Apigee zaleca, aby serwer Cassandra, procesor wiadomości i routery były w tej samej podsieci, dzięki czemu zapora sieciowa nie uczestniczy we wdrożeniu tych komponentów.
Jeśli zapora sieciowa znajduje się między routerem a procesorami wiadomości i ma ustawiony czas oczekiwania na bezczynności tcp, zalecamy wykonanie tych czynności:
- Ustaw wartość
net.ipv4.tcp_keepalive_time = 1800
w ustawieniach sysctl w systemie operacyjnym Linux, gdzie wartość 1800 powinna być mniejsza niż limit czasu bezczynności tcp zapory sieciowej. To ustawienie powinno utrzymać połączenie w stanie ugruntowanym, aby zapora sieciowa nie rozłączała go. - We wszystkich systemach przetwarzania wiadomości edytuj
/opt/apigee/customer/application/message-processor.properties
, aby dodać tę właściwość. Jeśli plik nie istnieje, utwórz go.conf_system_cassandra.maxconnecttimeinmillis=-1
- Ponownie uruchom procesor wiadomości:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- We wszystkich routerach edytuj
/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
W przypadku zainstalowania klastrowanej konfiguracji 12 hostów z 2 centrami danych upewnij się, że węzły w obu centrach danych mogą komunikować się przez porty wymienione poniżej:
Wymagania dotyczące portu API BaaS
Jeśli zdecydujesz się zainstalować interfejs API BaaS, musisz dodać komponenty stosu API BaaS i API BaaS Portal. Porty te korzystają z portów wymienionych na ilustracji poniżej:
Uwagi do tego diagramu:
- Interfejs API BaaS Portal nigdy nie wysyła żądań bezpośrednio do węzła stosu BaaS. Gdy deweloper loguje się w portalu, aplikacja Portal jest pobierana do przeglądarki. Uruchomiona w przeglądarce aplikacja Portal wysyła żądania do węzłów stosu BaaS.
- Instalacja produkcyjna API BaaS używa systemu równoważenia obciążenia między węzłem API BaaS Portal i węzłami stosu API BaaS. Podczas konfigurowania portalu i wykonywania wywołań interfejsu BaaS API podajesz adres IP lub nazwę DNS systemu równoważenia obciążenia, a nie węzłów stosu.
- Wszystkie węzły stosu muszą mieć otwarty port 2551, aby zapewnić dostęp do wszystkich innych węzłów stosu (wskazuje to strzałka zapętlenia na powyższym diagramie dla portu 2551 w węzłach stosu). Jeśli masz wiele centrów danych, port musi być dostępny we wszystkich węzłach stosu we wszystkich centrach danych.
- Musisz skonfigurować wszystkie węzły stosu Baas do wysyłania e-maili przez zewnętrzny serwer SMTP. W przypadku serwera SMTP bez szyfrowania TLS numer portu to zwykle 25. W przypadku SMTP z włączonym protokołem TLS jest to często wartość 465, ale skontaktuj się z dostawcą SMTP.
- Węzły Cassandra mogą być przeznaczone dla API BaaS lub mogą być udostępniane Edge.
Poniższa tabela przedstawia domyślne porty, które należy otworzyć w zaporze sieciowej, według komponentu:
Komponent | Port | Opis |
---|---|---|
Portal API BaaS | 9000 | Port interfejsu API BaaS |
Stos API BaaS | 8080 | Port, na który odbierane są żądania do interfejsu API |
2551 |
Port do komunikacji między wszystkimi węzłami stosu. Musi być dostępny dla wszystkich pozostałych węzłów stosu w centrum danych. Jeśli masz wiele centrów danych, port musi być dostępny we wszystkich węzłach stosu we wszystkich centrach danych. |
|
ElasticSearch | 9200–9400 | Do komunikacji ze stosem API BaaS i do komunikacji między węzłami ElasticSearch |
Licencjonowanie
Każda instalacja Edge wymaga unikalnego pliku licencji uzyskanego z Apigee. Podczas instalowania serwera zarządzania musisz podać ścieżkę do pliku licencji, na przykład /tmp/license.txt.
Instalator kopiuje plik licencji do folderu /opt/apigee/customer/conf/license.txt
.
Jeśli plik licencji jest prawidłowy, serwer zarządzania sprawdza datę wygaśnięcia i liczbę dozwolonych procesorów wiadomości (MP). Jeśli któreś z ustawień licencji wygasło, możesz znaleźć dzienniki w tej lokalizacji: /opt/apigee/var/log/edge-management-server/logs
.
W takim przypadku możesz skontaktować się z zespołem pomocy Apigee Edge, aby uzyskać szczegółowe informacje o migracji.
Jeśli nie masz jeszcze licencji, skontaktuj się z działem sprzedaży Apigee.