Aby skonfigurować Edge po instalacji, użyj kombinacji .properties
plików i narzędzi Edge. Na przykład aby 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 odpowiedniego komponentu Edge.
Apigee określa technikę edytowania plików .properties
jako kod z konfiguracją (czasami w skrócie CwC). Kod z konfiguracją to narzędzie do wyszukiwania kluczy i wartości na podstawie ustawień w plikach .properties
. W przypadku konfiguracji w kodzie klucze są nazywane tokenami. Dlatego, aby skonfigurować Edge, musisz ustawić tokeny w plikach .properties
.
Kod z konfiguracją umożliwia komponentom Edge ustawianie wartości domyślnych dostarczanych z produktem, pozwala zespołowi instalacyjnemu zastępować te ustawienia na podstawie topologii instalacji, a następnie umożliwia klientom zastępowanie dowolnych wybranych przez nich właściwości.
Jeśli potraktujesz to jako hierarchię, ustawienia będą uporządkowane w ten sposób, przy czym ustawienia klienta mają najwyższy priorytet i zastępują wszystkie ustawienia zespołu instalacyjnego lub Apigee:
- Klient
- Instalator
- Komponent
Określanie bieżącej wartości tokena
Zanim ustawisz nową wartość tokena w pliku .properties
, najpierw sprawdź jego obecną 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.
Poniższy przykład sprawdza bieżącą wartość tokena conf_http_HTTPRequest.line.limit
w przypadku 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 znaku #
, oznacza to, że został on wykomentowany i musisz użyć specjalnej składni, aby go zmienić. Więcej informacji znajdziesz w artykule Ustawianie tokena, który jest obecnie zakomentowany.
Jeśli nie znasz całej nazwy tokena, użyj narzędzia takiego jak grep
, aby wyszukać
według nazwy właściwości lub słowa kluczowego. Więcej informacji znajdziesz w artykule Znajdowanie tokena.
Pliki właściwości
Istnieją edytowalne i nieedytowalne pliki konfiguracji komponentów. W tej sekcji opisujemy te pliki.
Edytowalne pliki konfiguracji komponentów
W tabeli poniżej znajdziesz listę komponentów Apigee i plików właściwości, które możesz edytować, aby skonfigurować te komponenty:
Komponent | Nazwa komponentu | Edytowalny plik konfiguracyjny |
---|---|---|
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 (tylko nowy interfejs Edge; nie ma wpływu na interfejs klasyczny) | apigee-management-ui |
n/a (użyj pliku konfiguracji instalacji) |
SymasLDAP | 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 |
Serwer Qpid | 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 |
Opiekun zwierząt | apigee-zookeeper |
/opt/apigee/customer/application/zookeeper.properties |
Jeśli chcesz ustawić właściwość w jednym z tych plików konfiguracji komponentu, ale ona nie istnieje, możesz ją utworzyć w lokalizacji podanej powyżej.
Musisz też zadbać o to, aby plik właściwości należał do użytkownika „apigee”:
chown apigee:apigee /opt/apigee/customer/application/configuration_file.properties
Pliki konfiguracji komponentów, których nie można edytować
Oprócz edytowalnych plików konfiguracji komponentów istnieją też pliki konfiguracji, których nie można edytować.
Pliki informacyjne (nie można ich edytować) obejmują:
Właściciel | Nazwa pliku lub katalogu |
---|---|
Instalacja | /opt/apigee/token |
Komponent | /opt/apigee/component_name/conf Gdzie component_name identyfikuje komponent. Możliwe wartości:
|
Ustawianie wartości tokena
Pliki .properties
możesz modyfikować tylko 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
. Pełną listę plików właściwości znajdziesz w artykule Lokalizacja plików .properties.
Aby utworzyć plik .properties
:
- Utwórz nowy plik tekstowy w edytorze. W przypadku plików klientów nazwa pliku musi być zgodna z listą podaną w tabeli powyżej.
- 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 użytkownik, który uruchamia usługę Edge, został zmieniony z „apigee”, użyj polecenia
chown
, aby zmienić właściciela na użytkownika, który uruchamia usługę Edge.
Podczas uaktualniania Edge odczytywane są pliki .properties
w katalogu /opt/apigee/customer/application
. Oznacza to, że po uaktualnieniu zachowane zostaną 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 „10 tys.”:conf_http_HTTPRequest.line.limit=10k
Jeśli token przyjmuje wiele wartości, oddziel je przecinkami, 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 listy, zwykle dołącza się ją na końcu listy.
- Uruchom ponownie komponent:
/opt/apigee/apigee-service/bin/apigee-service component_name restart
gdzie component_name to jedna z tych 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)
Na przykład po edycji
router.properties
uruchom ponownie router:/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- (Opcjonalnie) Sprawdź, czy wartość tokena jest ustawiona na nową wartość, korzystając z opcji
configure -search
. Na przykład:/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
Więcej informacji o
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 chcesz zastąpić wartość istniejącego tokena, którego pełnej nazwy lub lokalizacji nie znasz, użyj grep
, aby przeszukać katalog source
komponentu.
Jeśli na przykład w poprzedniej wersji Edge ustawiono session.maxAge
właściwość i chcesz poznać wartość tokena użytego do jej ustawienia, wpisz 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 tej postaci:
/opt/apigee/component_name/source/conf/application.conf:property_name={T}token_name{/T}
Poniższy przykład pokazuje wartość tokena session.maxAge
interfejsu:
/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 nazwa tokena, którą możesz ustawić w interfejsie .properties
.
Ustawianie tokena, który jest obecnie zakomentowany
W plikach konfiguracyjnych Edge niektóre tokeny są zakomentowane. Jeśli spróbujesz ustawić token, który jest zakomentowany w pliku instalacyjnym lub pliku konfiguracji komponentu, Twoje ustawienie zostanie zignorowane.
Aby ustawić wartość tokena, który jest zakomentowany w pliku konfiguracji Edge, użyj specjalnej składni w tej formie:
conf/filename+propertyName=propertyValue
Aby na przykład ustawić właściwość o nazwie HTTPClient.proxy.host
w procesorze wiadomości, najpierw grep
tę właściwość, 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 właściwości jest wykomentowana, co wskazuje prefiks #:
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, zmień /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ć przed nazwą właściwości prefiks conf/http.properties+
. Jest to lokalizacja i nazwa 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 zobaczysz ustawioną właściwość w formacie:
conf/http.properties:HTTPClient.proxy.host=myhost.name.com
Konfigurowanie serwera proxy do przekazywania żądań z sekcji Wysyłanie żądań w interfejsie śledzenia
Z tej sekcji dowiesz się, jak skonfigurować serwer proxy przekazujący dla żądań z sekcji Wysyłanie żądań w interfejsie śledzenia z opcjonalnymi danymi logowania serwera proxy. Aby skonfigurować serwer proxy przekazujący:
- Edytuj
/opt/apigee/customer/application/ui.properties
i upewnij się, że plik należy doapigee:apigee
. - Dodaj te zastąpienia (zmień wartości na konkretną 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 i uruchom ponownie klasyczny interfejs.
Dodawanie niestandardowego formatu logowania w routerze Apigee lub Nginx
W niektórych przypadkach może być konieczna zmiana domyślnego formatu dziennika routera Apigee lub Nginx albo dodanie zmiennych. Aby zaktualizować domyślną konfigurację formatu logów routera Apigee lub Nginx:
- Utwórz plik
router.properties
, jeśli nie istnieje, w lokalizacji podanej poniżej:/opt/apigee/customer/application/router.properties
- Dodaj do pliku
router.properties
ten kod, aby utworzyć nową konfiguracjęlog_format
o nazwierouter_new
: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 W razie potrzeby zaktualizuj zmienne w powyższych poleceniach. Domyślne wartości konfiguracji
log_format
znajdziesz w tym pliku:/opt/apigee/edge-router/conf/load_balancing.properties
Lista zmiennych Nginx jest dostępna na stronie http://nginx.org/en/docs/varindex.html.
- Uruchom ponownie router, aby zastosować nową konfigurację:
apigee-service edge-router restart
- Sprawdź, czy do pliku
/opt/nginx/conf.d/0-default.conf
dodano nową konfiguracjęlog_format
(router_new
):cat /opt/nginx/conf.d/0-default.conf | grep router_new -A 10
- Wyślij kilka żądań interfejsu API do proxy interfejsu API i sprawdź nowy format logu w pliku.
/opt/apigee/var/log/edge-router/nginx/${org}~${env}.${port}_access_log file