Top Banner
Christian Götz & Dominik Obermaier | dc-square Bau deine eigene IoT Cloud
70

Build your own IoT Cloud! [GER]

Jan 15, 2015

Download

Internet

Christian Götz

Durch die Vielzahl offener Hardwareplatformen ist es heutzutage ein Leichtes, eigene Geräte für Anwendungen im Internet der Dinge zu bauen. Die meisten Gadgets haben mit einem Arduino- oder Raspberry Pi-Prototyp begonnen, bevor sie eigene Geräte fertigen ließen. Genauso einfach wie das Erstellen von Hardware-Prototypen ist das Bauen einer eigenen IoT Cloud Platform für die Kommunikation mit den Geräten und der Darstellung der verarbeiteten Daten für den Endbenutzer.

In diesem Power-Workshop werden dies alle Teilnehmer selbst ausprobieren können, da es das Ziel ist, eine Platform zu bauen, die Sensordaten empfangen, diese persistieren und für die Anzeige im Webbrowser aufbereiten kann. Dabei sollen sowohl

Live-Daten von den Sensoren, als auch historische Daten über verschiedene gängige IoT-Protokolle im Webbrowser ankommen. Der Workshop besteht aus einer kurzen Einführung in die Thematik und einer möglichen Architektur einer IoT-Cloud, gefolgt von einem praktischen Teil. Der zweite Teil stützt sich sehr stark auf Java-Technologien von daher wäre es wünschenswert, wenn jeder Teilnehmer einen Laptop mit installiertem Java JDK dabei hätte und zumindestens Java Grundkenntnisse mitbringen würde.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Build your own IoT Cloud! [GER]

Christian Götz & Dominik Obermaier | dc-square

!

!

Bau deine eigene IoT Cloud

Page 2: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Wer sind wir?

CHRISTIAN GÖTZ @goetzchr

DOMINIK OBERMAIER @dobermai

Page 3: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

dc-square

HiveMQ IoT Beratung

V

Workshops & Schulung

s

HiveMQ Plugin Entwicklung

p

Page 4: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Architektur einer IoT Plattform

Implementieren eines Prototypen

Ziel des Workshops

Page 5: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Endergebnis

Page 6: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Was jeder installiert haben sollte

• Java JDK 7 • Java IDE (IntelliJ, Eclipse, Netbeans, vi, …) • GIT • Maven • HiveMQ 2.0.2 • MySQL Datenbank • MySQL Datenbankviewer • Aktueller Webbrowser

Entwicklungumgebung

%%

%%

%%

%

%

Page 7: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

https://github.com/dc-square/build-your-own-iot-cloud-

workshop

GIT Repositoryclone

oder USB-Stick

Page 8: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

IoT Cloud Platform

Page 9: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Internet der Dinge

Page 10: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Technologie die Geräte über Kabel oder Drahtlos vernetzt

Page 11: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

IoT Cloud PlatformKomponenten

NDevice Management

Configure,  Update  Firmware,  Monitor,  Sta6s6cs

tData Storage

Datenbank  mit  historische  Daten

(Administration & Betrieb

Web  UI,  Einfache  Bedienung

USecurity

Transportsicherheit,  Authen6fizierung,  Autorisierung

JIdentity Management

User,  Devices

GLive Daten von Sensoren

HTTP,  MQTT,  CoAP,  …

yIoT Cloud

Page 12: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

IoT Cloud PlatformKomponenten, die wir heute benutzen

NDevice Management

Configure,  Update  Firmware,  Monitor,  Sta6s6cs

tData Storage

MySQL  Datenbank  mit  REST  API

(Administration & Betrieb

Web  UI,  Einfache  BedienungSecurity

Transportsicherheit,  Authen6fizierung,  Autorisierung

JIdentity Management

User,  Devices

GLive Daten von Sensoren

HTTP  und  MQTT

yIoT Cloud

U

Page 13: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Eclipse Paho, HTTP

Geräte

!

GOAL IoT Platform

Prototyp

3

TechnologienPrototyp

HiveMQ MQTT Broker

Dropwizard REST API

HTML/JS Web App

Page 14: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Eclipse Paho, HTTP

Geräte

TechnologienGeräte

Wetterstationen liefern Live Daten per Push (MQTT)➡ Simula6on  der  WeNersta6onen  

mit  Eclipse  Paho

manche Geräte liefern Daten per HTTP

Page 15: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

HiveMQ MQTT Broker

TechnologienHiveMQ

Austausch von Daten zwischen Geräten

Persistieren der Daten in die Datenbank

Page 16: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Dropwizard REST API

TechnologienDropwizard

Historische Daten zur Verfügung stellen

eingehende POST Requests an HiveMQ weiterleiten

Page 17: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

HTML/JS Web App

TechnologienWebapp

Anzeige von Live Daten über MQTT

Anzeige von historischen Daten über REST API

Page 18: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Teil 1: Geräte MQTT, HTTP

Page 19: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Protokoll des

Internets

GET, POST, PUT, DELETE

Server/Client

Request/Response

HTTP

HTTPFakten

Page 20: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

HTTPVorteile/Nachteile

XPolling

Xnicht bidirektional

XHeader ist verbose

W Bekannt und Bewährt

XKeine Garantien

XStateless

Page 21: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

MQTTKurzübersicht

Einfach

Connect,  Publish,  Subscribe,  Unsubscribe,  Disconnect

Messaging Protokoll

Austausch  von  Nachrichten,  teilweise  Queuing

basiert auf TCP

Port  1883

Publish/Subscribe

Clients  abonnieren  auf  Topics  auf  denen  andere  Clients  Nachrichten  veröffentlichen

Minimaler Overhead

teilweise  nur  2  Byte  

Ausgelegt für unstabile Netze

individuelle  Garan6en  möglich  für  jede  Nachricht

Page 22: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

MQTT HistoryTimeline

Entwickelt IBM/Arccom

1999Eclipse IoT (M2M)

2013

MQTT released royalty free

2011OASIS Standard

2014

2015b

Page 23: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

1iotcloud/device1

einfacher Topic

2iotcloud/device1/temp

einfacher Topic

3iotcloud/+/temp

Single Wildcard

4iotcloud/#

Multi-level Wildcard

MQTT - TopicsFeature

Page 24: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

genau einmal QoS  2

zumindest einmal QoS  1

bestenfalls einmal QoS  0

Siche

rheit

, das

s die

Nachr

icht a

nkom

mt

MQTT - Quality of ServiceFeature

Page 25: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

MQTT - LWTFeature

1connect

LWT Topic: iotcloud/device1/status Message: offline

Device 1 HiveMQ

2connack

ok

3publish

Message Topic: iotcloud/device1/status Message: offline

4offline

LWT Message Topic: iotcloud/device1/status Message: offline

Page 26: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

MQTT - Retained MsgFeature

2publish

Message Topic: iotcloud/device1/temp Message: 23.45

Device 1 HiveMQ

1publish

Message Topic: iotcloud/device1/temp Message: 23,45

5s

Device 2 HiveMQ

1subscribe

Message Topic: iotcloud/+/temp

Ohne Retained 0-5s

Mit Retained sofort!

Page 27: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

MQTT over WebsocketsFeature

Page 28: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

MQTT BrokerKurzübersicht

Herzstück von MQTT

Versenden der Nachrichten an Clients

Benutzt nur Topics

Topics sind dynamisch

Benutzerdefinierte Funktionen

MQTT Broker

Page 29: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

MQTT GUI Tools MQTT.fx 0.0.7

Page 30: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

http://www.jensd.de/wordpress/?p=1423

Page 31: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

MQTT GUI Tools MQTT spy 0.0.6

Page 32: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Timeline

https://code.google.com/p/mqtt-spy/

Page 33: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

MQTT CMD Tools mosquitto_pub/_sub

Page 34: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

$ mosquitto_pub -h broker.mqttdashboard.com -t iotcloud/test -m “test” -q 1 !http://mosquitto.org/man/mosquitto_pub-1.html

— !

$ mosquitto_sub -h broker.mqttdashboard.com -t iotcloud/test !http://mosquitto.org/man/mosquitto_sub-1.html

Mosquitto ClientsPublish/Subscribe

Page 35: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

MQTT Libraries Eclipse Paho

Page 36: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Open Source

“Reference Implementation”

Many languages: Java, Javascript, Lua, C, C++, Go, Python

Active Community

JS Library uses MQTT over Websockets

Page 37: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

MQTT Libraries FuseSource MQTT Client

Page 38: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Open Source

3 API Styles

Automatic Reconnect

Maven Central

Less active Community

Page 39: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

MQTT + HiveMQHands-on

2

Subscribe auf Simulatorcode/0.1

Ü2

3

HiveMQ Beispielplugincode/0.2

Ü3

4

Reagieren auf einen Publishcode/0.3

Ü4

1

Ü1MQTT ausprobierencode/0.1

5

Ü5Publish in Datenbankcode/0.4

* Property File für Datenbankparameter * Alle 30s veröffentlichen wie viele

Einträge in der Datenbank sind

Page 40: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Übung 1MQTT ausprobieren

STEPS

HiveMQ  starten Unix: /bin/run.sh Win: run.bat starten

Websocket  Client mqtt-websocket-client/index.html öffnen

Verbinden Verbinden Erfolgreich wenn HiveMQ ClientId ausgibt

Subscribe Subscribe zu einfachem Topic Subscribe zu Wildcard Topic

Publish Publish von Nachrichten auf verschiedenen Topics

0.1

Version

Page 41: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Übung 2Simulator benutzen und Daten von Gerät 2 empfangen

STEPS

HiveMQ  starten Unix: /bin/run.sh Win: run.bat starten

Websocket  Client mqtt-websocket-client/index.html öffnen

Verbinden Verbinden Erfolgreich wenn HiveMQ ClientId ausgibt

Subscribe Herausfinden auf welchem Topic Gerät 2 schickt

Simulator  starten simulator in Java IDE öffnen Ausführen von DeviceSimulator0.1

Version

Page 42: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Teil 2: MQTT Broker HiveMQ

Page 43: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

MQTT Broker

Hochskalierbarer MQTT Broker

>  100.000  Verbindungen    

Offenes Plugin System

Einhängen  von  benutzerdefinierter  Logik,  Integra6on  in  bestehende  Systeme

Cloud ready

Amazon  Web  Service,  Microso`  Azure,    Own  Datacenter

Implementiert den MQTT Standard

Gleichzei6ges  Verbinden  von  MQTT  Clients  der  Version  3.1.1  und  3.1  möglich

Sicherheit

TLS  Verschlüsselung,    X.509  Zer6fikate,    Benutzerdefinierte  und  feingranulare  Authen6fizierung  und  Autorisierung  

Einfache Benutzung und Betrieb

$SYS  Topics,  Ausführliche  Dokumenta6on,  Monitoring  über  JMX  und  Graphite  

Page 44: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Plugin SystemHands-on

Inject everything!Steigert  die  Testbarkeit!

Callback bekannt machenCallback  muss  hier  registriert  werden,  ansonsten  wird  er  nicht  ausgeführt

Don’t block in a Plugin. Never.Andere  Threads  benutzen

Apache Configuration SupportEinfach  Config  Files  erstellen  und  

automa6sch  nachladen

Dependency Injection

Callback Registry

Configuration Files

Don’t block

Plugin System

Page 45: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

MQTT Lowlevel

Plugin CallbacksEinhängen von benutzerdefinierter Logik

Broker Events

Others

MQTT Message

Security1

2

3

4

5

Client Connect, Client Publish/Subscribe, After Login,

Connect, Publish, Subscribe, Unsubscribe, Disconnect

Scheduled

Start, Stop, Statistiken aktualisiert

PubAck, PubRel, PubComb, Ping, …

Page 46: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

• HiveMQ SPI • Vorraussetzung um entwickeln zu können

• Maven Plugin • Plugin mit HiveMQ starten • Debuggen im Server/Client Modus

• Assembly Plugin • Erstellung eines auslieferbaren Archiv

• JavaDoc

Plugin EntwicklungTools für den Entwickler

Page 47: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

HiveMQ MQTT Broker

TechnologienHiveMQ

Austausch von Daten zwischen Geräten

Persistieren der Daten in die Datenbank

Page 48: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Übung 3Plugin mit HiveMQ starten

STEPS

hivemq-­‐pluginhivemq-plugin in Java IDE öffnen

HiveMQ  starten HiveMQ mit Plugin über Maven package starten Profil RunWithHiveMQ aktivieren

HiveMQ  Pfad Ordner von HiveMQ in pom.xml setzen

0.2

Version

Page 49: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Übung 4Benutzerdefinierte Logik für Publish

STEPS

hivemq-­‐pluginhivemq-plugin in Java IDE öffnen

HiveMQ  starten HiveMQ mit Plugin über Maven package starten Profil RunWithHiveMQ aktivieren

HiveMQ  Pfad Ordner von HiveMQ in pom.xml setzen

0.3

Version

OnPublish Ausgabe auf der Console von ClientId, Topic und Nachricht

Page 50: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Übung 5Schreiben in die Datenbank

STEPS

hivemq-­‐pluginhivemq-plugin in Java IDE öffnen

HiveMQ  starten HiveMQ mit Plugin über Maven package starten Profil RunWithHiveMQ aktivieren

HiveMQ  Pfad Ordner von HiveMQ in pom.xml setzen

0.4

Version

OnPublish ClientId und Payload in Datenbank schreiben

OnStart Datenbankverbindung aufbauen

Page 51: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

• Connection Pool für Datenbankverbindung • JDBC in extra Thread • ORM-Framework einsetzen • Authentifizierung und Autorisierung der Clients • Transportverschlüsselung über TLS

VerbesserungenHiveMQ Plugin

Page 52: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Teil 3: REST API Dropwizard

Page 53: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Dropwizard REST API

TechnologienDropwizard

Historische Daten zur Verfügung stellen

eingehende POST Requests an HiveMQ weiterleiten

Page 54: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

REST RessourcenIoTCloud

GET/sensor-data Alle  Werte

POST /sensor-data/{device1}Aktueller  Wert

GET/sensor-data/{device1} Alle  Werte  des  jeweiligen  Geräts  parameterisiert

Format: JSON

Page 55: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

DropwizardKurzübersicht

“Produktiv einsatzbereite, hochskalierbare REST API”

Ausgerichtet auf den einfachen Betrieb

Modulbasiert mit vielen mitgelieferten Modulen

Page 56: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Jersey

Technologien

JacksonHTTP REST JSON

powered bymetrics

Dropwizard

Page 57: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Getting StartedDropwizard

Configuration yaml

+ class

Ressourcen classes

Starten server config.yml

Page 58: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Übung 6Erstes Dropwizard Projekt

STEPS

Projekt  öffnenrest-api in Java IDE öffnen

Projekt  ausführen Run Configuration IoTCloudApplication server iotcloud.yml

0.5

Version

HelloWorld HelloWorld Ressource im Webbrowser aufrufen

Page 59: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Übung 7GET /sensor-data

STEPS

Projekt  öffnenrest-api in Java IDE öffnen

Datenbank Datenbank anlegen mit create.sql Beispieldaten importieren exmple-data.sql

0.6

Version

Vorbereiten SensorDataItem POJO anlegen Datenbankverbindung herstellen ( JDBC)

Ressource Daten aus Datenbank holen Zurückgeben einer Liste von SensorDataItems

Page 60: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Übung 8JDBI statt JDBC

STEPS

Projekt  öffnenrest-api in Java IDE öffnen

KonfiguraMon Datenbankparameter in iotcloud.yml

0.6

Version

Vorbereiten JDBI initialisieren Mapper

Ressource Interface DAO mit SQL Query schreiben Zurückgeben einer Liste von SensorDataItems

Page 61: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

• Caching einbauen • Datenbankverbindung mit ConnectionPool • ORM Framework einsetzen (JDBI, Hibernate) • Authentifizierung, Autorisierung • Mehrere Ressourcen • Transportverschlüsselung mit TLS

VerbesserungenHiveMQ Plugin

Page 62: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Teil4: WebUI Erster Test für die IoT Cloud

Page 63: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

WebUIHiveMQ Plugin

Live Daten über MQTT

Historische Daten über REST

Page 64: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Übung 9WebUI Ausliefern

STEPS

Projekt  öffnenrest-api in Java IDE öffnen

Assetbundle Assetbundle konfigurieren

0.7

Version

webapp webapp in asset Ordner kopieren

Dropwizard starten und localhost:8080/asset öffnen

Page 65: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Zusammenfassung

Page 66: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

IoT Cloud PlatformKomponenten

NDevice Management

Configure,  Update  Firmware,  Monitor,  Sta6s6cs

tData Storage

Datenbank  mit  historische  Daten

(Administration & Betrieb

Web  UI,  Einfache  Bedienung

USecurity

Transportsicherheit,  Authen6fizierung,  Autorisierung

JIdentity Management

User,  Devices

GLive Daten von Sensoren

HTTP,  MQTT,  CoAP,  …

yIoT Cloud

Page 67: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Ausblick

Page 68: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Welche Herausforderungen sind noch zu lösen?

SecurityAuthen6fizierung,  Autorisierung

Mehr ProtokolleCoAP,  XMPP,  …

Device ManagementÜberwachen  der  Geräte

Skalierbarkeit, Verfügbarkeit

HiveMQ  und  Dropwizard  sind  skalierbar

Christian Götz/Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Page 69: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

Danke!

Page 70: Build your own IoT Cloud! [GER]

Christian Götz / Dominik Obermaier - Bau dir deine eigene IoT Cloud github / mail / website

IoT Con HiveMQ Special

http://www.hivemq.com/iot-con-special-2014/