Yandex Cloud
Поиск
Связаться с экспертомПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
  • Marketplace
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Кейсы
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ООО «Яндекс.Облако»
Yandex Cloud Stackland
  • Что нового
  • Установка
    • Все руководства
    • Установить Stackland на Yandex BareMetal
    • Установка Stackland на виртуальные машины в Yandex Cloud
    • Настройка внешнего доступа к поду в кластере
    • Все инструкции
      • Диагностика дисковой подсистемы
      • Переключить класс хранилища компонента
    • Проекты
    • Ресурсная модель
  • Управление доступом
  • Правила тарификации
  • Диагностика и устранение неполадок

В этой статье:

  • Перед началом работы
  • Смена класса хранилища по умолчанию
  • Смена класса хранилища для всех компонентов
  • Смена класса хранилища для отдельного компонента
  • Смена класса хранилища для пользовательских кластеров БД
  • PostgreSQL
  • ClickHouse®
  • Apache Kafka®
  • Переключение класса хранилища для системных компонентов
  • Logging (Loki)
  • Secrets Store (OpenBao)
  • DataLens
  • Смена класса хранилища для существующего компонента с данными
  1. Пошаговые инструкции
  2. Дисковая подсистема
  3. Переключить класс хранилища компонента

Переключить компонент на другой класс хранилища

Статья создана
Yandex Cloud
Обновлена 16 июня 2026 г.
  • Перед началом работы
  • Смена класса хранилища по умолчанию
    • Смена класса хранилища для всех компонентов
    • Смена класса хранилища для отдельного компонента
  • Смена класса хранилища для пользовательских кластеров БД
    • PostgreSQL
    • ClickHouse®
    • Apache Kafka®
  • Переключение класса хранилища для системных компонентов
    • Logging (Loki)
    • Secrets Store (OpenBao)
    • DataLens
  • Смена класса хранилища для существующего компонента с данными

При развёртывании Stackland назначает класс хранилища по умолчанию — тот, который указан в StacklandClusterConfig.spec.storage.defaultStorageClass. Этот класс получает аннотацию storageclass.kubernetes.io/is-default-class: "true" и используется для всех PVC, в которых класс хранилища не задан явно.

Для баз данных обычно предпочтительнее SSD или NVMe, а для объектного хранилища — HDD. Если компоненту нужен класс хранилища, отличный от указанного при установке, пропишите его явно в конфигурации этого компонента.

Важно

Данные при смене класса хранилища не переносятся автоматически.

Смена класса хранилища приводит к пересозданию PVC и потере данных. Выполняйте операцию до записи пользовательских данных — в идеале при первоначальном развёртывании.

Перед началом работыПеред началом работы

  1. Убедитесь, что нужный класс хранилища существует в кластере:

    kubectl get storageclasses
    
  2. Убедитесь, что на узлах есть диски соответствующего типа:

    kubectl get volumegroups -A -o wide
    

Подробнее о доступных классах хранилища в разделе Дисковая подсистема.

Смена класса хранилища по умолчаниюСмена класса хранилища по умолчанию

Вы можете указать класс хранилища по умолчанию как всем, так и отдельным компонентам.

Смена класса хранилища для всех компонентовСмена класса хранилища для всех компонентов

Класс хранилища по умолчанию определяется аннотацией storageclass.kubernetes.io/is-default-class: "true" у ресурса StorageClass. Вы можете переместить эту аннотацию на другой класс хранилища. После этого все новые PVC, в которых класс хранилища не указан явно, будут использовать новый класс по умолчанию.

Чтобы сменить класс хранилища по умолчанию:

  1. Снимите аннотацию с текущего класса по умолчанию:

    kubectl annotate storageclass <текущий_класс> storageclass.kubernetes.io/is-default-class-
    
  2. Установите аннотацию на новый класс:

    kubectl annotate storageclass <новый_класс> storageclass.kubernetes.io/is-default-class=true
    

Важно

Смена класса по умолчанию влияет только на новые PVC. Существующие PVC сохраняют прежний класс хранилища.

Смена класса хранилища для отдельного компонентаСмена класса хранилища для отдельного компонента

Чтобы изменить класс хранилища для конкретного платформенного компонента, укажите соответствующее поле в конфигурации компонента.

Управляемые БДУправляемые БД

PostgreSQL, ClickHouse® и Apache Kafka® не требуют настройки класса хранилища на уровне компонента. Кластеры используют класс хранилища по умолчанию. Чтобы задать класс хранилища, отличный от класса по умолчанию, укажите его в манифесте при создании кластера.

Object StorageObject Storage

apiVersion: stackland.yandex.cloud/v1alpha1
kind: StorageConfig
metadata:
  name: main
spec:
  enabled: false
  settings:
    storage:
      diskType: HDD
      servers: 3
      size: 154Gi
      storageClass: "stackland-hdd"

Смена класса хранилища для пользовательских кластеров БДСмена класса хранилища для пользовательских кластеров БД

Кластеры баз данных используют класс хранилища по умолчанию, если атрибут storageClass не указан в спецификации кластера. Чтобы задать класс хранилища для конкретного кластера, укажите его в манифесте при создании.

Для уже созданных кластеров PostgreSQL, ClickHouse® и Apache Kafka® нельзя сменить класс хранилища.

PostgreSQLPostgreSQL

Укажите поле spec.storage.storageClass в ресурсе PostgresqlCluster:

apiVersion: postgresql.stackland.yandex.cloud/v1alpha1
kind: PostgresqlCluster
metadata:
  name: <имя_кластера>
spec:
  storage:
    size: 10Gi
    storageClass: "stackland-ssd"
  # ...

Подробнее о создании кластера в разделе Создать кластер PostgreSQL.

ClickHouse®ClickHouse®

Укажите поля spec.clickhouse.storage.storageClass и spec.keeper.storage.storageClass в ресурсе ClickhouseCluster:

apiVersion: clickhouse.stackland.yandex.cloud/v1alpha1
kind: ClickhouseCluster
metadata:
  name: <имя_кластера>
spec:
  clickhouse:
    storage:
      size: 10Gi
      storageClass: "stackland-ssd"
    # ...
  keeper:
    storage:
      size: 5Gi
      storageClass: "stackland-ssd"

Подробнее о создании кластера в разделе Создать кластер Managed Service for ClickHouse®.

Apache Kafka®Apache Kafka®

Укажите поля spec.controller.storage.storageClass и spec.broker.storage.storageClass в ресурсе KafkaCluster:

apiVersion: kafka.stackland.yandex.cloud/v1alpha1
kind: KafkaCluster
metadata:
  name: <имя_кластера>
spec:
  controller:
    storage:
      size: 5Gi
      storageClass: "stackland-ssd"
  broker:
    storage:
      size: 20Gi
      storageClass: "stackland-ssd"
  # ...

Подробнее о создании кластера в разделе Создать кластер.

Переключение класса хранилища для системных компонентовПереключение класса хранилища для системных компонентов

Для системных компонентов укажите нужный класс хранилища в конфигурационном файле компонента. Если компонент уже запущен, следуйте процедуре из раздела Смена класса хранилища для существующего компонента с данными.

Logging (Loki)Logging (Loki)

Укажите поле spec.settings.logStorage.storage.storageClass в ресурсе LoggingConfig:

apiVersion: stackland.yandex.cloud/v1alpha1
kind: LoggingConfig
metadata:
  name: main
spec:
  enabled: true
  settings:
    logStorage:
      storage:
        enabled: true
        storageClass: "stackland-hdd"
        size: 50Gi

Secrets Store (OpenBao)Secrets Store (OpenBao)

Укажите поле spec.settings.server.dataStorage.storageClass в ресурсе SecretsStoreConfig:

apiVersion: stackland.yandex.cloud/v1alpha1
kind: SecretsStoreConfig
metadata:
  name: main
spec:
  enabled: true
  settings:
    server:
      dataStorage:
        size: 2Gi
        storageClass: "stackland-ssd"

DataLensDataLens

Укажите поле spec.settings.database.storageClass в ресурсе DataLensConfig:

apiVersion: stackland.yandex.cloud/v1alpha1
kind: DataLensConfig
metadata:
  name: main
spec:
  enabled: true
  settings:
    database:
      storageSize: "2Gi"
      storageClass: "stackland-ssd"

Object StorageObject Storage

Укажите поле spec.settings.storage.storageClass в ресурсе StorageConfig:

apiVersion: stackland.yandex.cloud/v1alpha1
kind: StorageConfig
metadata:
  name: main
spec:
  enabled: false
  settings:
    storage:
      diskType: HDD
      servers: 3
      size: 154Gi
      storageClass: "stackland-hdd"

Смена класса хранилища для существующего компонента с даннымиСмена класса хранилища для существующего компонента с данными

Смена класса хранилища требует отключения и повторной активации компонента.

Внимание

Операция приводит к полной потере данных на затронутых PVC. Убедитесь, что у вас есть резервная копия, из которой можно восстановить данные.

Чтобы сменить класс хранилища для уже запущенного компонента:

  1. Создайте резервную копию данных.

  2. Отключите компонент. Для системных компонентов установите spec.enabled: false и примените манифест:

    kubectl apply -f <файл_конфигурации>.yaml
    

    Для пользовательских кластеров БД удалите ресурс кластера:

    kubectl delete <тип_ресурса> <имя_кластера> -n <название_проекта>
    
  3. Удалите PVC компонента:

    kubectl delete pvc <имя_pvc> -n <namespace>
    

    Чтобы получить список PVC компонента:

    kubectl get pvc -n <namespace>
    
  4. В манифесте укажите новый класс хранилища и включите компонент обратно (spec.enabled: true).

  5. Примените манифест:

    kubectl apply -f <файл_конфигурации>.yaml
    
  6. Восстановите данные из резервной копии.

Была ли статья полезна?

Предыдущая
Диагностика дисковой подсистемы
Следующая
Обновить кластер
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ООО «Яндекс.Облако»