-
Notifications
You must be signed in to change notification settings - Fork 7.6k
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
istio: add metric for debouncing #40523
Conversation
This CL adds metric for the delay between a first config change enters deboucing until the final merged push request is pushed into the push queue. This time plus the proxy convergence time give us an upper bound on the total delay between a config change and the change is pushed to proxies. Also increased the buckets since logging shows that the debounce time is pretty long (more than 1 minute). Change-Id: I3220f9c3188824ea6925151ff6837f91aac5a15a Reviewed-on: https://gerrit.musta.ch/c/public/istio/+/3512 Reviewed-by: Weibo He <weibo.he@airbnb.com> Reviewed-by: Ryan Smick <ryan.smick@airbnb.com> Reviewed-by: Jungho Ahn <jungho.ahn@airbnb.com>
Change-Id: I9977c597768360cc3dd485dbf21bd9afdb2f5151 Reviewed-on: https://gerrit.musta.ch/c/public/istio/+/3517 Reviewed-by: Weibo He <weibo.he@airbnb.com>
To address comments in istio#40523, we will record after push finishes inside the debounce function. We can actually remove the DebounceStart field in the push context as a result. Also change the buckets as discussed in the PR. Change-Id: I3b7a7860590e7e5ed4f13282b4398527de089c81 Reviewed-on: https://gerrit.musta.ch/c/public/istio/+/3519 Reviewed-by: Jungho Ahn <jungho.ahn@airbnb.com> Reviewed-by: Weibo He <weibo.he@airbnb.com>
@howardjohn please take another look, thanks! |
This CL patches commit c9557ae from upstream istio into air-release-1.14.3 to add a metric for pilot debounce time. Original PR can be found here: istio#40523. The description from that PR is reproduced below. This CL adds metric for the delay between a first config change enters deboucing until the final merged push request is pushed into the push queue. This time plus the proxy convergence time give us an upper bound on the total delay between a config change and the change is pushed to proxies. Also increased the buckets since logging shows that the debounce time is pretty long (more than 1 minute). Change-Id: If6cbdd7ee9fd5aed94001a3857989bada1919c87 Reviewed-on: https://gerrit.musta.ch/c/public/istio/+/3559 Reviewed-by: Ying Zhu <ying.zhu@airbnb.com> Reviewed-by: Douglas Jordan <douglas.jordan@airbnb.com>
Apply the following list of patches to istio 1.14.4: * sidecar: filter service ports to VS ports (istio#39067) * istio: register init push context metric (istio#40049) * istio: add metric for debouncing (istio#40523) * istio: fix PILOT_ENABLE_RDS_CACHE flag not working (istio#40719) * istio: support inline multi-values header in authz header match (https://gerrit.musta.ch/c/public/istio/+/3622, not yet merged upstream) Change-Id: I69b861d884608dabad44db1fee03f66eb4b25ab2 Reviewed-on: https://gerrit.musta.ch/c/public/istio/+/3695 Reviewed-by: Ying Zhu <ying.zhu@airbnb.com> Reviewed-by: Weibo He <weibo.he@airbnb.com>
* istio: add metric for debouncing This CL adds metric for the delay between a first config change enters deboucing until the final merged push request is pushed into the push queue. This time plus the proxy convergence time give us an upper bound on the total delay between a config change and the change is pushed to proxies. Also increased the buckets since logging shows that the debounce time is pretty long (more than 1 minute). Change-Id: I3220f9c3188824ea6925151ff6837f91aac5a15a Reviewed-on: https://gerrit.musta.ch/c/public/istio/+/3512 Reviewed-by: Weibo He <weibo.he@airbnb.com> Reviewed-by: Ryan Smick <ryan.smick@airbnb.com> Reviewed-by: Jungho Ahn <jungho.ahn@airbnb.com> * istio: fix debounceTime typo Change-Id: I9977c597768360cc3dd485dbf21bd9afdb2f5151 Reviewed-on: https://gerrit.musta.ch/c/public/istio/+/3517 Reviewed-by: Weibo He <weibo.he@airbnb.com> * istio: handle debounce time entirely in the debounce() function To address comments in istio#40523, we will record after push finishes inside the debounce function. We can actually remove the DebounceStart field in the push context as a result. Also change the buckets as discussed in the PR. Change-Id: I3b7a7860590e7e5ed4f13282b4398527de089c81 Reviewed-on: https://gerrit.musta.ch/c/public/istio/+/3519 Reviewed-by: Jungho Ahn <jungho.ahn@airbnb.com> Reviewed-by: Weibo He <weibo.he@airbnb.com>
Apply the following list of patches to istio 1.14.5: * sidecar: filter service ports to VS ports (istio#39067) * istio: register init push context metric (istio#40049) * istio: add metric for debouncing (istio#40523) * istio: fix PILOT_ENABLE_RDS_CACHE flag not working (istio#40719) * istio: support inline multi-values header in authz header match (https://gerrit.musta.ch/c/public/istio/+/3622, not yet merged upstream) * istio: improve deep copy for ServiceAttribute (istio#40966) * avoid unnecessary copy virtual services for sidecar scope calculation (istio#41101) Change-Id: Ia4c9bfd619a0eb38c1a829bff2efbd21fd3b9cb2 Reviewed-on: https://gerrit.musta.ch/c/public/istio/+/3883 Reviewed-by: Ying Zhu <ying.zhu@airbnb.com> Reviewed-by: Weibo He <weibo.he@airbnb.com>
Apply the following list of upstream commits to istio 1.15.3: * istio: add metric for debouncing (istio#40523) * istio: fix PILOT_ENABLE_RDS_CACHE flag not working (istio#40719) * istio: improve deep copy for ServiceAttribute (istio#40966) * avoid unnecessary copy virtual services for sidecar scope calculation (istio#41101) Change-Id: I2ee1d77d096a329dc8f590151223b37193dd4f1b Reviewed-on: https://gerrit.musta.ch/c/public/istio/+/3990 Reviewed-by: Ying Zhu <ying.zhu@airbnb.com> Reviewed-by: Ryan Smick <ryan.smick@airbnb.com>
Our current debounce time is a little above 30s which is outside of the current bound. Even though community only wants bucket up to 30s (istio#40523 (comment)), we should still have more buckets for our use. I don't worry about performance and cost since there isn't any tags on the metric. Change-Id: I34b1d787936ea3d8f0a0e16259c06d4bfef8e793 Reviewed-on: https://gerrit.musta.ch/c/public/istio/+/3992 Reviewed-by: Douglas Jordan <douglas.jordan@airbnb.com>
/cherrypick release-1.15 |
@S-Chan: new pull request created: #42668 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. |
@S-Chan: new pull request could not be created: failed to create pull request against istio/istio#release-1.15 from head istio-testing:cherry-pick-40523-to-release-1.15: status code 422 not one of [201], body: {"message":"Validation Failed","errors":[{"resource":"PullRequest","code":"custom","message":"A pull request already exists for istio-testing:cherry-pick-40523-to-release-1.15."}],"documentation_url":"https://docs.github.com/rest/reference/pulls#create-a-pull-request"} 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. |
To address comments in istio#40523, we will record after push finishes inside the debounce function. We can actually remove the DebounceStart field in the push context as a result. Also change the buckets as discussed in the PR. Change-Id: I3b7a7860590e7e5ed4f13282b4398527de089c81 Reviewed-on: https://gerrit.musta.ch/c/public/istio/+/3519 Reviewed-by: Jungho Ahn <jungho.ahn@airbnb.com> Reviewed-by: Weibo He <weibo.he@airbnb.com>
Apply the following list of upstream commits to istio 1.15.5: * istio: add metric for debouncing (istio#40523) * istio: improve deep copy for ServiceAttribute (istio#40966) * avoid unnecessary copy virtual services for sidecar scope calculation (istio#41101) Change-Id: I25f31e5633b77982606912bcb2ad2bc4e2da87f4 Reviewed-on: https://gerrit.musta.ch/c/public/istio/+/4381 Reviewed-by: Weibo He <weibo.he@airbnb.com> Reviewed-by: Stephen Chan <stephen.chan@airbnb.com>
Please provide a description of this PR:
This CL adds metric for the delay between a first config change
enters deboucing until the final merged push request is pushed into
the push queue. This time plus the proxy convergence time give us
an upper bound on the total delay between a config change and the
change is pushed to proxies.
Also increased the buckets since logging shows that the debounce time
is pretty long (more than 1 minute).