Стадия жизненного цикла модуля: General Availability
Доступно с ограничениями в редакциях: CSE Pro (1.67)
Доступно без ограничений в редакциях: EE
Модуль csi-netapp реализует Container Storage Interface (CSI) для управления томами с использованием систем хранения данных NetApp. Модуль обеспечивает создание StorageClass в Kubernetes посредством управления пользовательскими ресурсами Kubernetes NetappStorageClass.
Создание StorageClass для CSI-драйвера csi.netapp.com пользователем запрещено.
На данный момент модулем поддерживаются СХД, совместимые с Trident CSI от NetApp. Для поддержки других СХД NetApp свяжитесь с технической поддержкой Deckhouse.
На этой странице представлены инструкции по подключению NetApp к Deckhouse Kubernetes Platform (DKP), настройке соединения и созданию StorageClass.
Доступные режимы доступа для модуля: RWO; RWX — только в DVP.
Системные требования
Перед настройкой работы с СХД NetApp убедитесь, что выполнены следующие требования:
- Наличие развернутой и настроенной СХД NetApp.
- Уникальные IQN в
/etc/iscsi/initiatorname.iscsiна каждом узле Kubernetes.
Настройка интеграции кластера с системой хранения NetApp
Чтобы начать работу с СХД NetApp, следуйте пошаговым инструкциям ниже. Все команды выполняйте на машине с административным доступом к API Kubernetes.
Для работы со снимками требуется подключенный модуль snapshot-controller.
-
Выполните команду для активации модуля
csi-netapp:d8 s module enable csi-netappПосле активации модуля на всех узлах кластера будут:
- Зарегистрирован CSI-драйвер;
- Развернуты служебные поды компонентов
csi-netapp.
-
Дождитесь перехода модуля в состояние
Ready:d8 k get module csi-netapp -w -
Убедитесь, что все поды в пространстве имен
d8-csi-netappнаходятся в состоянииRunningилиCompletedи развернуты на всех узлах кластера:d8 k -n d8-csi-netapp get pod -owide -w -
Создайте ресурс NetappStorageConnection:
d8 k apply -f -<<EOF apiVersion: storage.deckhouse.io/v1alpha1 kind: NetappStorageConnection metadata: name: netapp spec: controlPlane: address: "172.17.1.55" username: "admin" password: "password" svm: "svm1" EOF -
Проверьте создание объекта следующей командой (
Phaseдолжен бытьCreated):d8 k get netappstorageconnections.storage.deckhouse.io <имя netappstorageconnection> -
Создайте ресурс NetappStorageClass:
d8 k apply -f -<<EOF apiVersion: storage.deckhouse.io/v1alpha1 kind: NetappStorageClass metadata: name: netapp spec: pool: "test-cpg" accessProtocol: "iscsi" # fc или iscsi (по умолчанию iscsi), неизменяемый параметр. fsType: "xfs" # xfs, ext3, ext4 (по умолчанию ext4), изменяемый параметр. storageConnectionName: "netapp" # Неизменяемый параметр. reclaimPolicy: Delete # Delete или Retain. cpg: "test-cpg" EOF -
Проверьте создание объекта следующей командой (
Phaseдолжен бытьCreated):d8 k get netappstorageclasses.storage.deckhouse.io <имя netappstorageclass>
Теперь система хранения NetApp готова к работе. Вы можете использовать созданный StorageClass для создания PersistentVolumeClaim в ваших приложениях.