Jak skonfigurować Edge

Edge for Private Cloud w wersji 4.18.05

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

Apigee odnosi się do techniki edytowania plików .properties jako kodu z konfiguracją. Zasadniczo kod z konfiguracją to narzędzie do wyszukiwania par klucz-wartość oparte na ustawieniach plików .properties. W kodzie z konfiguracją klucze są określane jako tokeny. Dlatego w celu skonfigurowania Edge musisz ustawić tokeny w plikach .properties.

Kod z konfiguracją pozwala komponentom Edge na ustawianie wartości domyślnych, które są udostępniane wraz z usługą, a zespół instalacji pozwala zastępować te ustawienia na podstawie topologii instalacji, a następnie pozwala klientom zastępować wybrane przez siebie właściwości.

Jeśli uważasz, że to hierarchia, ustawienia są uporządkowane w następujący sposób: ustawienia klienta mają najwyższy priorytet, aby zastąpić ustawienia z zespołu instalatora lub Apigee:

  1. Klient
  2. Instalator
  3. Apigee

Jak używać plików .properties

Jako klient możesz modyfikować tylko pliki .properties 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 na przykład utworzyć plik .properties:

  1. Utwórz plik w edytorze jako dowolny użytkownik.
  2. Użyj chown, aby zmienić właściciela pliku na „apigee:apigee”. W przypadku zmiany użytkownika korzystającego z usługi Edge z użytkownika „apigee” zmień plik na użytkownika, który używa usługi Edge.

Aby ustawić właściwość komponentu, edytuj odpowiedni plik .properties i ustaw token, a następnie ponownie uruchom komponent:

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

Na przykład po zakończeniu edycji router.properties uruchom ponownie router:

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

Po zaktualizowaniu Edge są odczytywane pliki .properties z katalogu /opt/apigee/customer/application. Oznacza to, że uaktualnienie zachowa wszystkie właściwości ustawione w komponencie.

Lokalizacja plików .properties

Istnieją 3 katalogi najwyższego poziomu dla plików .properties dla komponentów Edge: instalacja, właściciel i klienci. Domyślne lokalizacje są pokazane w tej tabeli:

Właściciel Domyślny katalog główny tokena
Komponent
/opt/apigee/component_name/conf

Gdzie component_name identyfikuje komponent. Możliwe wartości:

  • apigee-cassandra (Cassandra)
  • apigee-openldap (OpenLDAP)
  • apigee-postgresql (baza danych PostgreSQL)
  • apigee-qpidd (kwartał)
  • apigee-sso (SSO – logowanie jednokrotne)
  • apigee-zookeeper (ZooKeeper)
  • edge-management-server (serwer zarządzania)
  • edge-management-ui (nowy interfejs Edge)
  • edge-message-processor (procesor wiadomości)
  • edge-postgres-server (serwer Postgres)
  • edge-qpid-server (serwer Qpid)
  • edge-router (router brzegowy)
  • edge-ui (klasyczny interfejs)
Instalacja
/opt/apigee/token
Klient
/opt/apigee/customer

Określ bieżącą wartość tokena

Zanim ustawisz token w pliku .properties komponentu, możesz najpierw określić jego aktualną wartość, korzystając z tego polecenia:

/opt/apigee/apigee-service/bin/apigee-service component_name configure -search token

Gdzie component_name to nazwa komponentu, a token to token do sprawdzenia.

To polecenie przeszukuje hierarchię plików .properties, aby określić bieżącą wartość tokena.

Aby na przykład sprawdzić bieżącą wartość tokena conf_http_HTTPRequest.line.limit routera:

/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

Dane wyjściowe powinny mieć postać:

Found key conf_http_HTTPRequest.line.limit, with value, 4k, in /opt/apigee/edge-router/token/default.properties

Ustawianie tokenów w plikach .properties

Aby zastąpić wartość tokena:

  1. Aby ustawić wartość tokena, edytuj plik .properties komponentu. Jeśli plik nie istnieje, utwórz go.
  2. Ponownie uruchom komponent.
  3. Sprawdź wartość tokena.

Aby na przykład ustawić limit wierszy żądań dla routera brzegowego:

  1. Edytuj plik /opt/apigee/customer/application/router.properties, aby ustawić token conf_http_HTTPRequest.line.limit:
    conf_http_HTTPRequest.line.limit=8k
  2. Ponownie uruchom router brzegowy:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  3. Sprawdź wartość tokena:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

Ustaw token, który przyjmuje wiele wartości

Niektóre tokeny przyjmują listę wartości rozdzielonych przecinkami. Na przykład token conf_security_rbac.restricted.resources pobiera listę identyfikatorów URI z ograniczeniami, aby tylko administrator mógł je wywoływać. Aby zobaczyć wartość conf_security_rbac.restricted.resources:

cd /opt/apigee/edge-management-server
grep -ri "conf_security_rbac.restricted.resources" *

Dane wyjściowe zawierają:

token/default.properties:conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status

Aby skonfigurować token, który pobiera listę wartości, dołącz wszelkie nowe wartości do bieżącej wartości tokena w pliku .properties. Dlatego, aby dodać identyfikator URI /myuri/* do pliku conf_security_rbac.restricted.resources, edytuj plik /opt/apigee/customer/application/management-server.properties w następujący sposób:

conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*

Zlokalizuj token

W większości przypadków tokeny, które musisz ustawić, są wskazane w tym przewodniku. Jeśli jednak chcesz określić token używany do zastąpienia właściwości, wykonaj grep w folderze source komponentu.

Jeśli na przykład wiesz, że w poprzedniej wersji Edge ustaw właściwość session.maxAge i chcesz poznać wartość tokena użytą do jej skonfigurowania, a następnie grep dla właściwości w katalogu /opt/apigee/edge-ui/source:

grep -ri "session.maxAge" /opt/apigee/edge-ui/source

Wynik powinien mieć postać:

/opt/apigee/edge-ui/source/conf/application.conf:session.maxAge={T}conf_application_session.maxage{/T}

Ciąg znaków między tagami {T}{/T} to token ustawiony w pliku .properties.

Ustaw token, który jest obecnie komentowany

Niektóre tokeny są oznaczone w komentarzach w plikach konfiguracji Edge. Jeśli spróbujesz ustawić token z komentarzem, ustawienie to będzie ignorowane.

Aby ustawić komentowany token, użyj specjalnej składni w formularzu:

conf/file.extension+propertyName=propertyValue

Załóżmy na przykład, że chcesz ustawić właściwość o nazwie HTTPClient.proxy.host w procesorze wiadomości. Następnie wykonujesz grep dla usługi, aby określić jej token:

cd /opt/apigee/edge-message-processor
grep -ri "HTTPClient.proxy.host" *

Polecenie grep zwraca wyniki w formie zawierającej wartość tokena. Zwróć uwagę na sposób komentowania nazwy właściwości, co wskazuje prefiks # w nazwie:

source/conf/http.properties:#HTTPClient.proxy.host={T}conf_http_HTTPClient.proxy.host{/T}
token/default.properties:conf_http_HTTPClient.proxy.host=
conf/http.properties:#HTTPClient.proxy.host=

Aby ustawić właściwość, edytuj /opt/apigee/customer/application/message-processor.properties i ustaw ją jako:

conf/http.properties+HTTPClient.proxy.host=myhost.name.com

Zwróć uwagę, że nazwę właściwości są poprzedzone znakiem conf/http.properties+, lokalizacją i nazwą pliku konfiguracji zawierającego właściwość, po której następuje znak „+”.

Po ponownym uruchomieniu procesora wiadomości sprawdź plik /opt/apigee/edge-message-processor/conf/http.properties:

cat /opt/apigee/edge-message-processor/conf/http.properties

Na końcu pliku będzie widoczny zestaw właściwości w postaci:

conf/http.properties:HTTPClient.proxy.host=myhost.name.com