Время от времени мне нужно выполнять замену всех модулей в моем StatefulSet так, чтобы все PV также создавались заново. Причиной этого является избавление от всех базовых жестких дисков, которые используют старые версии ключа шифрования. Эту операцию не следует путать с регулярными непрерывными обновлениями, для которых я все еще хочу, чтобы тома выжили после завершения Pod. Лучшая процедура, которую я решил сделать, заключается в следующем:
- Удалить PV.
- Удалить PV C.
- Удалить Pod.
- Дождитесь завершения всех удалений.
- Вручную заново создайте PV C, удаленный на шаге 2.
- Дождитесь, пока новый Pod завершит sh потоковую передачу данных из других модулей. в StatefulSet.
- Повторите с шага 1. для следующего Pod.
Я не доволен шагом 5. Я sh StatefulSet воссоздал PV C для меня, но, к сожалению, это не так. Я должен сделать это сам, в противном случае создание Pod завершается ошибкой:
Warning FailedScheduling 3s (x15 over 15m) default-scheduler persistentvolumeclaim "foo-bar-0" not found
Есть ли лучший способ сделать это?