Panoramica
A partire dalla versione 1.14.2, Apigee hybrid supporta un limite di timeout di destinazione fino a 10 minuti.
Apigee hybrid supporta io.timeout.millis di destinazione fino a 55.000 millisecondi per impostazione predefinita. Consulta la Specifica di trasporto dell'endpoint di destinazione.
Per consentire agli ambienti della tua installazione ibrida di aumentare il limite di timeout di destinazione per più endpoint di destinazione lenti, apporta le seguenti modifiche alla configurazione di runtime:
- Configura
virtualhosts[].requestTimeouttra Istio e processore di messaggi(MP). Consulta virtualhosts - Configura
conf_http_HTTPTransport.io.timeout.millistra MP e target
Puoi configurare queste impostazioni per singoli ambienti o per tutti gli ambienti dell'installazione.
Configura l'host virtuale per modificare il limite di timeout della richiesta
requestTimeout è il tempo massimo (in secondi) impostato su un host virtuale per l'elaborazione di una richiesta da parte del MP.
Per configurare il limite di timeout della richiesta, puoi utilizzare le proprietà virtualhosts[].requestTimeout. Apporta le seguenti modifiche al file overrides.yaml:
- Aggiungi la seguente strofa al file
overrides.yaml:virtualhosts: - name: ENV_GROUP_NAME requestTimeout: 600 # Increase requestTimeout to 600 seconds
- Devi eseguire l'upgrade di un gruppo di ambienti (virtualhost) alla volta. Specifica il gruppo
di ambienti con
--set envgroup=ENV_GROUP_NAME. Ripeti i seguenti comandi per ogni gruppo di ambienti menzionato nel file overrides.yaml:Dry run:
helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \ --install \ --namespace APIGEE_NAMESPACE \ --set envgroup=ENV_GROUP_NAME \ -f OVERRIDES_FILE \ --dry-run=server
ENV_GROUP_RELEASE_NAME è il nome con cui hai installato in precedenza il grafico
apigee-virtualhost. Di solito è ENV_GROUP_NAME.Esegui l'upgrade del grafico:
helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \ --install \ --namespace APIGEE_NAMESPACE \ --set envgroup=ENV_GROUP_NAME \ -f OVERRIDES_FILE
- Controlla lo stato di ApigeeRoute (AR).
L'installazione di
virtualhostscrea ApigeeRouteConfig (ARC), che a sua volta crea internamente ApigeeRoute (AR) dopo che il watcher Apigee estrae i dettagli relativi al gruppo di ambienti dal control plane. Pertanto, verifica che lo stato del AR corrispondente sia in esecuzione:kubectl -n APIGEE_NAMESPACE get arc
NAME STATE AGE apigee-org1-dev-egroup 2d
kubectl -n APIGEE_NAMESPACE get ar
NAME STATE AGE apigee-org1-dev-egroup-cb9a8a running 2d
Configura i singoli ambienti per modificare il limite di timeout della destinazione
Se i proxy con endpoint di destinazione lenti si trovano in uno o pochi ambienti della tua installazione, puoi configurare gli ambienti singolarmente per modificare il limite di timeout della destinazione. In questo modo si evita di aggiungere impatto ad altri ambienti.
Per configurare singoli ambienti in modo da modificare il limite di timeout target, puoi utilizzare le proprietà envs[].components.runtime. Apporta le seguenti modifiche al file overrides.yaml:
-
Aggiungi la seguente stanza al file
overrides.yaml:envs: - name: ENV_NAME components. runtime: cwcAppend: conf_http_HTTPTransport.io.timeout.millis: 600000 # Increase io.timeout.millis to 600000 milliseconds -
Devi eseguire l'upgrade di un ambiente alla volta. Aggiorna il grafico
apigee-envper ogni ambiente che stai aggiornando:Dry run:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --set env=ENV_NAME \ -f OVERRIDES_FILE \ --dry-run=server
- ENV_RELEASE_NAME è un nome utilizzato per tenere traccia dell'installazione e degli upgrade del grafico
apigee-env. Questo nome deve essere univoco rispetto agli altri nomi delle release Helm nell'installazione. Di solito è uguale aENV_NAME. Tuttavia, se l'ambiente ha lo stesso nome del gruppo di ambienti, devi utilizzare nomi di release diversi per l'ambiente e il gruppo di ambienti, ad esempiodev-env-releaseedev-envgroup-release. Per saperne di più sulle release in Helm, consulta Three big concepts class="external" nella documentazione di Helm. - ENV_NAME è il nome dell'ambiente che stai eseguendo l'upgrade.
- OVERRIDES_FILE è il file
overrides.yamlmodificato.
- ENV_RELEASE_NAME è un nome utilizzato per tenere traccia dell'installazione e degli upgrade del grafico
-
Esegui l'upgrade del grafico:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --set env=ENV_NAME \ -f OVERRIDES_FILE
-
Verifica che sia attivo e funzionante controllando lo stato dell'ambiente corrispondente:
kubectl -n APIGEE_NAMESPACE get apigeeenv
NAME STATE AGE GATEWAYTYPE my-org-my-env-123abc running 2d
Configura tutti gli ambienti per modificare il limite di timeout della destinazione
Le modifiche alla stanza runtime modificheranno il limite di timeout target per tutti gli ambienti dell'installazione. Puoi eseguire l'override di queste impostazioni per singoli ambienti con le proprietà runtime.
-
Aggiungi la seguente strofa al file
overrides.yaml:runtime: cwcAppend: conf_http_HTTPTransport.io.timeout.millis: 600000 # Increase io.timeout.millis to 600000 milliseconds -
Esegui l'upgrade del grafico
apigee-envper ogni ambiente della tua installazione:Dry run:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --set env=ENV_NAME \ -f OVERRIDES_FILE \ --dry-run=server
Esegui l'upgrade del grafico:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --set env=ENV_NAME \ -f OVERRIDES_FILE