-
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
Potential memory leak in OpenSSL #7647
Comments
/remove-kind bug We have been making changes for performance and very soon we will be releasing a build that has changed components of the controller. But if you test the current latest release and update as per issue template, it will help get a better perspective. /triage needs-information |
Hi, I have the same issue:
Here is my infos: NGINX Ingress controller version (exec into the pod and run nginx-ingress-controller --version.): NGINX Ingress controller Kubernetes version (use Client Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.2", GitCommit:"092fbfbf53427de67cac1e9fa54aaa09a28371d7", GitTreeState:"clean", BuildDate:"2021-06-16T12:59:11Z", GoVersion:"go1.16.5", Compiler:"gc", Platform:"darwin/amd64"} Environment:
Helm: controller:
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- podAffinityTerm:
labelSelector:
matchExpressions:
- key: app.kubernetes.io/name
operator: In
values:
- nginx-ingress
topologyKey: kubernetes.io/hostname
weight: 100
config:
use-gzip: true
metrics:
enabled: true
serviceMonitor:
additionalLabels:
release: kube-prometheus-stack
enabled: true
namespace: monitoring
replicaCount: 2
resources:
requests:
memory: 800Mi
service:
externalTrafficPolicy: Local kubectl describe po -n ingress-nginx ingress-nginx-controller-788c5f7f88-d94pj
kubectl describe svc -n ingress-nginx ingress-nginx-controller
|
/priority critical-urgent I have received the suggestion to test using boringSSL instead of OpenSSL when building the image (for FIPS compliance, etc) maybe we can try that as well |
I have the same memory leak issue with latest version:
|
Folks, in case I generate an image of 0.49.3 (to be released) with Openresty OpenSSL patch applied, are you able to test and provide some feedback on that? |
/kind bug |
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 |
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. |
+1 still happening |
/reopen |
@strongjz: Reopened 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. |
This issue is labeled with You can:
For more details on the triage process, see https://www.kubernetes.dev/docs/guide/issue-triage/ /remove-triage accepted |
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. |
/close |
@rikatz: 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. |
@rikatz So, how did this story end? |
NGINX Ingress controller version (exec into the pod and run nginx-ingress-controller --version.): 0.44.0 & 0.49.0
Kubernetes version (use
kubectl version
): 1.18.8Environment:
uname -a
): 4.19.91-23.al7.x86_64What happened:
We've encountered some memory issue both in 0.44.0 and 0.49.0
Some of the ingress pods get a high memory usage, but others are ina normal level
We did sone diagnose to the pod, and it shows that one of the nginx worker gained a large amount of memory.
the income traffic is balance, about 100 requests per second, and the connection count between pods is of the same order of magnitude (from 10k+ to 100k+).
And then, we use
pmap -x <pid>
to get details of the memory. There were lots of tiny anon blocks in the memory map.Made a coredump and took a look at this memory area, most of its content seems to be related to TLS certs. And also we tried to run memleak on the process, and result here:
here are more samples m.log
Finally we moved the cert to the load balancer provided by cloud, and it's working fine now, but still have no clue about why could this happen.
The leak is happened on nginx and connection with TLS. We tried to rebuild the image to upgrade libraries to the newest version (for openssl, 1.1.1l-r0), but it doesn't work.
What you expected to happen:
no memory leak with TLS
How to reproduce it:
I have no idea what makes the issue happen, and I can't reproduce it on another cluster.
Anything else we need to know:
As far, we haven't met this issue with 0.30.0 (openssl 1.1.1d-r3), I don't know whether it's a problem in newer openssl.
/kind bug
The text was updated successfully, but these errors were encountered: