-
Notifications
You must be signed in to change notification settings - Fork 95
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
Bug 1995913: Degraded status in the OCM controller #486
Bug 1995913: Degraded status in the OCM controller #486
Conversation
if err != nil { | ||
return nil, fmt.Errorf("timed out waiting for the successful response from %s", endpoint) | ||
} | ||
return data, nil |
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.
This method is little bit complicated (especially due the fact that 404 and offline env. are not considered as errors from the "degraded" perspective) compared to counting the threshold in the controllerstatus and the checking it in the status.go
(similarly as here)
The approach with exp. backoff is more "agressive":
- if HTTP error other than 404 then try again in 5 min (if this is still true then try again in 10 min, 20min, 40min => mark as degraded)
Compared to the other approach:
- if HTTP error other than 404 then only increase the count and do nothing
- try again in default period (which is 8h in this case) if there's still an error then increase the count again
- if count higher than some threshold (let's say 2 or 3) then mark IO as degraded
WIth the first approach we can go degraded in ~1h15min, with the second one it would be after 16h-24h. I am not sure what is better TBH. The certs are valid for a long time (1 year by default), but on the other hand, if the content changes then you may want to update the certs quickly.
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 updated the initial backoff step to c.configurator.Config().OCMConfig.Interval / 32
(that is 15 minutes by default) so the times are bit longer than mentioned above.
/test insights-operator-e2e-tests |
/retest |
@tremes: This pull request references Bugzilla bug 1995913, which is valid. The bug has been moved to the POST state. The bug has been updated to refer to the pull request using the external bug tracker. 3 validation(s) were run on this bug
No GitHub users were found matching the public email listed for the QA contact in Bugzilla (dmisharo@redhat.com), skipping review 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. |
@tremes: This pull request references Bugzilla bug 1995913, which is valid. 3 validation(s) were run on this bug
No GitHub users were found matching the public email listed for the QA contact in Bugzilla (dmisharo@redhat.com), skipping review 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. |
/retest |
1 similar comment
/retest |
Tested and it seems good. |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: rluders, tremes 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 |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
1 similar comment
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
12 similar comments
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/test insights-operator-e2e-tests |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
10 similar comments
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
/test insights-operator-e2e-tests |
/retest |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
@tremes: All pull requests linked via external trackers have merged: Bugzilla bug 1995913 has been moved to the MODIFIED state. 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. |
This adds status checking to the OCM controller. If the response from the OCM API is an HTTP error other than 404 (which means that SCA certs are not allowed for the given organization) then try again with exponential backoff and after few attempts mark the operator as degraded.
At the same time, the status doesn't have to be changed to degraded in a disconnected environment. This means that any non-HTTP error is not considered as a reason for marking the operator as degraded.
Categories
Sample Archive
No new data
Documentation
No documentation update
Unit Tests
No new test
Privacy
Yes. There are no sensitive data in the newly collected information.
Changelog
Breaking Changes
No
References
https://issues.redhat.com/browse/???
https://bugzilla.redhat.com/show_bug.cgi?id=1995913
https://access.redhat.com/solutions/???