I have a GKE cluster on GCP with 2 existing node pools. I'm trying to create a new node pool:
Any new node pools I create are unable to pull containers from Container Registry with the following error:
The settings and service account I'm using for the new node pool are exactly the same as the existing node pools (other than machine type):
Everything is working as expected on the existing node pools, but each time I create a new node pool I'm having the same problem:
The logs show the following error on image pull:
E0128 06:44:03.656599 1763 remote_image.go:242] "PullImage from image service failed" err="rpc error: code = NotFound desc = failed to pull and unpack image "eu.gcr.io/{PROJECT}/{IMAGE}@sha256:": failed to copy: httpReadSeeker: failed open: could not fetch content descriptor sha256: (application/vnd.docker.container.image.v1+json) from remote: not found" image="eu.gcr.io/{PROJECT}/{IMAGE}@sha256:*****"
As per the container registry official doc, Container Registry is deprecated. After May 15, 2024. Artifact Registry will host images for the gcr.io domain in projects without previous Container Registry usage Starting January 8, 2024, if your organization has not previously used Container Registry, new gcr.io repositories will be hosted on Artifact Registry by default. For more information on this change, see gcr.io hosted on Artifact Registry.
As per the log from pull image error failed to copy: httpReadSeeker: failed open: could not fetch content descriptor sha256: seems that this might be due to image tag typo error and also Skaffold is not supporting the correct tag. As per the Skaffold documentation, it supports multiple taggers or tag policies for tagging images. By following this Skaffold documentation add the necessary configuration in skaffold.yaml and give it a try.
Note: Cross-check the image tags for mistakes which might be the reason for error.