Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Истории успеха
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • AI Studio
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Истории успеха
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Managed Service for Kubernetes
  • Сопоставление с другими сервисами Yandex Cloud
  • Начало работы
    • Все инструкции
    • Подключение к узлу по SSH
    • Подключение к узлу через OS Login
    • Обновление Kubernetes
    • Настройка автомасштабирования
    • Подключение Terraform-провайдера Kubernetes
      • Динамическая подготовка тома
      • Статическая подготовка тома
      • Управление классами хранилищ
      • Зашифрованные диски для постоянных томов
      • Увеличение размера тома для подов
      • Подключение тома в блочном режиме
      • Интеграция с Object Storage
    • Подключение внешних узлов к кластеру
    • Настройка WireGuard-шлюзов для подключения внешних узлов к кластеру
    • Настройка IPSec-шлюзов для подключения внешних узлов к кластеру
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • История изменений
  • Обучающие курсы

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

  • Статическая подготовка тома
  • Динамическая подготовка тома
  • См. также
  1. Пошаговые инструкции
  2. Работа с постоянными томами
  3. Зашифрованные диски для постоянных томов

Использование зашифрованных дисков для постоянных томов

Статья создана
Yandex Cloud
Обновлена 11 июня 2025 г.
  • Статическая подготовка тома
  • Динамическая подготовка тома
    • См. также

В Managed Service for Kubernetes для постоянных томов поддерживается использование дисков Compute Cloud, зашифрованных с помощью пользовательских симметричных ключей Yandex Key Management Service.

Примечание

Чтобы использовать зашифрованные диски, у облачного сервисного аккаунта, назначенного кластеру Managed Service for Kubernetes, должна быть роль kms.keys.encrypterDecrypter на ключ или каталог.

Вы можете использовать зашифрованные диски как для статической, так и для динамической подготовки постоянных томов.

Статическая подготовка томаСтатическая подготовка тома

  1. Создайте симметричный ключ в Key Management Service.

  2. Создайте зашифрованный диск с использованием ключа, созданного ранее.

    Сохраните идентификатор диска, он понадобится в дальнейшем.

  3. Назначьте облачному сервисному аккаунту кластера Managed Service for Kubernetes роль kms.keys.encrypterDecrypter на ключ или каталог.

  4. Подготовьте постоянный том. В манифесте объекта PersistentVolume укажите идентификатор созданного диска в параметре spec:csi:volumeHandle.

Динамическая подготовка томаДинамическая подготовка тома

  1. Создайте симметричный ключ в Key Management Service.

    Сохраните идентификатор ключа, он понадобится в дальнейшем.

  2. Назначьте облачному сервисному аккаунту кластера Managed Service for Kubernetes роль kms.keys.encrypterDecrypter на ключ или каталог.

  3. Установите kubectl и настройте его на работу с созданным кластером.

  4. В файле encrypted-storage-class.yaml сформируйте манифест для нового класса хранилища:

    kind: StorageClass
    apiVersion: storage.k8s.io/v1
    metadata:
      name: <название_класса_хранилища>
    provisioner: disk-csi-driver.mks.ycloud.io
    volumeBindingMode: WaitForFirstConsumer
    parameters:
      type: <тип_диска>
      csi.storage.k8s.io/fstype: ext4
      kmsKeyId: <идентификатора_симметричного_ключа>
    allowVolumeExpansion: true
    reclaimPolicy: Delete
    

    Где:

    • metadata:name — произвольное название класса хранилища.
    • parameters:type — тип диска в Compute Cloud. Возможные значения:
      • network-ssd — сетевой SSD-диск.
      • network-hdd — сетевой HDD-диск.
      • network-ssd-nonreplicated — нереплицируемый SSD-диск.
      • network-ssd-io-m3 — сверхбыстрое сетевое хранилище с тремя репликами (SSD).
    • parameters:kmsKeyId — идентификатор симметричного ключа.
  5. Создайте класс хранилища:

    kubectl apply -f encrypted-storage-class.yaml
    
  6. В файле encrypted-pvc.yaml сформируйте манифест для нового объекта PersistentVolumeClaim:

    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: <название_PVC>
    spec:
      accessModes:
        - ReadWriteOnce
      storageClassName: <название_класса_хранилища>
      resources:
        requests:
          storage: 4Gi
    

    Где:

    • metadata:name — произвольное название для объекта PersistentVolumeClaim.
    • spec:storageClassName — название класса хранилища, созданного ранее.
  7. Создайте объект PersistentVolumeClaim:

    kubectl apply -f encrypted-pvc.yaml
    
  8. В файле pod-with-encrypted-pvc.yaml сформируйте манифест для пода с динамически подготовленным постоянным томом:

    apiVersion: v1
    kind: Pod
    metadata:
      name: <название_пода>
    spec:
      containers:
        - name: app
          image: ubuntu
          command: ["/bin/sh"]
          args: ["-c", "while true; do echo $(date -u) >> /data/out.txt; sleep 5; done"]
          volumeMounts:
            - name: persistent-storage
              mountPath: /data
      volumes:
        - name: persistent-storage
          persistentVolumeClaim:
            claimName: <название_PVC>
    

    Где:

    • metadata:name — произвольное название для пода.
    • spec:volumes:persistentVolumeClaim:claimName — название объекта PersistentVolumeClaim, созданного ранее.
  9. Создайте под:

    kubectl apply -f pod-with-encrypted-pvc.yaml
    

    После создания пода в консоли управления в сервисе Compute Cloud в разделе Диски появится новый зашифрованный диск с префиксом k8s-csi в имени.

См. такжеСм. также

  • Том
  • Шифрование в Managed Service for Kubernetes
  • Шифрование в Compute Cloud
  • Динамическая подготовка тома
  • Статическая подготовка тома
  • Управление классами хранилищ

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

Предыдущая
Управление классами хранилищ
Следующая
Увеличение размера тома для подов
Проект Яндекса
© 2025 ООО «Яндекс.Облако»