-
Notifications
You must be signed in to change notification settings - Fork 8.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ingress controller keeps increasing the memory when new backend reload action triggered #8362
Comments
@pdefreitas: This issue is currently awaiting triage. If Ingress contributors determines this is a relevant issue, they will accept it by applying the The Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
/remove-kind bug Install each instance of the ingress-nginx controller in its own namespaces. Its documented. |
@longwuyuan thanks for the prompt reply but there are multiple problems to address:
|
From my limited visibility, I can state that ;
|
The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs. This bot triages issues and PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /lifecycle stale |
The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs. This bot triages issues and PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /lifecycle rotten |
Having exactly the same issue withe a very similar config. |
The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs. This bot triages issues and PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /close |
@k8s-triage-robot: Closing this issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
NGINX Ingress controller version (exec into the pod and run nginx-ingress-controller --version.): 1.1.2
Kubernetes version (use
kubectl version
): 1.21.9, 1.22.6Environment:
Cloud provider or hardware configuration: Azure Kubernetes Service (AKS)
OS (e.g. from /etc/os-release): Ubuntu 18.04.6 LTS (Bionic Beaver)
Kernel (e.g.
uname -a
):Linux 5.4.0-1070-azure #73~18.04.1-Ubuntu SMP Wed Feb 9 15:36:45 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
Install tools: Azure managed
Basic cluster related info: Versions mentioned above + cluster autoscaler.
How was the ingress-nginx-controller installed:
helm ls -A | grep -i ingress
helm -n <ingresscontrollernamepspace> get values <helmreleasename>
nginx-ingress-x
nginx-ingress-z
if you have more than one instance of the ingress-nginx-controller installed in the same cluster, please provide details for all the instances
nginx-ingress-y
on namespacey
is not leaking memory.Current State of the controller:
nginx-ingress-y
that is alone on its own namespace doesn't have any issue, it has a similar configuration tonginx-ingress-x
.nginx-ingress-z
eventually runs out of memory (not so frequent because it doesn't have so many ingress rules).nginx-ingress-x
is the most problematic.Current state of ingress object, if applicable:
What happened:
Ingress controllers
nginx-ingress-z
andnginx-ingress-x
are leaking memory over time. We noticed that the memory increases when there are backend reload operations happening.What you expected to happen:
I would expect the memory to be kept constant in-between backend reloads (releasing memory). Issues #8166, #8336 and #8357 exhibit similar behavior in a similar setup.
How to reproduce it:
nginx-ingress-x
has ~10 ingress resources with ModSecurity + OWASP ModSecurity Core Rule Set.nginx-ingress-z
has ~7 ingress resources.Anything else we need to know:
Ingress rules on
nginx-ingress-x
have ModSecurity + OWASP ModSecurity Core Rule Set annotations.nginx-ingress-z
handles internal traffic (virtual network level), and it uses proxy protocol. This setup was working fine without any kind of memory increase prior to 0.48.x. We had to upgrade to 1.x.x due to Kubernetes upgrade + security patches. The same issue happens without Prometheus metrics enabled (we've enabled them for troubleshooting purposes).The text was updated successfully, but these errors were encountered: