#kubernetes #google-kubernetes-engine #kubectl
#kubernetes #google-kubernetes-engine #kubectl
Вопрос:
у нас есть модули на GKE.
мы можем удалить модуль с помощью kubectl -n <ns> delete pod <pod name>
. мы также можем удалить модуль, нажав следующую кнопку удаления.
в чем различия? каковы результаты, если я сделал оба?
Спасибо
Обновить
Спасибо. Модуль имеет terminationGracePeriodSeconds: 60
. что произойдет, если я запущу kubectl delete pod pod_name
и затем ctrl C
? Затем нажмите кнопку удаления в веб-интерфейсе? все это за 60 секунд.
Мне любопытно, удалит ли он модуль принудительно, не дожидаясь 60 секунд.
Спасибо
$ kubectl -n ns delete pod pod-0
pod "pod-0" deleted
^C
Комментарии:
1. Вы можете посмотреть, что такое
State
ваш модуль, запустив$ kubectl get pods -o wide --watch
его. Модуль перейдет вTerminating
состояние, и запускCTRL C
после его перехода вTerminating
состояние не остановит этот процесс. После этого не будет никакого дополнительного эффекта, запускающего его вGKE
пользовательском интерфейсе.
Ответ №1:
Оба запускают один и тот же вызов API для сервера kube-apis. Если вы попытаетесь удалить что-то дважды, второй вызов завершится ошибкой либо «уже удалено», либо «не найдено».
Комментарии:
1. Спасибо. что произойдет, если я запущу
kubectl delete pod pod_name
и затемctrl C
? « $ kubectl -n ns удалить модуль pod-0 pod «pod-0» удалено ^ C «2. Это один вызов API, поэтому, если запрос поступил на сервер, он будет удален. Если вы прервете его до отправки запроса, его не будет.
Ответ №2:
Ответ @codegenerator правильный.
О вашем обновленном вопросе ответ
Модуль останется в завершающем состоянии и будет уничтожен после завершения в течение нескольких секунд pod заканчивается.