Я новичок в кубернетах. У меня проблема со стручками. Когда я запускаю команду
kubectl get pods
Результат:
NAME READY STATUS RESTARTS AGE
mysql-apim-db-1viwg 1/1 Running 1 20h
mysql-govdb-qioee 1/1 Running 1 20h
mysql-userdb-l8q8c 1/1 Running 0 20h
wso2am-default-813fy 0/1 ImagePullBackOff 0 20h
Из-за проблемы с узлом «wso2am-default-813fy» мне нужно перезапустить его. Любое предложение?
docker
kubernetes
coreos
Дилшани Субасингхе
источник
источник
kubectl replace --force -f ...
что это было бы эквивалентно удалению с последующим созданием--force
нужна опция?В случае отсутствия файла yaml:
kubectl get pod PODNAME -n NAMESPACE -o yaml | kubectl replace --force -f -
источник
$ kubectl replace --force -f <resource-file>
если все пойдет хорошо, вы должны увидеть что-то вроде:
<resource-type> <resource-name> deleted <resource-type> <resource-name> replaced
подробности об этом можно найти в документации Kubernetes, на страницах «manage-deployment» и kubectl-cheatsheet на момент написания.
источник
Если
Pod
является частьюDeployment
илиService
, удаление его перезапуститPod
и, возможно, поместит его на другой узел:$ kubectl delete po $POD_NAME
replace
если это физическое лицоPod
:$ kubectl get po -n $namespace $POD_NAME -o yaml | kubectl replace -f -
источник
Попробуйте удалить модуль, он снова попытается извлечь изображение.
kubectl delete pod <pod_name> -n <namespace_name>
источник
Сначала попробуйте увидеть, что не так с модулем:
kubectl logs -p <your_pod>
В моем случае это была проблема с файлом YAML.
Итак, мне нужно было исправить файл конфигурации и заменить его:
kubectl replace --force -f <yml_file_describing_pod>
источник
Скорее всего, проблема ImagePullBackOff связана либо с отсутствием изображения, либо с проблемой с файлом YAML модуля.
Что я сделаю это
kubectl get pod -n $namespace $POD_NAME --export > pod.yaml | kubectl -f apply -
Я бы также посмотрел pod.yaml, чтобы узнать, почему предыдущий модуль не работал
источник