Настраиваем сетевое файловое хранилище типа S3 на базе Minio, организуем доступ к нему разными способами. Рассматриваем несколько полезных вариантов использования S3.
docs.min.io/docs/minio-bucket-versioning-guide.html Из документации косвенно следует, что низкоуровневые детали реализации этого функционала не должны нас волновать. В том смысле, что могут меняться от релиза к релизу и отличаться для разных хранилищ.
Спасибо за видео. Можете , пожалуйста, поделится мнением о использовании minio ? Все устраивает, нету проблем, продолжаете пользоваться? И развернут ли у вас minio в кластере?
Я доволен абсолютно. В т.ч. понравилась консольная утилита для перемещения файлов между локальными хранилищами и S3. Была проблема с расшариванием файлов с неподходящими правами, но решилось через отправку S3-специфичных опций (в документации это слабо описано). Но сложных конфигураций пока настраивать не довелось. К сожалению :-/
Доброго дня, а какое минимальное железо для этого варианта потребуется, чтобы изучить систему (в distributed mode)? Есть старый сервер на двух Xeon серии 56**, по 6 ядер на каждом, 92 Гб памяти. Естественно он не только для этого нужен, хочется понять, сколько можно минимум выделить ресурсов для такой задачи.
Здравствуйте, здорово у вас всё организовано. Можете подсказать как получать публичные ссылки на файлы? Использую aws/aws-sdk-php в laravel при записи файла указываю, что он публичный, но он всё равно становится приватным.
@@user-dx8jw9fw5p сложно сказать точно. Возможно нужен веб-сервер перед Minio: docs.min.io/docs/setup-nginx-proxy-with-minio.html Может быть поможет выставление политики download на бакет: docs.min.io/minio/baremetal/reference/minio-cli/minio-mc/mc-policy.html#mc-policy-set-PERMISSION Вообще для aws/aws-sdk-php есть отдельная статья: docs.min.io/docs/how-to-use-aws-sdk-for-php-with-minio-server.html Также есть issue с вопросом про настройку доступа к файлам, но не ко всему бакету (насколько я понял, это не ваш кейс, но может пригодиться): github.com/minio/minio/issues/9488
спасибо очень полезно, но немного не понятно про авторизацию через php и nginx к минио. У нас nodejs но смысл как я понял что при авторизации мы можем на бекенде в приложении добавить любой хедер и затем его в nginx проверять? или там какой то x-asl хедер? я его правда не нашел нигде, можете пояснить этот момент?
Авторизация - это отдельная история. Заголовок Authorization. А инструкция от бэкенда к nginx через заголовок: www.opennet.ru/base/net/nginx_x_accel_redirect.txt.html
Если говорить про Minio, то он может работать как в контейнере(ах), так и на хосте. В первом случае монтировать файловую систему обязательно, чтобы не терять всё содержимое при рестарте. Если говорить про подключение к Минио из контейнера, то можно это делать по S3 API, а можно абстрагироваться от деталей с помощью плагина для монтирования. Второй подход, однако, добавляет "чёрный ящик" посередине - это может выстрелить в разных сценариях. Особенно под высокой нагрузкой.
Привет! Не понял вопрос. Если речь о справке по консольному клиенту, то здесь: min.io/docs/minio/linux/reference/minio-mc.html Если нужен SDK, то здесь: min.io/docs/minio/linux/developers/minio-drivers.html
Прошу прощения за долгий ответ- сразу не получилось, а потом забыл. К сожалению, тот код и инфраструктура - часть закрытого проекта. Плюс, я уже давно в этой компании не работаю.
Спасибо что рассказали, многие вопросы сняло =)
Очень хороший контент
Спасибо за обзор! Приходилось ли использовать функционал версионирования? Он заявлен, хотелось бы знать как он работает.
Спасибо за комментарий. Версионирование не пробовал, полагаю что чудес ждать не стоит - будет несколько файлов по числу версий
docs.min.io/docs/minio-bucket-versioning-guide.html
Из документации косвенно следует, что низкоуровневые детали реализации этого функционала не должны нас волновать. В том смысле, что могут меняться от релиза к релизу и отличаться для разных хранилищ.
Спасибо за видео. Можете , пожалуйста, поделится мнением о использовании minio ? Все устраивает, нету проблем, продолжаете пользоваться? И развернут ли у вас minio в кластере?
Я доволен абсолютно. В т.ч. понравилась консольная утилита для перемещения файлов между локальными хранилищами и S3. Была проблема с расшариванием файлов с неподходящими правами, но решилось через отправку S3-специфичных опций (в документации это слабо описано).
Но сложных конфигураций пока настраивать не довелось. К сожалению :-/
спасибо!
Доброго дня, а какое минимальное железо для этого варианта потребуется, чтобы изучить систему (в distributed mode)?
Есть старый сервер на двух Xeon серии 56**, по 6 ядер на каждом, 92 Гб памяти.
Естественно он не только для этого нужен, хочется понять, сколько можно минимум выделить ресурсов для такой задачи.
Можно десятки экземпляров на бабушкином ноутбуке. Производительность нужна когда начинается посещаемость или другая нагрузка
Таким методом можно будет иметь своё личное облако? На домашнем ПК это работает?
На домашнем ПК это работает. В остальном- зависит от того, что Вы вкладываете в понятие "облако".
@@denis0ru Это что-то типа Google Drive?
Да, типа. Но протокол S3 не привязан к конкретному поставщику.
Здравствуйте, здорово у вас всё организовано. Можете подсказать как получать публичные ссылки на файлы? Использую aws/aws-sdk-php в laravel при записи файла указываю, что он публичный, но он всё равно становится приватным.
Публичный доступ к файлу и публичная http ссылка - это разные понятия. Минио умеет генерить временные публичные ссылки.
@@denis0ru Да я имел ввиду именно доступ к файлу, есть галереи с фото, которые должны быть доступны всем для просмотра без проверок и ограничений.
@@user-dx8jw9fw5p сложно сказать точно.
Возможно нужен веб-сервер перед Minio: docs.min.io/docs/setup-nginx-proxy-with-minio.html
Может быть поможет выставление политики download на бакет: docs.min.io/minio/baremetal/reference/minio-cli/minio-mc/mc-policy.html#mc-policy-set-PERMISSION
Вообще для aws/aws-sdk-php есть отдельная статья: docs.min.io/docs/how-to-use-aws-sdk-for-php-with-minio-server.html
Также есть issue с вопросом про настройку доступа к файлам, но не ко всему бакету (насколько я понял, это не ваш кейс, но может пригодиться): github.com/minio/minio/issues/9488
@@denis0ru Спасибо большое.
спасибо очень полезно, но немного не понятно про авторизацию через php и nginx к минио. У нас nodejs но смысл как я понял что при авторизации мы можем на бекенде в приложении добавить любой хедер и затем его в nginx проверять? или там какой то x-asl хедер? я его правда не нашел нигде, можете пояснить этот момент?
Авторизация - это отдельная история. Заголовок Authorization.
А инструкция от бэкенда к nginx через заголовок: www.opennet.ru/base/net/nginx_x_accel_redirect.txt.html
А у тебя получается примонтирована файловая система в данном примере?
Если говорить про Minio, то он может работать как в контейнере(ах), так и на хосте. В первом случае монтировать файловую систему обязательно, чтобы не терять всё содержимое при рестарте.
Если говорить про подключение к Минио из контейнера, то можно это делать по S3 API, а можно абстрагироваться от деталей с помощью плагина для монтирования. Второй подход, однако, добавляет "чёрный ящик" посередине - это может выстрелить в разных сценариях. Особенно под высокой нагрузкой.
Спасибо, очень ценное для меня видео.
А есть возможность выложить файлы YAML для docker, которые вы использовали?
Привет! где можно рассмотреть ClientOptions interface для minio?
Привет! Не понял вопрос. Если речь о справке по консольному клиенту, то здесь: min.io/docs/minio/linux/reference/minio-mc.html
Если нужен SDK, то здесь: min.io/docs/minio/linux/developers/minio-drivers.html
можно ли сделать версионирование?
Сам не пробовал, но в документации есть min.io/product/object-versioning-bucket-versioning
Можете код на гитхаб вылить?
Прошу прощения за долгий ответ- сразу не получилось, а потом забыл. К сожалению, тот код и инфраструктура - часть закрытого проекта. Плюс, я уже давно в этой компании не работаю.
+
Здравствуйте!Можете создать несложное приложение для андроид?💵