Omówienie instalacji brzegowej

Edge for Private Cloud wer. 4.16.09

Typowa instalacja Edge składa się z komponentów Edge rozmieszczonych w wielu węzłach. Po zainstalowaniu Edge w węźle musisz zainstalować i skonfigurować w nim co najmniej 1 komponent Edge.

Proces instalacji

Instalowanie Edge w węźle jest procesem wieloetapowym:

  • Wyłącz SELinux w węźle lub ustaw go w trybie mniej rygorystycznym. Więcej informacji znajdziesz w artykule Instalowanie narzędzia Edge apigee-setup.
  • Wybierz konfigurację brzegową z listy zalecanych topologii. Możesz na przykład zainstalować Edge w jednym węźle na potrzeby testowania lub w 13 węzłach w środowisku produkcyjnym. Więcej informacji znajdziesz w sekcji Topologie instalacji.
  • W każdym węźle w wybranej topologii zainstaluj narzędzie Edge apigee-setup:
    • Pobierz plik Edge bootstrap_4.16.09.sh do pliku /tmp/bootstrap_4.16.09.sh.
    • Zainstaluj narzędzie Edge apigee-service i zależności.
    • Zainstaluj narzędzie Edge apigee-setup i zależności.

      Więcej informacji znajdziesz w artykule Instalowanie narzędzia Edge apigee-setup.
  • Za pomocą narzędzia apigee-setup możesz zainstalować co najmniej 1 komponent Edge w każdym węźle w zależności od wybranej topologii.
    Zobacz artykuł Instalowanie komponentów Edge w węźle w węźle.
  • W węźle serwera zarządzania użyj narzędzia apigee-setup, aby zainstalować apigee-provision, czyli narzędzia używane do tworzenia organizacji brzegowych i zarządzania nimi.
    Więcej informacji znajdziesz w artykule Rejestrowanie organizacji.

Postępowanie w przypadku niepowodzenia instalacji

Jeśli podczas instalacji komponentu Edge wystąpi błąd, możesz spróbować rozwiązać problem, a następnie ponownie uruchomić instalator. Instalator uruchamiał się wielokrotnie, gdy wykryje błąd lub gdy zechcesz później zmienić bądź zaktualizować komponent.

Skonfiguruj replikację gotowości instancji głównej Postgres

Domyślnie Edge instaluje wszystkie węzły Postgres w trybie głównym. Jednak w systemach produkcyjnych z wieloma węzłami Postgres skonfigurujesz je w taki sposób, aby używały replikacji gotowości mastera, tak aby w przypadku awarii węzła nadrzędnego węzeł ten mógł nadal obsługiwać ruch. Więcej informacji znajdziesz w artykule Konfigurowanie replikacji master-standby for Postgres.

Kto może przeprowadzić instalację

Pliki dystrybucyjne Apigee Edge są instalowane jako zestaw RPM i zależności. Aby zainstalować, odinstalować i zaktualizować Edge, polecenia Edge muszą być uruchamiane przez użytkownika root lub użytkownika z pełnym dostępem do sudo. Pełny dostęp sudo oznacza, że użytkownik ma dostęp sudo umożliwiający wykonywanie tych samych operacji co użytkownik root.

Każdy użytkownik, który chce uruchamiać poniższe polecenia lub skrypty, musi być użytkownikiem roota lub mieć pełny dostęp do sudo:

  • Narzędzie apigee-service:
    • Polecenia apigee-service: Zainstaluj, Odinstaluj, zaktualizuj.
    • Polecenia apigee-all: Zainstaluj, Odinstaluj, zaktualizuj.
  • Skrypt setup.sh do instalowania komponentów Edge (chyba że do zainstalowania wymaganych RPM) został użyty skrypt „apigee-serviceinstall”. Następnie, jeśli nie jest wymagany, uzyskasz dostęp do roota lub pełnego dostępu do sudo).
  • skrypt update.sh, aby zaktualizować komponenty Edge;

Dodatkowo instalator Edge utworzy w systemie nowego użytkownika o nazwie „apigee”. Wiele poleceń Edge wywołuje sudo, które jest uruchamiane jako użytkownik „apigee”.

Każdy użytkownik, który chce uruchamiać wszystkie inne polecenia niż wymienione powyżej, musi być użytkownikiem z pełnym dostępem sudo do użytkownika „apigee”. Do poleceń tych należą:

  • polecenia narzędzia apigee-service, w tym:
    • polecenia apigee-service, takich jak start, stop, restart, configure.
    • polecenia apigee-all, takich jak start, stop, restart, configure.

Aby skonfigurować dla użytkownika pełny dostęp sudo do użytkownika „apigee”, edytuj plik sudoers i dodaj do niego:

installUser        ALL=(apigee)      NOPASSWD: ALL

gdzie installUser to nazwa użytkownika osoby pracującej z Edge.

Wszystkie pliki i zasoby używane przez polecenia Edge muszą być dostępne dla użytkownika „apigee”. Obejmuje to plik licencji Edge i wszystkie pliki konfiguracyjne.

Podczas tworzenia pliku konfiguracji możesz zmienić jego właściciela na „apigee:apigee”, aby mieć pewność, że będzie on dostępny dla poleceń Edge:

  1. Utwórz plik w edytorze jako dowolny użytkownik.
  2. Zmień właściciela pliku na „apigee:apigee” lub, w przypadku zmiany użytkownika korzystającego z usługi Edge z użytkownika „apigee”, wymień plik na użytkownika, który używa usługi Edge.

Lokalizacja plików konfiguracji instalacji

Do narzędzia apigee-setup musisz przekazać plik konfiguracji zawierający informacje o instalacji Edge. Jedynym wymaganiem w przypadku instalacji dyskretnych jest to, aby plik konfiguracji był dostępny i czytelny dla użytkownika „apigee”. Na przykład umieść plik w katalogu /usr/local/var lub /usr/local/share w węźle i ustaw go jako „apigee:apigee”.

Wymagane są wszystkie informacje w pliku konfiguracji oprócz hasła administratora systemu Edge. Jeśli pominiesz hasło, narzędzie apigee-setup poprosi o podanie go w wierszu poleceń.

Więcej informacji znajdziesz w artykule Instalowanie komponentów Edge w węźle.

Instalacja z internetu lub bez połączenia z internetem

Aby zainstalować Edge w węźle, musi on mieć dostęp do repozytorium Apigee:

  • Węzły z zewnętrznym połączeniem internetowym

    Węzły z zewnętrznym połączeniem internetowym uzyskują dostęp do repozytorium Apigee, aby instalować RPM i zależności Edge.
  • Węzły bez zewnętrznego połączenia z internetem

    Węzły bez zewnętrznego połączenia z internetem mają dostęp do powielanej wersji repozytorium Apigee skonfigurowanego wewnętrznie. To repozytorium zawiera wszystkie RPM brzegowy, ale musisz się upewnić, że dostępne są wszystkie pozostałe zależności pochodzące z repozytoriów w sieci wewnętrznej.

    Uwaga: Apigee nie hostuje wszystkich zależności zewnętrznych w naszych repozytoriach publicznych. Musisz pobrać i zainstalować te zależności z publicznie dostępnych repozytoriów.

Rozwiązywanie zależności dotyczących instalacji RPM

Pliki dystrybucyjne Apigee Edge są instalowane jako zestaw plików RPM, z których każdy może mieć własny łańcuch zależności instalacji. Wiele z tych zależności jest zdefiniowanych przez komponenty innych firm, które są poza kontrolą Apigee i mogą się zmienić w dowolnym momencie. Dlatego w dokumentacji nie podano dokładnego numeru wersji każdej zależności.

Jeśli przeprowadzasz instalację na komputerze z dostępem do internetu, węzeł może pobrać niezbędne pakiety RPM i zależności. Jeśli jednak przeprowadzasz instalację z węzła bez dostępu do internetu, zwykle konfigurowane jest wewnętrzne repozytorium zawierające wszystkie niezbędne zależności. Jedynym sposobem, aby zagwarantować uwzględnienie wszystkich zależności w lokalnym repozytorium, jest podjęcie próby instalacji, zidentyfikowanie brakujących zależności i skopiowanie ich do lokalnego repozytorium do czasu zakończenia instalacji.

Konfigurowanie hosta wirtualnego

Host wirtualny na Edge określa domeny i porty routera Edge, na których jest dostępny serwer proxy interfejsu API, a także URL, którego aplikacje używają, aby uzyskać dostęp do serwera proxy interfejsu API. Host wirtualny określa też, czy dostęp do serwera proxy interfejsu API jest możliwy przez protokół HTTP czy zaszyfrowany protokół HTTPS.

W ramach procesu wdrażania Edge musisz utworzyć organizację, środowisko i hosta wirtualnego. Edge udostępnia polecenie setup-org, aby ułatwić ten proces nowym użytkownikom.

Podczas tworzenia hosta wirtualnego musisz podać te informacje:

  • Nazwa hosta wirtualnego, którego używasz, aby się do niego odwoływać w serwerach proxy interfejsu API.
  • Port routera dla hosta wirtualnego. Zwykle te porty zaczynają się od 9001 i zwiększają się o 1 dla każdego nowego hosta wirtualnego.
  • Alias hosta hosta wirtualnego. Zwykle jest to nazwa DNS hosta wirtualnego.

Podczas określania serwera proxy interfejsu API, który obsługuje żądanie, router Edge porównuje nagłówek Host przychodzącego żądania z listą dostępnych aliasów hostów. Gdy wysyłasz żądanie do hosta wirtualnego, podaj nazwę domeny pasującą do aliasu hosta wirtualnego lub adres IP routera i nagłówek Host zawierający alias hosta.

Jeśli na przykład utworzysz hosta wirtualny z aliasem myapis.apigee.net na porcie 9001, żądanie cURL do interfejsu API poprzez ten host wirtualny może wyglądać tak:

  • Jeśli masz wpis DNS dla domeny myapis.apigee.net:

    curl http://myapis.apigee.net:9001/{proxy-base-path}/{ścieżka-zasobu}
  • Jeśli nie masz wpisu DNS dla myapis.apigee.net:

    curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} -H 'Host: myapis.apigee.net'

    W tym formularzu określasz adres IP routera i przekazujesz nagłówek hosta w aliasie.

    Uwaga: polecenie curl, większość przeglądarek i wiele innych narzędzi automatycznie dołącza nagłówek Host do domeny jako część żądania, dzięki czemu możesz użyć polecenia curl w formacie:


    curl http://<routerIP>:9001/{proxy-base-path}/{resource-path}

Opcje dostępne, gdy nie ma wpisu DNS dla hosta wirtualnego

Jeśli nie masz wpisu DNS, możesz ustawić alias hosta na adres IP routera i port hosta wirtualnego jako <routerIP>:port. Na przykład:

192.168.1.31:9001

Następnie utwórz polecenie curl w formularzu poniżej:

curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} 

Ta opcja jest preferowana, ponieważ dobrze działa z interfejsem Edge.

Jeśli masz kilka routerów, dodaj alias hosta dla każdego routera, który określa adres IP każdego routera i port hosta wirtualnego.

Alias hosta możesz też ustawić jako wartość, na przykład temp.hostalias.com. Następnie w każdym żądaniu musisz przekazywać nagłówek Host:

curl -v http://<routerIP>:9001/{proxy-base-path}/{resource-path}  -H 'host: temp.hostalias.com'

Możesz też dodać alias hosta do pliku /etc/hosts. Na przykład dodaj ten wiersz do katalogu /etc/hosts:

192.168.1.31   temp.hostalias.com

Następnie możesz wysłać żądanie tak, jakby był wpis DNS:

curl -v http://myapis.apigee.net:9001/{proxy-base-path}/{resource-path}

Konfigurowanie komponentów Edge po instalacji

Aby skonfigurować Edge po instalacji, użyj kombinacji plików .properties i narzędzi Edge. Jeśli na przykład chcesz skonfigurować protokół TLS/SSL w interfejsie użytkownika Edge, musisz zmodyfikować pliki .properties, aby ustawić niezbędne właściwości. Zmiany w plikach .properties wymagają ponownego uruchomienia komponentu Edge, którego dotyczy problem.

Pliki .properties znajdują się w katalogu /opt/apigee/customer/application. Każdy komponent ma w tym katalogu własny plik .properties. Na przykład router.properties i management-server.properties.

Aby ustawić właściwość komponentu, zmodyfikuj odpowiedni plik .properties, a potem ponownie uruchom komponent:

> /opt/apigee/apigee-service/bin/apigee-service component restart

Na przykład:

> /opt/apigee/apigee-service/bin/apigee-service edge-router restart

Gdy aktualizujesz Edge, pliki .properties w katalogu /opt/apigee/customer/application są odczytywane. Oznacza to, że aktualizacja zachowuje wszystkie właściwości ustawione w komponencie.

Więcej informacji o konfiguracji Edge znajdziesz w artykule Jak skonfigurować Edge.

Sprawdź, czy router brzegowy ma dostęp do pliku /etc/rc.d/init.d/functions

Router graniczny a portal BaaS korzysta z routera Nginx i wymaga uprawnień do odczytu pliku /etc/rc.d/init.d/functions.

Jeśli proces zabezpieczeń wymaga ustawienia uprawnień dla pliku /etc/rc.d/init.d/functions, nie ustawiaj ich na wartość 700, bo inaczej router się nie uruchomi. Uprawnienia można ustawić na wartość 744, aby zezwolić na odczyt pliku /etc/rc.d/init.d/functions.

Wywoływanie poleceń w komponentach Edge

Narzędzia do zarządzania instalacjami brzegowymi w sekcji /opt/apigee/apigee-service/bin, których możesz używać do zarządzania instalacją Edge. Możesz na przykład użyć narzędzia apigee-all do uruchamiania, zatrzymywania, ponownego uruchamiania lub określania stanu wszystkich komponentów Edge w węźle:

/opt/apigee/apigee-service/bin/apigee-all stop|start|restart|status|version

Za pomocą narzędzia apigee-service możesz kontrolować i konfigurować poszczególne komponenty. Narzędzie apigee-service ma postać:

/opt/apigee/apigee-service/bin/apigee-service component action

Aby na przykład ponownie uruchomić router brzegowy:

/opt/apigee/apigee-service/bin/apigee-service edge-router restart

Listę komponentów zainstalowanych w węźle możesz określić, przeglądając katalog /opt/apigee. Ten katalog zawiera podkatalog dla każdego komponentu Edge zainstalowanego w węźle. Każdy podkatalog jest poprzedzony ciągiem:

  • apigee – komponent firmy zewnętrznej używany przez Edge. Na przykład apigee-cassandra.
  • edge – komponent Edge z Apigee. Na przykład edge-management-server.
  • edge-mint – komponent służący do zarabiania. Na przykład edge-mint-management-server.
  • baas – komponent interfejsu API BaaS. Na przykład baas-usergrid.

Pełna lista działań komponentu zależy od samego komponentu, ale wszystkie komponenty obsługują te działania:

  • uruchamianie, zatrzymywanie, ponowne uruchamianie
  • stan, wersja
  • tworzenie kopii zapasowej, przywracanie
  • instalacja, odinstalowywanie

Uzyskiwanie dostępu do plików dziennika

Plik dziennika dla zdarzenia apigee-setup i skryptu setup.sh są zapisywane w folderze /tmp/setup-root.log.

Pliki dzienników poszczególnych komponentów znajdują się w katalogu /opt/apigee/var/log. Każdy komponent ma własny podkatalog. Na przykład logi serwera zarządzania znajdują się w katalogu:

/opt/apigee/var/log/edge-management-server

Typowe polecenia Yum

Narzędzia do instalacji Edge w systemie Linux korzystają z narzędzia Yum do instalowania i aktualizowania komponentów. Zarządzanie instalacją w węźle może wymagać użycia kilku poleceń Yum.

  • Wyczyść wszystkie pamięci podręczne Yum:
    sudo yum oczyść wszystko
  • Aby zaktualizować komponent Edge:
    sudo yum update componentName
    Na przykład:
    sudo yum update apigee-setup
    sudo yum update krawędź-management-server

Struktura systemu plików

Edge instaluje wszystkie pliki w katalogu /opt/apigee.

W tym przewodniku i w przewodniku po operacjach brzegowych główny katalog instalacji jest oznaczony jako:

<inst_root>/apigee

Do wdrożenia Apigee Edge dla chmury prywatnej instalacja wykorzystuje poniższą strukturę systemu plików.

Pliki dziennika

Komponenty

Lokalizacja

Serwer zarządzania

<inst_root>/apigee/var/log/edge-management-server

Router

<inst_root>/apigee/var/log/edge-router

procesor komunikatów

<inst_root>/apigee/var/log/edge-message-processor

Serwer Apigee Qpid

<inst_root>/apigee/var/log/edge-qpid-server

Serwer Apigee Postgres

<inst_root>/apigee/var/log/edge-postgres-server

Interfejs Edge

<inst_root>/apigee/var/log/edge-ui

ZooKeeper

<inst_root>/apigee/var/log/apigee-zookeeper

OpenLDAP

<inst_root>/apigee/var/log/apigee-openldap

Cassandra

<inst_root>/apigee/var/log/apigee-cassandra

Qpidd

<inst_root>/apigee/var/log/apigee-qpidd

Baza danych PostgreSQL

<inst_root>/apigee/var/log/apigee-postgresql

Dane

Komponenty

Lokalizacja

Serwer zarządzania

<data_root>/apigee/data/edge-management-server

Router

<data_root>/apigee/data/edge-router

procesor komunikatów

<data_root>/apigee/data/edge-message-processor

Agent Apigee Qpid

<data_root>/apigee/data/edge-qpid-server

Agent Apigee Postgres

<data_root>/apigee/data/edge-postgres-server

ZooKeeper

<data_root>/apigee/data/apigee-zookeeper

OpenLDAP

<data_root>/apigee/data/apigee-openldap

Cassandra

<data_root>/apigee/data/apigee-cassandra/data

Qpidd

<data_root>/apigee/data/apigee-qpid/data

Baza danych PostgreSQL

<data_root>/apigee/data/apigee-postgres/pgdata