Skip to content

Ingress-nginx pod crashes due to illegal instruction on arm64 version 1.13.0 (helm 4.13.0) #13608

@LarssonOliver

Description

@LarssonOliver

What happened:

Hi 👋

Recently upgraded to helm chart version 4.13.0 and thus controller version 1.13.0 across my clusters.

I have both amd64 and arm64 clusters. The amd64 ones work as expected, but the arm64 deployment quickly crashes after initial startup:

I0711 07:08:41.110797       7 controller.go:203] "Configuration changes detected, backend reload required"
I0711 07:08:41.121628       7 status.go:85] "New leader elected" identity="ingress-nginx-controller-867db7f689-g5882"
W0711 07:08:41.228438       7 nginx.go:37]
-------------------------------------------------------------------------------
NGINX master process died (-1): signal: illegal instruction (core dumped)
-------------------------------------------------------------------------------
E0711 07:08:41.528826       7 controller.go:218] Unexpected failure reloading the backend:
-------------------------------------------------------------------------------
Error: signal: illegal instruction (core dumped)
-------------------------------------------------------------------------------
E0711 07:08:41.529029       7 queue.go:131] "requeuing" err=<
	-------------------------------------------------------------------------------
	Error: signal: illegal instruction (core dumped)
	-------------------------------------------------------------------------------
 > key="initial-sync"
I0711 07:08:41.529190       7 event.go:377] Event(v1.ObjectReference{Kind:"Pod", Namespace:"ingress-nginx", Name:"ingress-nginx-controller-67b664d98f-zsr29", UID:"8b4e924b-7138-460f-ab54-1451e7730ac8", APIVersion:"v1", ResourceVersion:"184201005", FieldPath:""}): type: 'Warning' reason: 'RELOAD' Error reloading NGINX:
-------------------------------------------------------------------------------
Error: signal: illegal instruction (core dumped)
-------------------------------------------------------------------------------
I0711 07:08:44.443849       7 controller.go:203] "Configuration changes detected, backend reload required"
E0711 07:08:44.676647       7 controller.go:218] Unexpected failure reloading the backend:
-------------------------------------------------------------------------------
Error: signal: illegal instruction (core dumped)
-------------------------------------------------------------------------------

For reference:

E0711 07:08:37.800130       7 main.go:157] "unexpected error obtaining NGINX version" err="signal: illegal instruction (core dumped)"
-------------------------------------------------------------------------------
NGINX Ingress controller
  Release:       v1.13.0
  Build:         4cbb78a9dc4f1888af802b70ddf980272e01268b
  Repository:    https://github.com/kubernetes/ingress-nginx
  N/A
-------------------------------------------------------------------------------
W0711 07:08:37.828055       7 client_config.go:667] Neither --kubeconfig nor --master was specified.  Using the inClusterConfig.  This might not work.

Any idea what could be causing this? This happened on a Raspberry Pi 4.

What you expected to happen:

The pod should start and run without crashing.

NGINX Ingress controller version (exec into the pod and run /nginx-ingress-controller --version):

Pod crashes too fast :/

Kubernetes version (use kubectl version):

Client Version: v1.32.2
Kustomize Version: v5.5.0
Server Version: v1.32.3+k3s1

Environment:

  • Cloud provider or hardware configuration:
    Raspberry Pi 4

  • OS (e.g. from /etc/os-release):
    Debian GNU/Linux 11 (bullseye)

  • Kernel (e.g. uname -a):
    Linux hostname 6.1.21-v8+ #1642 SMP PREEMPT Mon Apr 3 17:24:16 BST 2023 aarch64 GNU/Linux

  • How was the ingress-nginx-controller installed:
    Helm chart managed by ArgoCD

How to reproduce this issue:

Anything else we need to know:

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/bugCategorizes issue or PR as related to a bug.needs-priorityneeds-triageIndicates an issue or PR lacks a `triage/foo` label and requires one.

    Type

    No type

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions