s3 (minio)


Установка

Установка

Клиент для Ubuntu

#Download the latest MinIO client
wget https://dl.min.io/client/mc/release/linux-amd64/mcli_20220611211036.0.0_amd64.deb
#Install
sudo dpkg -i mcli_20220611211036.0.0_amd64.deb

#Enable autocompletion for your shell
mcli --autocompletion
#To enable autocompletion in your current shell without actually shutting it down and restarting it
source .profile

#Add minio server profile to mcli
mcli alias set minio-01/ http://10.50.128.8:9000 minioadmin minioadmin
mcli alias set minio-02/ http://10.50.128.9:9000 minioadmin minioadmin

#Verfity
mcli --insecure admin info minio-01
●  10.50.128.8:9000
   Uptime: 34 minutes
   Version: 2022-06-11T19:55:32Z
   Network: 1/1 OK
   Drives: 1/1 OK
   Pool: 1st

1 drive online, 0 drives offline

mcli --insecure admin info minio-02
●  10.50.128.9:9000
   Uptime: 12 minutes
   Version: 2022-06-11T19:55:32Z
   Network: 1/1 OK
   Drives: 1/1 OK
   Pool: 1st

Администрирование

Администрирование

Восстановление всех удаленных объектов

В случае если включено версионирование и были удалены объекты, то восстановить их можно с помощью следующей команды:

minio-client undo --recursive --force --action "DELETE"  <S3 server>/<bucket>

 

Проблемы

Проблемы

CORS для хранилища S3 от REG.RU

По умолчанию на фронте при попытке загрузить файл возникает ошибка и в консоли видим CORS. Для ее устранения необходимо:

Установить утилиту AWS CLI

Прописать свои явки и пароли через aws configure

Создать файл cors.json со следующим содержимым (можно ограничить конкретные узлы):

{
    "CORSRules": [
        {
            "AllowedHeaders": [
                "*"
            ],
            "AllowedMethods": [
                "GET",
                "PUT",
                "HEAD"
            ],
            "AllowedOrigins": [
                "*"
            ]
        }
    ]
}

Залить конфигурацию CORS в S3 с помощью:

aws s3api put-bucket-cors --bucket s3elma365 --endpoint-url https://s3.regru.cloud --cors-configuration file://cors.json

Проверить результат заливки можно:

aws s3api get-bucket-cors --bucket s3elma365 --endpoint-url https://s3.regru.clou

Проблема решена!

Если в консоли будет ошибка Ошибка SSL-сертификата в AWS CLI - необходимо выполнить следующее:

echo 'export REQUESTS_CA_BUNDLE="/etc/ssl/certs/ca-certificates.crt"' >> ~/.bashrc
source ~/.bashrc