#docker #kubernetes #azure-devops #kubectl #kubernetes-pod
Вопрос:
Я развертываю новое развертывание после изменений в службе kubernetes. Но я столкнулся со странной проблемой. Когда я удаляю развертывание, оно удаляется нормально, но его наборы реплик и модули не удаляются. Поэтому после повторного применения этого развертывания создаются новые наборы реплик и модули. Но вновь созданные модули выдают ошибку «Сбой планирования» с сообщением «Доступно 0/1 узлов: 1 Слишком много модулей». И поэтому новые изменения не отражают
Ниже приведены команды, которые я использую
kubectl delete -f render.yaml
kubectl apply -f render.yaml
Мой код файла yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: renderdev-deployment
labels:
app: renderdev-deployment
spec:
replicas: 6
selector:
matchLabels:
app: renderdev-deployment
template:
metadata:
labels:
app: renderdev-deployment
spec:
containers:
- name: renderdev-deployment
image: renderdev.azurecr.io/renderdev:latest
ports:
- containerPort: 5000
volumeMounts:
- name: azuresquarevfiles
mountPath: /mnt/azuresquarevfiles
volumes:
- name: azuresquarevfiles
azureFile:
secretName: azure-secret
shareName: videos
readOnly: false
Поэтому, когда я сначала удаляю развертывание, оно должно удалять наборы реплик/модули соответственно, но это не так. В чем будет заключаться проблема? Нужно ли мне удалять эти наборы реплик и модули вручную?
Комментарии:
1. почему бы вам не использовать kubectl delete-f sherparender. yaml для удаления развертываний.
2. извини за это. У меня есть обновленный вопрос.
3. @HunzlaSheikh Когда вы запустите
kubectl delete -f render.yaml
и увидите, чтоreplicaset
не удалено — попробуйтеkubectl get replicaset xxxxxxx -o json
и то же самое хотя бы для 1 модуля в этомreplicaset
. Проверьте, есть ли какие-либоfinalizers
, которые блокируют удаление.