Как развернуть S3-хранилище с помощью MinIO на Windows Server 2016

MinIO – объектное хранилище с открытым исходным кодом, которое можно использовать как локальный аналог Amazon S3. MinIO позволяет хранить любые файлы: изображения, видео, архивы, резервные копии или документы. Сохранение файлов в хранилище производится в виде объектов внутри бакетов, а доступ к ним осуществляется через HTTP API. MinIO написан на языке Go, поэтому работает быстро и стабильно даже под высокой нагрузкой. Веб-интерфейс MinIO – простой и удобный: можно создавать бакеты, загружать и скачивать файлы, а также управлять правами доступа. Он поддерживает шифрование, токены, IAM-политики и совместим с большинством программ, которые умеют работать с Amazon S3. MinIO хорошо подходит для создания собственного облака, хранения бэкапов, медиаконтента или встраивания в инфраструктуру приложений.

Реализация S3-хранилища на виртуальном выделенном сервере удобна в установке и использовании именно при помощи MinIO. Наиболее распространённый вариант – инсталляция и настройка MinIO на Linux-систему. В настоящей же статье разберём, как развернуть S3-хранилище с помощью MinIO на VPS, работающем под управлением Windows Server 2016.

Как развернуть S3-хранилище с помощью MinIO на Windows Server 2016

Чтобы организовать S3-хранилище на Windows при помощи MinIO, во-первых, создайте каталог, который будет использоваться сервисом для сохранения данных, например, C:\DATASTORE.

Затем загрузите исполняемый файл MinIO для 64-хразрядной Windows-системы при помощи данной ссылки. Загруженный файл скопируйте, например, в каталог C:\MinIO. После чего запустите командную строку и выполните команду:

C:\MinIO\minio.exe server C:\DATASTORE
Вывод команды C:\MinIO\minio.exe server C:\DATASTORE

Из вывода команды можно узнать следующую информацию:

  • через TCP-порт 9000 доступен основной S3 API интерфейс, через который программы, такие как rclone, Duplicati, Nextcloud, aws-cli, могут подключаться к хранилищу;
  • в качестве значений Access key и Secret key следует использовать minioadmin и minioadmin;
  • через TCP-порт 49717 доступна веб-панель MinIO, к которой можно подключиться в браузере при помощи ссылки вида http://193.124.58.228:49717, где 193.124.58.228 – это IP-адрес нашей тестовой виртуальной машины;
  • в качестве логина и пароля для подключения к веб-панели следует использовать minioadmin и minioadmin;
  • при помощи утилиты командной строки mc, предназначенной для управления S3-хранилищами, в том числе и MinIO, можно подключиться к данному серверу, используя указанный пример команды;
  • предупреждение о безопасности уведомляет об использовании дефолтных логина и пароля и необходимости их изменения.

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

Как настроить доступ к MinIO в брандмауэре Windows

При этом, чтобы получить возможность подключения к веб-панели через браузер, необходимо открыть доступ к серверу в брандмауэре Windows для указанного порта. Сложность заключается в том, что при каждом новом запуске команды номер порта будет изменяться. Но в команде запуска MinIO в качестве дополнительной опции можно указать номер порта, предназначенный для подключения к веб-панели. Например, чтобы использовать для этого порт 9001, запустите команду с параметром --console-address :9001:

C:\MinIO\minio.exe server C:\DATASTORE --console-address :9001

И теперь необходимо открыть доступ к серверу через TCP-порт 9001. Для того, чтобы открыть брандмауэр Windows, используйте комбинацию клавиш Win R, где введите firewall.cpl и нажмите OK. Затем в брандмауэре перейдите в Дополнительные параметры.

Брандмауэр Windows - Как развернуть MinIO на Windows Server

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

Правила для входящих подключений

Далее, в окне Тип правила выберите Для порта.

Выбор типа правила - Как развернуть MinIO на Windows Server

Затем выберите Протокол TCP и введите 9001 в поле Определенные локальный порты.

Протокол и номер порта - Как развернуть MinIO на Windows Server

В следующем окне выберите Разрешить подключение.

Выбор действия правила - Как развернуть MinIO на Windows Server

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

Выбор профилей для применения правила

Затем введите имя для создаваемого правила, например, MinIO - входящее подключение, и для сохранения нового правила нажмите Готово.

Имя правила: MinIO - входящее подключение

И наконец, перейдите на локальный компьютер, откройте браузер и проверьте подключение к MinIO. Для этого используйте ссылку вида http://X.X.X.X:9001, где вместо X.X.X.X укажите IP-адрес своего VPS.

Подключение к веб-панели MinIO в Windows Server

Как настроить работу MinIO в качестве службы

Чтобы не запускать MinIO при помощи описанной ранее команды вручную и обеспечить работоспособность сервиса на постоянной основе и в фоновом режиме, имеет смысл настроить его работу в качестве системной службы. В Windows Server наиболее простой и удобный способ запустить приложение как службу – применение специальной утилиты NSSM.

На сервере откройте браузер, перейдите на официальную страницу NSSM и загрузите последний релиз данной утилиты.

Загрузка релиза NSSM - Как развернуть MinIO на Windows Server

Релиз представляет собой zip-архив, содержащий папку nssm-2.24. Извлеките данную папку из архива и скопируйте её на диск C:. Затем запустите командную строку, перейдите в каталог win64, находящийся в папке nssm-2.24:

cd C:\nssm-2.24\win64\

И выполните следующую команду:

nssm install MinIO

В открывшемся интерфейсе NSSM заполните поля:

  • Path – путь к исполняемому файлу MinIO;
  • Startup directory – каталог MinIO;
  • Arguments — параметры запуска MinIO с указанием каталога хранения данных и порта для доступа к веб-панели.

Настройка службы MinIO при помощи NSSM

Затем перейдите во вкладку Environment и в поле Environment variables укажите логин и пароль для подключения к веб-панели в виде:

MINIO_ROOT_USER=miniouser
MINIO_ROOT_PASSWORD=YourP@ssw0rd

В данном случае:

  • miniouser – логин для подключения к веб-панели;
  • YourP@ssw0rd – пароль для подключения к веб-панели.

Данная мера позволяет избавиться от использования стандартной пары minioadmin:minioadmin, чтобы предотвратить несанкционированный доступ к хранилищу с применением общедоступных учётных данных. Для установки службы нажмите Install service.

Логин и пароль MinIO в NSSM - Как развернуть MinIO на Windows Server

Если всё сделано правильно, служба MinIO должно успешно установиться в систему.

Успешная установка службы MinIO в NSSM

Чтобы убедиться в том, что новая служба появилась в системе, откройте менеджер служб. Для этого используйте Ctrl R, введите там services.msc и нажмите OK. В открывшемся списке служб найдите MinIO, откройте её и, если служба остановлена, нажмите Запустить.

Служба MinIO - Как развернуть MinIO на Windows Server

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

Вам также может понравиться