Bug 2049154
Summary: | ArgoCD App Policy Refreshing Infinitely | |||
---|---|---|---|---|
Product: | OpenShift Container Platform | Reporter: | Joshua Clark <josclark> | |
Component: | Telco Edge | Assignee: | Jim Ramsay <jramsay> | |
Telco Edge sub component: | ZTP | QA Contact: | Joshua Clark <josclark> | |
Status: | CLOSED ERRATA | Docs Contact: | Tomas 'Sheldon' Radej <tradej> | |
Severity: | medium | |||
Priority: | unspecified | CC: | grajaiya, jramsay, keyoung | |
Version: | 4.10 | |||
Target Milestone: | --- | |||
Target Release: | 4.10.0 | |||
Hardware: | Unspecified | |||
OS: | Linux | |||
Whiteboard: | ||||
Fixed In Version: | Doc Type: | Known Issue | ||
Doc Text: |
Cause:
Our default ArgoCD configuration assumes no clusters are named `ztp*`
Consequence:
Adding a cluster via ZTP with a name `ztp*` causes a situation where ArgoCD deletes policies that ACM copies in to the cluster namespace, leading to a reconciliation loop and the policies will never go compliant.
Workaround (if any):
When using ZTP, do not name clusters with `ztp` at the beginning of the name. Or adjust the ArgoCD policy application's namespace glob to be more selective (for example, using `ztp-*` as the pattern in the app configuration if your cluster names do not start with `ztp-`
Result:
Avoiding or removing the name collision will stop the reconciliation loop and policies will become compliant.
|
Story Points: | --- | |
Clone Of: | ||||
: | 2050789 (view as bug list) | Environment: | ||
Last Closed: | 2022-03-21 12:40:05 UTC | Type: | Bug | |
Regression: | --- | Mount Type: | --- | |
Documentation: | --- | CRM: | ||
Verified Versions: | Category: | --- | ||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
Cloudforms Team: | --- | Target Upstream Version: | ||
Embargoed: | ||||
Bug Depends On: | ||||
Bug Blocks: | 2050789 |
Description
Joshua Clark
2022-02-01 16:30:08 UTC
I saw something similar before when the ArgoCD App policies doesn't have the righ config in its ArgoCD AppProject. Would give more details on the ArgoCD App Policies and its AppProject. Root cause: The ArgoCD config is "right", but there's still a conflict: The cluster being deployed is named `ztpmultinode` and unfortunately our default ArgoCD policy app is set up to manage all Policy objects in any namspaces that match `ztp*`. So when ACM copies the policies into the cluster namespace, ArgoCD sees them appear and removes them, and ACM recreates them, and ArgoCD removes them, etc. Workaround for QE: Change ArgoCD so it only manages `ztp-*`, and then the cluster deployment succeeds with no contention. Fix for 4.10: We should mention in our documentation that this potential collision exists, and warn against customers naming clusters `ztp*`. Fix for 4.11: Maybe we can do better with how we select/ignore these policies? Needs more investigation. Sheldon: I'm actively working on the docs portion of this bug with stesmith as part of TELCODOCS-364 @stesmith please note that there would be a doc update once bug 2050789 has a better fix. Documentation changes look good- changing to verified. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (OpenShift Container Platform 4.10.5 bug fix update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2022:0928 |