# Error: ImagePullBackOff

**URL:** <https://discuss.elastic.co/t/error-imagepullbackoff/317687>\
**Category:** Elastic Cloud on Kubernetes (ECK)\
**Tags:** docker\
**Created:** [October 28, 2022, 1:37pm UTC](https://discuss.elastic.co/t/error-imagepullbackoff/317687 "2022-10-28T13:37:06Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Adriann](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/adriann/32/77780_2.png) [@Adriann](https://discuss.elastic.co/u/Adriann)\
**Post date:** [October 28, 2022, 1:37pm UTC](https://discuss.elastic.co/t/error-imagepullbackoff/317687/1 "2022-10-28T13:37:06Z")

</div>

Hello,

I want to deploy quickstart example of elk, kibana, fleet server using this [example](https://www.elastic.co/guide/en/cloud-on-k8s/current/k8s-elastic-agent-fleet-quickstart.html) but pods cannot start because

```auto
NAMESPACE NAME READY STATUS RESTARTS AGE
default elasticsearch-quickstart-es-default-0 0/1 Init:ImagePullBackOff 0 8m
default kibana-quickstart-kb-559ff6d669-cdmfh 1/1 Running 0 7m54s
default quickstart-agent-bzgfn 0/1 ImagePullBackOff 0 43m
elastic-system elastic-operator-0 1/1 Running 6 (9m33s ago) 5h2m
ingress-nginx ingress-nginx-admission-create-x6zdh 0/1 Completed 0 4h59m
ingress-nginx ingress-nginx-admission-patch-r4n8m 0/1 Completed 1 4h59m
ingress-nginx ingress-nginx-controller-5959f988fd-gs2dc 1/1 Running 4 (9m32s ago) 4h59m
kube-system coredns-565d847f94-jrhpr 1/1 Running 4 (9m33s ago) 5h3m
kube-system etcd-minikube 1/1 Running 4 (9m33s ago) 5h3m
kube-system kube-apiserver-minikube 1/1 Running 4 (9m33s ago) 5h3m
kube-system kube-controller-manager-minikube 1/1 Running 4 (9m33s ago) 5h3m
kube-system kube-proxy-tzpqb 1/1 Running 4 (9m32s ago) 5h3m
kube-system kube-scheduler-minikube 1/1 Running 4 (9m33s ago) 5h3m
kube-system storage-provisioner 1/1 Running 7 (9m32s ago) 5h3m

```

```auto
Events:
  Type Reason Age From Message
  ---- ------ ---- ---- -------
  Normal Scheduled 6m10s default-scheduler Successfully assigned default/elasticsearch-quickstart-es-default-0 to minikube
  Warning Failed 2m33s kubelet Failed to pull image "docker.elastic.co/elasticsearch/elasticsearch:8.4.1": rpc error: code = Unknown desc = context deadline exceeded
  Warning Failed 2m33s kubelet Error: ErrImagePull
  Normal BackOff 2m31s (x3 over 2m33s) kubelet Back-off pulling image "docker.elastic.co/elasticsearch/elasticsearch:8.4.1"
  Warning Failed 2m31s (x3 over 2m33s) kubelet Error: ImagePullBackOff
  Normal Pulling 2m17s (x2 over 6m4s) kubelet Pulling image "docker.elastic.co/elasticsearch/elasticsearch:8.4.1"

```

I was testing version 8.4.0, 8.4.1, 8.4.2, 8.4.3 but all cannot be pulled. Which version should I use for it to works?

---

<div class="post-metadata">

**Author:** ![kylemclaren](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/kylemclaren/32/100720_2.png) [@kylemclaren](https://discuss.elastic.co/u/kylemclaren)\
**Post date:** [October 28, 2022, 2:00pm UTC](https://discuss.elastic.co/t/error-imagepullbackoff/317687/2 "2022-10-28T14:00:30Z")

</div>

Hey @Adriann, this is a known issue with Minikube. Check out this topic which was recently solved: [ImagePullBackOff error while deploying Elastic via ECK - #2 by kylemclaren](https://discuss.elastic.co/t/imagepullbackoff-error-while-deploying-elastic-via-eck/316739/2)

---

<div class="post-metadata">

**Author:** ![Adriann](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/adriann/32/77780_2.png) [@Adriann](https://discuss.elastic.co/u/Adriann)\
**Post date:** [October 28, 2022, 2:10pm UTC](https://discuss.elastic.co/t/error-imagepullbackoff/317687/3 "2022-10-28T14:10:00Z")

</div>

Hello Kyle,

thank you for your answer.

To be honest I don't understand what should I change based on that topic.

---

<div class="post-metadata">

**Author:** ![kylemclaren](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/kylemclaren/32/100720_2.png) [@kylemclaren](https://discuss.elastic.co/u/kylemclaren)\
**Post date:** [October 28, 2022, 2:57pm UTC](https://discuss.elastic.co/t/error-imagepullbackoff/317687/5 "2022-10-28T14:57:36Z")

</div>

In short, you need to manually pull the images down to the minkiube cluster: `minikube ssh docker pull docker.elastic.co/../..`

Then, force k8s to use the local images and not try to pull them using `imagePullPolicy: Never`. So in the linked topic, the example is:

```auto
cat <<EOF | kubectl apply -f -
apiVersion: elasticsearch.k8s.elastic.co/v1
kind: Elasticsearch
metadata:
  name: quickstart
spec:
  version: 8.4.3
  nodeSets:
  - name: default
    count: 1
    config:
      node.store.allow_mmap: false
    podTemplate:
      spec:
        containers:
        - name: elasticsearch
          imagePullPolicy: Never
EOF

```

You'll just need to apply that `imagePullPolicy` to the Fleet quickstart.

---

<div class="post-metadata">

**Author:** ![Adriann](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/adriann/32/77780_2.png) [@Adriann](https://discuss.elastic.co/u/Adriann)\
**Post date:** [October 28, 2022, 4:45pm UTC](https://discuss.elastic.co/t/error-imagepullbackoff/317687/6 "2022-10-28T16:45:06Z")

</div>

I have downloaded the imgs

```auto

minikube ssh docker pull docker.elastic.co/elasticsearch/elasticsearch:8.4.3
minikube ssh docker pull docker.elastic.co/beats/elastic-agent:8.4.3

```

I did the change

```auto
apiVersion: agent.k8s.elastic.co/v1alpha1
kind: Agent
metadata:
  name: fleet-server-quickstart
  namespace: default
spec:
  version: 8.4.3
  kibanaRef:
    name: kibana-quickstart
  elasticsearchRefs:
  - name: elasticsearch-quickstart
  mode: fleet
  fleetServerEnabled: true
  deployment:
    replicas: 1
    podTemplate:
      spec:
        serviceAccountName: elastic-agent
        automountServiceAccountToken: true
        securityContext:
          runAsUser: 0
        containers:
        - name: agent
          imagePullPolicy: Never
---
apiVersion: agent.k8s.elastic.co/v1alpha1
kind: Agent
metadata:
  name: elastic-agent-quickstart
  namespace: default
spec:
  version: 8.4.3
  kibanaRef:
    name: kibana-quickstart
  fleetServerRef:
    name: fleet-server-quickstart
  mode: fleet
  daemonSet:
    podTemplate:
      spec:
        serviceAccountName: elastic-agent
        automountServiceAccountToken: true
        securityContext:
          runAsUser: 0
      containers:
      - name: agent
        imagePullPolicy: Never
---
apiVersion: kibana.k8s.elastic.co/v1
kind: Kibana
metadata:
  name: kibana-quickstart
  namespace: default
spec:
  version: 8.4.3
  count: 1
  elasticsearchRef:
    name: elasticsearch-quickstart
  config:
    xpack.fleet.agents.elasticsearch.hosts: ["https://elasticsearch-quickstart-es-http.default.svc:9200"]
    xpack.fleet.agents.fleet_server.hosts: ["https://fleet-server-quickstart-agent-http.default.svc:8220"]
    xpack.fleet.packages:
      - name: system
        version: latest
      - name: elastic_agent
        version: latest
      - name: fleet_server
        version: latest
    xpack.fleet.agentPolicies:
      - name: Fleet Server on ECK policy
        id: eck-fleet-server
        is_default_fleet_server: true
        namespace: default
        monitoring_enabled:
          - logs
          - metrics
        unenroll_timeout: 900
        package_policies:
        - name: fleet_server-1
          id: fleet_server-1
          package:
            name: fleet_server
      - name: Elastic Agent on ECK policy
        id: eck-agent
        namespace: default
        monitoring_enabled:
          - logs
          - metrics
        unenroll_timeout: 900
        is_default: true
        package_policies:
          - name: system-1
            id: system-1
            package:
              name: system
  http:
    service:
      spec:
        ports:
          - port: 5601
            targetPort: 5601
        type: LoadBalancer
---
apiVersion: elasticsearch.k8s.elastic.co/v1
kind: Elasticsearch
metadata:
  name: elasticsearch-quickstart
  namespace: default
spec:
  version: 8.4.3
  nodeSets:
  - name: default
    count: 1
    config:
      node.store.allow_mmap: false
    podTemplate:
      spec:
        containers:
        - name: elasticsearch
          imagePullPolicy: Never
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  name: elastic-agent
rules:
- apiGroups: [""] # "" indicates the core API group
  resources:
  - pods
  - nodes
  - namespaces
  verbs:
  - get
  - watch
  - list
- apiGroups: ["coordination.k8s.io"]
  resources:
  - leases
  verbs:
  - get
  - create
  - update
---
apiVersion: v1
kind: ServiceAccount
metadata:
  name: elastic-agent
  namespace: default
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: elastic-agent
subjects:
- kind: ServiceAccount
  name: elastic-agent
  namespace: default
roleRef:
  kind: ClusterRole
  name: elastic-agent
  apiGroup: rbac.authorization.k8s.io

```

This is the output

```auto
66s Warning AssociationError agent/fleet-server-quickstart Association backend for kibana is not configured
2m10s Warning AssociationError agent/fleet-server-quickstart Association backend for elasticsearch is not configured
2m10s Normal AssociationStatusChange agent/fleet-server-quickstart Association status changed from [] to [Pending]
2m9s Normal AssociationStatusChange agent/fleet-server-quickstart Association status changed from [] to [default/elasticsearch-quickstart: Established]
66s Normal AssociationStatusChange agent/elastic-agent-quickstart Association status changed from [] to [Pending]
66s Normal AssociationStatusChange agent/elastic-agent-quickstart Association status changed from [] to [Pending]
66s Warning AssociationError agent/elastic-agent-quickstart Association backend for fleetserver is not configured
66s Warning AssociationError agent/elastic-agent-quickstart Association backend for kibana is not configured

k get po -A --watch

NAMESPACE NAME READY STATUS RESTARTS AGE
default elasticsearch-quickstart-es-default-0 1/1 Running 1 (2m20s ago) 3h11m
default kibana-quickstart-kb-559ff6d669-cdmfh 0/1 Running 1 (2m20s ago) 3h11m
default quickstart-agent-5mj6z 0/1 Error 1 (17s ago) 22s
elastic-system elastic-operator-0 1/1 Running 8 (31s ago) 8h
ingress-nginx ingress-nginx-admission-create-x6zdh 0/1 Completed 0 8h
ingress-nginx ingress-nginx-admission-patch-r4n8m 0/1 Completed 1 8h
ingress-nginx ingress-nginx-controller-5959f988fd-gs2dc 1/1 Running 5 (2m20s ago) 8h
kube-system coredns-565d847f94-jrhpr 1/1 Running 5 (2m20s ago) 8h
kube-system etcd-minikube 1/1 Running 5 (2m20s ago) 8h
kube-system kube-apiserver-minikube 1/1 Running 5 (2m20s ago) 8h
kube-system kube-controller-manager-minikube 1/1 Running 5 (2m20s ago) 8h
kube-system kube-proxy-tzpqb 1/1 Running 5 (2m20s ago) 8h
kube-system kube-scheduler-minikube 1/1 Running 5 (2m20s ago) 8h
kube-system storage-provisioner 1/1 Running 10 (31s ago) 8h
default quickstart-agent-5mj6z 0/1 CrashLoopBackOff 1 (15s ago) 23s
default kibana-quickstart-kb-559ff6d669-cdmfh 0/1 Terminating 1 (2m22s ago) 3h11m
default elasticsearch-quickstart-es-default-0 1/1 Running 1 (2m23s ago) 3h11m
default elasticsearch-quickstart-es-default-0 1/1 Running 1 (2m23s ago) 3h11m
default quickstart-agent-5mj6z 0/1 Error 2 (17s ago) 25s
default elasticsearch-quickstart-es-default-0 1/1 Terminating 1 (2m24s ago) 3h11m
default kibana-quickstart-kb-559ff6d669-cdmfh 0/1 Terminating 1 (2m24s ago) 3h11m
default kibana-quickstart-kb-559ff6d669-cdmfh 0/1 Terminating 1 (2m24s ago) 3h11m
default kibana-quickstart-kb-559ff6d669-cdmfh 0/1 Terminating 1 (2m24s ago) 3h11m
default kibana-quickstart-kb-54597746b7-57v89 0/1 Pending 0 0s
default kibana-quickstart-kb-54597746b7-57v89 0/1 Pending 0 0s
default kibana-quickstart-kb-54597746b7-57v89 0/1 Init:0/1 0 1s
default kibana-quickstart-kb-54597746b7-57v89 0/1 PodInitializing 0 3s
default kibana-quickstart-kb-54597746b7-57v89 0/1 Running 0 4s
default quickstart-agent-5mj6z 0/1 CrashLoopBackOff 2 (12s ago) 37s
default quickstart-agent-5mj6z 0/1 Error 3 (30s ago) 55s

k logs quickstart-agent-5mj6z

Error: preparing STATE_PATH(/usr/share/elastic-agent/state) failed: mkdir /usr/share/elastic-agent/state/data: permission denied
For help, please see our troubleshooting guide at https://www.elastic.co/guide/en/fleet/7.17/fleet-troubleshooting.html

```

Agnet's pods still do not start but not the pod state is an error.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [November 25, 2022, 4:45pm UTC](https://discuss.elastic.co/t/error-imagepullbackoff/317687/7 "2022-11-25T16:45:42Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
