miércoles, 5 de diciembre de 2018

Como tener tu propio tu propio Servidor S3 (Object Storage)

¿Qué es el almacenamiento de objetos?

El almacenamiento de objetos, también conocido como almacenamiento basado en objetos, es una arquitectura de almacenamiento de datos de computadora que administra los datos como objetos, a diferencia de otras arquitecturas de almacenamiento como los sistemas de archivos, que administran los datos como una jerarquía de archivos, y el almacenamiento de bloques, que administra los datos como bloques, dentro de sectores y pistas.

Cada objeto suele incluir los datos en sí, una cantidad variable de metadatos y un identificador único global.



Conoce a Minio

Minio es un servidor de almacenamiento de objetos, compatible con el servicio de almacenamiento en la nube de Amazon S3. Es más adecuado para almacenar datos no estructurados, como fotos, videos, archivos de registro, copias de seguridad e imágenes de contenedor / Máquinas Virtuales. El tamaño del objeto puede variar desde unos pocos KB hasta un máximo de 5 TB.


Minio es como tener tu propio S3 Cloud en tu datacenter, esto puede ser especialmente útil si estas regulado por alguna ley de privacidad de datos, como punto fuerte es sencillo de instalar y lo podes tener funcionando en cuestión de minutos.

Ejecucion de Minio en Docker:

Minio se ejecuta fácilmente en Docker mediante el siguiente comando:

docker run -d  --name minio --restart=always  -p 9000:9000 -v minio-data:/export -e "MINIO_ACCESS_KEY=AKIAIOSFODNN7EXAMPLE" -e "MINIO_SECRET_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" minio/minio server /export

En esta ejecución se está configurando un volumen persistente para el almacenamiento de objetos y se esta definiendo las llaves de acceso, es una buena practica definir nosotros las llaves de acceso pero también es posible que Minio las genere por nosotros.


Una vez ejecutado el container podremos acceder al UI de Minio mediante la IP de nuestro host + el puerto 9000, en escenarios productivos es una buena practica poner un proxy reverso con terminación SSL delante de Minio por cuestiones de Seguridad y de balanceo de carga entre varias instancias de Minio.

La primera vez que ingresamos iniciamos sesion con las access key que definimos en la ejecucion del contenedor:




























Una vez en la interfaz grafica sera necesario crear un bucket para el almacenamiento de los archivos:



















Creado el Bucket ya podemos cargar los archivos:
















Es importante destacar que se puede interactuar con el Servidor de Minio mediante las APIs de AWS de manera nativa, tambien se pueden utilizar varios SDKs:




























Para mas informacion pueden revisar la documentacion de Minio:


https://docs.minio.io/


No hay comentarios.:

Publicar un comentario