Poor load test perfomance over https

I setup a Rancher 2.3 cluster with RKE and the default CNI and Ingress Controller Load Balancer.

Everything works fine but the performance on heavy load is not very well especially over https.

In my setup I have 4 x 32Cores CPU with 8GB RAM nodes.
Each one is a VM registered with RKE in the cluster and is in the same network.

My JMeter test ( 450 concurrent users ) on a static nginx container over http gives:
summary = 77697 in 00:02:02 = 638.8/s Avg: 106 Min: 0 Max: 1187 Err: 0 (0.00%)
Which is not bad. But as soon as I change to https the performance drops.
I know that https uses more cpu power and if I compare to:

It should be around 20% but in my case its worse:
summary = 21158 in 00:02:01 = 175.3/s Avg: 419 Min: 14 Max: 2636 Err: 0 (0.00%)
Which is about 40% of the http performance.

I already tried with a new cluster with Flannel as CNI but same result.

In my load test the CPU of the node is not really used as you can see here:


Compared to a regular stress test in a container my CPU goes up to 2000%

Somehow my ingress controllers are limited and not using more CPU.
I already tried to play around with the ingress ConfigMap but without success.

Does anybody has an idea what the bottleneck could be?
Or maybe knows how I could config the ingress controller to be quicker?

Thanks for any help

1 Like

@Michael_Heimann have you found a solution for this in the end?

No not yet. But so far my applications in real life never had such a load as a jmeter test simulates.
In some applications I had more than 500 concurrent users based on the web page tracking. But that probably based on concurrent user session.