Wymagania dotyczące instalacji

Wymagania sprzętowe

Aby uzyskać wysoką dostępność, musisz spełniać te minimalne wymagania sprzętowe w środowisku klasy produkcyjnej.

Ten film zawiera ogólne wskazówki dotyczące rozmiarów instalacji:

Dla wszystkich scenariuszy instalacji opisanych w sekcji Topologie instalacji w poniższych tabelach podano wartości minimalne wymagania sprzętowe dotyczące komponentów instalacyjnych.

W tych tabelach wymagania dotyczące dysku twardego są uzupełniające wymagania dotyczące miejsca na dysku twardym wymaganej przez oraz system operacyjny. W zależności od aplikacji i ruchu w sieci instalacja może wymagają mniejszych lub większych zasobów niż wymienione poniżej.

Element instalacyjny Pamięć RAM CPU Minimalny dysk twardy
Cassandra 16 GB 8-rdzeniowy 250 GB pamięci lokalnej z dyskiem SSD obsługującym 2000 IOPS
Procesor/router wiadomości na tym samym komputerze 16 GB 8-rdzeniowy 100GB
Procesor wiadomości (samodzielny) 16 GB 8-rdzeniowy 100GB
Router (samodzielny) 16 GB 8-rdzeniowy 100GB
Analytics – Postgres/Qpid na tym samym serwerze 16GB* 8-rdzeniowy* od 500 GB do 1 TB** pamięci sieciowej***, najlepiej z backendem SSD, obsługa co najmniej 1000 IOPS*
Analytics – instancja główna lub gotowości Postgres (samodzielna) 16GB* 8-rdzeniowy* od 500 GB do 1 TB** pamięci sieciowej***, najlepiej z backendem SSD, obsługa co najmniej 1000 IOPS*
Analytics – samodzielny Qpid 8 GB 4-rdzeniowy 30–50 GB pamięci lokalnej z dyskiem SSD

Domyślny rozmiar kolejki Qpid to 1 GB, który można zwiększyć do 2 GB. Jeśli potrzebujesz więcej pojemności, dodaj więcej węzłów Qpid.

Serwer OpenLDAP/UI/zarządzania 8 GB 4-rdzeniowy 60GB
Interfejs użytkownika/serwer zarządzania 4 GB 2-rdzeniowy 60GB
OpenLDAP (samodzielny) 4 GB 2-rdzeniowy 60GB

* Dostosuj wymagania systemowe Postgres na podstawie przepustowości:

  • Mniej niż 250 TPS: 8 GB, w przypadku sieci zarządzanej możliwe 4 rdzenie pamięć masowa*** obsługująca 1000 IOPS lub więcej
  • Powyżej 250 TPS: 16 GB, 8-rdzeniowy, zarządzana pamięć sieciowa*** obsługa co najmniej 1000 IOPS
  • Powyżej 1000 TPS: 16 GB, 8-rdzeniowy, zarządzana pamięć sieciowa*** obsługa 2000 IOPS lub więcej
  • Powyżej 2000 TPS: 32 GB, 16-rdzeniowy, zarządzana pamięć sieciowa*** obsługa 2000 IOPS lub więcej
  • Powyżej 4000 TPS: 64 GB, 32-rdzeniowy, zarządzana pamięć sieciowa*** obsługa co najmniej 4000 IOPS.

** Wartość dysku twardego Postgres jest określana na podstawie gotowych statystyk przechwyconych przez Edge. Jeśli dodasz do danych analitycznych wartości niestandardowe, należy je zwiększyć odpowiednio się zmienia. 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 of storage needed

*** W przypadku bazy danych Postgresql zalecamy korzystanie z Network Storage, ponieważ:

  • Zapewnia możliwość dynamicznego skalowania rozmiaru pamięci masowej, jeśli i kiedy
  • IOPS sieci można regulować na bieżąco w większości współczesnych środowisko/pamięć masowa/podsystemy sieci.
  • W ramach tworzenia i przywracania kopii zapasowych można włączyć zrzuty poziomu miejsca na dane i rozwiązania.

Oprócz tego poniżej znajdziesz listę wymagań sprzętowych, które pozwolą Ci zainstalować Usługi zarabiania (nieobsługiwane w przypadku instalacji wielofunkcyjnej):

Komponent z zarabianiem Pamięć RAM CPU Dysk twardy
Serwer zarządzania (z usługami do 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ącą 1000 IOPS lub wyżej lub użyj reguły z tabeli powyżej.
Analytics – instancja główna lub tryb gotowości Postgres niezależnie 16 GB 8-rdzeniowy 500 GB–1 TB pamięci sieciowej, najlepiej z backendem SSD, obsługującą 1000 IOPS lub wyżej lub użyj reguły z tabeli powyżej.
Analytics – samodzielny Qpid 16 GB 8-rdzeniowy 40–500 GB pamięci lokalnej na dysku SSD lub szybkim HDD

W przypadku instalacji większych niż 250 TPS wymagany jest dysk HDD z pamięcią lokalną obsługującą 1000 IOPS zalecane.

System operacyjny i inne firmy wymagania oprogramowania

Te instrukcje instalacji i dostarczone pliki instalacyjne zostały przetestowane na systemów operacyjnych i oprogramowania innych firm wymienionych w Obsługiwane oprogramowanie i obsługiwane wersje

Java

Przed instalacją na każdym komputerze musi być zainstalowana obsługiwana wersja Java 1.8. Obsługiwane pakiety JDK są wymienione w Obsługiwane oprogramowanie i obsługiwane wersje

Upewnij się, że zmienna środowiskowa JAVA_HOME wskazuje katalog główny pakietu JDK dla użytkownika wykonującego instalację.

SELinux

W zależności od ustawień SELinux Edge mogą napotkać problemy z instalacją i uruchamianiem Komponenty brzegowe. W razie potrzeby możesz wyłączyć SELinux lub ustawić tryb mniej rygorystyczny podczas instalacji, a po zakończeniu instalacji włącz ją ponownie. Więcej informacji znajdziesz w artykule Instalowanie narzędzia Edge apigee-setup.

Tworzę „apigee” użytkownik

Procedura instalacji tworzy użytkownika systemu Unix o nazwie „apigee”. Katalogi brzegowe pliki są własnością „apigee”, podobnie jak procesy Edge. Oznacza to, że komponenty Edge działają jako „apigee” użytkownika. W razie potrzeby możesz uruchomić komponenty jako inny użytkownik.

Katalog instalacji

Domyślnie instalator zapisuje wszystkie pliki w katalogu /opt/apigee. Ty nie można zmienić lokalizacji tego katalogu. Chociaż nie możesz zmienić tego katalogu, możesz utworzyć link symboliczny /opt/apigee do mapy innej lokalizacji, zgodnie z opisem w sekcji Tworzenie dowiązania symbolicznego na podstawie katalogu /opt/apigee.

W instrukcjach w tym przewodniku katalog instalacji jest oznaczony jako /opt/apigee

Przed utworzeniem dowiązania symbolicznego musisz utworzyć użytkownika i grupę o nazwie „apigee”. To jest tę samą grupę i użytkownika utworzone przez instalator Edge.

Aby utworzyć dowiązanie symboliczne, wykonaj te czynności przed pobraniem pliku Bostrap_4.51.00.sh. Musisz wykonać wszystkie te czynności jako użytkownik root:

  1. Tworzenie „apigee” użytkownik i grupa:
    groupadd -r apigee > useradd -r -g apigee -d /opt/apigee -s /sbin/nologin -c "Apigee platform user" apigee
  2. Utwórz dowiązanie symboliczne z wiersza /opt/apigee do wybranego katalogu głównego instalacji:
    ln -Ts /srv/myInstallDir /opt/apigee

    Gdzie /srv/myInstallDir to żądana lokalizacja plików Edge.

  3. Zmień prawa własności do katalogu głównego instalacji i dowiązania symbolicznego do „apigee” użytkownik:
    chown -h apigee:apigee /srv/myInstallDir /opt/apigee

Ustawienie Sieć

Apigee zaleca sprawdzenie ustawień sieci przed instalacją. Instalator oczekuje, że wszystkie maszyny mają stałe adresy IP. Za pomocą tych poleceń możesz sprawdzić poprawność ustawienie:

  • hostname zwraca nazwę komputera.
  • hostname -i zwraca adres IP dla nazwy hosta, z którego można zaadresować adres. na innych komputerach.

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 inna niż być ustawione prawidłowo. Więcej informacji znajdziesz w dokumentacji używanego systemu operacyjnego.

Jeśli serwer ma kilka kart interfejsu, zmienna „nazwa hosta -i” zwraca wartość rozdzielaną spacją listę adresów IP. Domyślnie instalator Edge używa pierwszego zwróconego adresu IP, który mogą nie zawsze być prawidłowe. Możesz zamiast tego ustawić tę właściwość w plik konfiguracji instalacji:

ENABLE_DYNAMIC_HOSTIP=y

Gdy właściwość ma wartość „y”, instalator prosi o wybranie adresu IP, który ma być używany jako jest częścią instalacji. Wartość domyślna to „n”. Więcej informacji znajdziesz w dokumentacji pliku konfiguracji brzegowej.

Kody TCP

Kody TCP mogą blokować komunikację między niektórymi portami i mieć wpływ na OpenLDAP, Postgres Montaż systemu Cassandra. W tych węzłach zaznacz /etc/hosts.allow i /etc/hosts.deny, aby mieć pewność, że nie ma ograniczeń w wymaganych portach Porty OpenLDAP, Postgres i Cassandra.

iptables

Sprawdź, czy nie ma zasad IPtables, które uniemożliwiają połączenie między węzłami wymagane porty brzegowe. W razie potrzeby możesz podczas instalacji zatrzymać IPtable, używając polecenie:

sudo/etc/init.d/iptables stop

W systemie CentOS 7.x:

systemctl stop firewalld

Dostęp do katalogu

W tabeli poniżej znajdziesz katalogi w węzłach brzegowych, które mają specjalne wymagania z Procesy brzegowe:

Usługa Katalog Opis
Router /etc/rc.d/init.d/functions

Router brzegowy używa routera NGINX i wymaga uprawnień do odczytu w /etc/rc.d/init.d/functions

Jeśli proces zabezpieczeń wymaga przyznania uprawnień /etc/rc.d/init.d/functions, nie ustawiaj ich na wartość 700, bo inaczej router nie można uruchomić.

Aby zezwolić na dostęp z możliwością odczytu, możesz ustawić uprawnienia na poziomie 744. /etc/rc.d/init.d/functions

Miłośnik zoo /dev/random Biblioteka klienta Zookeeper wymaga uprawnień do odczytu generatora liczb losowych /dev/random Jeśli interfejs /dev/random jest zablokowany podczas odczytu, Usługa Zookeeper może się nie uruchomić.

Cassandra

Wszystkie węzły Cassandra muszą być połączone z pierścieniem. Cassandra przechowuje repliki danych w wielu węzłów, aby zapewnić niezawodność i odporność na awarie. Strategia replikacji poszczególnych danych Przestrzeń klawiszy brzegowa określa węzły Cassandra, w których są umieszczone repliki. Więcej informacji: Informacje o Cassandra współczynnik replikacji i poziom spójności.

Cassandra automatycznie dostosowuje rozmiar sterty Javy na podstawie dostępnej pamięci. Więcej informacji: Dostrajanie zasobów Javy w przypadku spadku wydajności lub dużego zużycia pamięci.

Po zainstalowaniu Edge for Private Cloud możesz sprawdzić, czy skonfigurowano Cassandra dowiesz się, jak sprawdzić /opt/apigee/apigee-cassandra/conf/cassandra.yaml. . Sprawdź na przykład, czy skrypt instalacji Edge for Private Cloud ustawił właściwości:

  • cluster_name
  • initial_token
  • partitioner
  • seeds
  • listen_address
  • rpc_address
  • snitch
.

Baza danych PostgreSQL

Po zainstalowaniu Edge możesz dostosować poniższe ustawienia bazy danych PostgreSQL na podstawie ilość 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:

  1. Edytuj plik postgresql.properties:
    vi /opt/apigee/customer/application/postgresql.properties

    Jeśli plik nie istnieje, utwórz go.

  2. Ustaw wymienione powyżej właściwości.
  3. Zapisz zmiany.
  4. Uruchom ponownie bazę danych PostgreSQL:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart

Ograniczenia systemu

Sprawdź, czy na urządzeniu Cassandra i procesorze wiadomości masz ustawione poniższe limity systemu węzłów:

  • W węzłach Cassandra ustaw limity łagodnego i twardego memlocka, nofile oraz przestrzeni adresowej dla użytkownik instalacji (domyślnie „apigee”) w /etc/security/limits.d/90-apigee-edge-limits.conf jak 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
    apigee soft nproc 32768
    apigee hard nproc 65536

    Więcej informacji: Zalecane ustawienia produkcyjne opisane w dokumentacji Apache Cassandra.

  • W węzłach procesora wiadomości ustaw maksymalną liczbę deskryptorów otwartych plików na 64 tys. w /etc/security/limits.d/90-apigee-edge-limits.conf, jak widać poniżej:
    apigee soft nofile 32768
    apigee hard nofile 65536

    W razie potrzeby możesz zwiększyć ten limit. Na przykład, jeśli masz dużo plików tymczasowych.

  • Jeśli zobaczysz ten błąd w routerze lub procesorze wiadomości system.log, Twoje limity deskryptora pliku mogą być za niskie:

    "java.io.IOException: Too many open files"

    Limity liczby użytkowników możesz sprawdzić, uruchamiając polecenie:

    # su - apigee
    $ ulimit -n
    100000
    

    Jeśli po ustawieniu limitów deskryptora pliku nadal osiągasz limity otwartych plików 100000, wyślij zgłoszenie do zespołu pomocy Apigee Edge, aby uzyskać dalsze informacje o rozwiązywaniu problemów.

Usługi bezpieczeństwa sieci (NSS)

Network Security Services (NSS) to zbiór bibliotek, które obsługują tworzenie aplikacje klienckie i serwerowe z włączoną zabezpieczeniami. Musisz się upewnić, że zainstalowano NSS. wersji 3.19 lub nowszej.

Aby sprawdzić bieżącą wersję:

yum info nss

Aby zaktualizować NSS:

yum update nss

Przeczytaj ten artykuł. z RedHat.

Wyłącz wyszukiwanie DNS w IPv6 w przypadku używania NSCD (demona pamięci podręcznej usługi nazw)

Jeśli zainstalowano i włączono NSCD (demon pamięci podręcznej usługi nazw), procesory wiadomości wykonaj dwa wyszukiwania DNS – jedno dla IPv4 i jedno dla IPv6. Wyłącz wyszukiwanie DNS w IPv6, gdy za pomocą NSCD.

Aby wyłączyć wyszukiwanie DNS w IPv6:

  1. Edytuj /etc/nscd.conf w każdym węźle procesora wiadomości.
  2. Ustaw tę właściwość:
    enable-cache hosts no

Wyłącz IPv6 w Google Cloud Platforma dla RedHat/CentOS 7

Jeśli instalujesz Edge na RedHat 7 lub CentOS 7 w Google Cloud Platform, musi wyłączyć protokół IPv6 we wszystkich węzłach Qpid.

Instrukcje znajdziesz w dokumentacji RedHat lub CentOS dla konkretnej wersji systemu operacyjnego. wyłączenie protokołu IPv6. Możesz na przykład:

  1. Otwórz plik /etc/hosts w edytorze.
  2. Wstaw znak „#” znak w kolumnie pierwszego z następujących wierszy, aby go skomentować:
    #::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
  3. Zapisz plik.

AWS AMI,

Jeśli instalujesz Edge w obrazie AWS Amazon Machine Image (AMI) dla systemu 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 wersji standardowej narzędzi systemu UNIX (zgodnie z danymi EL5 lub EL5). EL6.

awk

wyrażenie

libxslt

obr./min

rozpakować

nazwa_podstawowa

grep

lua-socket

rpm2cpio

dodawanie użytkowników

Bash

nazwa hosta

ls

Sed

wc

bc

id

narzędzia sieciowe

sudo

wget

curl

Libaio

perl (z procps)

smoła

Xerces-C

Cyrus-Sasl libdb4 pgrep (z procps) tr mniam

data

libdb-cxx

ps

UUID

chkconfig

dirname libibverbs pwd Uname  
echo librdmacm python    

ntpdate

Apigee zaleca, aby Twoje serwery . Jeśli nie zostało jeszcze skonfigurowane, do tego celu może posłużyć narzędzie ntpdate, które weryfikuje czy serwery są synchronizowane czasowo. Możesz użyć yum install ntp do zainstalowania za media. Jest to szczególnie przydatne przy replikowaniu konfiguracji OpenLDAP. Pamiętaj, że konfigurujesz serwer strefa czasowa UTC.

openldap 2.4

Lokalna instalacja wymaga OpenLDAP 2.4. Jeśli serwer ma połączenie z internetem, a następnie skrypt instalacji Edge pobierze i zainstaluje. OpenLDAP. Jeśli serwer nie ma połączenia z internetem, upewnij się, że OpenLDAP jest już zainstalowany. W RHEL/CentOS można yum install openldap-clients openldap-servers, aby zainstalować OpenLDAP.

W przypadku instalacji na 13 hostach i 12 hostów z 2 centrami danych – OpenLDAP replikacja jest wymagana, ponieważ istnieje wiele węzłów hostujących OpenLDAP.

Zapory sieciowe i hosty wirtualne

Termin virtual jest często przeciążony w branży IT, więc Apigee Edge na potrzeby wdrożenia w chmurze prywatnej i hostów wirtualnych. Aby doprecyzować, przypadki użycia terminu virtual:

  • Maszyny wirtualne: nie jest wymagane, ale niektóre wdrożenia korzystają z technologii maszyn wirtualnych aby utworzyć izolowane serwery dla komponentów Apigee. Hosty maszyn wirtualnych, takie jak hosty fizyczne, mogą mieć dla interfejsów sieciowych i zapór sieciowych.
  • Hosty wirtualne: internetowe punkty końcowe podobne do hosta wirtualnego Apache.

Router maszyny wirtualnej może udostępniać wiele hostów wirtualnych (o ile różnią się one od siebie alias hosta lub port interfejsu).

Na przykład jeden serwer fizyczny A może obsługiwać 2 maszyny wirtualne. o nazwie „VM1” i „VM2”. Załóżmy, że „VM1” udostępnia interfejs wirtualnej sieci Ethernet o nazwie „eth0” w maszynie wirtualnej, do którego przypisany jest adres IP 111.111.111.111 przez maszynę wirtualizacji lub serwer DHCP sieci; i zakładaj, że VM2 udostępnia wirtualny Interfejs Ethernet o nazwie „eth0” i zostanie mu przypisany adres IP 111.111.111.222

W każdej z 2 maszyn wirtualnych może działać router Apigee. Routery ujawniają hosta wirtualnego punktów końcowych jak w tym hipotetycznym przykładzie:

Router Apigee w maszynie wirtualnej VM1 ujawnia 3 hosty wirtualne w swoim interfejsie eth0 (który ma pewne określony adres IP), api.mycompany.com:80, api.mycompany.com:443 oraz test.mycompany.com:80

Router w maszynie wirtualnej VM2 ujawnia api.mycompany.com:80 (ta sama nazwa i port co udostępnione przez maszyna wirtualna 1).

System operacyjny fizycznego hosta może mieć zaporę sieciową. jeśli tak, ta zapora sieciowa musi być skonfigurowana tak, aby przekazywać ruch TCP powiązany z portami udostępnianymi w zwirtualizowanym środowisku interfejsów (111.111.111.111:{80, 443} i 111.111.111.222:80). W system operacyjny każdej maszyny wirtualnej może też mieć własną zaporę sieciową w interfejsie eth0, również musi zezwalać na połączenie przez porty 80 i 443.

Ścieżka bazowa to trzeci komponent zaangażowany w kierowanie wywołań interfejsu API do różnych serwerów proxy interfejsu API wdrożone przez użytkownika. Pakiety serwerów proxy interfejsów API mogą współdzielić punkt końcowy, jeśli ma on różne ścieżek bazowych. Na przykład jedną ścieżkę bazową można zdefiniować jako http://api.mycompany.com:80/ a druga określona jako http://api.mycompany.com:80/salesdemo.

W tym przypadku potrzebny jest system równoważenia obciążenia lub dyrektor ruchu, który dzieli http://api.mojafirma.com:80/ ruch między dwoma adresami IP (111.111.111.111 w maszynie wirtualnej 1 i 111.111.111.222 w maszynie wirtualnej 2). Ta funkcja jest właściwy dla Twojej instalacji i jest konfigurowane przez lokalną grupę sieci.

Ścieżka bazowa jest ustawiana podczas wdrażania interfejsu API. Korzystając z powyższego przykładu, możesz wdrożyć 2 interfejsy API: mycompany i testmycompany dla organizacji mycompany-org z hostem wirtualnym, którego alias hosta to api.mycompany.com i port ustawiony na 80. Jeśli nie zadeklarujesz basepath we wdrożeniu, router nie wie, który interfejs API ma wysyłać żądania przychodzące; do.

Jeśli jednak wdrożysz interfejs API testmycompany z podstawowym adresem URL /salesdemo, użytkownicy będą uzyskiwać dostęp do tego interfejsu API za pomocą http://api.mycompany.com:80/salesdemo Jeśli wdrażasz interfejs API w firmie podstawowy adres URL klasy /, użytkownicy uzyskują dostęp do interfejsu API za pomocą adresu URL http://api.mycompany.com:80/

Licencjonowanie

Każda instalacja Edge wymaga unikalnego pliku licencji uzyskanego z Apigee. Ty musisz podać ścieżkę do pliku licencji podczas instalowania serwera zarządzania, na przykład /tmp/license.txt.

Instalator skopiuje plik licencji do /opt/apigee/customer/conf/license.txt

Jeśli plik licencji jest prawidłowy, serwer zarządzania sprawdza datę ważności i dozwoloną wiadomość Liczba procesorów (MP). Jeśli któreś z ustawień licencji wygaśnie, dzienniki znajdziesz w ta lokalizacja: /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 zespołem sprzedaży Apigee.