Как примонтировать контейнер объектного хранилища как диск Windows - Академия Selectel
В панель

Как примонтировать контейнер объектного хранилища как диск Windows

В инструкции мы покажем, как с помощью утилиты rclone примонтировать контейнер объектного хранилища в Windows.

Введение

В инструкции мы покажем, как с помощью утилиты rclone примонтировать контейнер объектного хранилища в Windows. Впоследствии вы получите доступ к контейнеру через примонтированный диск в ОС Windows.

Решение позволит увеличить дисковое пространство сервера или использовать объектное хранилище для резервного копирования. Если вы используете Linux, обратитесь к этой инструкции.

Ниже — видеоинструкция. Если вам нужно подробное описание шагов, читайте дальше.

Создаем контейнер 

В панели управления Selectel переходим в раздел Облачное хранилище и нажимаем Создать контейнер. Контейнер — это сущность, где хранятся файлы и папки с файлами.

Мы будем использовать объектное хранилище для резервного копирования, поэтому создаем приватный контейнер — в нем доступ к данным нужно будет получать по логину/паролю или авторизационному токену. 

Вводим имя контейнера — в данной инструкции это s3sel.

Выбираем класс хранения данных. Отмечаем холодное хранение, так как планируем использовать хранилище для бэкапов. Это редко запрашиваемые данные, и на их хранении можно сэкономить.

Подробнее о том, как создать контейнер → 

Создаем контейнер. Проверяем, что s3sel появился в списке.

Нажимаем на него и переходим во внутреннее меню. 

Для наглядности загружаем в контейнер объекты — семплы файлов le_storage.

Переходим во вкладку Пользователи и добавляем нового — Создать пользователя.

Придумываем логин (здесь s3selectel) и генерируем пароль. Не забываем сохранить access-данные и поставить галочку на согласие использовать данные для доступа по протоколу S3. 

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

Монтируем контейнер как диск 

Устанавливаем rclone

Скачиваем бесплатную утилиту rclone для Windows и распаковываем ее. 

Для удобства работы можем скопировать установочный файл на локальный диск (С:). Создайте новую папку — в инструкции s3tools — и перенесите туда файл rclone. 

Конфигурируем rclone в PowerShell 

PowerShell — расширяемое средство автоматизации от Microsoft с открытым исходным кодом, состоящее из оболочки с интерфейсом командной строки и сопутствующего языка сценариев.

В консоли PowerShell от имени администратора запускаем режим конфигурирования: 


    \rclone.exe config

В появившемся диалоге выбираем n для создания новой конфигурации. Указываем имя подключения к удаленному хранилищу. Например, select:


    name> select

В появившемся списке находим пункт Amazon S3 Compliant Storage Providers (номер пункта и формулировка могут незначительно отличаться в вашей версии ПО).

Введите цифру, соответствующую номеру пункта (в нашем примере это 4):


    Storage> 4

Перед вами снова появится список. Найдите пункт Any other S3 compatible provider и введите цифру, соответствующую его номеру (в данном примере это 14): 


    provider> 14

Теперь отметим цифру с вариантом false в пункте Enter AWS credentials in the next step:


    env_auth> 1

→ Пошаговая инструкция конфигурирования rclone

Вводим имя пользователя, созданного ранее, и пароль. В данной инструкции это 136692_s3selectel.

Далее нас просят указать регион. Указываем ru-1: 


    region> ru-1

Вводим URL для доступа по протоколу S3 API. В качестве эндпоинта у нас https://s3.storage.selcloud.ru:


    endpoint> https://s3.storage.selcloud.ru

Еще раз проверьте все настройки:


    Remote config
--------------------
[select]
type = s3
provider = Other
env_auth = false
access_key_id = имя_пользователя
secret_access_key = пароль
region = ru-1
endpoint = https://s3.storage.selcloud.ru
--------------------
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> 

Если все указано правильно, введите y.

Для выхода из диалога настроек введите q

Проверим настройку rclone 

Проверим, что мы настроили rclone правильно и получили доступ к ранее созданному контейнеру s3sel: 


    \rclone.exe ls select:s3sel

Видим все ранее загруженные файлы le_storage.

Скачиваем WinFsp

Чтобы смонтировать контейнер объектного хранилища через rclone, скачиваем и устанавливаем бесплатную утилиту WinFsp

Возвращаемся в консоль PowerShell и монтируем контейнер через команду: 


    mount select:s3sel S:  --vfs-cache-mode full

Проверяем, примонтировался ли контейнер. Заходим в меню This PC и видим диск select s3sel (S:).

Тестируем смонтированный контейнер

Зайдем на диск и проверим его на возможность записи. Создадим в нем тестовый файл — from_selectel_with_love. 

Проверяем контейнер в объектном хранилище и видим, что созданный файл появился там.

Автоматизируем процесс

После перезагрузки сервера необходимо будет заново монтировать контейнер как диск. Чтобы не делать это каждый раз, можно автоматизировать запуск rclone. 

Создадим исполняемый файл для запуска rclone и переместим его в автозагрузку. 

Заходим в ранее созданную папку s3sel с утилитой и создаем в ней файл s3disk.cmd. Прописываем в нем команду: 


    С:/s3tools/rclone.exe mount select:s3sel S: --vfs-cache-mode full

Теперь у нас есть исполняемый файл, который мы переносим в автозагрузку: Local Disk (С:) > Program Data > Microsoft > Windows > Start Menu > Programs > Startup.

Убедитесь, что контейнер монтируется автоматически, перезагрузив систему. 

Заключение 

Итак, мы смонтировали контейнер объектного хранилища Selectel как диск в Windows и организовали автоматическое монтирование контейнера при перезапуске системы. Это простой в реализации способ настроить связность хранилища с вашим сервером, чтобы выгружать туда бэкапы и любые другие данные. 

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

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

Читайте также:

Инструкция
Инструкция
Инструкция