Edge for Private Cloud v. 4.17.09
Per configurare Edge dopo l'installazione, utilizza una combinazione di file .properties e utilità Edge. Ad esempio, per configurare TLS/SSL sulla UI di Edge, devi modificare i file .properties per impostare le proprietà necessarie. Le modifiche ai file .properties richiedono il riavvio del componente Edge interessato.
Apigee definisce la tecnica di modifica dei file .properties come codice con configurazione. In sostanza, il codice con configurazione è uno strumento di ricerca di coppie chiave/valore basato sulle impostazioni dei file .properties. Nel codice con config, le chiavi sono chiamate token. Pertanto, per configurare Edge, devi impostare i token nei file .properties.
Il codice con configurazione consente ai componenti Edge di impostare i valori predefiniti forniti con il prodotto, consente al team di installazione di eseguire l'override di queste impostazioni in base alla topologia di installazione e consente ai clienti di eseguire l'override di tutte le proprietà scelte.
Se la consideri una gerarchia, le impostazioni sono organizzate come segue, con le impostazioni del cliente che hanno la priorità più alta per eseguire l'override di qualsiasi impostazione del team di installazione o di Apigee:
- Cliente
- Installatore
- Apigee
Come utilizzare i file .properties
In qualità di cliente, puoi modificare solo i file .properties nella directory /opt/apigee/customer/application. Ogni componente ha il proprio file .properties in quella directory. Ad esempio, router.properties e management-server.properties.
Ad esempio, per creare un file .properties:
- Crea il file in un editor come qualsiasi utente.
- Cambia il proprietario del file in apigee:apigee o, se hai cambiato l'utente che esegue il servizio Edge dall'utente apigee, cambia il proprietario del file impostando l'utente che esegue il servizio Edge.
Per impostare una proprietà per un componente, modifica il file .properties corrispondente per impostare un token, quindi riavvia il componente:
> /opt/apigee/apigee-service/bin/apigee-service component restart
Ad esempio, dopo aver modificato router.properties, riavvia il router:
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart
Quando esegui l'upgrade di Edge, vengono letti i file .properties nella directory /opt/apigee/customer/application. Ciò significa che l'upgrade manterrà tutte le proprietà impostate sul componente.
Posizione dei file .properties
Esistono tre directory di primo livello per i file .properties per i componenti Edge: proprietario dell'installazione e clienti. Le località predefinite sono riportate nella tabella seguente:
Avviso: i clienti Edge possono modificare solo i file .properties in /opt/apigee/customer. Sebbene tu possa visualizzare i file nelle directory dei componenti e di installazione, non modificare alcun file.
|
Proprietario |
Default Token Root Directory |
|---|---|
|
Componente |
/opt/apigee/<prefix>-<component>/conf dove /<prefix>-<component> identifica il componente, ad esempio edge-router o apigee-cassandra. |
|
Installazione |
/opt/apigee/token |
|
Cliente |
/opt/apigee/customer |
Determinazione del valore attuale di un token
Prima di impostare un token nel file .properties per il componente, puoi determinare il suo valore attuale utilizzando il seguente comando:
> /opt/apigee/apigee-service/bin/apigee-service comp configure -search token
dove comp è il nome del componente e token è il token da ispezionare.
Questo comando cerca nella gerarchia dei file .properties per determinare il valore corrente del token.
Ad esempio, per controllare il valore attuale del token conf_http_HTTPRequest.line.limit per il router:
> /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
Dovresti visualizzare un output nel seguente formato:
Found key conf_http_HTTPRequest.line.limit, with value, 4k, in /opt/apigee/edge-router/token/default.properties
Impostazione dei token nei file .properties
Per eseguire l'override del valore di un token:
- Modifica il file .properties del componente per impostare il valore del token. Se il file non esiste, crealo.
- Riavvia il componente.
- Controlla il valore del token.
Ad esempio, per impostare il limite della riga di richiesta per il router perimetrale:
- Modifica il file /opt/apigee/customer/application/router.properties per impostare il token conf_http_HTTPRequest.line.limit:
conf_http_HTTPRequest.line.limit=8k - Riavvia il router Edge:
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart - Controlla il valore del token:
> /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
Impostazione di un token che accetta più valori
Alcuni token accettano un elenco di valori separati da virgole. Ad esempio, il token conf_security_rbac.restricted.resources accetta un elenco di URI limitati in modo che solo il sysadmin possa chiamarli. Per visualizzare il valore di conf_security_rbac.restricted.resources:
> cd /opt/apigee/edge-management-server > grep -ri "conf_security_rbac.restricted.resources" *
L'output contiene quanto segue:
token/default.properties:conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status
Per impostare un token che accetta un elenco di valori, aggiungi i nuovi valori al valore corrente del token nel file .properties. Pertanto, per aggiungere l'URI /myuri/* a conf_security_rbac.restricted.resources, modifica il file /opt/apigee/customer/application/management-server.properties come mostrato di seguito:
conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*
Individuazione di un token
Nella maggior parte dei casi, i token da impostare sono identificati in questa guida. Tuttavia, se devi determinare il token utilizzato per eseguire l'override di una proprietà, esegui un grep nella cartella source del componente.
Ad esempio, se sai che in una versione precedente di Edge hai impostato la proprietà session.maxAge e vuoi conoscere il valore del token utilizzato per impostarla, esegui il comando grep per la proprietà nella directory /opt/apigee/edge-ui/source:
> grep -ri "session.maxAge" /opt/apigee/edge-ui/source
Dovresti visualizzare un risultato nel formato:
/opt/apigee/edge-ui/source/conf/application.conf:session.maxAge={T}conf_application_session.maxage{/T}La stringa tra i tag {T}{/T} è il token impostato nel file .properties.
Impostazione di un token attualmente commentato
Alcuni token sono commentati nei file di configurazione di Edge. Se provi a impostare un token commentato, l'impostazione viene ignorata.
Per impostare un token commentato, utilizza una sintassi speciale nel formato:
conf/file.extension+propertyName=propertyValue
Ad esempio, vuoi impostare la proprietà denominata HTTPClient.proxy.host sul processore di messaggi. Poi, esegui il comando grep per la proprietà per determinarne il token:
> cd /opt/apigee/edge-message-processor > grep -ri "HTTPClient.proxy.host" *
Il comando grep restituisce i risultati in un formato che include il valore del token. Nota come il nome della proprietà è stato commentato, come indicato dal prefisso # sul nome della proprietà:
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=Per impostare la proprietà, modifica /opt/apigee/customer/application/message-processor.properties per impostare la proprietà come:
conf/http.properties+HTTPClient.proxy.host=myhost.name.com
Nota come il nome della proprietà sia preceduto da conf/http.properties+, ovvero la posizione e il nome del file di configurazione contenente la proprietà, seguiti da "+".
Dopo aver riavviato il processore di messaggi, esamina il file /opt/apigee/edge-message-processor/conf/http.properties:
> cat /opt/apigee/edge-message-processor/conf/http.properties
Alla fine del file, vedrai la proprietà impostata nel formato:
conf/http.properties:HTTPClient.proxy.host=myhost.name.com