Aby skonfigurować Edge po instalacji, użyj kombinacji plików .properties
i programów Edge. Aby na przykład skonfigurować TLS/SSL w interfejsie Edge, musisz edytować pliki .properties
, aby ustawić niezbędne właściwości. Zmiany w plikach .properties
wymagają ponownego uruchomienia danego komponentu Edge.
Apigee odnosi się do metody edytowania plików .properties
jako kodu z parametrem config (czasami w skrócie CwC). Zasadniczo kod z konfiguracją to narzędzie wyszukiwania kluczy/wartości na podstawie ustawień w plikach .properties
. W kodzie z konfiguracją klucze są nazywane tokenami. Aby skonfigurować Edge, należy ustawić tokeny w plikach .properties
.
Kod z konfiguracją umożliwia komponentom Edge ustawianie domyślnych wartości dostarczanych wraz z produktem, pozwala zespołowi instalacyjnemu zastąpić te ustawienia na podstawie topologii instalacji, a następnie umożliwia klientom zastępowanie dowolnych wybranych właściwości.
Jeśli traktujesz je jako hierarchię, ustawienia są uporządkowane w następujący sposób, przy czym ustawienia klienta mają najwyższy priorytet i zastępują wszystkie ustawienia zespołu instalacyjnego lub Apigee:
- Klient
- Instalator
- Komponent
Określ bieżącą wartość tokena
Zanim ustawisz nową wartość tokena w pliku .properties
,
musisz najpierw określić jego bieżącą wartość, używając 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
komponentu, aby określić bieżącą wartość tokena.
W tym przykładzie sprawdzamy 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
Powinny się wyświetlić dane wyjściowe podobne do tych:
Found key conf_http_HTTPRequest.line.limit, with value, 4k, in /opt/apigee/edge-router/token/default.properties
Jeśli wartość tokena zaczyna się od #
, oznacza to, że została ona wytłumaczona i aby ją zmienić, musisz użyć specjalnej składni. Więcej informacji znajdziesz w artykule o ustawianiu tokena obecnie komentowanego.
Jeśli nie znasz pełnej nazwy tokena, użyj narzędzia takiego jak grep
, aby wyszukać go po nazwie usługi lub słowie kluczowym. Więcej informacji znajdziesz w artykule Znajdowanie tokena.
Pliki właściwości
Istnieją edytowalne i nieedytowalne pliki konfiguracji komponentów. W tej sekcji opisano te pliki.
Edytowalne pliki konfiguracji komponentu
W tabeli poniżej znajdziesz komponenty Apigee i pliki właściwości, które możesz edytować, aby skonfigurować te komponenty:
Komponent | Nazwa komponentu | Edytowalny plik konfiguracji |
---|---|---|
Cassandra | apigee-cassandra |
/opt/apigee/customer/application/cassandra.properties |
Logowanie jednokrotne Apigee | apigee-sso |
/opt/apigee/customer/application/sso.properties |
Serwer zarządzania | edge-management-server |
/opt/apigee/customer/application/management-server.properties |
procesor komunikatów | edge-message-processor |
/opt/apigee/customer/application/message-processor.properties |
apigee-monit |
apigee-monit |
/opt/apigee/customer/application/monit.properties |
Klasyczny interfejs (nie ma wpływu na nowy interfejs Edge). | edge-ui |
/opt/apigee/customer/application/ui.properties |
Interfejs Edge (dotyczy tylko nowego interfejsu Edge; nie ma wpływu na interfejs klasyczny) | apigee-management-ui |
nie dotyczy (użyj pliku konfiguracji instalacji) |
OpenLDAP | apigee-openldap |
/opt/apigee/customer/application/openldap.properties |
Serwer Postgres | edge-postgres-server |
/opt/apigee/customer/application/postgres-server.properties |
Baza danych PostgreSQL | apigee-postgresql |
/opt/apigee/customer/application/postgresql.properties |
Qpid Server | edge-qpid-server |
/opt/apigee/customer/application/qpid-server.properties |
Qpidd | apigee-qpidd |
/opt/apigee/customer/application/qpidd.properties |
Router | edge-router |
/opt/apigee/customer/application/router.properties |
Zookeeper | apigee-zookeeper |
/opt/apigee/customer/application/zookeeper.properties |
Jeśli chcesz ustawić w jednym z tych plików konfiguracji komponentu właściwość, która nie istnieje, możesz ją utworzyć w wymienionej powyżej lokalizacji.
Musisz też sprawdzić, czy właścicielem pliku z właściwościami jest użytkownik „apigee”:
chown apigee:apigee /opt/apigee/customer/application/configuration_file.properties
Nieedytowalne pliki konfiguracji komponentów
Oprócz edytowalnych plików konfiguracji komponentów istnieją też pliki konfiguracji, których nie można edytować.
Pliki informacyjne (nieedytowalne) to między innymi:
Właściciel | Nazwa pliku lub katalogu |
---|---|
Instalacja | /opt/apigee/token |
Komponent | /opt/apigee/component_name/conf Gdzie component_name to identyfikator komponentu. Możliwe wartości:
|
Ustawianie wartości tokena
Możesz modyfikować tylko pliki .properties
w katalogu /opt/apigee/customer/application
. Każdy komponent ma w tym katalogu swój własny plik .properties
. Na przykład: router.properties
i management-server.properties
. Pełną listę plików właściwości znajdziesz w sekcji Lokalizacja plików właściwości.
Aby utworzyć plik .properties
:
- Utwórz nowy plik tekstowy w edytorze. Nazwa pliku musi odpowiadać liście widocznej w tabeli powyżej w przypadku plików klientów.
- Zmień właściciela pliku na „apigee:apigee”, jak pokazano w tym przykładzie:
chown apigee:apigee /opt/apigee/customer/application/router.properties
Jeśli zmienisz użytkownika, który uruchamia usługę Edge, z użytkownika „apigee”, użyj opcji
chown
, aby zmienić właściciela na użytkownika, który uruchamia usługę Edge.
Podczas aktualizacji przeglądarki Edge pliki .properties
w katalogu /opt/apigee/customer/application
są odczytywane. Oznacza to, że podczas uaktualniania zostaną zachowane wszystkie właściwości ustawione w komponencie.
Aby ustawić wartość tokena:
- Edytuj plik
.properties
komponentu. - Dodaj lub zmień wartość tokena. W tym przykładzie wartość właściwości
conf_http_HTTPRequest.line.limit
jest ustawiona na „10k”:conf_http_HTTPRequest.line.limit=10k
Jeśli token przyjmuje wiele wartości, oddziel każdą z nich przecinkiem, jak w tym przykładzie:
conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*
Aby dodać nową wartość do takiej listy, zwykle dołączasz ją na końcu listy.
- Ponownie uruchom komponent:
/opt/apigee/apigee-service/bin/apigee-service component_name restart
Gdzie component_name to jeden z tych elementów:
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)
Na przykład po wprowadzeniu zmian w elemencie
router.properties
uruchom ponownie router:/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- (Opcjonalnie) Użyj opcji
configure -search
, aby sprawdzić, czy wartość tokena jest ustawiona na nową wartość. Przykład:/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
Więcej informacji o tagu
configure -search
znajdziesz w artykule Określanie bieżącej wartości tokena.
Znajdowanie tokena
W większości przypadków tokeny, które musisz ustawić, są wymienione w tym przewodniku. Jeśli jednak musisz zastąpić wartość istniejącego tokena, którego pełnej nazwy lub lokalizacji nie masz pewności, użyj grep
do przeszukania katalogu source
komponentu.
Jeśli na przykład wiesz, że w poprzedniej wersji Edge ustawiono właściwość session.maxAge
i chcesz poznać wartość tokena użytego do jej ustawienia, grep
dla tej właściwości w katalogu /opt/apigee/edge-ui/source
:
grep -ri "session.maxAge" /opt/apigee/edge-ui/source
Powinien pojawić się wynik w takim formacie:
/opt/apigee/component_name/source/conf/application.conf:property_name={T}token_name{/T}
Poniższy przykład pokazuje wartość tokena session.maxAge
interfejsu użytkownika:
/opt/apigee/edge-ui/source/conf/application.conf:session.maxAge={T}conf_application_session.maxage{/T}
Ciąg między tagami {T}{/T} to nazwa tokena, który możesz ustawić w pliku .properties
interfejsu użytkownika.
Ustawianie tokena, który jest obecnie skomentowany
Niektóre tokeny są wytłumaczone w komentarzu w plikach konfiguracyjnych Edge. Jeśli spróbujesz ustawić token, który jest skomentowany w pliku konfiguracji instalacji lub komponentu, ustawienie zostanie zignorowane.
Aby ustawić wartość tokena oznaczonego jako komentarz w pliku konfiguracji Edge, użyj specjalnej składni w tej formie:
conf/filename+propertyName=propertyValue
Na przykład, aby ustawić w procesorze wiadomości właściwość o nazwie HTTPClient.proxy.host
, najpierw grep
dla tej usługi, aby określić jej token:
grep -ri /opt/apigee/edge-message-processor/ -e "HTTPClient.proxy.host"
Polecenie grep
zwraca wyniki zawierające nazwę tokena. Zwróć uwagę, że nazwa usługi jest oznaczona jako komentarz za pomocą prefiksu #:
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ć wartość tej właściwości, zmodyfikuj /opt/apigee/customer/application/message-processor.properties
, ale użyj specjalnej składni, jak pokazano w tym przykładzie:
conf/http.properties+HTTPClient.proxy.host=myhost.name.com
W takim przypadku musisz dodać do nazwy usługi prefiks conf/http.properties+
. To jest lokalizacja i nazwa pliku konfiguracji zawierającego usługę, po której następuje „+”.
Po ponownym uruchomieniu usługi Message Processor sprawdź plik:/opt/apigee/edge-message-processor/conf/http.properties
cat /opt/apigee/edge-message-processor/conf/http.properties
Na końcu pliku zobaczysz zestaw właściwości w formie:
conf/http.properties:HTTPClient.proxy.host=myhost.name.com
Skonfiguruj serwer proxy przekierowania dla żądań z sekcji wysyłania żądań w interfejsie Trace
Z tej sekcji dowiesz się, jak skonfigurować serwer proxy przekazujący w przypadku żądań z sekcji Wysyłaj żądania w interfejsie Trace z opcjonalnymi poświadczeniami serwera proxy. Aby skonfigurować serwer proxy przekazujący:
- Edytuj plik
/opt/apigee/customer/application/ui.properties
i sprawdź, czy jest on własnością użytkownikaapigee:apigee
. - Dodaj te zastąpienia (zmieniając wartości zgodnie ze swoją konfiguracją serwera proxy):
conf_application_http.proxyhost=proxy.example.com conf_application_http.proxyport=8080 conf_application_http.proxyuser=apigee conf_application_http.proxypassword=Apigee123!
- Zapisz klasyczny interfejs i uruchom go ponownie.
Dodawanie niestandardowego formatu logów w Apigee Router/Nginx
W niektórych przypadkach konieczne może być zmodyfikowanie domyślnego formatu dziennika Apigee Router/Nginx lub dodanie zmiennych. Aby zaktualizować domyślną konfigurację formatu logów Apigee Router/Nginx:
- Jeśli plik
router.properties
nie istnieje, utwórz go, podając ścieżkę poniżej:/opt/apigee/customer/application/router.properties
- Aby utworzyć nową konfigurację
log_format
o nazwierouter_new
, dodaj do plikurouter.properties
te dane:conf_load_balancing_load.balancing.driver.nginx.global.http.parameters.template.extra=log_format router_new 'time_iso8601\\\\thostname\\\\tremote_addr:remote_port\\\\t'\\\\n\\n 'upstream_addr\\\\trequest_time\\\\t-\\\\t-\\\\t'\\\\n\\n '
status\\\\tupstream_status\\\\trequest_length\\\\t'\\\\n\\n 'body_bytes_sent\\\\t'\\\\n\\n 'request\\\\tupstream_http_x_apigee_message_id\\\\t'\\\\n\\n 'http_user_agent\\\\thost\\thostname-pid-connection-connection_requests\\\\tmy_nginx_var_xff\\t'\\\\n\\n 'upstream_http_x_apigee_fault_flag\\\\tupstream_http_x_apigee_fault_source\\\\tupstream_http_x_apigee_fault_code\\\\t'\\\\n\\n 'upstream_http_x_apigee_fault_policy\\tupstream_http_x_apigee_fault_flow\\tupstream_http_x_apigee_fault_revision\\t'\\\\n\\n 'upstream_http_x_apigee_dp_color\\\\tmy_x_apigee_target_latency\\\\t'\\\\n\\n 'upstream_http_x_apigee_proxy\\\\tupstream_http_x_apigee_proxy_basepath\\\\t'\\\\n\\n 'self_region\\\\tself_pod\\\\tself_color\\\\tssl_protocol\\\\tssl_client_verify\\\\tssl_session_id\\\\tssl_session_reused\\\\tupstream_pod\\\\tupstream_region';\\\\n\\n\n conf_load_balancing_load.balancing.driver.nginx.access.log={conf_load_balancing_load.balancing.driver.nginx.log.dir}/{org}~{env}.{port}_access_log router_new Zaktualizuj odpowiednio zmienne w powyższych poleceniach. Domyślne wartości konfiguracji
log_format
znajdziesz w pliku poniżej:/opt/apigee/edge-router/conf/load_balancing.properties
Lista zmiennych Nginx znajduje się na stronie http://nginx.org/en/docs/varindex.html.
- Aby zastosować nową konfigurację, zrestartuj router:
apigee-service edge-router restart
- Sprawdź, czy nowa konfiguracja
log_format
(router_new
) została dodana do pliku/opt/nginx/conf.d/0-default.conf
:cat /opt/nginx/conf.d/0-default.conf | grep router_new -A 10
- Wyślij żądania do interfejsu API do serwera proxy interfejsu API i zweryfikuj nowy format logu w pliku
/opt/apigee/var/log/edge-router/nginx/${org}~${env}.${port}_access_log file