Add TigeraStatus warnings for ignored resources and override correlation#4649
Open
caseydavenport wants to merge 14 commits intotigera:masterfrom
Open
Add TigeraStatus warnings for ignored resources and override correlation#4649caseydavenport wants to merge 14 commits intotigera:masterfrom
caseydavenport wants to merge 14 commits intotigera:masterfrom
Conversation
…Issues Wire diagnosePods and summarizeIssues into syncState, replacing the old podsFailing/containerErrorMessage functions. Each workload type now reports not-found as a degraded condition instead of silently continuing. DaemonSets and Deployments pass revision info so diagnosePods can distinguish old-revision pods from current ones.
…tants, use metav1.GetControllerOf
When an object has the unsupported.operator.tigera.io/ignore annotation, surface a warning through TigeraStatus so users know the operator is not managing the resource. Clear the warning if the annotation is later removed.
…applied When the render package applies probe timing or resource overrides to a workload, set an operator.tigera.io/custom-overrides annotation with a comma-separated list of which override types were applied. This will be used by diagnosePods to correlate pod failures with user overrides.
2e1de6e to
6ddf9a8
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Builds on #4644 and #4645 to add two more status manager improvements.
Unsupported ignore annotation warning: When a resource has the
unsupported.operator.tigera.io/ignoreannotation, the operator silently skips managing it. This was invisible in TigeraStatus - now a warning surfaces in the Available condition message so users know the operator isn't managing that resource.Override correlation hints: When the operator applies user-specified probe timing or resource overrides and the corresponding pod is failing, the status manager now includes a hint in the diagnostic message. For example, if a pod is failing readiness and the user has custom readiness probe configuration, the message says "Pod X is running but not ready; custom readiness probe configuration is in effect". Similarly for liveness probe failures (exit code 137) and OOMKilled with custom resource limits.
The override correlation works via an annotation (
operator.tigera.io/custom-overrides) that the render package sets on workloads when applying overrides. The status manager reads this annotation when diagnosing pod failures.Example TigeraStatus messages
Pod crash looping with OOMKilled and custom resource limits:
Pod failing readiness with custom probe config:
Possible liveness failure with custom liveness config:
Unsupported ignore annotation (in Available condition message):
Depends on #4645.