Получение образа Т1 CSI-драйвера
Т1 CSI-драйвер предназначен для подключения блочных дисков T1 Облако к подам Kubernetes, запущенным на серверах T1 Облако.
Функциональные возможности Т1 CSI-драйвера
Т1 CSI-драйвер позволяет:
- создавать и удалять диски — динамическое управление дисками через PersistentVolumeClaim (CreateVolume/DeleteVolume);
- подключать и отключать диски — подключение дисков к серверу с идемпотентной обработкой повторных запросов;
- монтировать диски — через стандартный CSI-протокол в режиме VolumeMode: Filesystem. Поддерживаются файловые системы, доступные на узле. По умолчанию используется ext4, также можно использовать xfs;
- расширять диски онлайн — при allowVolumeExpansion: true размер диска увеличивается на стороне T1 Облако и в файловой системе без пересоздания пода;
- учитывать топологию кластера — при volumeBindingMode: WaitForFirstConsumer диск создаётся в дата-центре узла, выбранного для пода. В PersistentVolume автоматически задаётся nodeAffinity;
- задавать тип диска и дата-центр по имени — вместо ID можно использовать параметры volumeTypeName и availabilityZoneName;
- настраивать тип диска для отдельных дата-центров — с помощью параметров volumeTypeName.<zoneID> можно задать разные типы дисков для разных дата-центров. Подробнее см. в разделе Многозональные кластеры;
- автоматически определять дата-центр — если дата-центр не указан в StorageClass и настройках по умолчанию, драйвер определяет его по серверу, на котором запущен controller.
Т1 CSI-драйвер не поддерживает:
- снимки;
- ListVolumes;
- режим raw block;
- ListSnapshots.
Требования для установки Т1 CSI-драйвера
Перед установкой Т1 CSI-драйвера убедитесь, что выполнены условия:
- кластер Kubernetes развёрнут на серверах T1 Облако;
- доступ к API T1 Облако, понадобятся следующие параметры:
- project-name — имя проекта в T1 Облако, к ресурсам которого драйверу нужен доступ;
- client-id — идентификатор сервисного аккаунта в T1 Облако;
- client-secret — секретный ключ сервисного аккаунта, аналог пароля для автоматизированного доступа. Используется вместе с client-id для получения временного токена доступа к API;
- связь с API-сервисом — control‑plane и все рабочие узлы кластера Kubernetes должны иметь доступ к адресу api.t1.cloud или к альтернативному хосту API (если используется закрытый контур).
Получение образа Т1 CSI-драйвера
Чтобы получить образ Т1 CSI-драйвера:
- Скачайте образ нужной версии CSI-драйвера из Объектного хранилища S3:
где X.Y.Z — версия CSI-драйвера. - Загрузите скачанный образ в Docker или containerd и отправьте в ваш registry.
- Присвойте образу имя:
- Укажите <registry>/csi-driver:v0.0.29 в качестве образа:
- для обычных манифестов — поле image: контейнера t1-csi-driver в файлах controller.yaml и node-daemonset.yaml;
- для Helm — значения image.repository и image.tag в файле values.yaml (или --set image.repository=... --set image.tag=...).
- Если ваш registry требует авторизации, создайте imagePullSecret и укажите его в манифестах.
imagePullSecrets уже присутствует в шаблонах, замените dockerhub-secret на свой секрет с доступом к вашему registry.
Дальнейшие шаги