Skip to content
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

Traffic shaping with Calico and k8s #6232

Closed
sepehrjavid opened this issue Jun 16, 2022 · 3 comments
Closed

Traffic shaping with Calico and k8s #6232

sepehrjavid opened this issue Jun 16, 2022 · 3 comments

Comments

@sepehrjavid
Copy link

Hello,

I have been trying to test the traffic shaping feature based on the test provided in #797 and the result is different than what is expected. I am suing k8s version 1.21.1 and the calico version 3.14. The cluster was created using kubeadm and I am using a VM for as a worker node and another VM as the controller in OpenStack
The /etc/cni/net.d/10-calico.conflist contains:
Screenshot from 2022-06-15 11-49-49

the result with traffic shaping enabled and setup to 1M on the iperf-server pod is:
withTS

and without traffic shaping the result is:
withoutTS

Also bandwidth file exists in /opt/cni/bin/ path as well.

As seen in the results, the bandwidth is more than the setup threshold and I was curios to know what could be the reason.

Could you please help me resolve the problem?
Thank you so much

@sepehrjavid
Copy link
Author

sepehrjavid commented Jun 20, 2022

Update:

I set the threshold to 50 Mbits/sec and the first measurements seemed too far from the threshold. However, the next bandwidths were within the setup range. Any ideas why this might be happening that only the first connection is consuming way more bandwidth than the threshold?

Screenshot from 2022-06-20 10-01-33

This behavior is the same as we reduce the threshold. However it appears to be less accurate the less the threshold goes and it starts showing 0 Mbits/s for thresholds below 4M

@Josh-Tigera
Copy link
Contributor

Josh-Tigera commented Jun 28, 2022

I noticed that you mention you're using OpenStack, and reading through the discussion on the issue you linked this comment:

#797 (comment)

Suggested that the bandwidth feature was originally only supported with docker as the container runtime, though I'm not sure what the state of the bandwidth feature is today with respect to various different runtimes.

Are you able to run tc qdisc show in your calico-node to verify if the rules were installed correctly?

@optimus-kart
Copy link

Is this enabled by default now? if not is there a documentation on how to do it for AWS EKS installation of calico?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants