Выбор ответа Senior HPA, StatefulSet и тома обновлено

ReadWriteOnce и rolling update

Вопрос

База запущена в Deployment с одним PVC ReadWriteOnce и стратегией RollingUpdate. При обновлении новый под висит в ContainerCreating с ошибкой Multi-Attach error. Почему?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: RWO том подключается только к одному узлу, а старый под ещё держит диск. Блочный диск RWO подключается к одному узлу.

Варианты ответа

  1. RWO том подключается только к одному узлу, а старый под ещё держит дискправильный ответ
  2. PVC нужно пересоздавать при каждом обновлении, старый привязан к ReplicaSet
  3. В образе базы нет драйвера диска, его нужно добавить в Dockerfile
  4. Том заполнен, и новый под не может его подключить до увеличения размера

Разбор

Блочный диск RWO подключается к одному узлу. RollingUpdate сначала создаёт новый под, а старый удаляет потом, поэтому возникает конфликт. Решения: стратегия Recreate, StatefulSet (он удаляет старый под перед созданием нового с тем же именем) или ReadWriteOncePod с правильной стратегией. Драйвер диска работает на узле через CSI, размер тут ни при чём.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме