RabbitMQ problem installing two instances of Deploy in the same EKS cluster

Hello there!

We are trying to install a second instance of Deploy in our testing EKS cluster. The first instance was installed using Helm Charts to deploy either Deploy and RabbitMQ (we have install RabbitMQ externally) in the EKS cluster. Now we are trying to move our installation process from using Helm Charts to Kubernetes Operators.

After following the official guide (https://docs.digital.ai/bundle/devops-release-version-v.22.3/page/release/operator/xl-kube.html) we execute the XL CLI command to install Deploy in EKS clusters:

xl kube install

The operator pod is running but checking the logs the following message is shown:

{"level":"error","ts":1668613377.1910894,"logger":"controller.digitalaideploy-controller","msg":"Reconciler error","name":"dai-xld-deploytools","namespace":"deploytools","error":"failed to install release: rendered manifests contain a resource that already exists. Unable to continue with install: Secret \"xld-load-definition\" in namespace \"deploytools\" exists and cannot be imported into the current release: invalid ownership metadata; annotation validation error: key \"meta.helm.sh/release-name\" must equal \"dai-xld-deploytools\": current value is \"rabbitmq\"","stacktrace":"sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\t/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:266\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:227"}

When we installed the first instance of Deploy the secret xld-load-definition (which as far as I know tells how RabbitMQ will share the messages between Deploy master and workers) was created with a specific set of annotations:

Annotations:  meta.helm.sh/release-name: rabbitmq
              meta.helm.sh/release-namespace: deploytools

The logs says that the secret already exists and its value of "meta.helm.sh/release-name" annotation must be "dai-deploy-deploytools".

After all this:

  • Is it possible to change the new installation to allow the value "rabbitmq" as value of "meta.helm.sh/release-name" annotation?

  • Is it possible to install two instances of Deploy in the same EKS cluster using the same RabbitMQ instance?

1
5 replies