apache / solr-operator

Official Kubernetes operator for Apache Solr
https://solr.apache.org/operator
Apache License 2.0
243 stars 112 forks source link

Failed to pull zookeeper image from private registry #621

Open davidl789 opened 9 months ago

davidl789 commented 9 months ago

Installed the apache/solr helm chart and override to pull the zookeeper image from our private registry with the command below: helm install example apache-solr/solr --version 0.7.1 --set zk.provided.image.repository=my-registry.com.au/myuser/my_solrzookeeper --set zk.provided.image.tag=0.1.379 --set zk.provided.image.imagePullSecret=my-docker-registry-key

It failed to pull the zookeeper image from our private registry with error "no basic auth credentials" : " Warning Failed 10s kubelet Failed to pull image "my-registry.sandstone.com.au/myuser/my_solrzookeeper:0.1.379": rpc error: code = Unknown desc = Error response from daemon: Head "https://my-registry.sandstone.com.au/v2/myuser/my_solrzookeeper/manifests/0.1.379": no basic auth credentials"

It appears the provided pull secret "my-docker-registry-key" is ignored and not sent to the private registry.

However, the solrcloud image can be pulled successfully from our private registry with the command below using the same pull secret: helm install example apache-solr/solr --version 0.7.1 --set image.repository=my-registry.sandstone.com.au/myuser/my_solrcloud --set image.tag=0.1.3464 --set image.imagePullSecret=my-docker-registry-key

HoustonPutman commented 7 months ago

Sorry for the late response here. When you do this, and look at the ZookeeperCluster or Pod. (i.e. kubectl describe zookeepercluster), does it show an imagePullSecret?

davidl789 commented 7 months ago

No worries, thanks for looking into it. I run describe pod please see output below. I only see some mount point for the secret "/var/run/secrets/kubernetes.io/serviceaccount" if that's what you mean.

`david@ubuntu:~$ kubectl describe pod example-solrcloud-zookeeper-0 Name: example-solrcloud-zookeeper-0 Namespace: local-dev Priority: 0 Service Account: default Node: sstaul-22005/172.30.71.112 Start Time: Wed, 29 Nov 2023 10:56:07 +1100 Labels: app=example-solrcloud-zookeeper app.kubernetes.io/instance=example app.kubernetes.io/managed-by=Helm app.kubernetes.io/name=solr app.kubernetes.io/version=8.11.1 controller-revision-hash=example-solrcloud-zookeeper-6c9679b97b helm.sh/chart=solr-0.7.1 kind=ZookeeperMember release=example-solrcloud-zookeeper solr-cloud=example statefulset.kubernetes.io/pod-name=example-solrcloud-zookeeper-0 technology=zookeeper Annotations: Status: Pending IP: 10.42.0.177 IPs: IP: 10.42.0.177 Controlled By: StatefulSet/example-solrcloud-zookeeper Containers: zookeeper: Container ID:
Image: my-registry.sandstone.com.au/myuser/sst_solrzookeeper:0.1.379 Image ID:
Ports: 2181/TCP, 2888/TCP, 3888/TCP, 7000/TCP, 8080/TCP Host Ports: 0/TCP, 0/TCP, 0/TCP, 0/TCP, 0/TCP Command: /usr/local/bin/zookeeperStart.sh State: Waiting Reason: ErrImagePull Ready: False Restart Count: 0 Liveness: exec [zookeeperLive.sh] delay=10s timeout=10s period=10s #success=1 #failure=3 Readiness: exec [zookeeperReady.sh] delay=10s timeout=10s period=10s #success=1 #failure=3 Environment: ENVOY_SIDECAR_STATUS: (v1:metadata.annotations['sidecar.istio.io/status']) Mounts: /conf from conf (rw) /data from data (rw) /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-jjfwc (ro) Conditions: Type Status Initialized True Ready False ContainersReady False PodScheduled True Volumes: data: Type: EmptyDir (a temporary directory that shares a pod's lifetime) Medium:
SizeLimit: conf: Type: ConfigMap (a volume populated by a ConfigMap) Name: example-solrcloud-zookeeper-configmap Optional: false kube-api-access-jjfwc: Type: Projected (a volume that contains injected data from multiple sources) TokenExpirationSeconds: 3607 ConfigMapName: kube-root-ca.crt ConfigMapOptional: DownwardAPI: true QoS Class: BestEffort Node-Selectors: Tolerations: node.kubernetes.io/not-ready:NoExecute op=Exists for 300s node.kubernetes.io/unreachable:NoExecute op=Exists for 300s Events: Type Reason Age From Message


Normal Scheduled 23s default-scheduler Successfully assigned local-dev/example-solrcloud-zookeeper-0 to sstaul-22005 Normal Pulling 22s kubelet Pulling image "my-registry.sandstone.com.au/myuser/sst_solrzookeeper:0.1.379" Warning Failed 14s kubelet Failed to pull image "my-registry.sandstone.com.au/myuser/sst_solrzookeeper:0.1.379": rpc error: code = Unknown desc = Error response from daemon: Head "https://my-registry.sandstone.com.au/v2/myuser/sst_solrzookeeper/manifests/0.1.379": no basic auth credentials Warning Failed 14s kubelet Error: ErrImagePull Normal BackOff 14s kubelet Back-off pulling image "my-registry.sandstone.com.au/myuser/sst_solrzookeeper:0.1.379" Warning Failed 14s kubelet Error: ImagePullBackOff

`

EmmanuelSoon commented 1 month ago

Hi there @davidl789, did you manage to solve this issue? Currently facing the same problem...