rabbitmq/messaging-topology-operator

exec /manager: exec format error on arm64 k8s

romicharroyo opened this issue · 8 comments

Describe the bug

Messaging topology operator pod fails to run under arm64 Kubernetes with error exec /manager: exec format error

Version and environment information

  • Messaging Topology Operator: 1.10.2
  • Kubernetes: 1.23
  • Cloud provider or hardware configuration: AWS, c6g.2xlarge instance type (arm64 CPU)

Additional context

Add any other context about the problem here.

This is unusual, as I am able to run the image locally on an arm64 machine (/manager then fails for other reasons with an error, due to the lack of k8s API, but has executed).

Inspecting the image docker.io/rabbitmqoperator/messaging-topology-operator:latest I can see that it is a multi-arch image with both amd64 and arm64 as supported architectures. One option would be to pull docker.io/rabbitmqoperator/messaging-topology-operator:latest@sha256:44f11bebea8ca81818cdfe06927bd0254211dae299d7e867608af7ebe203f0c3 which is the arm64 image.

Yes. I also ran docker.io/rabbitmqoperator/messaging-topology-operator:latest on my Mac M1

docker run -it docker.io/rabbitmqoperator/messaging-topology-operator:latest                                                            
{"level":"info","ts":"2023-04-19T13:31:32Z","logger":"setup","msg":"unable to find operator namespace"}

But. In doesn't work on AWS (EKS) with AWS Graviton CPU.

Screenshot 2023-04-19 at 16 35 48

Hmmm, that is indeed puzzling.

Can you attach a debug container to the pod and let us know what architecture is reported when running uname -m?
https://kubernetes.io/docs/tasks/debug/debug-application/debug-running-pod/#ephemeral-container

On my k8s cluster on AWS arch is aarch64

Hello! Maybe this discussion can help ? #570
There was a fix recently but a new version of the operator wasn't yet released. Can you try with the image specified on the thread?

Yes. Thanks! Image tag sha-9f98295-arm64 works good.

We've released a 1.10.3 patch which should hopefully have a working multi-arch image 🤞🏼