kubeadm returned "Illegal instruction" on Raspberry Pi Model B+ device.

Created on 20 May 2017  ·  6Comments  ·  Source: kubernetes/kubeadm

Is this a BUG REPORT or FEATURE REQUEST? (choose one):
BUG REPORT

https://github.com/kubernetes/kubernetes/issues/45785 , move the issur from kubernetes repo to kubeadm by @grodrigues3 's advice.

Kubernetes version (use kubectl version):
kubernetes-cni (0.5.1-00)
socat (1.7.2.4-2)
kubelet (1.6.3-00)
kubectl (1.6.3-00)
kubeadm (1.6.3-00)

Environment:

  • Cloud provider or hardware configuration: Raspberry Pi Model B+ with the latest hypriotos (hypriotos-rpi-v1.4.0.img).
  • OS (e.g. from /etc/os-release):
    $ cat /etc/os-release
    PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)"
    NAME="Raspbian GNU/Linux"
    VERSION_ID="8"
    VERSION="8 (jessie)"
    ID=raspbian
    ID_LIKE=debian
    HOME_URL="http://www.raspbian.org/"
    SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
    BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
    HYPRIOT_OS="HypriotOS/armhf"
    HYPRIOT_OS_VERSION="v1.0.0"
    HYPRIOT_DEVICE="Raspberry Pi"
    HYPRIOT_IMAGE_VERSION="v1.4.0"
  • Kernel (e.g. uname -a):
    $ uname -a
    Linux black-pearl 4.4.50-hypriotos+ #2 PREEMPT Sun Mar 19 14:44:01 UTC 2017 armv6l GNU/Linux

  • Install tools:
    kubernetes-cni (0.5.1-00)
    socat (1.7.2.4-2)
    kubelet (1.6.3-00)
    kubectl (1.6.3-00)
    kubeadm (1.6.3-00)

What happened: kubeadm returned "Illegal instruction"

HypriotOS/armv6: root@black-pearl in ~
$ which kubeadm
/usr/bin/kubeadm
HypriotOS/armv6: root@black-pearl in ~
$ kubeadm init --pod-network-cidr 10.244.0.0/16
Illegal instruction
HypriotOS/armv6: root@black-pearl in ~
$ kubectl --help
Illegal instruction
HypriotOS/armv6: root@black-pearl in ~
$ kubeadm version
Illegal instruction

What you expected to happen: Normal run should

Anything else we need to know: All the kube* pkg installed ok:

HypriotOS/armv6: root@black-pearl in ~
$ apt-get install -y kubelet kubeadm kubectl kubernetes-cni
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
ebtables socat
The following NEW packages will be installed:
ebtables kubeadm kubectl kubelet kubernetes-cni socat
0 upgraded, 6 newly installed, 0 to remove and 0 not upgraded.
Need to get 37.1 MB of archives.
After this operation, 266 MB of additional disk space will be used.
Get:1 http://mirrordirector.raspbian.org/raspbian/ jessie/main ebtables armhf 2.0.10.4-3 [97.1 kB]
Get:2 http://mirrordirector.raspbian.org/raspbian/ jessie/main socat armhf 1.7.2.4-2 [310 kB]
Get:3 http://apt.kubernetes.io/ kubernetes-xenial/main kubernetes-cni armhf 0.5.1-00 [4,853 kB]
Get:4 http://apt.kubernetes.io/ kubernetes-xenial/main kubelet armhf 1.6.3-00 [15.6 MB]
Get:5 http://apt.kubernetes.io/ kubernetes-xenial/main kubectl armhf 1.6.3-00 [8,301 kB]
Get:6 http://apt.kubernetes.io/ kubernetes-xenial/main kubeadm armhf 1.6.3-00 [7,992 kB]
Fetched 37.1 MB in 38s (960 kB/s)
Selecting previously unselected package ebtables.
(Reading database ... 22486 files and directories currently installed.)
Preparing to unpack .../ebtables_2.0.10.4-3_armhf.deb ...
Unpacking ebtables (2.0.10.4-3) ...
Selecting previously unselected package kubernetes-cni.
Preparing to unpack .../kubernetes-cni_0.5.1-00_armhf.deb ...
Unpacking kubernetes-cni (0.5.1-00) ...
Selecting previously unselected package socat.
Preparing to unpack .../socat_1.7.2.4-2_armhf.deb ...
Unpacking socat (1.7.2.4-2) ...
Selecting previously unselected package kubelet.
Preparing to unpack .../kubelet_1.6.3-00_armhf.deb ...
Unpacking kubelet (1.6.3-00) ...
Selecting previously unselected package kubectl.
Preparing to unpack .../kubectl_1.6.3-00_armhf.deb ...
Unpacking kubectl (1.6.3-00) ...
Selecting previously unselected package kubeadm.
Preparing to unpack .../kubeadm_1.6.3-00_armhf.deb ...
Unpacking kubeadm (1.6.3-00) ...
Processing triggers for systemd (215-17+deb8u7) ...
Processing triggers for man-db (2.7.0.2-5) ...
Setting up ebtables (2.0.10.4-3) ...
update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults
Setting up kubernetes-cni (0.5.1-00) ...
Setting up socat (1.7.2.4-2) ...
Setting up kubelet (1.6.3-00) ...
Setting up kubectl (1.6.3-00) ...
Setting up kubeadm (1.6.3-00) ...
Processing triggers for systemd (215-17+deb8u7) ...
HypriotOS/armv6: root@black-pearl in ~

Change repo from kubernetes-xenial to kubernetes-jessie, but apt-get can't found the kubeadm packages.
Where can I find the deb package which support Raspberry Pi Model B+ with the latest hypriotos (hypriotos-rpi-v1.4.0.img)?

HypriotOS/armv6: root@black-pearl in /etc/network/interfaces.d
$ cat /etc/apt/sources.list.d/kubernetes.list
deb http://apt.kubernetes.io/ kubernetes-jessie main
HypriotOS/armv6: root@black-pearl in /etc/network/interfaces.d
$ apt-get install kubeadm
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package kubeadm is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'kubeadm' has no installation candidate
HypriotOS/armv6: root@black-pearl in /etc/network/interfaces.d
$

Ref "https://packages.cloud.google.com/apt/dists/kubernetes-jessie/main/binary-armhf/Packages", there are only kubectl package.

Most helpful comment

Please!!!! bring back Raspberry Pi support.... a lot of people are experimenting with PI's and kubernetes... and there are a ton of people who use this for making great things...

All 6 comments

Unfortunately, support for the first generation Raspberry Pi was dropped in the 1.6.0 release and onward (see https://github.com/kubernetes/kubeadm/issues/253#issuecomment-296738890 for greater detail). If you're just looking to experiment with Kubernetes using kubeadm and you don't care about security, I believe you should still be able to be use 1.5.x releases (the newest of which is 1.5.7). You should still be able to use the kubernetes-xenial repository, but try forcing the 1.5.7 versions of packages when installing. You can also try compiling from source.

@pipejakob thank you for your advice! I'll try the 1.5.x releases.

Closing, please reopen if there is still an issue.

I had the same problem, I resolved like this:
apt install kubelet=1.5.6-00 kubectl=1.5.6-00 kubeadm=1.5.6-00

Please!!!! bring back Raspberry Pi support.... a lot of people are experimenting with PI's and kubernetes... and there are a ton of people who use this for making great things...

Just ran into this myself, a shame support was arbitrarily dropped for Armv6 if it's all automated on your end :)

Was this page helpful?
0 / 5 - 0 ratings