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

fix IPVS low throughput issue #71114

Merged
merged 1 commit into from Nov 16, 2018

Conversation

@Lion-Wei
Copy link
Contributor

Lion-Wei commented Nov 16, 2018

What type of PR is this?
/kind bug

What this PR does / why we need it:
This pr make IPVS proxier set net/ipv4/vs/conn_reuse_mode to 0 by default, which will fix the IPVS low throughput issue.

Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #70747

Special notes for your reviewer:

Does this PR introduce a user-facing change?:

IPVS proxier now set net/ipv4/vs/conn_reuse_mode to 0 by default, which will highly improve IPVS proxier performance.
@Lion-Wei

This comment has been minimized.

Copy link
Contributor

Lion-Wei commented Nov 16, 2018

Here are the ab test results:
Before:

Server Software:        nginx/1.15.5
Server Hostname:        10.0.0.147
Server Port:            8080

Document Path:          /
Document Length:        612 bytes

Concurrency Level:      300
Time taken for tests:   120.017 seconds
Complete requests:      48983
Failed requests:        0
Total transferred:      41390635 bytes
HTML transferred:       29977596 bytes
Requests per second:    408.13 [#/sec] (mean)
Time per request:       735.051 [ms] (mean)
Time per request:       2.450 [ms] (mean, across all concurrent requests)
Transfer rate:          336.79 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0  722 457.9    999    3009
Processing:     0    9  23.3      1     424
Waiting:        0    9  23.2      1     424
Total:          0  732 449.6   1000    3201

Percentage of the requests served within a certain time (ms)
  50%   1000
  66%   1000
  75%   1000
  80%   1001
  90%   1002
  95%   1004
  98%   1007
  99%   1198
 100%   3201 (longest request)

After:

Server Software:        nginx/1.15.5
Server Hostname:        10.0.0.147
Server Port:            8080

Document Path:          /
Document Length:        612 bytes

Concurrency Level:      300
Time taken for tests:   106.312 seconds
Complete requests:      580000
Failed requests:        0
Total transferred:      490100000 bytes
HTML transferred:       354960000 bytes
Requests per second:    5455.62 [#/sec] (mean)
Time per request:       54.989 [ms] (mean)
Time per request:       0.183 [ms] (mean, across all concurrent requests)
Transfer rate:          4501.95 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0   28 392.7      0   63157
Processing:     5   25  88.6     23   25652
Waiting:        4   25  88.6     23   25652
Total:         15   54 409.7     24   63348

Percentage of the requests served within a certain time (ms)
  50%     24
  66%     25
  75%     26
  80%     27
  90%     30
  95%     38
  98%     56
  99%   1025
 100%  63348 (longest request)
@Lion-Wei

This comment has been minimized.

Copy link
Contributor

Lion-Wei commented Nov 16, 2018

@k8s-ci-robot

This comment has been minimized.

Copy link
Contributor

k8s-ci-robot commented Nov 16, 2018

@Lion-Wei: GitHub didn't allow me to request PR reviews from the following users: jsravn.

Note that only kubernetes members and repo collaborators can review this PR, and authors cannot review their own PRs.

In response to this:

/cc @m1093782566 @jsravn
/assign @m1093782566

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.

@k8s-ci-robot k8s-ci-robot requested a review from m1093782566 Nov 16, 2018

@m1093782566

This comment has been minimized.

Copy link
Member

m1093782566 commented Nov 16, 2018

Good improvement, THANKS!

/lgtm

/approve

@k8s-ci-robot k8s-ci-robot added the lgtm label Nov 16, 2018

@k8s-ci-robot

This comment has been minimized.

Copy link
Contributor

k8s-ci-robot commented Nov 16, 2018

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: Lion-Wei, m1093782566

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@fejta-bot

This comment has been minimized.

Copy link

fejta-bot commented Nov 16, 2018

/retest
This bot automatically retries jobs that failed/flaked on approved PRs (send feedback to fejta).

Review the full test history for this PR.

Silence the bot with an /lgtm cancel comment for consistent failures.

@m1093782566

This comment has been minimized.

Copy link
Member

m1093782566 commented Nov 16, 2018

/milestone v1.13

@k8s-ci-robot k8s-ci-robot added this to the v1.13 milestone Nov 16, 2018

@nikopen

This comment has been minimized.

Copy link
Member

nikopen commented Nov 16, 2018

/priority important-soon

@k8s-ci-robot k8s-ci-robot merged commit 4e9c2a7 into kubernetes:master Nov 16, 2018

18 checks passed

cla/linuxfoundation Lion-Wei authorized
Details
pull-kubernetes-bazel-build Job succeeded.
Details
pull-kubernetes-bazel-test Job succeeded.
Details
pull-kubernetes-cross Skipped
pull-kubernetes-e2e-gce Job succeeded.
Details
pull-kubernetes-e2e-gce-100-performance Job succeeded.
Details
pull-kubernetes-e2e-gce-device-plugin-gpu Job succeeded.
Details
pull-kubernetes-e2e-gke Skipped
pull-kubernetes-e2e-kops-aws Job succeeded.
Details
pull-kubernetes-e2e-kubeadm-gce Skipped
pull-kubernetes-integration Job succeeded.
Details
pull-kubernetes-kubemark-e2e-gce-big Job succeeded.
Details
pull-kubernetes-local-e2e Skipped
pull-kubernetes-local-e2e-containerized Skipped
pull-kubernetes-node-e2e Job succeeded.
Details
pull-kubernetes-typecheck Job succeeded.
Details
pull-kubernetes-verify Job succeeded.
Details
tide In merge pool.
Details

k8s-ci-robot added a commit that referenced this pull request Dec 19, 2018

Merge pull request #72101 from DataDog/automated-cherry-pick-of-#7183…
…4-upstream-release-1.12

Automated cherry pick of #71834 / #71114 upstream release 1.12

k8s-ci-robot added a commit that referenced this pull request Dec 27, 2018

Merge pull request #72100 from DataDog/automated-cherry-pick-of-#7183…
…4-upstream-release-1.11

Automated cherry pick of #71834 / #71114 upstream release 1.11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment