Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kubernetes Deployment Support on Multi-Architecture nodes (x86, ARM) #11987

Open
VrindaMarwah opened this issue Feb 22, 2025 · 2 comments
Open
Labels
kind/feature Categorizes issue or PR as related to a new feature.

Comments

@VrindaMarwah
Copy link

What would you like to be added

I would like to know whether Kubespray supports deploying a Kubernetes cluster with nodes of different CPU architectures. For instance, can a cluster consist of an x86 control plane node, an x86 worker node, and an ARM worker node?

Expected Behavior:
Kubespray should be able to deploy Kubernetes on target nodes with mixed architectures (x86 and ARM)

There is no clear mention in the documentation regarding support for heterogeneous architectures in target nodes.

  • Need clarification on whether any additional configurations are required in Kubespray inventory or group_vars to enable multi-arch deployments.
  • Are there any known limitations for such deployments?

Environment Details:
Kubespray version: v2.27.0
Kubernetes version: v1.31.4
OS for nodes: Ubuntu 24.04.2 LTS
Kube Control Plane Architecture: x86_64
Kube Node 1 Architecture: x86_64
Kube Node 2 Architecture: ARM64

Why is this needed

Kubernetes Deployment Support on Multi-Architecture nodes (x86, ARM)

@VrindaMarwah VrindaMarwah added the kind/feature Categorizes issue or PR as related to a new feature. label Feb 22, 2025
@amir-bialek
Copy link

Hey, I am checking the exact same thing.
But looking here:
#7934
@yuha0 wrote he was able to deploy the cluster with multiarc with kubespray 2.25 .

I am asking if this is possible with all nodes as AMD, and one jetson as ARM?

@vdveldet
Copy link

My test environment is a vm, a physical laptop and a Ras Pi.
I use 2.27.0 and have this

root@node01:~# kubectl get nodes -o wide
NAME       STATUS   ROLES           AGE    VERSION   INTERNAL-IP     EXTERNAL-IP   OS-IMAGE                         KERNEL-VERSION        CONTAINER-RUNTIME
laptop01   Ready    <none>          33d    v1.31.4   192.168.0.210   <none>        Debian GNU/Linux 12 (bookworm)   6.1.0-31-amd64        containerd://1.7.24
node01     Ready    control-plane   148d   v1.31.4   192.168.0.223   <none>        Debian GNU/Linux 12 (bookworm)   6.1.0-31-amd64        containerd://1.7.24
raspi5     Ready    <none>          13m    v1.31.4   192.168.0.103   <none>        Debian GNU/Linux 12 (bookworm)   6.6.51+rpt-rpi-2712   containerd://1.7.24

cgroup needs to be activated and this was done in a different playbook

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature.
Projects
None yet
Development

No branches or pull requests

3 participants