- tocdepth
2
Поддержка Container Storage Interface
Хранить данные для работы приложений можно в самих контейнерах, но есть некоторые ограничения:
Если контейнер работает некорректно, kubelet может перезагрузить его. При этом данные теряются, а контейнер запускается с чистым состоянием.
Данные, хранящиеся в контейнере, недоступны для других контейнеров пода.
Эти проблемы решаются с помощью подключения к кластеру общего хранилища.
В Kubernetes предоставлять произвольные блочные или файловые хранилища для контейнеров позволяет драйвер Container Storage Interface (CSI). Он расширяет возможности хранения данных для контейнерных приложений.
Драйвер CSI
CSI-драйвер в Managed Kubernetes соответствует спецификации Container Storage Interface.
После развертывания драйвера в кластере пользователи смогут подключать и монтировать постоянные тома на поды.
Установить CSI-драйвер в кластер Managed Kubernetes можно при создании кластера или позже как плагин.
Ограничения и особенности
В текущей реализации драйвера поддерживается только режим ReadWriteOnce.
Допустимый размер тома для монтирования — от 1 ГБ до 4 ТБ, кратный 1 ГБ.
После создания постоянного тома его размер нельзя уменьшить. Увеличение размера тома разрешено по умолчанию.
К одному рабочему узлу можно примонтировать не более восьми томов. Важно соблюдать это ограничение, иначе поды, запланированные на узле, могут бесконечно ожидать подключения томов.
Подробнее об ограничениях на тома в документации сервиса «Диски».
Примеры работы с постоянными томами
Примеры манифестов на создание Persistent Volume Claim, выделение и подключение постоянного тома к поду, а также удаление тома описаны в разделе Работа с постоянными томами в Evolution Managed Kubernetes.
Пример работы со StatefulSet описан в разделе Управление рабочими нагрузками в Evolution Managed Kubernetes.
Была ли статья полезной?
для Dev & Test