Удалить / применить нужно только в том случае, если вы изменяете (и если у вас есть) ConfigMap, прикрепленный к Развертыванию. Единственное изменение, которое вы делаете, - это «образ» развертывания - вы должны использовать команду «set-image».
Kubectl позволяет вам изменить действительный образ развертывания, и он выполняет Rolling Updates сам по себе и с 3+ стручками у вас есть минимальный шанс для простоя. Более того, если вы используете флаг --record, вы можете без труда выполнить «откат» к предыдущему изображению, поскольку оно отслеживает изменения.
У вас также есть возможность указать «Контекст» , без необходимости переходить из контекстов.
Вы можете go вот так:
kubectl установить развертывание образа DEPLOYMENT_NAME DEPLOYMENT_NAME = IMAGE_NAME --record -n NAMESPACE
ИЛИ Определение кластера
развертывание набора образов kubectl DEPLOYEMTN_NAME DEPLOYEMTN_NAME = IMAGE_NAME_ECR -n NAMESPACE --cluster EKS_RODTER_ пользователь EKS_CLUSTER --record
Как например:
kubectl set image deployment nginx-dep nginx-dep=ecr12345/nginx:latest -n nginx --cluster eu-central-123-prod --user eu-central-123-prod --record
--record - это то, что позволяет отслеживать все изменения, если вы хотите выполнить откат, просто сделайте :
kubectl rollout undo deployment.v1.apps/nginx-dep
Больше документации об этом здесь:
Обновление развертывания https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#updating -a-развертывания
Откат развертывания https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#rolling -back-a-развертывания