Почему PersistentVolumeClaims обрабатываются специально некоторыми командами OpenShift - PullRequest
0 голосов
/ 23 ноября 2018

Почему область действия oc get alloc delete all --all) в OpenShift 3.10 также не включает компоненты типа PersistentVolumeClaim?Требуется отдельный oc get pvcoc delete pvc --all).

Есть ли особая причина для особого отношения к этим предметам?(Очевидно, они являются особенными только в некоторых отношениях; например, шаблоны приложений могут создавать их вполне нормально вместе с другими компонентами.)

Обновление Компоненты типа Secret также обрабатываются специально ввозможно, аналогичным образом и по аналогичным причинам.Одна из причин, по которой я могу придумать, состоит в том, что эти компоненты обычно имеют более длительный срок службы, чем приложения.

1 Ответ

0 голосов
/ 26 ноября 2018

Я уже пришел к выводу (также из полученных комментариев), что поведение предназначено для защиты от случайного удаления дорогого постоянного хранилища, срок службы которого может значительно превышать одно (версии) приложений.

КакКак следствие, теперь я немного переработал шаблон приложения.До сих пор один шаблон (файл YAML) отвечал за создание всех компонентов (кроме секретов).Это привело к "несбалансированной" ситуации, когда для создания приложения требовался один oc new-app --template=app, а для полного удаления - два oc delete (oc delete all --selector app=... и oc delete pvc --selector app=..).После разбиения шаблона на app.yaml и yaml.yaml новое, «сбалансированное» расположение выглядит следующим образом:

# create app (including its persistent storage)
oc new-app --template=app
oc new-app --template=pvc

# delete app (including its persistent storage)
oc delete all --selector app=...
oc delete pvc --selector app=...

Я все еще оставляю секреты вне этой области и создаю их с oc create secret, как толькопередний.

...