Купить Корзина
  • Домены и сайты
  • Облако и IT-инфраструктура
  • Вход

Получить консультацию

Ответим на вопросы, расскажем о конфигурациях, поможем с переносом, подберем оборудование, подготовим коммерческое предложение

Нажимая кнопку «Отправить» я даю согласие на обработку персональных данных и подтверждаю, что ознакомился с Политикой конфиденциальности и правилами пользования сайтом

Персональный менеджер ответит на ваши вопросы и проведет через все этапы заключения договора: — подберет оборудование — сформирует коммерческое предложение — поможет с миграцией сервера к нам

Нажимая кнопку «Отправить» я даю согласие на обработку персональных данных и подтверждаю, что ознакомился с Политикой конфиденциальности и правилами пользования сайтом

Или просто оставьте номер телефона, и мы перезвоним вам

  • Телефон в Москве

    +7 495 580-11-11
  • Бесплатный звонок по России

    8 800 555-34-78
  • Или обратитесь в наши офисы

    Региональные номера
    1. База знаний
    2. Рег.облако
    3. Кластеры Kubernetes
    4. Работа с кластером
    5. Как использовать S3-хранилище в Kubernetes

    Как использовать S3-хранилище в Kubernetes

    В статье мы расскажем о том, что такое CSI S3, и опишем установку этого модуля.

    Что такое CSI S3

    CSI (Container Storage Interface) — это интерфейс, с помощью которого можно подключить бакет объектного хранилища S3 к подам кластера Kubernetes. Он позволяет подам взаимодействовать с объектным хранилищем, как с обычной файловой системой.

    CSI представляет собой способ взаимодействия Kubernetes и драйверов для конкретных хранилищ. Например, для работы с S3 существует несколько решений, использующих этот механизм: среди них ctrox/csi-s3 и yandex-cloud/k8s-csi-s3. Оба решения мы описали ниже.

    Как использовать S3-бакеты в Kubernetes

    S3 — это объектное хранилище. Однако поды кластера Kubernetes могут использовать только файловые системы и блочные устройства для хранения данных. Это связано с тем, что S3 не поддерживает семантику файловых систем и не отвечает требованиям стандарта POSIX. По этой причине могут возникнуть проблемы при выполнении следующих операций:

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

    Чтобы совместить хранилище данных S3 с Kubernetes используются специальные модули. Два наиболее популярных — это сtrox/csi-s3 и yandex-cloud/k8s-csi-s3.

    сtrox/csi-s3

    сtrox/csi-s3 — это драйвер CSI, который позволяет монтировать бакеты S3-хранилища как файловые системы внутри подов Kubernetes. Так объекты в бакетах становятся доступными для приложений внутри кластера, и для этого не нужно вносить изменения в код.

    Драйвер сtrox/csi-s3 имеет следующие преимущества:

    • поддержка разных видов S3-совместимых хранилищ;
    • поддержка rclone, s3fs и goofys:

      • rclone монтирует облачные хранилища разных типов;
      • s3fs монтирует хранилища S3 как файловую систему при помощи FUSE;
      • goofys читает данные из S3.

    Также сtrox/csi-s3 имеет недостатки:

    • редкие обновления с периодичностью раз в несколько лет,
    • отсутствие официального Helm-чарта (в качестве альтернативы используется решение от Cloudve).

    yandex-cloud/k8s-csi-s3

    yandex-cloud/k8s-csi-s3 — модуль, разработанный компанией Яндекс. Он представляет собой форк сtrox/csi-s3, однако в него добавлен GeeseFS — монтировщик для S3-совместимых хранилищ с использованием FUSE.

    Отличительные особенности yandex-cloud/k8s-csi-s3:

    • высокая производительность. Код GeeseFS включает в себя минимальное количество операций чтения и записи. Благодаря этому модуль работает быстрее в сравнении с другими монтировщиками из описания выше;
    • поддержка частичного изменения и дозаписи объектов. Вы можете хранить данные в контейнере в формате единого файла и вносить в него изменения. Это касается и работы с большими файлами.

    Как установить модуль CSI для работы с S3

    До начала установки необходимо создать кластер Kubernetes и бакет S3-хранилища. Также вам потребуется менеджер пакетов Helm: его можно установить по официальной инструкции. В качестве примера мы установим модуль CSI S3 от компании Яндекс.

    Выполните следующие действия для подключения модуля:

    • 1
      Подключитесь к кластеру Kubernetes.
    • 2

      Установите Helm-чарт с CSI. Для этого поочередно введите строки команды:

      helm repo add yandex-s3 https://yandex-cloud.github.io/k8s-csi-s3/charts && \
      helm repo update && \
      helm pull yandex-s3/csi-s3 --untar && \
      helm install \
        --namespace kube-system \
        --set secret.accessKey=access_key_value \
        --set secret.secretKey=secret_key_value \
        csi-s3 ./csi-s3/

      Где:

      • kube-system — название пространства имен,
      • access_key_value и secret_key_value — ID ключа и сам ключ доступа к S3-бакету. Эти данные вы можете найти в панели управления облаком по инструкции.

    Готово, вы установили модуль CSI S3.

    Помогла ли вам статья?

    Спасибо за оценку. Рады помочь 😊

     👍
    Специальные предложения
    • Бесплатный хостинг для сайта
    • Дешевый хостинг
    • Бесплатный VPS-сервер
    • Дешёвые VPS
    Рассылка Рег.ру

    Лайфхаки, скидки и новости об IT

    Даю согласие на получение рекламных и информационных материалов

    Домены и сайты
    • Домены
    • Хостинг
    • Создание сайтов
    • SSL-сертификаты
    • VPS и VDS серверы
    • Whois
    • Магазин доменов
    Облако
    и IT-инфраструктура
    • Облачные серверы
    • Частное облако
    • Облачное хранилище
    • Kubernetes в облаке (K8S)
    • Облачные базы данных
    • Выделенные серверы
    Полезное
    • Стоимость услуг
    • Cпособы оплаты
    • База знаний
    • Документы
    • ЭДО
    • Партнерам
    • Сообщить о нарушении
    • РБК: новости России и мира сегодня
    • Новости компаний РФ
    • РБК Инвестиции: курсы валют
    Компания
    • О компании
    • Контакты
    • Офисы
    • Новости
    • Акции и скидки
    • Блог
    • Отзывы клиентов
    8 800 555-34-78 Бесплатный звонок по России
    +7 495 580-11-11 Телефон в Москве
    • vk
    • telegram
    • ok
    • moikrug
    • youtube
    • twitter
    • Облачная платформа Рег.ру включена в реестр российского ПО Запись №23682 от 29.08.2024
    • © ООО «РЕГ.РУ»
    • Политика конфиденциальности
      Политика обработки персональных данных
      Правила применения рекомендательных технологий
      Правила пользования
      и другие правила и политики
    • Нашли опечатку?
      Выделите и нажмите Ctrl+Enter
    • Мы используем cookie и рекомендательные технологии для персонализации сервисов и удобства пользователей. Вы можете запретить сохранение cookie в настройках своего браузера