Cloud comunitaría y servicios distribuidos sobre...

16
C2 General Cloud comunitaria y servicios distribuidos sobre IPFS RASPBERRY PI – RASPBIAN – CLOUDY - IPFS – IPFSCLUSTER - ORBITDB Leopoldo Álvarez Huerta Grado de Tecnologías de las Telecomunicaciones Área de Aplicaciones y Sistemas Distribuidos Félix Freitag Joan Manuel Marquès Puig Enero 2019

Transcript of Cloud comunitaría y servicios distribuidos sobre...

Page 1: Cloud comunitaría y servicios distribuidos sobre IPFSopenaccess.uoc.edu/webapps/o2/bitstream/10609/87805/8/leoalvare… · C2 General • Sector con tecnologías emergentes y mercado

C2 General

Cloud comunitaria y servicios distribuidos sobre IPFSR A S P B E R R Y P I – R A S P B I A N – C LO U D Y - I P F S – I P F S C L U S T E R - O R B I T D B

Leopoldo Álvarez HuertaGrado de Tecnologías de las TelecomunicacionesÁrea de Aplicaciones y Sistemas Distribuidos

Félix FreitagJoan Manuel Marquès PuigEnero 2019

Page 2: Cloud comunitaría y servicios distribuidos sobre IPFSopenaccess.uoc.edu/webapps/o2/bitstream/10609/87805/8/leoalvare… · C2 General • Sector con tecnologías emergentes y mercado

C2 General

ÍNDICE• Introducción

• Objetivos

• Situación actual

• Arquitectura y elementos del sistema

• Diseño físico

• Diseño lógico

• IPFS

• IPFS Cluster

• OrbitDB

• Implementación

• Cloudy

• IPFS

• Evaluación

• Conclusiones

• Trabajos futuros

Orbit DB

Page 3: Cloud comunitaría y servicios distribuidos sobre IPFSopenaccess.uoc.edu/webapps/o2/bitstream/10609/87805/8/leoalvare… · C2 General • Sector con tecnologías emergentes y mercado

C2 General

• Sector con tecnologías emergentes y mercado cambiante: servicios de Cloud limitados a un tipoespecífico de empresas.

• “De casa a la nube: Cloud comunitaria y servicios IPFS”, pretende realizar un recorrido denuevas tecnologías y protocolos emergentes, centrándose en el uso de componentes abiertos yflexibles.

• Se utiliza únicamente hardware y software abierto (OpenSource):

• Raspberry PI. Ha r dw a r e ARM de nodos principales.

• Raspbian. Sistema operativo GNU/Linux.

• Cloudy. Plataforma de Cloud comunitaria. Proyecto CLOMMUNITY.

• Docker: ELK, MongoDB, OwnCloud. Servicios virtualizados y publicados dentro de Cloudy.

• IPFS: IPFS Cluster y Orbit. Servicios distribuidos basados en IPFS.

Todos los componentes utilizados, como se indica en párrafos posteriores, serán abiertos o cumplirán el estándar para uso con tecnologías abiertas. Se sigue la premisa de colaboración y mejora continua dentro de diferentes comunidades.

Introducción

Page 4: Cloud comunitaría y servicios distribuidos sobre IPFSopenaccess.uoc.edu/webapps/o2/bitstream/10609/87805/8/leoalvare… · C2 General • Sector con tecnologías emergentes y mercado

C2 General

Objetivos

• O b j e t i v os g e n e r a l e s . L í n e a t e ór i c a :

• Investigar los componentes: software / hardware , y protocolos para el diseño de una microCloud.

• Acercamiento a la implementación de servicios distribuidos de alta disponibilidad en entornos comunitarios.

• Estudiar impacto, integración, y potencial de IPFS.

• Investigar servicios como IPFS Cluster, Orbit, y OrbitDB.

• O b j e t i v os e s p e c í f i c os a c or d e s c on l a l í n e a p r á c t i c a d e d e s a r r ol l o y ev a l u a c i ón :

• Establecer plazos de ejecución y despliegue; escalabilidad de la microCloud.

• Realizar la “cloudynización” en varios dispositivos hardware, entre ellos, Raspberry Pi 3B.

• Realizar la interconexión entre todos los elementos del sistema: microCloud • Local

• Regional

• Ofrecer una serie de servicios distribuidos dentro de la microCloud.

• Evaluación de madurez del sistema e integración con IPFS y servicios

Page 5: Cloud comunitaría y servicios distribuidos sobre IPFSopenaccess.uoc.edu/webapps/o2/bitstream/10609/87805/8/leoalvare… · C2 General • Sector con tecnologías emergentes y mercado

C2 General

Situación actual

• Crecimiento exponencial de dispositivos conectados

• IoT

• Demanda de servicios y contenido cerca del usuario final

• Cloud, Edge y Fog computing

• Servicios “paquetizados”

• OpenSource y Cloud

• Flexibilidad

• Movilidad

• Disponibilidad

Page 6: Cloud comunitaría y servicios distribuidos sobre IPFSopenaccess.uoc.edu/webapps/o2/bitstream/10609/87805/8/leoalvare… · C2 General • Sector con tecnologías emergentes y mercado

C2 General

Arquitectura y elementos del sistema

Elementos del sistema

• Raspberry PI 3B

• Raspberry PI 3B+

• Raspberry PI 3B+ (remota)

• AMD Athlon XP 2400

• Maquinas virtuales x86/amd64

• Cablemodem Router Cisco EPC 3925 EuroDocsis 3.0

• Clientes remotos; PC Intel Core i7-7700 Windows 10,Smartphone BQ Android, etc.

Page 7: Cloud comunitaría y servicios distribuidos sobre IPFSopenaccess.uoc.edu/webapps/o2/bitstream/10609/87805/8/leoalvare… · C2 General • Sector con tecnologías emergentes y mercado

C2 General

Arquitectura del sistema: Diseño físico

Page 8: Cloud comunitaría y servicios distribuidos sobre IPFSopenaccess.uoc.edu/webapps/o2/bitstream/10609/87805/8/leoalvare… · C2 General • Sector con tecnologías emergentes y mercado

C2 General

Arquitectura del sistema: Diseño lógico

• C a p a d e a p l i c a c i ó n :

• WebGui

• WebUI

• CLI

• GUI

• C a p a d e s e r v i c i o s y M i d d l e w a r e

• Cloudy

• Docker

• C a p a d e s i s t e m a O p e r a t i v o

• Raspian (Debian)

• Cloudy

• Debian

• Ubuntu 16.04 LTS (Debian)

• C a p a f í s i c a

• RPI , CMRouter, etc.

Page 9: Cloud comunitaría y servicios distribuidos sobre IPFSopenaccess.uoc.edu/webapps/o2/bitstream/10609/87805/8/leoalvare… · C2 General • Sector con tecnologías emergentes y mercado

C2 General

IPFS: IPFS Cluster

• Int er Pl anet ar y Fi l e Sys t em

• Desarrollado por Juan Benet y Protocol Labs

• Protocolo OpenSource

• Método descentralizado de sharing

• DHT

• Block Exchanges

• SFS

• Web

• IPFS Cl us t er

• IPFS Cluster Service

• IPFS Cluster Control

Page 10: Cloud comunitaría y servicios distribuidos sobre IPFSopenaccess.uoc.edu/webapps/o2/bitstream/10609/87805/8/leoalvare… · C2 General • Sector con tecnologías emergentes y mercado

C2 General

IPFS: Orbit DB

• Pr o yect o O r bi t . B a s e de da t o s : O r bi t DB

• Utiliza IPFS como almacenamiento de datos

• Distribuida

• Peer-to-peer

• Utiliza CRDT para combinaciones de BBDD sin conflictos

• Orientada a BBDD de aplicaciones descentralizadas y blockchain

• T i p o s de ba s es de da t o s O r bi t DB

• Log

• Feed

• Docstore

• Keyvalue

• Counter

Orbit DB

Page 11: Cloud comunitaría y servicios distribuidos sobre IPFSopenaccess.uoc.edu/webapps/o2/bitstream/10609/87805/8/leoalvare… · C2 General • Sector con tecnologías emergentes y mercado

C2 General

Implementación: Cloudy

• Distribución Cloudy

