Zum Konfigurieren von Edge nach der Installation verwenden Sie eine Kombination aus .properties Dateien
und Edge-Dienstprogrammen. Wenn Sie beispielsweise TLS/SSL in der neuen Edge-Benutzeroberfläche konfigurieren möchten, bearbeiten Sie
.properties Dateien, um die erforderlichen Attribute festzulegen. Änderungen an
.properties Dateien erfordern einen Neustart der betroffenen Edge-Komponente.
Apigee bezeichnet die Technik zum Bearbeiten von .properties-Dateien als Code mit
Konfiguration (manchmal als CwC abgekürzt). Im Wesentlichen ist Code mit Konfiguration ein Tool zum Nachschlagen von Schlüssel/Wert-Paaren, das auf Einstellungen in .properties Dateien basiert. In Code mit Konfiguration werden die Schlüssel als
Tokens bezeichnet. Zum Konfigurieren von Edge legen Sie daher Tokens in .properties
Dateien fest.
Mit Code mit Konfiguration können Edge-Komponenten Standardwerte festlegen, die im Produkt enthalten sind. Das Installationsteam kann diese Einstellungen basierend auf der Installationstopologie überschreiben und Kunden können dann alle gewünschten Attribute überschreiben.
Wenn Sie es als Hierarchie betrachten, sind die Einstellungen wie folgt angeordnet, wobei die Kunden Einstellungen die höchste Priorität haben, um alle Einstellungen des Installationsteams oder von Apigee zu überschreiben:
- Kunde
- Installierer
- Komponente
Aktuellen Wert eines Tokens ermitteln
Bevor Sie einen neuen Wert für ein Token in einer .properties Datei festlegen,
sollten Sie zuerst den aktuellen Wert mit dem folgenden Befehl ermitteln:
/opt/apigee/apigee-service/bin/apigee-service component_name configure -search token
Dabei ist component_name der Name der Komponente und token das zu prüfende Token.
Mit diesem Befehl wird die Hierarchie der .properties-Dateien der Komponente durchsucht, um
den aktuellen Wert des Tokens zu ermitteln.
Im folgenden Beispiel wird der aktuelle Wert des conf_http_HTTPRequest.line.limit
Tokens für den Router geprüft:
/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
Die Ausgabe sollte so aussehen:
Found key conf_http_HTTPRequest.line.limit, with value, 4k, in /opt/apigee/edge-router/token/default.properties
Wenn der Wert des Tokens mit einem # beginnt, wurde er auskommentiert und Sie müssen eine spezielle Syntax verwenden, um ihn zu ändern. Weitere Informationen finden Sie unter
Token festlegen, das derzeit auskommentiert ist.
Wenn Sie den vollständigen Namen des Tokens nicht kennen, verwenden Sie ein Tool wie grep, um nach dem Attributnamen oder einem Schlüsselwort zu suchen. Weitere Informationen finden Sie unter Token suchen.
Attributdateien
Es gibt bearbeitbare und nicht bearbeitbare Konfigurationsdateien für Komponenten. In diesem Abschnitt werden diese Dateien beschrieben.
Bearbeitbare Konfigurationsdateien für Komponenten
In der folgenden Tabelle sind die Apigee-Komponenten und die Attributdateien aufgeführt, die Sie bearbeiten können, um diese Komponenten zu konfigurieren:
| Komponente | Komponentenname | Bearbeitbare Konfigurationsdatei |
|---|---|---|
| Cassandra | apigee-cassandra |
/opt/apigee/customer/application/cassandra.properties |
| Verwaltungsserver | edge-management-server |
/opt/apigee/customer/application/management-server.properties |
| Message Processor | edge-message-processor |
/opt/apigee/customer/application/message-processor.properties |
apigee-monit |
apigee-monit |
/opt/apigee/customer/application/monit.properties |
| Neue Edge-Benutzeroberfläche | edge-management-ui |
/opt/apigee/customer/application/management-ui.properties |
| OpenLDAP | apigee-openldap |
/opt/apigee/customer/application/openldap.properties |
| Postgres-Server | edge-postgres-server |
/opt/apigee/customer/application/postgres-server.properties |
| PostgreSQL-Datenbank | 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 |
Wenn Sie ein Attribut in einer dieser Konfigurationsdateien für Komponenten festlegen möchten, es aber nicht vorhanden ist, können Sie es am oben aufgeführten Speicherort erstellen.
Außerdem muss die Attributdatei dem Nutzer „apigee“ gehören:
chown apigee:apigee /opt/apigee/customer/application/configuration_file.properties
Nicht bearbeitbare Konfigurationsdateien für Komponenten
Neben den bearbeitbaren Konfigurationsdateien für Komponenten gibt es auch Konfigurationsdateien, die Sie nicht bearbeiten können.
Zu den Informationsdateien (nicht bearbeitbar) gehören:
| Inhaber | Dateiname oder Verzeichnis |
|---|---|
| Installation | /opt/apigee/token |
| Komponente | /opt/apigee/component_name/conf Dabei gibt component_name die Komponente an. Zulässige Werte:
|
Tokenwert festlegen
Sie können nur die .properties Dateien im
/opt/apigee/customer/application Verzeichnis ändern. Jede Komponente hat in diesem Verzeichnis eine eigene
.properties Datei. Beispiele: router.properties
und management-server.properties. Eine vollständige Liste der Attributdateien finden Sie unter Speicherort von .properties-Dateien.
So erstellen Sie eine .properties Datei:
- Erstellen Sie in einem Editor eine neue Textdatei. Der Dateiname muss mit der Liste in der Tabelle oben für Kundendateien übereinstimmen.
- Ändern Sie den Inhaber der Datei in „apigee:apigee“, wie im folgenden Beispiel gezeigt:
chown apigee:apigee /opt/apigee/customer/application/router.properties
Wenn Sie den Nutzer, der den Edge-Dienst ausführt, vom Nutzer „apigee“ geändert haben, verwenden Sie
chownum den Inhaber in den Nutzer zu ändern, der den Edge Dienst ausführt.
Wenn Sie Edge aktualisieren, werden die .properties Dateien im
/opt/apigee/customer/application Verzeichnis gelesen. Das bedeutet, dass alle Attribute, die Sie für die Komponente festgelegt haben, bei der Aktualisierung beibehalten werden.
So legen Sie den Wert eines Tokens fest :
- Bearbeiten Sie die
.properties-Datei der Komponente. - Fügen Sie den Wert des Tokens hinzu oder ändern Sie ihn. Im folgenden Beispiel wird der Wert des
conf_http_HTTPRequest.line.limitAttributs auf "10k" festgelegt:conf_http_HTTPRequest.line.limit=10k
Wenn das Token mehrere Werte annimmt, trennen Sie die einzelnen Werte durch ein Komma, wie im folgenden Beispiel gezeigt:
conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*
Wenn Sie einer solchen Liste einen neuen Wert hinzufügen möchten, hängen Sie ihn in der Regel am Ende der Liste an.
- Starten Sie die Komponente neu:
/opt/apigee/apigee-service/bin/apigee-service component_name restart
Dabei ist component_name einer der folgenden Werte:
apigee-cassandra(Cassandra)apigee-openldap(OpenLDAP)apigee-postgresql(PostgreSQL-Datenbank)apigee-qpidd(Qpidd)apigee-zookeeper(ZooKeeper)edge-management-server(Verwaltungsserver)edge-management-ui(neue Edge-Benutzeroberfläche)edge-message-processor(Message Processor)edge-postgres-server(Postgres-Server)edge-qpid-server(Qpid-Server)edge-router(Edge-Router)
Starten Sie beispielsweise nach dem Bearbeiten von
router.propertiesden Router neu:/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- (Optional) Prüfen Sie mit der Option
configure -search, ob der Tokenwert auf den neuen Wert festgelegt ist. Beispiel:/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
Weitere Informationen zu
configure -searchfinden Sie unter Aktuellen Wert eines Tokens ermitteln.
Token suchen
In den meisten Fällen sind die Tokens, die Sie festlegen müssen, in dieser Anleitung angegeben. Wenn Sie jedoch den Wert eines vorhandenen Tokens überschreiben müssen, dessen vollständigen Namen oder Speicherort Sie nicht kennen, verwenden Sie grep, um im source-Verzeichnis der Komponente zu suchen.
Wenn Sie beispielsweise das
HTTPRequest.line.limit Attribut festlegen möchten und den Tokenwert kennen möchten, der zum Festlegen verwendet wird,
suchen Sie mit grep nach dem Attribut im Verzeichnis /opt/apigee/edge-management-server/source:
grep -ri "HTTPRequest.line.limit" /opt/apigee/edge-management-server/source
Sie sollten ein Ergebnis in der folgenden Form sehen:
/opt/apigee/component_name/source/conf/http.properties:property_name={T}token_name{/T}Im folgenden Beispiel wird der Wert des Tokens HTTPRequest.line.limit des Verwaltungsservers angezeigt:
/opt/apigee/edge-management-server/source/conf/http.properties:HTTPRequest.line.limit={T}conf_http_HTTPRequest.line.limit{/T}Die String zwischen den {T}{/T} -Tags ist der Name des Tokens, das Sie
in der .properties Datei der Komponente festlegen können.
Token festlegen, das derzeit auskommentiert ist
Einige Tokens sind in den Edge-Konfigurationsdateien auskommentiert. Wenn Sie ein Token festlegen, das in einer Installations- oder Komponentenkonfigurationsdatei auskommentiert ist, wird Ihre Einstellung ignoriert.
Verwenden Sie die folgende spezielle Syntax, um den Wert eines Tokens festzulegen, das in einer Edge-Konfigurationsdatei auskommentiert ist:
conf/filename+propertyName=propertyValue
Wenn Sie beispielsweise das Attribut HTTPClient.proxy.host im Message
Processor festlegen möchten, suchen Sie zuerst grep nach dem Attribut, um das Token zu ermitteln:
grep -ri /opt/apigee/edge-message-processor/ -e "HTTPClient.proxy.host"
Der Befehl grep gibt Ergebnisse zurück, die den Tokennamen enthalten. Beachten Sie
dass der Attributname auskommentiert ist, wie durch das # Präfix angegeben:
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=Wenn Sie den Wert dieses Attributs festlegen möchten, bearbeiten Sie
/opt/apigee/customer/application/message-processor.properties, verwenden Sie aber eine spezielle
Syntax, wie im folgenden Beispiel gezeigt:
conf/http.properties+HTTPClient.proxy.host=myhost.name.com
In diesem Fall müssen Sie dem Attributnamen conf/http.properties+ voranstellen. Dies
ist der Speicherort und der Name der Konfigurationsdatei, die das Attribut enthält, gefolgt von „+“.
Nachdem Sie den Message Processor neu gestartet haben, prüfen Sie die Datei
/opt/apigee/edge-message-processor/conf/http.properties:
cat /opt/apigee/edge-message-processor/conf/http.properties
Am Ende der Datei sehen Sie das Attribut in der folgenden Form:
conf/http.properties:HTTPClient.proxy.host=myhost.name.com
HTTP/2-Protokoll in der neuen Edge-Benutzeroberfläche aktivieren oder deaktivieren
In diesem Abschnitt wird erläutert, wie Sie das HTTP/2-Protokoll in der neuen Edge-Benutzeroberfläche (edge-management-ui) aktivieren oder deaktivieren.
- Erstellen oder bearbeiten Sie
/opt/apigee/customer/application/management-ui.propertiesund prüfen Sie, ob die Dateiapigee:apigeegehört. - Fügen Sie die folgende Überschreibung hinzu, um das HTTP/2-Protokoll zu aktivieren oder zu deaktivieren:
conf_uebe_disable_http2={true or false} - Speichern Sie die neue Edge-Benutzeroberfläche (
edge-management-ui) und starten Sie sie neu.
Benutzerdefiniertes Logformat in Apigee Router/Nginx hinzufügen
In einigen Fällen müssen Sie möglicherweise das Standardlogformat von Apigee Router/Nginx ändern oder Variablen hinzufügen. So aktualisieren Sie die Standardkonfiguration des Logformats von Apigee Router/Nginx:
- Erstellen Sie eine
router.properties-Datei, falls sie nicht vorhanden ist, mit dem unten angegebenen Pfad:/opt/apigee/customer/application/router.properties
- Fügen Sie der Datei
router.propertiesden folgenden Inhalt hinzu , um eine neuelog_formatKonfiguration mit dem Namenrouter_newzu erstellen: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 Aktualisieren Sie die Variablen in den obigen Befehlen nach Bedarf. Die Standardkonfigurationswerte für
log_formatfinden Sie in der folgenden Datei:/opt/apigee/edge-router/conf/load_balancing.properties
Eine Liste der Nginx-Variablen finden Sie unter http://nginx.org/en/docs/varindex.html.
- Starten Sie den Router neu, um die neue Konfiguration anzuwenden:
apigee-service edge-router restart
- Prüfen Sie, ob die neue
log_formatKonfiguration (router_new) der Datei/opt/nginx/conf.d/0-default.confhinzugefügt wurde:cat /opt/nginx/conf.d/0-default.conf | grep router_new -A 10
- Senden Sie einige API-Anfragen an einen API-Proxy und prüfen Sie das neue Logformat in der Datei
/opt/apigee/var/log/edge-router/nginx/${org}~${env}.${port}_access_log file