빌드는 성공하지만 특정 노드에서 registry manifest 요청이 401로 실패한다. Pod의 Secret에 등록된 registry 주소와 실제 이미지 주소가 다르다.
Kubernetes는 Pod가 참조하는 namespace 내 registry 인증을 사용한다. 노드의 crictl 인증과 별개다. 원본의 CAI 내부 생성 Secret을 영구 수정하는 경로는 제품 버전에 따라 확인해야 한다.
실제 registry hostname:port용 인증을 같은 namespace의 imagePullSecret에 구성하고 Pod template이 그 Secret을 참조하도록 수정한다.
확인 수준: 추가 조사 해법 · 해당 케이스 적용 결과 미확인
적용 조건: <...>와 예시 DB·테이블·경로·수치는 실제 확인값으로 바꾼다. 명령과 메뉴는 참고 문서를 바탕으로 보강한 예시이며 대상 시스템에서 실행하지 않았다. 버전·원인에 따른 분기와 남은 확인 사항은 아래에 명시한다.
kubectl -n '<namespace>' describe pod '<pod>'
kubectl -n '<namespace>' get pod '<pod>' -o jsonpath='{.spec.imagePullSecrets[*].name}'
kubectl -n '<namespace>' get secret '<secret>' -o jsonpath='{.type}'
kubectl -n '<namespace>' create secret generic '<new-pull-secret>' \
--type=kubernetes.io/dockerconfigjson \
--from-file=.dockerconfigjson='<정상-docker-config.json>' \
--dry-run=client -o yaml > pull-secret.yaml
kubectl apply -f pull-secret.yaml
이전 실패 노드와 다른 노드에서 모두 새 이미지 pull 및 endpoint Ready가 성공해야 한다.