Cómo instalar el servidor de almacenamiento de objetos MinIO en Debian 11

Inicio de sesión en Minio

Minio es un popular servidor de almacenamiento de objetos de código abierto, autoalojado y compatible con Amazon S3, escrito en Go. Es una alternativa muy útil a AWS S3 si necesitas más control sobre tu servidor de almacenamiento de objetos. Nos permite almacenar fotos, vídeos, archivos de registro, copias de seguridad e imágenes de contenedores/VM. Proporciona un cliente de línea de comandos, una interfaz de navegador y también soporta AMQP. Puede utilizar Minio en el despliegue a gran escala para la replicación continua de datos.

En este artículo, le mostraré cómo instalar el servidor Minio en Debian 11.

Requisitos previos

  • Un servidor con Debian 11.
  • Se ha configurado una contraseña de root en el servidor.

Instalar el servidor de Minio

Primero, descargue la última versión del binario de Minio usando el siguiente comando:

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

A continuación, dé el permiso de ejecución y mueva el binario de Minio a la ruta del sistema:

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

A continuación, cree un usuario dedicado para Minio con el siguiente comando:

useradd -r minio -s /sbin/nologin

Luego, cambie la propiedad del binario de Minio al usuario minio:

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

A continuación, verifique la versión instalada de Minio con el siguiente comando:

minio --version

Obtendrá la siguiente salida:

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

Crear una partición para el almacenamiento de Minio

A continuación, deberá crear una partición GPT en un disco separado. Primero, liste todos los discos duros conectados usando el siguiente comando:

fdisk -l

Debería ver todos los discos duros conectados en la siguiente salida:

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

A continuación, cree una partición GPT en el disco /dev/sdb con el siguiente comando:

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

A continuación, formatea la partición con el siguiente comando:

mkfs.ext4 /dev/sdb1

Obtendrás la siguiente salida:

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   

A continuación, cree un punto de montaje para el disco Minio.

mkdir /mnt/minio

A continuación, añada la entrada en el archivo /etc/fstab para montar la partición en el punto de montaje:

nano /etc/fstab

Añade la siguiente línea:

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

Guarde y cierre el archivo y luego monte la partición usando el siguiente comando:

mount -a

A continuación, verifique el disco montado utilizando el siguiente comando:

df -h

Debería ver la siguiente salida:

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

A continuación, cambie la propiedad del montaje de Minio a minio:

chown minio:minio /mnt/minio

Configurar Minio

A continuación, cree un directorio de configuración de Minio utilizando el siguiente comando:

mkdir /etc/minio

A continuación, cambie la propiedad del directorio de configuración de Minio:

chown minio:minio /etc/minio

A continuación, cree un archivo de configuración de Minio:

nano /etc/default/minio

Agregue las siguientes líneas:

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

Guarde y cierre el fiel y luego descargue el archivo de servicio de Minio con el siguiente comando:

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

A continuación, edite el archivo de servicio de Minio con el siguiente comando:

nano minio.service

Cambie el archivo como se muestra a continuación:

[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

Guarde y cierre el archivo y luego copie el archivo de servicio de Minio en /etc/systemd/system/.

mv minio.service /etc/systemd/system/

Luego, recargue el demonio systemd para aplicar los cambios:

systemctl daemon-reload

A continuación, inicie y habilite el servicio Minio con el siguiente comando:

systemctl start minio
systemctl enable minio

A continuación, compruebe el servicio Minio con el siguiente comando:

systemctl status minio

Debería ver la siguiente salida:

? 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>

Acceda al panel de control de Minio

Ahora, abra su navegador web y acceda a la interfaz web de Minio utilizando la URL http://your-server-ip:9000. Será redirigido a la página de inicio de sesión de Minio:

Inicio de sesión en Minio

A continuación, utilice la clave de acceso y la clave privada del archivo de configuración como nombre de usuario y contraseña y, a continuación, haga clic en el botón Inicio de sesión botón. Debería ver el panel de control de Minio en la siguiente página:Anuncio

Panel de control de Minio

Haga clic en el Crear Cubo botón. Debería ver la siguiente página:

Características

Proporcione el nombre de su cubo, y haga clic en el Crear Cubo botón. Debería ver la siguiente página:

Copia de seguridad de MinIO

Desde aquí, puedes subir y descargar tus archivos desde el navegador web.

Haga clic en el botón Monitorización => Métrica botón. Debería ver las métricas de su cubo en la siguiente página:

Métricas de MinIO

Haga clic en el botón Registros botón. Debería ver los registros del servidor de Minio en la siguiente página:

Registros de Minio

Conclusión

Enhorabuena! ha instalado con éxito el servidor de almacenamiento Minio en Debian 11. Ahora, no necesita depender del almacenamiento S3 de AWS. Puede crear su propio servidor de almacenamiento compatible con S3 para su organización. No dude en preguntarme si tiene alguna duda.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *