Aby skonfigurować Edge po instalacji, użyj kombinacji plików .properties
i narzędzi Edge. Na przykład aby skonfigurować TLS/SSL w nowym interfejsie Edge, musisz edytować
.properties pliki, aby ustawić wymagane właściwości. Zmiany w
.properties plikach wymagają ponownego uruchomienia komponentu Edge, którego dotyczą.
Apigee nazywa technikę edytowania plików .properties _kodem z
konfiguracją_ (czasami w skrócie CwC). Zasadniczo kod z konfiguracją to narzędzie do wyszukiwania par klucz-wartość
oparte na ustawieniach w .properties plikach. W kodzie z konfiguracją klucze są nazywane
tokenami. Aby skonfigurować Edge, musisz ustawić tokeny w .properties
plikach.
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 są ułożone w ten sposób, a ustawienia klienta mają najwyższy priorytet, aby zastąpić wszelkie ustawienia zespołu instalacyjnego lub Apigee:
- Klient
- Instalator
- Komponent
Określanie bieżącej wartości tokena
Zanim ustawisz nową wartość tokena w pliku .properties,
musisz najpierw określić jego bieżącą wartość za pomocą 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.
Ten przykład sprawdza bieżącą wartość tokena conf_http_HTTPRequest.line.limit
dla routera:
/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
Powinien się wyświetlić wynik podobny do tego:
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 #, została zmieniona w komentarz i musisz użyć
specjalnej składni, aby ją zmienić. Więcej informacji znajdziesz w artykule
Ustawianie tokena, który jest obecnie zmieniony w komentarz.
Jeśli nie znasz pełnej 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 konfiguracji |
|---|---|---|
| Cassandra | apigee-cassandra |
/opt/apigee/customer/application/cassandra.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 |
| Nowy interfejs Edge | edge-management-ui |
/opt/apigee/customer/application/management-ui.properties |
| 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 |
| 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 |
| Zookeeper | apigee-zookeeper |
/opt/apigee/customer/application/zookeeper.properties |
Jeśli chcesz ustawić właściwość w jednym z tych plików konfiguracji komponentów, ale ona nie istnieje, możesz ją utworzyć w lokalizacji wymienionej powyżej.
Musisz też się upewnić, że plik właściwości należy do użytkownika „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:
| 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
Możesz modyfikować tylko pliki .properties w katalogu
/opt/apigee/customer/application. Każdy komponent ma w tym katalogu własny
.properties plik. Na przykład router.properties
i management-server.properties. Pełną listę plików właściwości znajdziesz w artykule
Zobacz Lokalizacja plików .properties.
Aby utworzyć plik .properties:
- Utwórz nowy plik tekstowy w edytorze. Nazwa pliku musi być zgodna z listą widoczną w tabeli powyżej w przypadku plików klienta.
- 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
chownaby 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 uaktualnienie zachowa wszystkie właściwości ustawione w komponencie.
Aby ustawić wartość tokena:
- Edytuj plik
.propertieskomponentu. - Dodaj lub zmień wartość tokena. Ten przykład ustawia wartość właściwości
conf_http_HTTPRequest.line.limitna "10k":conf_http_HTTPRequest.line.limit=10k
Jeśli token przyjmuje wiele wartości, rozdziel każdą z nich przecinkiem, jak pokazano 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 dopisujesz 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(Qpidd)apigee-zookeeper(ZooKeeper)edge-management-server(serwer zarządzania)edge-management-ui(nowy interfejs Edge)edge-message-processor(procesor komunikatów)edge-postgres-server(serwer Postgres)edge-qpid-server(serwer Qpid)edge-router(router brzegowy)
Na przykład po edytowaniu pliku
router.propertiesuruchom ponownie router:/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- (Opcjonalnie) Sprawdź, czy wartość tokena jest ustawiona na nową wartość, używając 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 -searchznajdziesz 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 znasz, użyj
grep, aby przeszukać katalog source komponentu.
Jeśli na przykład wiesz, że chcesz ustawić
HTTPRequest.line.limit właściwość i chcesz poznać wartość tokena używaną do jej ustawienia,
użyj polecenia grep aby wyszukać właściwość w katalogu /opt/apigee/edge-management-server/source:
grep -ri "HTTPRequest.line.limit" /opt/apigee/edge-management-server/source
Powinien się wyświetlić wynik w takiej postaci:
/opt/apigee/component_name/source/conf/http.properties:property_name={T}token_name{/T}Ten przykład pokazuje wartość tokena HTTPRequest.line.limit serwera zarządzania:
/opt/apigee/edge-management-server/source/conf/http.properties:HTTPRequest.line.limit={T}conf_http_HTTPRequest.line.limit{/T}Ciąg znaków między tagami {T}{/T} to nazwa tokena, którą możesz ustawić
w pliku komponentu .properties.
Ustawianie tokena, który jest obecnie zmieniony w komentarz
Niektóre tokeny są zmienione w komentarz w plikach konfiguracji Edge. Jeśli spróbujesz ustawić token, który jest zmieniony w komentarz w pliku instalacyjnym lub pliku konfiguracji komponentu, Twoje ustawienie zostanie zignorowane.
Aby ustawić wartość tokena, który jest zmieniony w komentarz w pliku konfiguracji Edge, użyj specjalnej składni w tej postaci:
conf/filename+propertyName=propertyValue
Na przykład aby ustawić właściwość o nazwie HTTPClient.proxy.host w procesorze komunikatów, najpierw grep dla właściwości, aby określić jej token:
grep -ri /opt/apigee/edge-message-processor/ -e "HTTPClient.proxy.host"
Polecenie grep zwraca wyniki, które zawierają nazwę tokena. Zwróć uwagę
, że nazwa właściwości jest zmieniona w komentarz, 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, edytuj
/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 tym przypadku musisz dodać do nazwy 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 komunikatów 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 postaci:
conf/http.properties:HTTPClient.proxy.host=myhost.name.com
Włączanie i wyłączanie protokołu HTTP/2 w nowym interfejsie Edge
W tej sekcji dowiesz się, jak włączyć lub wyłączyć protokół HTTP/2 w nowym interfejsie Edge (edge-management-ui).
- Utwórz lub edytuj plik
/opt/apigee/customer/application/management-ui.propertiesi upewnij się, że należy on do użytkownikaapigee:apigee. - Aby włączyć lub wyłączyć protokół HTTP/2, dodaj to zastąpienie:
conf_uebe_disable_http2={true or false} - Zapisz i uruchom ponownie nowy interfejs Edge (
edge-management-ui).
Dodawanie niestandardowego formatu logów w routerze Apigee/Nginx
W niektórych przypadkach może być konieczne zmienienie domyślnego formatu logów routera Apigee/Nginx lub dodanie zmiennych. Aby zaktualizować domyślną konfigurację formatu logów routera Apigee/Nginx:
- Jeśli nie istnieje, utwórz plik
router.propertiesze ścieżką podaną poniżej:/opt/apigee/customer/application/router.properties
- Aby utworzyć nową konfigurację
log_formato nazwierouter_new, dodaj do plikurouter.propertieste treści: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_formatznajdziesz 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.
- Aby zastosować nową konfigurację, uruchom ponownie router:
apigee-service edge-router restart
- Sprawdź, czy nowa
log_formatkonfiguracja (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 kilka żądań do interfejsu API do proxy interfejsu API i sprawdź nowy format logów w pliku
/opt/apigee/var/log/edge-router/nginx/${org}~${env}.${port}_access_log file