Мы можем использовать декларативный подход для создания и обновления ресурсов kubernetes, используя kubectl apply -f
, как мы можем сделать то же самое для утилизации ресурсов, которые больше не нужны.
Я использовал kubectl delete
, но это выглядит как необходимость, и иногда нам нужно будет удалять вещи в правильном порядке.
Есть ли способ всегда использовать kubectl apply
, и он сам определяет, какие ресурсы оставить, а какие удалить.Как и в Terraform
.
Или мы должны сделать вывод, что в настоящее время декларативный подход работает только для создания и обновления ресурсов.
Вариант использования:
Например, мы решили не предоставлять API K8S конечным пользователям, а вместо этого предоставить им хранилище, в котором они хранят и обновляют свои файлы yaml, которые бот может применять к кластеру при каждом обновлении при объединении запроса на извлечение.Так что нам нужно это декларативное удаление, чтобы нам не приходилось убирать вещи после пользователей.Terraform
провайдер может быть решением, но в этом случае все будет зависеть от терраформирования, и пользователям потребуется изучить еще один инструмент вместо использования собственного формата k8s.