operand-deployment-lifecycle-manager icon indicating copy to clipboard operation
operand-deployment-lifecycle-manager copied to clipboard

Multi ODLMs case: every ODLM will watch all the CRs from different NS

Open Daniel-Fan opened this issue 4 years ago • 0 comments

When there exists multiple ODLMs, each of them will watch all the CRs from different namespaces.

But it will failed to reconcile those CRs whose registryNS is not its NS, or those resources which are not belong to its NS.

For example, it is the log of ODLM which is under NS common-service-installed, failed to reconcile OperandRequest with RegistryNS common-service-installed-2 and other CRs under common-service-installed-2.

I0102 07:49:27.114670       1 operandrequest_controller.go:92] Reconciling OperandRequest: common-service-2/common-service
I0102 07:49:27.114692       1 reconcile_operator.go:40] Reconciling Operators for OperandRequest: common-service-2/common-service
E0102 07:49:27.114760       1 operandrequest_controller.go:147] failed to reconcile Operators for OperandRequest common-service-2/common-service: unable to get: common-service-installed-2/ibm-cert-manager-operator because of unknown namespace for the cache
I0102 07:50:00.533921       1 operandbindinfo_controller.go:71] Reconciling OperandBindInfo: common-service-installed-2/ibm-auditlogging-bindinfo
E0102 07:50:00.534022       1 operandbindinfo_controller.go:221] failed to get Secret audit-server-certs from the namespace common-service-installed-2: unable to get: common-service-installed-2/audit-server-certs because of unknown namespace for the cache
I0102 08:00:01.537853       1 operandbindinfo_controller.go:71] Reconciling OperandBindInfo: common-service-installed-2/ibm-auditlogging-bindinfo
E0102 08:00:01.537947       1 operandbindinfo_controller.go:221] failed to get Secret audit-server-certs from the namespace common-service-installed-2: unable to get: common-service-installed-2/audit-server-certs because of unknown namespace for the cache
I0102 08:02:42.471686       1 operandconfig_controller.go:67] Reconciling OperandConfig: common-service-installed-2/common-service
E0102 08:02:42.471739       1 operandconfig_controller.go:130] failed to fetch Subscription ibm-cert-manager-operator or ibm-cert-manager-operator in the namespace common-service-installed-2: unable to get: common-service-installed-2/ibm-cert-manager-operator because of unknown namespace for the cache
E0102 08:02:42.471744       1 operandconfig_controller.go:71] failed to update the status for OperandConfig common-service-installed-2/common-service : unable to get: common-service-installed-2/ibm-cert-manager-operator because of unknown namespace for the cache

After the test, it does not seem to affect the functionality of ODLM to reconcile its own resources. But it will constantly reconcile those failed resources.

And I tried to uninstalled the individual common service operator like cert-manager operator, and ODLM will take a pretty long time to reinstall them, which looks like a side-effect of reconciling failed resource constantly.

/cc @horis233

Daniel-Fan avatar Jan 02 '21 08:01 Daniel-Fan