Montar MinIO en Linux con NetDrive

6 min de lectura provider-guide minio linux
Kai
KaiJunior Engineer
Monta un bucket MinIO autoalojado como punto de montaje en Linux con la build experimental de NetDrive para Ubuntu: endpoint, acceso por estilo de ruta y verificación.

Un equipo de build ejecuta su propio clúster de MinIO en un rack de servidores Ubuntu en lugar de pagar por almacenamiento de objetos gestionado — cachés de capas de Docker, fixtures de pruebas nocturnas y unos cuantos terabytes de artefactos que nunca necesitan salir de la red de la oficina. Los runners de CI ya leen y escriben rutas locales con comandos de shell sencillos, y reescribir eso en torno al SDK de MinIO solo para llegar a un bucket que está a tres racks de distancia parece resolver un problema que no necesita solución. La build de Linux de NetDrive monta el bucket como una ruta ordinaria en su lugar, de modo que los scripts existentes siguen funcionando sin cambios.

NetDrive drive manager showing Google Drive, S3 and pCloud mounted as drive lettersMounted clouds appearing as native drives in Windows File Explorer

Monta MinIO en Ubuntu

NetDrive hace que Google Drive, OneDrive, S3, SFTP, WebDAV y más aparezcan como unidades nativas en Windows y macOS — sin sincronizar, sin descargas completas.

  • Conexión compatible con S3 — funciona con cualquier endpoint MinIO autoalojado
  • Se ejecuta en Ubuntu 16.04 y posteriores
  • Los scripts de shell existentes leen y escriben a través de un punto de montaje normal
WindowsmacOS
Descargar NetDrive para Linux →

Prueba gratuita. Planes de por vida y de suscripción disponibles.

Por Qué un Punto de Montaje Supera a Programar Contra la API de MinIO

Hablar con MinIO directamente implica incorporar el cliente mc o un SDK de S3, gestionar la rotación de claves de acceso y escribir lógica de reintentos para el lenguaje que toque en cada trabajo. Nada de eso es difícil, pero es trabajo de infraestructura añadido a una tarea que en realidad es solo “leer este archivo, escribir aquel otro”. Montar el bucket elimina esa capa por completo — tar, cp, rsync y cualquier otra herramienta que ya sepa tocar una ruta local puede tocar el punto de montaje de la misma manera.

NetDrive trata MinIO como una conexión compatible con S3 bien soportada desde la versión 3.15.450 (2021-11-08), la misma versión que añadió soporte general para almacenamiento compatible con S3 junto al propio Amazon S3. En Linux específicamente, ese tipo de conexión se apoya en la build experimental de NetDrive para Ubuntu en lugar de en las versiones de Windows y macOS, mucho más probadas — algo que conviene saber de antemano, ya que Linux lleva la etiqueta “experimental” en la propia página comparativa de NetDrive.

NetDrive mounting a self-hosted object storage bucket as a local Linux mount point

Lo Que Necesitas Antes de Empezar

  • URL del endpoint de MinIO — algo como http://minio.internal:9000 para una máquina en la red local, o una URL HTTPS si el clúster está detrás de un proxy inverso. La API de MinIO escucha en el puerto 9000 por defecto; la consola web se ejecuta en un puerto separado y no es con lo que habla NetDrive.
  • Access Key y Secret Key — una cuenta de servicio con acceso limitado al bucket que NetDrive necesita, creada desde la MinIO Console en Identity → Service Accounts, o mediante mc admin user svcacct add. Evita usar las credenciales root para cualquier cosa que se ejecute de forma prolongada.
  • Nombre del bucket — NetDrive se conecta a nivel de bucket, así que un servidor que necesite varios buckets requiere una conexión de NetDrive independiente para cada uno.
  • Ubuntu 16.04 o posterior, con acceso saliente al puerto del endpoint de MinIO abierto en el firewall de la máquina.

Instalar NetDrive en Ubuntu

NetDrive para Linux no vive en los repositorios predeterminados de Ubuntu, así que la instalación pasa por GitHub en lugar de por apt:

  1. Ve a github.com/NetDrive/installer y descarga la versión que corresponda a tu versión de Ubuntu.
  2. Revisa las notas de esa versión antes de instalar — un componente de driver debe cargarse primero, o las conexiones no se montarán.
  3. Instala el paquete y luego lanza NetDrive una vez para que el driver se cargue. Según cómo esté configurada la máquina, este paso puede pedir sudo.

Paso a Paso: Conectar un Bucket de MinIO

  1. Abre el Drive Manager de NetDrive y haz clic en + Add Drive.
  2. Selecciona Amazon S3 en la lista de proveedores — MinIO habla el API de S3, así que este es el punto de entrada que usa NetDrive tanto para MinIO como para otros almacenes compatibles con S3.

NetDrive Drive Manager showing multiple cloud connections including S3-compatible storage

  1. Introduce el Access Key ID y el Secret Access Key de la cuenta de servicio creada anteriormente.
  2. Configura Region con cualquier valor no vacío como us-east-1 — MinIO lo ignora, pero el campo no puede quedar en blanco.
  3. Introduce el Endpoint — la URL de la API de MinIO, por ejemplo http://minio.internal:9000.
  4. Introduce el Bucket a montar.
  5. Activa Path style (a veces etiquetado como Force path style). MinIO autoalojado normalmente no tiene una entrada DNS para URLs de bucket en estilo virtual-hosted, así que el direccionamiento por estilo de ruta — donde el bucket aparece como un segmento de la ruta — es el ajuste que funciona desde el primer momento.
  6. Establece un punto de montaje, como /mnt/minio-artifacts, y haz clic en Connect.

Verificar el Montaje Antes de que un Trabajo de CI Dependa de Él

Confirma que el montaje realmente se realizó antes de apuntar un trabajo desatendido hacia él:

# Confirm the mount is listed
mount | grep minio-artifacts

# Or just list it
ls /mnt/minio-artifacts

Confirming that a connected drive mounted successfully after setup

Si el directorio aparece vacío o el montaje nunca aparece, comprueba que el firewall de la máquina permite tráfico saliente hacia el puerto del endpoint de MinIO antes de asumir que la clave de acceso es incorrecta — un puerto bloqueado es una causa más habitual en servidores de build restringidos que unas credenciales erróneas.

Checking that a network port is reachable when troubleshooting a failed connection

Qué Tener en Cuenta en la Build de Linux

  • Un ciclo de lanzamientos independiente. Las correcciones que salen para Windows o macOS no llegan automáticamente a la build de Linux esa misma semana.
  • Sin integración con apt. Las actualizaciones llegan desde releases de GitHub, no desde un gestor de paquetes, así que seguir las versiones nuevas es un paso manual.
  • Windows y macOS reciben las pruebas más exhaustivas. Un runner de CI o un trabajo nocturno que lee desde MinIO es un buen encaje para la build de Linux; pruébalo a fondo antes de poner un pipeline de producción desatendido detrás de ella.

Conclusión

Montar un bucket de MinIO autoalojado en Ubuntu le da a un servidor de build el mismo acceso tipo unidad que NetDrive ofrece en Windows y macOS, sin necesidad de reescribir nada en torno al SDK de S3. Para el mismo proveedor en plataformas más probadas, consulta Mount MinIO on Windows o Mount MinIO on macOS; para el panorama más amplio de Linux, consulta NetDrive on Ubuntu Linux; y para un caso de uso centrado en CI construido en torno a almacenamiento compatible con S3, consulta DevOps: S3 Test Fixtures with NetDrive.

— Kai, NetDrive