thelastpickle / cassandra-medusa

Apache Cassandra Backup and Restore Tool
Apache License 2.0
266 stars 143 forks source link

Potential Error in k8ssandra/medusa Image for ARM Architecture #759

Closed EmanuelSanchez closed 5 months ago

EmanuelSanchez commented 7 months ago

Project board link

Describe the bug Container health checks fails due to an "exec format error". The k8ssandra/medusa image for ARM architecture is using the wrong grpc-health-probe binary and it makes to fail the health checks.

To Reproduce

  1. Deploy a K8ssandra cluster with medusa enabled on an ARM architecture.
  2. The medusa container will give the following error: 'Liveness probe failed: exec /bin/grpc_health_probe: exec format error'

Expected behavior Health checks should work. And give a successful response.

Screenshots image

Environment (please complete the following information):

Which could be the problem? The image for ARM architectures list the following command in the layers: 'RUN /bin/sh -c GRPC_HEALTH_PROBE_VERSION=v0.4.25 && wget -qO/bin/grpc_health_probe https://github.com/grpc-ecosystem/grpc-health-probe/releases/download/${GRPC_HEALTH_PROBE_VERSION}/grpc_health_probe-linux-amd64 && chmod +x /bin/grpc_health_probe # buildkit'

It is using the amd64 binary version of grpc_health_probe instead of the arm64. It should be: 'RUN /bin/sh -c GRPC_HEALTH_PROBE_VERSION=v0.4.25 && wget -qO/bin/grpc_health_probe https://github.com/grpc-ecosystem/grpc-health-probe/releases/download/${GRPC_HEALTH_PROBE_VERSION}/grpc_health_probe-linux-arm64 && chmod +x /bin/grpc_health_probe # buildkit'

image

adejanovski commented 6 months ago

Good catch @EmanuelSanchez ! Let's see how we can workaround this.

EmanuelSanchez commented 6 months ago

Hi @adejanovski ! I just made a Pull Request with a possible solution, please let me know if there is any other way to help.