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
docs: add initial performance guide doc #13297
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have a scattering of minor wording fixups below, but LGTM overall.
We should add "higher is better" / "lower is better" wording to every graph. The results may not be so apparent to people who are less familiar with reading these graphs.
$ ansible-playbook -e mode=tunneling -i packet-hosts.ini playbooks/install-k8s-cilium.yaml | ||
$ ansible-playbook -e conf=vxlan -i packet-hosts.ini playbooks/run-kubenetbench.yaml | ||
|
||
The first command configures Cilium to use tunneling (``-e mode=tunneling``), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need to add any additional commands in between the above to ensure that the machines are restarted & ready? Maybe it should be split into two code blocks to make sure that anyone trying to reproduce will stop to verify this first?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@kkourt could you also follow-up to include the "higher is better" / "lower is better" wording into every plot?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why would we need to restart the machines? If we need to, we can do it as part of the playbook.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry, I meant to add this feedback for line 216 which talks about clearing out old state.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah I see. Maybe we could just check that BPF programs are unloaded as part of the second playbook (playbooks/run-rawnetperf.yaml
). That should just be a matter of running bpftool net
. I'm guessing that would be our main concern, right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
AFAIU, the ansible play will wait until the machine is rebooted so state should be clean after that. There are two reasons for the reboot: bpf programs (for which we could call cilium cleanup and check bpf progs), but also changes on the MTU of the NICs.
Initial guide with results and some basic tuning options for users. Signed-off-by: Kornilios Kourtis <kornilios@isovalent.com> Signed-off-by: Paul Chaignon <paul@cilium.io> Signed-off-by: John Fastabend <john.fastabend@gmail.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
b3bb627
to
03895ed
Compare
Good point! I'll add proper wording. |
(I'll readd the 1.8 backport once also the follow-ups are merged early next week so we can take in all at once w/o partial state.) |
No description provided.