kubernetes throws CrashLoopBackOff for echo server

Viewed 1076

I want to deploy the starter image on my kubernetes cluster.

I have three raspberries in a cluster with

> kubectl version -o json                                                                                                                                                       ~
{
  "clientVersion": {
    "major": "1",
    "minor": "18",
    "gitVersion": "v1.18.2",
    "gitCommit": "52c56ce7a8272c798dbc29846288d7cd9fbae032",
    "gitTreeState": "clean",
    "buildDate": "2020-04-16T11:56:40Z",
    "goVersion": "go1.13.9",
    "compiler": "gc",
    "platform": "linux/arm"
  },
  "serverVersion": {
    "major": "1",
    "minor": "18",
    "gitVersion": "v1.18.2",
    "gitCommit": "52c56ce7a8272c798dbc29846288d7cd9fbae032",
    "gitTreeState": "clean",
    "buildDate": "2020-04-16T11:48:36Z",
    "goVersion": "go1.13.9",
    "compiler": "gc",
    "platform": "linux/arm"
  }
}
> docker -v                                                                                                                                                                     ~
Docker version 19.03.8, build afacb8b

> kubectl get node                                                                                                                                                              ~
NAME         STATUS   ROLES    AGE   VERSION
master-pi4   Ready    master   18h   v1.18.2
node1-pi4    Ready    <none>   17h   v1.18.2
node2-pi3    Ready    <none>   17h   v1.18.2

To try it out I want to deploy the simple image but I get the error CrashLoopBackOff

> kubectl create deployment hello-node --image=k8s.gcr.io/echoserver:1.4

> kubectl get pods                                                                                                                                                              ~
NAME                          READY   STATUS             RESTARTS   AGE
hello-node-7bf657c596-wc5r4   0/1     CrashLoopBackOff   7          15m

The describe is also cryptic to me

kubectl describe pod hello-node                                                                                                                                               ~
Name:         hello-node-7bf657c596-wc5r4
Namespace:    default
Priority:     0
Node:         node1-pi4/192.168.188.11
Start Time:   Wed, 13 May 2020 15:02:10 +0200
Labels:       app=hello-node
              pod-template-hash=7bf657c596
Annotations:  <none>
Status:       Running
IP:           10.32.0.4
IPs:
  IP:           10.32.0.4
Controlled By:  ReplicaSet/hello-node-7bf657c596
Containers:
  echoserver:
    Container ID:   docker://841beb3a675963ecb40569439e0575a29c5b9f48aaa967da8c011faeafd96acc
    Image:          k8s.gcr.io/echoserver:1.4
    Image ID:       docker-pullable://k8s.gcr.io/echoserver@sha256:5d99aa1120524c801bc8c1a7077e8f5ec122ba16b6dda1a5d3826057f67b9bcb
    Port:           <none>
    Host Port:      <none>
    State:          Waiting
      Reason:       CrashLoopBackOff
    Last State:     Terminated
      Reason:       Error
      Exit Code:    1
      Started:      Wed, 13 May 2020 15:18:03 +0200
      Finished:     Wed, 13 May 2020 15:18:03 +0200
    Ready:          False
    Restart Count:  8
    Environment:    <none>
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from default-token-wvbzk (ro)
Conditions:
  Type              Status
  Initialized       True 
  Ready             False 
  ContainersReady   False 
  PodScheduled      True 
Volumes:
  default-token-wvbzk:
    Type:        Secret (a volume populated by a Secret)
    SecretName:  default-token-wvbzk
    Optional:    false
QoS Class:       BestEffort
Node-Selectors:  <none>
Tolerations:     node.kubernetes.io/not-ready:NoExecute for 300s
                 node.kubernetes.io/unreachable:NoExecute for 300s
Events:
  Type     Reason     Age                  From                Message
  ----     ------     ----                 ----                -------
  Normal   Scheduled  <unknown>            default-scheduler   Successfully assigned default/hello-node-7bf657c596-wc5r4 to node1-pi4
  Normal   Pulled     15m (x5 over 16m)    kubelet, node1-pi4  Container image "k8s.gcr.io/echoserver:1.4" already present on machine
  Normal   Created    15m (x5 over 16m)    kubelet, node1-pi4  Created container echoserver
  Normal   Started    15m (x5 over 16m)    kubelet, node1-pi4  Started container echoserver
  Warning  BackOff    112s (x70 over 16m)  kubelet, node1-pi4  Back-off restarting failed container

What I am I missing?

1 Answers

That's probably because this image is not compatible with ARM architecture.

You should instead use this image k8s.gcr.io/echoserver-arm:1.8

Related