Модуль CSI Openstack (CSI Cinder)
На этой странице
В платформе “Штурвал” Модуль CSI Openstack позволяет использовать облачное хранилище платформы виртуализации Openstack. Модуль является драйвером Cinder CSI и отвечает за выделение постоянного тома (PersistentVolume), монтирование и отключение тома от виртуальной машины.
Установка в кластер
Модуль CSI Openstack не является критически важным сервисов для работы платформы “Штурвал”. Если при создании кластера с провайдером Openstack была включена интеграция CSI, то Модуль CSI Openstack будет установлен автоматически и ручной настройки не потребуется.
Чтобы включить модуль в созданном кластере, в провайдере Openstack/VK Cloud/Selectel должна быть разрешена установка CSI. Для установки модуля в графическом интерфейсе платформы перейдите в раздел Сервисы и репозитории на страницу Доступные чарты. На вкладке shturval найдите модуль CSI Openstack (shturval-capos-csi) и перейдите к установке.
Выберите версию чарта и неймспейс shturval-capos-csi. Если неймспейс с таким именем отсутствует, создайте его, нажав в выдающем списке поля Неймспейс на “+ Создать неймспейс”.
При установке модуля в кластер будут добавлены StorageClasses с именами csi-cinder-sc-delete и csi-cinder-sc-retain. В блоке Спецификация сервиса укажите дефолтный StorageClass, как приведено в примере далее.
Пример customvalues
storageClass:
delete:
isDefault: true
| Параметр | Описание | Тип данных | Пример |
|---|---|---|---|
storageClass.delete.isDefault |
Устанавливает использование по умолчанию StorageClass с политикой очистки delete (автоматическое удаление PV) | boolean | true |
Завершите установку модуля, нажав Сохранить.
Когда модуль установлен, для корректной работы csi потребуется создать Secret в неймспейсе shturval-capos-csi с данными конфигурации подключения провайдера, как в экземпляре провайдера, с которым создан кластер. Для этого:
- Сформируйте конфигурацию подключения провайдера.
Пример конфигурации подключения провайдера
[Global]
auth-url=<ваше значение параметра>
username=<ваше значение параметра>
password=<ваше значение параметра>
region=<ваше значение параметра>
tenant-id=<ваше значение параметра>
domain-name=<ваше значение параметра>
[BlockStorage]
ignore-volume-microversion=true
| Параметр | Описание | Пример |
|---|---|---|
auth-url |
URL-адрес сервера аутентификации | https://example.ru:35357/v3/ |
username |
Имя пользователя для подключения | username |
password |
Пароль пользователя для подключения | my-password |
region |
Имя региона | RegionOne |
tenant-id |
Идентификатор проекта (project_id) | projectid |
domain-name |
Имя домена пользователя | users |
- В графическом интерфейсе кластера перейдите в неймспейс
shturval-capos-csi, далее в раздел Хранилище на страницу Secrets и создайте секрет:- задайте имя cloud-config;
- выберите тип Opaque;
- добавьте ключ с именем
cloud.conf, в значении которого укажите подготовленную конфигурацию.
Пример созданного cloud-config
apiVersion: v1
kind: Secret
type: Opaque
data:
cloud.conf: W0dsb2JhbF0KYXV0aC11cmw9PNCy0LDRiNC1INC30L3QsNGH0LXQvdC40LUg0L/QsNGA0LDQvNC10YLRgNCwPgp1c2VybmFtZT080LLQsNGI0LUg0LfQvdCw0YfQtdC90LjQtSDQv9Cw0YDQsNC80LXRgtGA0LA+CnBhc3N3b3JkPTzQstCw0YjQtSDQt9C90LDRh9C10L3QuNC1INC/0LDRgNCw0LzQtdGC0YDQsD4KcmVnaW9uPTzQstCw0YjQtSDQt9C90LDRh9C10L3QuNC1INC/0LDRgNCw0LzQtdGC0YDQsD4KdGVuYW50LWlkPTzQstCw0YjQtSDQt9C90LDRh9C10L3QuNC1INC/0LDRgNCw0LzQtdGC0YDQsD4KZG9tYWluLW5hbWU9PNCy0LDRiNC1INC30L3QsNGH0LXQvdC40LUg0L/QsNGA0LDQvNC10YLRgNCwPgpbQmxvY2tTdG9yYWdlXQppZ25vcmUtdm9sdW1lLW1pY3JvdmVyc2lvbj10cnVl
metadata:
name: cloud-config
namespace: shturval-capos-csi
Чтобы в дальнейшем выделять PersistentVolumes в StorageClass csi-cinder-sc-delete, csi-cinder-sc-retain по умолчанию, необходимо изменить настройки StorageClass local-path. Для этого в графическом интерфейсе:
- перейдите на страницу StorageClasses раздела Хранилище;
- откройте StorageClass с именем local-path и перейдите на вкладку Лейблы и аннотации;
- удалите аннотацию storageclass.kubernetes.io/is-default-class:true и сохраните изменения.
Обратите внимание!
- Для работы Модуля CSI Openstack в кластере должен работать Модуль управления сетями кластера (
shturval-networking). - При использовании облачного хранилища платформы виртуализации Openstack, в случае удаления кластера с провайдером OpenStack потребуется удалить вручную PVC в платформе виртуализации.
- Только для новых PersistentVolumeClaim (PVC) будет выделен PersistentVolume, принадлежащий StorageClass по умолчанию (csi-cinder-sc-delete, csi-cinder-sc-retain).