Установка и запуск MinIo

Очередная интересная задача, надо поднять какое-то объектное хранилище S3 и использовать его в качестве кэша для GitLab-ранеров.

Ну и погнали тогда и начнем с установки и запуска minio.

Для начала создаем виртуалку с восьмой CentOS на нашем кластере и дополнительный диск на CEPH-хранилище.

Места под тесты у нас более чем достаточно и получилась вот такая штука.

Запускаем, обновляем и ловим нашу любимую ошибку Could not resolve host: mirrorlist.centos.org, но про это я уже писал и вот вам линк. После базовой настройки нам надо подготовить и подключить диск с хранилищем в каталог /opt/ и последовательность действий будет такая.

# mkfs.xfs /dev/sdb
# blkid 
/dev/mapper/cs_centos8-root: UUID="96e6e511-59a2-4e36-97d8-82af7b3592ed" BLOCK_SIZE="512" TYPE="xfs"
/dev/sda2: UUID="wITsG8-KqAM-V2dp-TXfZ-e9YC-tpLA-1suEAJ" TYPE="LVM2_member" PARTUUID="4f87460c-02"
/dev/sda1: UUID="fbf14ef8-ff6f-4fea-a492-9a822f0305a5" BLOCK_SIZE="512" TYPE="xfs" PARTUUID="4f87460c-01"
/dev/sdb: UUID="f983ce34-a67b-4461-bf66-63a2ba936a69" BLOCK_SIZE="512" TYPE="xfs"
/dev/mapper/cs_centos8-swap: UUID="1b221e3d-b6fe-4d01-8245-567bb1dba628" TYPE="swap"

Добавляем запись в fstab.

UUID=f983ce34-a67b-4461-bf66-63a2ba936a69 /opt                    xfs     defaults        0 0

Монтируем каталог.

# systemctl daemon-reload
# mount /opt/

Скачиваем Minio с официального сайта.

Для Centos.

# dnf install https://dl.min.io/server/minio/release/linux-amd64/minio-20250120144907.0.0-1.x86_64.rpm
# MINIO_ROOT_USER=admin MINIO_ROOT_PASSWORD=password minio server /mnt/data --console-address ":9001"
# dnf install https://dl.min.io/client/mc/release/linux-amd64/mcli-20250117232550.0.0-1.x86_64.rpm
# mcli alias set myminio/ http://MINIO-SERVER MYUSER MYPASSWORD

Для Ubuntu.

wget https://dl.min.io/server/minio/release/linux-amd64/minio_20250120144907.0.0_amd64.deb
dpkg -i minio_20250120144907.0.0_amd64.deb
MINIO_ROOT_USER=admin MINIO_ROOT_PASSWORD=password minio server /mnt/data --console-address ":9001"
# wget https://dl.min.io/client/mc/release/linux-amd64/mcli_20250117232550.0.0_amd64.deb
# dpkg -i mcli_20250117232550.0.0_amd64.deb
# mcli alias set myminio/ http://MINIO-SERVER MYUSER MYPASSWORD

Проводим тестовый запуск.

# MINIO_ROOT_USER=admin MINIO_ROOT_PASSWORD=password /usr/local/bin/minio server /opt/minio --console-address ":9001

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

# useradd miniio
# mkdir -p /opt/minio/
# chown -R miniio:miniio /opt/minio/

SystemD сервисный файл /etc/systemd/system/minio.service

[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/usr/local/bin/minio

[Service]
WorkingDirectory=/usr/local

User=miniio
Group=miniio
ProtectProc=invisible

Environment="MINIO_ROOT_USER=admin"
Environment="MINIO_ROOT_PASSWORD=password"
ExecStart=/usr/local/bin/minio server /opt/minio --console-address ":9001"

# Let systemd restart this service always
Restart=always

# Specifies the maximum file descriptor number that can be opened by this process
LimitNOFILE=65536

# Specifies the maximum number of threads this process can create
TasksMax=infinity

# Disable timeout logic and wait until process is stopped
TimeoutStopSec=infinity
SendSIGKILL=no

[Install]
WantedBy=multi-user.target

Активируем и запускаем.

# systemctl daemon-reload
# systemctl enable minio.service
# systemctl start minio.service
# systemctl status minio.service

Пробуем подключиться к web-интерфейсу и в моем случае адрес будет http://10.54.110.100:9001.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *