Risoluzione dei problemi dei proxy collaterali in Cloud Service Mesh
Questa sezione illustra i problemi comuni dei proxy collaterali di Cloud Service Mesh e spiega come risolverle. Se hai bisogno di ulteriore aiuto, vedi Ricevere assistenza.
Il container istio-proxy
è stato interrotto a causa di un evento OOM
In questa sezione presupponiamo che il container istio-proxy
non venga interrotto da un
SystemOOM
e il nodo Kubernetes non è in condizione MemoryPressure
.
Il container collaterale istio-proxy
ha limiti delle risorse per impostazione predefinita.
Se il container istio-proxy viene terminato con Reason: OOMKilled
, è necessario
per capire perché Envoy sta consumando la memoria.
Se stai riscontrando un'interruzione della produzione, una rapida soluzione è aumentare i limiti
per tutti i container che utilizzano IstioOperator
:
---
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
values:
global:
proxy:
resources:
requests:
memory: 128Mi
limits:
memory: 1Gi
Se stai riscontrando questo problema con carichi di lavoro specifici, puoi modificare il limite solo su quei carichi di lavoro, aggiungendo annotazioni.
sidecar.istio.io/proxyMemory
sidecar.istio.io/proxyMemoryLimit
Assicurati che non siano presenti limiti inferiori ai valori predefiniti.
La soluzione a lungo termine consiste nel ridurre l'ingombro di memoria del tuo istio-proxy
container collaterali. Per impostazione predefinita, tutti i proxy collaterali sono programmati con
configurazione necessaria per raggiungere qualsiasi altra istanza del carico di lavoro nel mesh.
Istio fornisce la definizione di risorsa personalizzata Sidecar
limitare il numero di endpoint programmati per proxy collaterali,
ridurre il consumo di memoria del container istio-proxy
.