• Otra distribución basada en Debian: Proyecto

Clommunity/cloudynitzar

Ejecución script “cloudynitzar.sh”

“Cloudynizar”

• Activación acceso SSH

• Instalación Docker y Docker CE

• Activación Docker

Activación Cloudy y Docker • Carga de imágenes

virtuales. Docker HUB

• Despliegue de contenedor virtual

• Publicación servicios en Cloudy

Publicación servicios

Page 12: Cloud comunitaría y servicios distribuidos sobre IPFSopenaccess.uoc.edu/webapps/o2/bitstream/10609/87805/8/leoalvare… · C2 General • Sector con tecnologías emergentes y mercado

C2 General

Implementación: IPFS e IPFS Cluster

• Preinstalado en Cloudy

• Instalación desde cero:• Instalación desde un paquete compilado

(recomendado)

• Instalación mediante ipfs-update(Necesario GO)

• Compilando desde código fuente

Instalación IPFS

• ipfs init

• ipfs cat IPFS ID

• ipfs daemon

Arranque IPFS• IPFS Cluster Service

• IPFS Cluster Control

• Instalación desde binario.

• Imagen Docker amd64

Instalación IPFS Cluster

• Requerido demonio IPFS

• ipfs-cluster-serviceinit

• ipfs-cluster-ctl

Arranque IPFS Cluster

Page 13: Cloud comunitaría y servicios distribuidos sobre IPFSopenaccess.uoc.edu/webapps/o2/bitstream/10609/87805/8/leoalvare… · C2 General • Sector con tecnologías emergentes y mercado

C2 General

Evaluación

• Te s t g e n e r a l e s

• Cloudy

• Te s t e s p e c í f i c o s

• IPFS

• IPFS Cluster

• OrbitDB

• D i s p o n i b i l i d a d

• Cloudy

• IPFS Cluster

• OrbitDB

• E s c a l a b i l i d a d

• Cloudy

• IPFS Cluster

• S e g u r i d a d

• Cloudy

• IPFS

Page 14: Cloud comunitaría y servicios distribuidos sobre IPFSopenaccess.uoc.edu/webapps/o2/bitstream/10609/87805/8/leoalvare… · C2 General • Sector con tecnologías emergentes y mercado

C2 General

Conclusiones• Pl a n if icac ión y e jecuci ó n T FG

• Se logran objetivos del trabajo, tanto en planificación como en contenido propuesto

• Redacción de memoria, presentación, videos demostrativos, ligeramente superior a planificación inicial

• Despliegue de los nodos ligeramente inferior a planificación inicial

• Se estiman necesarias cuatro diapositivas más para presentación de la demo práctica. Se anexa video

• Mi cr o Cloud: Cl o udy, Do cker, IPFS, et c.

• Completamente Open Source: Hardware y Software

• Plataforma económica, operativa, flexible y funcional

• Docker

• IPFS

• IPFS Cluster

• Orbit

• OrbitDB

Page 15: Cloud comunitaría y servicios distribuidos sobre IPFSopenaccess.uoc.edu/webapps/o2/bitstream/10609/87805/8/leoalvare… · C2 General • Sector con tecnologías emergentes y mercado

C2 General

Trabajos futuros

• mi cr o Cl oud – Cl o udy

• Estudio integración OrbitDB con Cloudy

• Securización acceso. SSL y autorización configurable.

• Software OpenSource LAN-to-LAN

• IPFS

• Securización IPFS e IPFS Cluster

• IPFS Log

• Proyecto IPFS Windows. Funcionamiento escenario mixto entornos GNU/Linux

• O r bi t

• OrbitDB. Swarm privado sobre OrbitDB.

• OrbitWeb (chat). Chat comunitario.

Page 16: Cloud comunitaría y servicios distribuidos sobre IPFSopenaccess.uoc.edu/webapps/o2/bitstream/10609/87805/8/leoalvare… · C2 General • Sector con tecnologías emergentes y mercado

C2 General

Leopoldo Álvarez HuertaGrado de Tecnologías de las TelecomunicacionesArea de Aplicaciones y Sistemas Distribuidos

Félix FreitagJoan Manuel Marquès Puig

06/01/2019

GRACIAS