Поиск по сайту:

Как установить сервер хранилища объектов MinIO в Debian 11


На этой странице

  1. Предпосылки
  2. Установить сервер Minio
  3. Создание раздела для хранилища Minio
  4. Настроить Minio
  5. Доступ к панели управления Minio
  6. Заключение

Minio — популярный сервер хранения объектов с открытым исходным кодом, совместимый с Amazon S3, написанный на Go. Это очень полезная альтернатива AWS S3, если вам нужен больший контроль над сервером хранилища объектов. Это позволяет нам хранить фотографии, видео, файлы журналов, резервные копии и образы контейнеров/ВМ. Он предоставляет клиент командной строки, интерфейс браузера, а также поддерживает AMQP. Вы можете использовать Minio в крупномасштабном развертывании для непрерывной репликации данных.

В этой статье я покажу вам, как установить сервер Minio на Debian 11.

Предпосылки

  • Сервер под управлением Debian 11.
  • На сервере настроен пароль root.

Установить Минио-сервер

Сначала загрузите последнюю версию бинарного файла Minio с помощью следующей команды:

wget https://dl.min.io/server/minio/release/linux-amd64/minio

Затем дайте разрешение на выполнение и переместите двоичный файл Minio в системный путь:

chmod +x minio
mv minio /usr/local/bin/

Затем создайте выделенного пользователя для Minio с помощью следующей команды:

useradd -r minio -s /sbin/nologin

Затем измените владельца бинарного файла Minio на пользователя minio:

chown minio:minio /usr/local/bin/minio

Затем проверьте установленную версию Minio с помощью следующей команды:

minio --version

Вы получите следующий вывод:

minio version RELEASE.2022-02-26T02-54-46Z

Создайте раздел для хранилища Minio

Далее вам нужно будет создать раздел GPT на отдельном диске. Сначала выведите список всех подключенных жестких дисков с помощью следующей команды:

fdisk -l

Вы должны увидеть все подключенные жесткие диски в следующем выводе:

Disk /dev/sda: 50 GiB, 53687091200 bytes, 104857600 sectors
Disk model: QEMU HARDDISK   
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x7d36ef95

Device     Boot Start       End   Sectors Size Id Type
/dev/sda1        2048 104855552 104853505  50G 83 Linux


Disk /dev/sdb: 50 GiB, 53687091200 bytes, 104857600 sectors
Disk model: Volume          
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Затем создайте раздел GPT на диске /dev/sdb с помощью следующей команды:

parted -s -a optimal -- /dev/sdb mklabel gpt
parted -s -a optimal -- /dev/sdb mkpart primary 0% 100%
parted -s -- /dev/sdb align-check optimal 1

Затем отформатируйте раздел с помощью следующей команды:

mkfs.ext4 /dev/sdb1

Вы получите следующий вывод:

mke2fs 1.46.2 (28-Feb-2021)
Discarding device blocks: done                            
Creating filesystem with 13106688 4k blocks and 3276800 inodes
Filesystem UUID: bd18a11d-a9d9-44a2-a381-f30ba0798661
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000, 7962624, 11239424

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (65536 blocks): done
Writing superblocks and filesystem accounting information: done   

Затем создайте точку монтирования для диска Minio.

mkdir /mnt/minio

Затем добавьте запись в файл /etc/fstab для подключения раздела к точке подключения:

nano /etc/fstab

Добавьте следующую строку:

/dev/sdb1 /mnt/minio ext4 rw 0 0

Сохраните и закройте файл, затем смонтируйте раздел с помощью следующей команды:

mount -a

Затем проверьте смонтированный диск с помощью следующей команды:

df -h

Вы должны увидеть следующий вывод:

Filesystem      Size  Used Avail Use% Mounted on
udev            976M     0  976M   0% /dev
tmpfs           199M  388K  198M   1% /run
/dev/sda1        50G  1.6G   46G   4% /
tmpfs           992M     0  992M   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           199M     0  199M   0% /run/user/0
/dev/sdb1        49G   24K   47G   1% /mnt/minio

Затем измените владельца крепления Minio на minio:

chown minio:minio /mnt/minio

Настроить Минио

Затем создайте каталог конфигурации Minio с помощью следующей команды:

mkdir /etc/minio

Затем измените владельца каталога конфигурации Minio:

