Geekflare recibe el apoyo de nuestra audiencia. Podemos ganar comisiones de afiliación de los enlaces de compra en este sitio.
En Computación en nube Última actualización: 24 de septiembre de 2023
Compartir en:
Escáner de seguridad de aplicaciones web Invicti - la única solución que ofrece verificación automática de vulnerabilidades con Proof-Based Scanning™.

¿Está buscando un software de almacenamiento de objetos para alojarlo en su servidor?

Supongo que sí

Hay un montón de almacenamiento de objetos basado en la nube como AWS S3 y otros que he mencionado aquí. Sin embargo, si necesita alojar sus datos en su servidor, MinIO puede ayudarle dentro de sus centros de datos

MiniIO es un software de almacenamiento de objetos distribuido de código abierto, popular y compatible con S3. Está preparado para empresas y es conocido por su alto rendimiento

Puede utilizar MinIO desde una simple aplicación web hasta grandes cargas de trabajo de distribución de datos para aplicaciones de análisis y aprendizaje automático. Puede ayudarle en muchos casos de uso

  • Almacenamiento de archivos planos estándar
  • Distribución de datos en múltiples nubes
  • Recuperación ante desastres
  • Análisis de datos

¿Es un software voluminoso?

No, sólo ocupa unos ~50 MB y es compatible con Kubernetes. Escribe datos y metadatos como un objeto. Esto elimina la dependencia de tener una base de datos o software adicional para almacenar metadatos y mejorar el rendimiento

La siguiente arquitectura de su sitio oficial

Exploremos algunas de las características que merece la pena destacar

  • Alto rendimiento – lo dice el título. Es capaz de leer/escribir a una velocidad de ~170GB/s. ¡Eso es mucho!
  • Escalable – opte por la agrupación en clústeres y escale según sus necesidades
  • Nube nativa
  • Protección de datos mediante el método de código de borrado
  • Compatible con múltiples cifrados, incluidos AES-CBC, AES-256-GCM, ChaCha20
  • Compatible con KMS comunes
  • Identidad de aplicaciones y usuarios
  • Notificación de eventos
  • Federación mediante etcd y CoreDNS

MinIO es una buena opción para el almacenamiento definido por software. Exploremos cómo configurarlo

Instalación del servidor MinIO

Puede instalarlo en Linux, Windows, macOS y a través de Kubernetes. ¿Prefiere construir a través del código fuente? Claro, puede hacerlo si tiene Golang instalado

Para esta demostración, voy a instalar en CentOS que está alojado en Kamatera

  • Inicie sesión en el servidor
  • Cree una carpeta en el sistema de archivos deseado. Tal vez minio-server
  • Navegue hasta la carpeta recién creada y ejecute el siguiente comando wget
wget https://dl.min.io/server/minio/release/linux-amd64/minio

Descargará un archivo binario y debería tener el siguiente aspecto

rw-r--r-- 1 root raíz 48271360 18 de octubre 21:57

minio
Haga ejecutable el archivo con el comando chmod

chmod 755

minio
Iniciemos MinIO como servidor

./minio servidor /datos &amp

/data mencionado anteriormente es el sistema de archivos donde MinIO almacenará los objetos

El arranque es rápido y debería ver la información de arranque como se indica a continuación

Endpoint: http://xx.71.141.xx:9000 http://127.0.0.1:9000
AccessKey: minioadmin
SecretKey: minioadmin

Browser Access:
 http://xx.71.141.xx:9000 http://127.0.0.1:9000

Command-line Access: https://docs.min.io/docs/minio-client-quickstart-guide
 $ mc alias set myminio http://xx.71.141.xx:9000 minioadmin minioadmin

API de objetos (compatible con Amazon S3):
 Go: https://docs.min.io/docs/golang-client-quickstart-guide
 Java: https://docs.min.io/docs/java-client-quickstart-guide
 Python: https://docs.min.io/docs/python-client-quickstart-guide
 JavaScript: https://docs.min.io/docs/javascript-client-quickstart-guide
.NET: https://docs.min.io/docs/dotnet-client-quickstart-guide
Detectadas credenciales por defecto 'minioadmin:minioadmin', por favor, cambie las credenciales inmediatamente utilizando 'MINIO_ACCESS_KEY' y 'MINIO_SECRET_KEY'

Accedamos a MinIO en el navegador con las credenciales por defecto – minioadmin:minioadmin

La interfaz es muy ordenada y limpia pero antes de nada, cambiemos la credencial por defecto ya que expone el riesgo. No hay ninguna opción para cambiar la credencial de administrador a través del navegador sino variables de entorno

Para cambiar la credencial por defecto de MinIO, exportaremos la clave de acceso y secreta como se indica a continuación e iniciaremos MinIO

export MINIO_ACCESS_KEY=geekflare
export MINIO_SECRET_KEY=geekpassword
./minio server /data &amp

Ahora, no debería quejarse de la advertencia de detección de credenciales por defecto

Intentemos subir algunos archivos

  • Haga clic en el icono de la parte inferior derecha y cree un cubo
  • Subí un archivo de prueba e inmediatamente visible en el navegador

y, en el servidor
[

root@gf-lab geekflare]# ls -ltr
total 4

-rw-r–r–

 1 root root 11 Oct 19 11:09 MinIO-Test.txt
[root@gf-lab geekflare]#

Si hace clic en el botón para compartir archivos del navegador, obtendrá el enlace para compartir y una opción para establecer la caducidad

Cliente MinIO

El cliente MinIO es más que aws-cli que le permite gestionar el almacenamiento. El cliente está disponible para Windows, macOS y Linux

Para instalarlo en Linux, ejecute lo siguiente

wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod 755 mc

Ejecute el comando mc para ver la ayuda del comando

[root@gf-lab ~]# ./mc
NOMBRE:
 mc - Cliente MinIO para almacenamiento en la nube y sistemas de archivos.

USO:
 mc [FLAGS] COMANDO [COMMAND FLAGS | -h] [ARGUMENTOS...]

COMANDOS:
 alias set, eliminar y listar alias en el archivo de configuración
 ls listar cubos y objetos
 mb hacer un cubo
 rb eliminar un cubo
 cp copiar objetos
 mirror sincronizar objeto(s) a un sitio remoto
 cat mostrar contenido de objeto
 head mostrar primeras 'n' líneas de un objeto
 pipe stream STDIN a un objeto
 share generar URL para acceso temporal acceso temporal a un objeto
 find buscar objetos
 sql ejecutar consultas sql sobre objetos
 stat mostrar metadatos de objetos
 mv mover objetos
 tree listar cubos y objetos en formato de árbol
 du resumir el uso del disco recursivamente
 retention establecer la retención de objeto(s)
 legalhold gestionar la retención legal de objeto(s)
 diff listar las diferencias en el nombre del objeto, tamaño and date between two buckets
 rm remove objects
 version manage bucket versioning
 ilm manage bucket lifecycle
 encrypt manage bucket encryption config
 event manage object notifications
 watch listen for object notification events
 undo       deshacer operaciones PUT/DELETE
 policy gestionar acceso anónimo a cubos y objetos
 tag gestionar etiquetas para cubo y objeto(s)
 replicate configurar replicación de cubos del lado del servidor
 admin gestionar servidores MinIO
 update actualizar mc a la última versión
  
GLOBAL FLAGS:
 --autocompletion instalar autocompletado para su shell
 --config-dir valor, -C valor ruta a la carpeta de configuración (por defecto: "/root/.mc")
 --quiet, -q desactivar la visualización de la barra de progreso
 --no-color desactivar el tema de color
 --json activar la salida con formato de líneas JSON
 --debug activar la salida de depuración
 --insecure desactivar la verificación de certificados SSL
 --help, -h mostrar ayuda
 --version, -v imprimir la versión
  
CONSEJO:
 Utilice 'mc --autocompletion' para activar el autocompletado del shell

VERSIÓN:
 RELEASE.2020-10-03T02-54-56Z
[root@gf-lab ~]#

Intentemos listar el archivo que he cargado a través del comando mc

En primer lugar, tenemos que establecer el alias del almacenamiento que queremos administrar

[root@gf-lab ~]# ./mc alias set minio http://xx.71.141.xx:9000/ geekflare geekpassword
Añadido `minio` con éxito.
[root@gf-lab

~]#

  • minio es el nombre del alias. Puede cambiarlo por el que desee.
  • Cambie el endpoint HTTP por el suyo real
  • Cambie la clave de acceso y secreta por la suya

y, para listar, utilizará el comando ls como se indica a continuación

[root@gf-lab ~]# ./mc ls --recursive minio
[2020-10-19 11:09:06 UTC] 11B geekflare/MinIO-Test.txt
[root@gf-lab ~]#

Genial, ¡funciona!

Puedes hacer literalmente todo a través del cliente. No sólo puede gestionar el almacenamiento en la nube MinIO sino también GCS, AWS S3, Azure

Echa un vistazo a esta guía de inicio rápido del cliente para más detalles

MinIO SDK

Dependiendo de su pila de aplicaciones, puede interactuar con el almacenamiento de objetos mediante programación utilizando SDK. Es compatible con Go, Python, Node.js, .NET, Haskell y Java

Pasarela MinIO

Añada la pasarela MiniIO a S3, Azure, NAS, HDFS para aprovechar el navegador MinIO y el almacenamiento en caché de disco

Conclusión

Si está buscando un almacenamiento de objetos privado, híbrido o multi-nube, entonces MinIO parece prometedor. Pruébelo y se enamorará de él. Para probarlo, puede conseguir la VM de MinIO de Kamatera o instalarlo usted mismo en cualquier servidor en la nube.

  • Chandan Kumar
    Autor
    Chandan Kumar es el fundador de Geekflare. Ha ayudado a millones de personas a destacar en el ámbito digital. Apasionado de la tecnología, su misión es explorar el mundo y ampliar el crecimiento de profesionales y empresas.
Gracias a nuestros patrocinadores
Más lecturas sobre computación en nube
Potencia tu negocio
Algunas de las herramientas y servicios que le ayudarán a hacer crecer su negocio.
  • Invicti utiliza el Proof-Based Scanning™ para verificar automáticamente las vulnerabilidades identificadas y generar resultados procesables en tan solo unas horas.
    Pruebe Invicti
  • Web scraping, proxy residencial, gestor de proxy, desbloqueador web, rastreador de motores de búsqueda, y todo lo que necesita para recopilar datos web.
    Pruebe Brightdata
  • Monday.com es un sistema operativo de trabajo todo en uno que te ayuda a gestionar proyectos, tareas, trabajo, ventas, CRM, operaciones, flujos de trabajo y mucho más.
    Prueba Monday
  • Intruder es un escáner de vulnerabilidades en línea que encuentra puntos débiles de ciberseguridad en su infraestructura, para evitar costosas violaciones de datos.
    Prueba Intruder