Usar MinIO Client (mc) con OtterStorage
Instala y configura el cliente de línea de comandos mc para gestionar tus buckets de OtterStorage: crear, listar, copiar y espejar datos.
MinIO Client (mc) es una herramienta de línea de comandos compatible con S3 que te permite gestionar tus buckets de OtterStorage de forma rápida y scriptable. Como OtterStorage es totalmente compatible con la API S3, mc funciona sin modificaciones: basta con apuntarlo a nuestro endpoint y usar tus claves de acceso. En esta guía verás cómo instalarlo, configurar un alias y trabajar con los comandos más habituales, incluyendo el espejado (mirror) para copias de seguridad.
Instalar mc
El binario de mc está disponible para Linux, macOS y Windows. Descárgalo directamente desde el repositorio oficial de MinIO.
Linux
curl -O https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc
sudo mv mc /usr/local/bin/mc
macOS
brew install minio/stable/mc
Windows
Descarga el ejecutable y añádelo a tu PATH, o invócalo directamente desde PowerShell:
Invoke-WebRequest -Uri https://dl.min.io/client/mc/release/windows-amd64/mc.exe -OutFile mc.exe
.\mc.exe --version
Comprueba la instalación en cualquier plataforma con:
mc --version
Configurar el alias de OtterStorage
Un alias es un nombre corto que asocia el endpoint de OtterStorage con tus credenciales. Una vez creado, todos los comandos se ejecutan contra ese alias. En OtterStorage cada bucket dispone de su propio par de claves (access key + secret key), que obtienes desde la consola al crear el bucket.
mc alias set otter https://s3.otterstorage.io ACCESS_KEY SECRET_KEY
Sustituye ACCESS_KEY y SECRET_KEY por las credenciales de tu bucket. A partir de aquí, otter es el nombre de la conexión. Verifica que el alias funciona listando los buckets accesibles:
mc ls otter
Si necesitas indicar la región explícitamente en algún flujo de trabajo, OtterStorage usa identificadores como eu-mad. La mayoría de comandos de mc no requieren especificar la región, ya que se resuelve a través del endpoint.
Para revisar o eliminar un alias guardado:
mc alias list
mc alias remove otter
Crear buckets: mc mb
El comando mc mb (make bucket) crea un nuevo bucket. Recuerda que los nombres de bucket deben ser únicos y seguir las reglas de nomenclatura S3 (minúsculas, sin espacios).
mc mb otter/mi-bucket
Puedes crear varios buckets de una vez:
mc mb otter/backups otter/logs otter/assets
Listar contenido: mc ls
Usa mc ls para listar buckets, carpetas y objetos. Añade --recursive para recorrer todo el árbol.
mc ls otter
mc ls otter/mi-bucket
mc ls --recursive otter/mi-bucket
Copiar objetos: mc cp
El comando mc cp copia archivos entre tu sistema local y OtterStorage, o entre buckets. Para subir un único archivo:
mc cp informe.pdf otter/mi-bucket/
Para descargar un objeto a tu máquina:
mc cp otter/mi-bucket/informe.pdf ./descargas/
Para copiar entre dos buckets de OtterStorage:
mc cp otter/mi-bucket/informe.pdf otter/backups/
Copia recursiva: mc cp --recursive
Para subir o descargar un directorio completo con su estructura, añade --recursive (abreviado -r):
mc cp --recursive ./sitio-web/ otter/assets/sitio-web/
Esto copia todos los archivos del directorio local ./sitio-web/ manteniendo las subcarpetas. A diferencia de otros proveedores, en OtterStorage no cobramos por número de peticiones, así que copiar miles de objetos pequeños no genera cargos adicionales por las operaciones PUT implicadas.
Espejar datos: mc mirror
mc mirror sincroniza un origen con un destino, copiando solo lo que ha cambiado. Es la opción ideal para copias de seguridad incrementales y para mantener dos ubicaciones idénticas. A diferencia de cp --recursive, mirror compara origen y destino y transfiere únicamente los archivos nuevos o modificados.
mc mirror ./datos-local/ otter/backups/datos/
Opciones útiles de mirror
--overwrite: sobrescribe en destino los objetos que han cambiado en el origen.--remove: elimina en el destino los objetos que ya no existen en el origen (espejo exacto).--watch: vigila el origen de forma continua y replica los cambios en tiempo real.--exclude: omite archivos según un patrón (por ejemplo"*.tmp").
Ejemplo: backup incremental diario
Un espejo que mantiene el bucket idéntico al directorio de origen, eliminando lo que se haya borrado en local y excluyendo archivos temporales:
mc mirror --overwrite --remove --exclude "*.tmp" ./produccion/ otter/backups/produccion/
Puedes programarlo con cron para que se ejecute cada noche:
0 2 * * * /usr/local/bin/mc mirror --overwrite --remove /srv/produccion/ otter/backups/produccion/ >> /var/log/mc-backup.log 2>&1
Como OtterStorage no cobra por peticiones ni por borrados, las opciones --remove y la verificación de objetos que realiza mirror en cada ejecución no añaden coste por operación: solo pagas por el almacenamiento que ocupan tus datos.
Ejemplo: sincronización en tiempo real
Para replicar continuamente una carpeta a medida que cambia, usa --watch:
mc mirror --watch --overwrite ./uploads/ otter/assets/uploads/
Consultar uso: mc du
mc du (disk usage) muestra el espacio ocupado por un bucket o prefijo, útil para auditar el tamaño de tus copias de seguridad.
mc du otter/backups
mc du --recursive otter/backups/produccion/
Borrar objetos: mc rm
mc rm elimina objetos. Úsalo con cuidado, especialmente con --recursive.
mc rm otter/mi-bucket/informe.pdf
Para borrar un directorio completo en el bucket, combina --recursive con --force:
mc rm --recursive --force otter/mi-bucket/carpeta-antigua/
Vaciar y eliminar un bucket por completo:
mc rm --recursive --force otter/mi-bucket
mc rb otter/mi-bucket
El borrado de objetos en OtterStorage no tiene coste: no facturamos las operaciones DELETE, de modo que puedes limpiar datos obsoletos sin penalización.
Siguientes pasos
Con el alias configurado ya puedes integrar mc en tus scripts de despliegue y backup. Para conocer otras formas de conectar con OtterStorage (SDKs, AWS CLI o integraciones adicionales) consulta la documentación.
¿Listo para probarlo?
Crea tu cuenta y obtén tus claves en minutos.