chown minio:minio /etc/minio

Затем создайте файл конфигурации Minio:

nano /etc/default/minio

Добавьте следующие строки:

MINIO_ACCESS_KEY="minioaccesskey"
MINIO_VOLUMES="/mnt/minio"
MINIO_OPTS="-C /etc/minio --address 0.0.0.0:9000"
MINIO_SECRET_KEY="miniosecretkey"

Сохраните и закройте поле, затем загрузите служебный файл Minio с помощью следующей команды:

wget https://raw.githubusercontent.com/minio/minio-service/master/linux-systemd/minio.service

Затем отредактируйте служебный файл Minio с помощью следующей команды:

nano 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=minio
Group=minio
ProtectProc=invisible

EnvironmentFile=/etc/default/minio
ExecStartPre=/bin/bash -c "if [ -z \"${MINIO_VOLUMES}\" ]; then echo \"Variable MINIO_VOLUMES not set in /etc/default/minio\"; exit 1; fi"
ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES

# Let systemd restart this service always
Restart=always

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

# 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

Сохраните и закройте файл, затем скопируйте служебный файл Minio в /etc/systemd/system/.

mv minio.service /etc/systemd/system/

Затем перезагрузите демон systemd, чтобы применить изменения:

systemctl daemon-reload

Затем запустите и включите службу Minio с помощью следующей команды:

systemctl start minio
systemctl enable minio

Затем проверьте службу Minio с помощью следующей команды:

systemctl status minio

Вы должны увидеть следующий вывод:

? minio.service - MinIO
     Loaded: loaded (/etc/systemd/system/minio.service; disabled; vendor preset: enabled)
     Active: active (running) since Mon 2022-02-28 02:18:31 UTC; 4s ago
       Docs: https://docs.min.io
    Process: 861 ExecStartPre=/bin/bash -c if [ -z "${MINIO_VOLUMES}" ]; then echo "Variable MINIO_VOLUMES not set in /etc/default/minio"; ex>
   Main PID: 862 (minio)
      Tasks: 7
     Memory: 55.2M
        CPU: 759ms
     CGroup: /system.slice/minio.service
             ??862 /usr/local/bin/minio server -C /etc/minio --address 0.0.0.0:9000 /mnt/minio

Feb 28 02:18:31 debian11 systemd[1]: Starting MinIO...
Feb 28 02:18:31 debian11 systemd[1]: Started MinIO.
Feb 28 02:18:32 debian11 minio[862]: WARNING: MINIO_ACCESS_KEY and MINIO_SECRET_KEY are deprecated.
Feb 28 02:18:32 debian11 minio[862]:          Please use MINIO_ROOT_USER and MINIO_ROOT_PASSWORD
Feb 28 02:18:32 debian11 minio[862]: API: http://0.0.0.0:9000
Feb 28 02:18:32 debian11 minio[862]: Console: http://209.208.97.78:42459 http://127.0.0.1:42459
Feb 28 02:18:32 debian11 minio[862]: Documentation: https://docs.min.io
Feb 28 02:18:32 debian11 minio[862]: WARNING: Console endpoint is listening on a dynamic port (42459), please use --console-address ":PORT" t>

Доступ к панели управления Minio

Теперь откройте веб-браузер и войдите в веб-интерфейс Minio, используя URL-адрес http://your-server-ip:9000. Вы будете перенаправлены на страницу входа в Minio:

Затем используйте ключ доступа и закрытый ключ из файла конфигурации в качестве имени пользователя и пароля, затем нажмите кнопку «Войти». Вы должны увидеть панель инструментов Minio на следующей странице:

Нажмите на кнопку «Создать корзину». Вы должны увидеть следующую страницу:

Укажите имя корзины и нажмите кнопку «Создать корзину». Вы должны увидеть следующую страницу:

Отсюда вы можете загружать и скачивать файлы из веб-браузера.

Нажмите на кнопку Мониторинг => Метрики. Вы должны увидеть свои показатели корзины на следующей странице:

Нажмите кнопку Журналы. Вы должны увидеть журналы сервера Minio на следующей странице:

Заключение

Поздравляем! вы успешно установили сервер хранения Minio на Debian 11. Теперь вам не нужно полагаться на хранилище AWS S3. Вы можете создать собственный сервер хранения, совместимый с S3, для своей организации. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы.