SlideShare a Scribd company logo
BUILDING OPEN SOURCE IOT CLOUD
Dejan Bosanac
WHO AM I?
Dejan Bosanac
•  Senior Software Engineer at Red Hat
•  Messaging and Integration background (ActiveMQ, Camel, Fabric8)
•  Focused more on messaging and backend for IoT lately
AGENDA
•  Describe typical IoT application
•  Describe all the components and common pitfalls
•  Introduce Eclipse IoT projects to the rescue
•  Kura
•  Hono
•  Kapua
•  Future
IOT APPLICATIONS
Devices
Cloud
Applications
IOT APPLICATIONS
Device	
Device	
Applica+on	
Device	 Applica+on	
Applica+on	IOT	Cloud
DEVICES
•  Everything from simple sensors to small computers
•  Connectivity
•  Some are IP enabled
•  Some have just near-range connectivity, like Bluetooth
•  Variety of network protocols used (MQTT, LWM2M,…)
•  Functions
•  Sensors – send data – temperature sensor
•  Actuators – control environment – A/C Unit
APPLICATIONS
•  Enterprise applications, micro-services and everything in between
•  Want to use data generated by devices
•  Want to control devices
•  Want to control the cloud environment … more about that in a minute
CLOUD
•  Connects devices and applications
•  Provides connectivity layer
•  Provides security layer
•  Provides device state
•  Handle device data
PITFALLS
•  Create a silo application
•  Hard to upgrade and maintain
•  Solution don't scale
•  Security is an afterthought
SOLUTION
•  Build well maintained open source stack
•  Scalable, secure and maintainable
•  Developers should focus on devices and applications
STACK
•  Device Gateway - Eclipse Kura - https://www.eclipse.org/kura/
•  IoT Connector – Eclipse Hono - https://projects.eclipse.org/projects/iot.hono
•  IoT Cloud – Eclipse Kapua - https://projects.eclipse.org/projects/iot.kapua
GATEWAY
DEVICE GATEWAY
•  Device IP onboarding
•  Data pre-processing
•  Control devices
•  Operational management
GATEWAY ARCHITECTURE
Data Center
Gateway
Application
Sensors
INSERT DESIGNATOR, IF NEEDED15
KURA ARCHITECTURE
KURA SERVICES
•  I/O Services – serial, Bluetooth, GPS, …
•  Data services - Store and forward data using MQTT, Apache Camel
•  Cloud services – request/reply
•  Configuration service – OSGi configuration
•  Web administration interface
KURA APPLICATION
•  OSGi Bundle
•  Deployed and managed by Kura
•  Using Kura APIs to communicate with devices and cloud
•  Apache Camel Integration
KURA APPLICATION
public void setCloudService(CloudService cloudService) {
cloudService = cloudService;
}
protected void activate(ComponentContext componentContext, Map<String, Object> properties) {
...
// Acquire a Cloud Application Client for this Application
cloudClient = cloudService.newCloudClient("greenhouse");
cloudClient.addCloudClientListener(this);
...
}
protected void doPublish() {
...
KuraPayload kuraPayload = new KuraPayload();
kuraPayload.addMetric("temperature", temperature);
cloudClient.publish("sensors", kuraPayload, DFLT_QOS, DFLT_RETAIN,DFLT_PRIORITY);
...
}
KURA CAMEL
public class MyKuraRouter extends KuraRouter {
@Override
public void configure() throws Exception {
from("timer://heartbeat").
setBody(constant("Hello")).
to("kura-cloud:myApplication/myTopic");
}
}
CONNECTOR
CONNECTOR
•  Messaging infrastructure that connects gateways and applications
•  Eclipse Kura uses MQTT
•  Usually combined with message brokers like Apache ActiveMQ or Eclipse Paho
MQTT
•  OASIS standard (v3.1.1)
•  Created by IBM and Eurotech
•  Lightweight
•  Small network message
•  Simple protocol
•  Pub / Sub
•  Quality of Service
•  Connection failures
•  Very popular in IoT scenarios
LIMITATIONS
•  Scalability
•  Connections
•  Destinations
•  Security based on broker addresses
•  General purpose messaging
•  No message format
ECLIPSE HONO – GOALS
•  Tailored general messaging for IoT solutions
•  Solve recurring problems
•  Provide messaging APIs for common operations
•  Support multiple IoT protocols (MQTT, AMQP, LWM2M,…)
•  Support any underlying messaging infrastructure
•  JMS
•  Kafka
ECLIPSE HONO – FEATURES
•  Scalability
•  Multi-tenancy
•  Device-based security
•  Multi-protocol support
ECLIPSE HONO – APIS
•  AMPQ 1.0 based
•  Defines message formats coming in and out of Hono
•  Defines message exchange patterns
INSERT DESIGNATOR, IF NEEDED27
AMQP
•  International Standard (ISO/IEC ISO 19464)
•  Binary Protocol
•  Rich feature set:
•  conversation multiplexing
•  advanced flow control
•  Type system
•  QoS Guarantees
•  Symmetrical message exchange
•  No Broker required
INSERT DESIGNATOR, IF NEEDED28
AMQP
Message(
properties: {
correlation-id: 1,
to: "$management",
reply-to: "/myaddress"
},
application-properties: {
"name" -> "newQueue",
"operation" -> "CREATE",
"type" -> "org.example.queue"
},
application-data: AmqpValue(
Map(
"max_size" -> "2000Mb"
)
)
)
•  It is not a broker
•  It never owns a message
•  It propagates AMQP transfer, settlement and disposition frames between endpoints
•  Message based or link based routing
AMQP ROUTER
Router	
	
/device1	
/device2
INSERT DESIGNATOR, IF NEEDED30
AMQP ROUTER
•  It can be deployed in multiple router-broker-endpoint topology
•  Redundant paths
•  Benefits
•  Better scaling due to more focused tasks
•  Smart routing can be used to partition the traffic
•  Ideal candidate for gateway into the system
INSERT DESIGNATOR, IF NEEDED31
SCALABLE MESSAGING
•  Combination of brokers and routers provides powerful tool box
•  Brokers should focus on storing messages
•  Routers should do the rest
•  Allows for horizontal scaling topologies that can solve IoT challenges
ECLIPSE HONO- APIS
•  Telemetry
•  Command and Control
•  Device Registration
•  Device Lifecycle
ECLIPSE HONO – ARCHITECTURE
MQTT	
Device	
LWM2M
Device
AMQP
Device
HONO
Protocol	
Adapter	
Protocol	
Adapter	
Device
Management
Data	
Collec+on	
AMQP	
AMQP	
AMQP	
AMQP	AMQP
ECLIPSE HONO – ARCHITECTURE
•  Protocol Adapters
•  Stateless
•  Provide conversion to common protocols used in IoT
•  MQTT
•  LWM2M
•  HTTP/Rest
•  Clients – devices and Cloud services
•  Connects using AMQP using well defined APIs
ECLIPSE HONO – ARCHITECTURE
Client	
Client
Client
Router
Network
Hono	
Server	
Hono	
Server	
App
App	
Hono	
Server	
Brokers
ECLIPSE HONO – ARCHITECTURE
•  Hono server
•  Stateless – can be scaled
•  Validates message format
•  Does device-based authentication
ECLIPSE HONO – ARCHITECTURE
•  Router Network
•  Provide connection scalability
•  Routes AMQP messages through the system
•  Brokers
•  Any AMQP 1.0 compatible system
•  Used to save persistent messages
ECLIPSE HONO – TECHNOLOGY
•  Hono server
•  Vert.x + Qpid Proton
•  Spring Boot
•  Docker
• Scalable and Cloud Ready!
ECLIPSE HONO – TECHNOLOGY
•  Scalable messaging
•  Apache Qpid Dispatch Router
•  Apache ActiveMQ Artemis
• Scalable and Cloud Ready!
ECLIPSE KAPUA
ECLIPSE KAPUA – GOALS
•  Provide complete IoT Cloud solution
•  Define and Implement needed services
•  Ready to run
ECLIPSE KAPUA – ARCHITECTURE
ECLIPSE KAPUA – BACKHAND SERVICES
•  Data Management
•  Device Registry
•  Device Management
ECLIPSE KAPUA – FRONTEND SERVICES
•  Management Console
•  API Gateway
ECLIPSE KAPUA - IMPLEMENTATION
•  Micro-services oriented
•  Pluggable service locator
•  Single JVM
•  OSGi
•  Cloud Deployment
ECLIPSE KAPUA – 1.0
•  MQTT based
•  Apache ActiveMQ in the messaging layer
•  JDBC store for services
•  Elasticsearch for data store
•  Single VM deployment
FUTURE
INSERT DESIGNATOR, IF NEEDED47
INSERT DESIGNATOR, IF NEEDED48
FUTURE - KURA
•  More data pre-processing
•  BPM integration
•  AMQP support
•  Gateway support proxy
INSERT DESIGNATOR, IF NEEDED49
KAPUA
•  Micorservice implementation
•  Docker images
•  REST/AMQP APIs
•  Hono support
KAPUA + HONO
CONCLUSION
•  Together Kura, Hono and Kapua will be able to answer even the most challenging IOT demands
•  Lots of work ahead
•  Everything open source
•  Backed by big companies, like Red Hat, Eurotech, Bosch, …
•  Join the effort
THANK YOU
•  https://www.eclipse.org/kura/
•  https://projects.eclipse.org/projects/iot.hono
•  https://projects.eclipse.org/projects/iot.kapua

More Related Content

PDF
Open source IoT gateway
PDF
Iot gateway dream team - Eclipse Kura and Apache Camel
PDF
An Introduction to Eclipse Kura - Eclipse Day Florence 2014
PDF
Open source IoT gateway: Tale of Eclipse Kura, Apache Camel and Rhiot
PPTX
IoT Microservices at the Edge with Eclipse ioFog
PDF
Effective IoT System on Openstack
PPTX
Creating end-to-end IoT applications with Eclipse Kura & Solair IoT Platform
PDF
IoT Seminar (Oct. 2016) Juan Perez - Microsoft
Open source IoT gateway
Iot gateway dream team - Eclipse Kura and Apache Camel
An Introduction to Eclipse Kura - Eclipse Day Florence 2014
Open source IoT gateway: Tale of Eclipse Kura, Apache Camel and Rhiot
IoT Microservices at the Edge with Eclipse ioFog
Effective IoT System on Openstack
Creating end-to-end IoT applications with Eclipse Kura & Solair IoT Platform
IoT Seminar (Oct. 2016) Juan Perez - Microsoft

What's hot (18)

PDF
Eclipse Kura Shoot a-pi
PDF
End-to-end IoT solutions with Java and Eclipse IoT
PDF
Using Eclipse and Lua for the Internet of Things with Eclipse Koneki, Mihini ...
PPTX
Enabling IoT Devices’ Hardware and Software Interoperability, IPSO Alliance (...
PPTX
Web API Management meets the Internet of Things
PDF
Gateway Design with Eclipse Kura - Taking Kura to heights
PDF
Advanced MQTT and Kura - EclipseCON 2014
PPTX
Creator IoT Framework
ODP
Using open source for IoT
PDF
How the OSGi Residential Specifications can help to build an ecosystem for sm...
PPTX
Fiware, the future internet
PDF
Using Eclipse and Lua for the Internet of Things - EclipseDay Googleplex 2012
PDF
Secure IOT Gateway
PDF
Building the Internet of Things with Eclipse IoT - JavaLand 2014
PDF
Internet of Things - Advantech IoT Gateway Starter Kit
PDF
FIWARE Tech Summit - FIWARE IoT Agents
PDF
OMA LwM2M Workshop - Julien Vermillard, OMA LwM2M Projects in Eclipse Foundation
PDF
FIWARE Global Summit - Professional Dashboards for Dummies - Build Your Smart...
Eclipse Kura Shoot a-pi
End-to-end IoT solutions with Java and Eclipse IoT
Using Eclipse and Lua for the Internet of Things with Eclipse Koneki, Mihini ...
Enabling IoT Devices’ Hardware and Software Interoperability, IPSO Alliance (...
Web API Management meets the Internet of Things
Gateway Design with Eclipse Kura - Taking Kura to heights
Advanced MQTT and Kura - EclipseCON 2014
Creator IoT Framework
Using open source for IoT
How the OSGi Residential Specifications can help to build an ecosystem for sm...
Fiware, the future internet
Using Eclipse and Lua for the Internet of Things - EclipseDay Googleplex 2012
Secure IOT Gateway
Building the Internet of Things with Eclipse IoT - JavaLand 2014
Internet of Things - Advantech IoT Gateway Starter Kit
FIWARE Tech Summit - FIWARE IoT Agents
OMA LwM2M Workshop - Julien Vermillard, OMA LwM2M Projects in Eclipse Foundation
FIWARE Global Summit - Professional Dashboards for Dummies - Build Your Smart...
Ad

Similar to Building Open Source IoT Cloud (20)

PDF
Creating a Java Internet of Things Gateway
PDF
2016-09-eclipse-iot-cf-summit
PDF
Devoxx 2015 - Building the Internet of Things with Eclipse IoT
PDF
Device Management for OSGi IoT Gateways
PDF
Open Source Internet of Things 101 – EclipseCon 2016
PDF
Building the Internet of Things with open source and Eclipse IoT projects (Be...
PDF
Building the Internet of Things with Eclipse IoT - IoTBE meetup
PDF
Building the IoT - Coding Serbia 2015
PPTX
Eclipse IoT slide deck [MASTER DECK].pptx
PPTX
Eclipse IOT [IoT World Santa Clara]
PPTX
Developers’ mDay 2019. - Dejan Bosanac, Red Hat – Cloud scale IoT connectivity
PDF
Fundamental components of the Internet of Things unit 1.pdf
PDF
Messaging for IoT
PDF
Developer Day 2014 - 6 - open source iot - eclipse foundation
PDF
Messaging for IoT
PDF
Open-source IoT cookbook
PDF
IoT - Understanding internet of things
PDF
What's new at Eclipse IoT - EclipseCon 2014
PDF
Scaling out eclipse hono
PDF
MQTT – protocol for yours IoT
Creating a Java Internet of Things Gateway
2016-09-eclipse-iot-cf-summit
Devoxx 2015 - Building the Internet of Things with Eclipse IoT
Device Management for OSGi IoT Gateways
Open Source Internet of Things 101 – EclipseCon 2016
Building the Internet of Things with open source and Eclipse IoT projects (Be...
Building the Internet of Things with Eclipse IoT - IoTBE meetup
Building the IoT - Coding Serbia 2015
Eclipse IoT slide deck [MASTER DECK].pptx
Eclipse IOT [IoT World Santa Clara]
Developers’ mDay 2019. - Dejan Bosanac, Red Hat – Cloud scale IoT connectivity
Fundamental components of the Internet of Things unit 1.pdf
Messaging for IoT
Developer Day 2014 - 6 - open source iot - eclipse foundation
Messaging for IoT
Open-source IoT cookbook
IoT - Understanding internet of things
What's new at Eclipse IoT - EclipseCon 2014
Scaling out eclipse hono
MQTT – protocol for yours IoT
Ad

More from dejanb (7)

PDF
How is this sausage made
PDF
Messaging for the cloud
PPTX
Messaging for Web and Mobile with Apache ActiveMQ
PDF
Introduction to ActiveMQ Apollo
PPTX
Deploying FuseMQ with Fuse Fabric
PDF
Advanced messaging with Apache ActiveMQ
PPT
Apache ActiveMQ - Enterprise messaging in action
How is this sausage made
Messaging for the cloud
Messaging for Web and Mobile with Apache ActiveMQ
Introduction to ActiveMQ Apollo
Deploying FuseMQ with Fuse Fabric
Advanced messaging with Apache ActiveMQ
Apache ActiveMQ - Enterprise messaging in action

Recently uploaded (20)

PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
cuic standard and advanced reporting.pdf
PPTX
Big Data Technologies - Introduction.pptx
PDF
GDG Cloud Iasi [PUBLIC] Florian Blaga - Unveiling the Evolution of Cybersecur...
PPTX
Cloud computing and distributed systems.
PPTX
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....
PDF
Advanced IT Governance
PDF
solutions_manual_-_materials___processing_in_manufacturing__demargo_.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Empathic Computing: Creating Shared Understanding
PDF
Electronic commerce courselecture one. Pdf
PDF
KodekX | Application Modernization Development
PPT
Teaching material agriculture food technology
PDF
NewMind AI Weekly Chronicles - August'25 Week I
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Understanding_Digital_Forensics_Presentation.pptx
NewMind AI Monthly Chronicles - July 2025
cuic standard and advanced reporting.pdf
Big Data Technologies - Introduction.pptx
GDG Cloud Iasi [PUBLIC] Florian Blaga - Unveiling the Evolution of Cybersecur...
Cloud computing and distributed systems.
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....
Advanced IT Governance
solutions_manual_-_materials___processing_in_manufacturing__demargo_.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
The Rise and Fall of 3GPP – Time for a Sabbatical?
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
20250228 LYD VKU AI Blended-Learning.pptx
Empathic Computing: Creating Shared Understanding
Electronic commerce courselecture one. Pdf
KodekX | Application Modernization Development
Teaching material agriculture food technology
NewMind AI Weekly Chronicles - August'25 Week I

Building Open Source IoT Cloud

  • 1. BUILDING OPEN SOURCE IOT CLOUD Dejan Bosanac
  • 2. WHO AM I? Dejan Bosanac •  Senior Software Engineer at Red Hat •  Messaging and Integration background (ActiveMQ, Camel, Fabric8) •  Focused more on messaging and backend for IoT lately
  • 3. AGENDA •  Describe typical IoT application •  Describe all the components and common pitfalls •  Introduce Eclipse IoT projects to the rescue •  Kura •  Hono •  Kapua •  Future
  • 6. DEVICES •  Everything from simple sensors to small computers •  Connectivity •  Some are IP enabled •  Some have just near-range connectivity, like Bluetooth •  Variety of network protocols used (MQTT, LWM2M,…) •  Functions •  Sensors – send data – temperature sensor •  Actuators – control environment – A/C Unit
  • 7. APPLICATIONS •  Enterprise applications, micro-services and everything in between •  Want to use data generated by devices •  Want to control devices •  Want to control the cloud environment … more about that in a minute
  • 8. CLOUD •  Connects devices and applications •  Provides connectivity layer •  Provides security layer •  Provides device state •  Handle device data
  • 9. PITFALLS •  Create a silo application •  Hard to upgrade and maintain •  Solution don't scale •  Security is an afterthought
  • 10. SOLUTION •  Build well maintained open source stack •  Scalable, secure and maintainable •  Developers should focus on devices and applications
  • 11. STACK •  Device Gateway - Eclipse Kura - https://www.eclipse.org/kura/ •  IoT Connector – Eclipse Hono - https://projects.eclipse.org/projects/iot.hono •  IoT Cloud – Eclipse Kapua - https://projects.eclipse.org/projects/iot.kapua
  • 13. DEVICE GATEWAY •  Device IP onboarding •  Data pre-processing •  Control devices •  Operational management
  • 15. INSERT DESIGNATOR, IF NEEDED15 KURA ARCHITECTURE
  • 16. KURA SERVICES •  I/O Services – serial, Bluetooth, GPS, … •  Data services - Store and forward data using MQTT, Apache Camel •  Cloud services – request/reply •  Configuration service – OSGi configuration •  Web administration interface
  • 17. KURA APPLICATION •  OSGi Bundle •  Deployed and managed by Kura •  Using Kura APIs to communicate with devices and cloud •  Apache Camel Integration
  • 18. KURA APPLICATION public void setCloudService(CloudService cloudService) { cloudService = cloudService; } protected void activate(ComponentContext componentContext, Map<String, Object> properties) { ... // Acquire a Cloud Application Client for this Application cloudClient = cloudService.newCloudClient("greenhouse"); cloudClient.addCloudClientListener(this); ... } protected void doPublish() { ... KuraPayload kuraPayload = new KuraPayload(); kuraPayload.addMetric("temperature", temperature); cloudClient.publish("sensors", kuraPayload, DFLT_QOS, DFLT_RETAIN,DFLT_PRIORITY); ... }
  • 19. KURA CAMEL public class MyKuraRouter extends KuraRouter { @Override public void configure() throws Exception { from("timer://heartbeat"). setBody(constant("Hello")). to("kura-cloud:myApplication/myTopic"); } }
  • 21. CONNECTOR •  Messaging infrastructure that connects gateways and applications •  Eclipse Kura uses MQTT •  Usually combined with message brokers like Apache ActiveMQ or Eclipse Paho
  • 22. MQTT •  OASIS standard (v3.1.1) •  Created by IBM and Eurotech •  Lightweight •  Small network message •  Simple protocol •  Pub / Sub •  Quality of Service •  Connection failures •  Very popular in IoT scenarios
  • 23. LIMITATIONS •  Scalability •  Connections •  Destinations •  Security based on broker addresses •  General purpose messaging •  No message format
  • 24. ECLIPSE HONO – GOALS •  Tailored general messaging for IoT solutions •  Solve recurring problems •  Provide messaging APIs for common operations •  Support multiple IoT protocols (MQTT, AMQP, LWM2M,…) •  Support any underlying messaging infrastructure •  JMS •  Kafka
  • 25. ECLIPSE HONO – FEATURES •  Scalability •  Multi-tenancy •  Device-based security •  Multi-protocol support
  • 26. ECLIPSE HONO – APIS •  AMPQ 1.0 based •  Defines message formats coming in and out of Hono •  Defines message exchange patterns
  • 27. INSERT DESIGNATOR, IF NEEDED27 AMQP •  International Standard (ISO/IEC ISO 19464) •  Binary Protocol •  Rich feature set: •  conversation multiplexing •  advanced flow control •  Type system •  QoS Guarantees •  Symmetrical message exchange •  No Broker required
  • 28. INSERT DESIGNATOR, IF NEEDED28 AMQP Message( properties: { correlation-id: 1, to: "$management", reply-to: "/myaddress" }, application-properties: { "name" -> "newQueue", "operation" -> "CREATE", "type" -> "org.example.queue" }, application-data: AmqpValue( Map( "max_size" -> "2000Mb" ) ) )
  • 29. •  It is not a broker •  It never owns a message •  It propagates AMQP transfer, settlement and disposition frames between endpoints •  Message based or link based routing AMQP ROUTER Router /device1 /device2
  • 30. INSERT DESIGNATOR, IF NEEDED30 AMQP ROUTER •  It can be deployed in multiple router-broker-endpoint topology •  Redundant paths •  Benefits •  Better scaling due to more focused tasks •  Smart routing can be used to partition the traffic •  Ideal candidate for gateway into the system
  • 31. INSERT DESIGNATOR, IF NEEDED31 SCALABLE MESSAGING •  Combination of brokers and routers provides powerful tool box •  Brokers should focus on storing messages •  Routers should do the rest •  Allows for horizontal scaling topologies that can solve IoT challenges
  • 32. ECLIPSE HONO- APIS •  Telemetry •  Command and Control •  Device Registration •  Device Lifecycle
  • 33. ECLIPSE HONO – ARCHITECTURE MQTT Device LWM2M Device AMQP Device HONO Protocol Adapter Protocol Adapter Device Management Data Collec+on AMQP AMQP AMQP AMQP AMQP
  • 34. ECLIPSE HONO – ARCHITECTURE •  Protocol Adapters •  Stateless •  Provide conversion to common protocols used in IoT •  MQTT •  LWM2M •  HTTP/Rest •  Clients – devices and Cloud services •  Connects using AMQP using well defined APIs
  • 35. ECLIPSE HONO – ARCHITECTURE Client Client Client Router Network Hono Server Hono Server App App Hono Server Brokers
  • 36. ECLIPSE HONO – ARCHITECTURE •  Hono server •  Stateless – can be scaled •  Validates message format •  Does device-based authentication
  • 37. ECLIPSE HONO – ARCHITECTURE •  Router Network •  Provide connection scalability •  Routes AMQP messages through the system •  Brokers •  Any AMQP 1.0 compatible system •  Used to save persistent messages
  • 38. ECLIPSE HONO – TECHNOLOGY •  Hono server •  Vert.x + Qpid Proton •  Spring Boot •  Docker • Scalable and Cloud Ready!
  • 39. ECLIPSE HONO – TECHNOLOGY •  Scalable messaging •  Apache Qpid Dispatch Router •  Apache ActiveMQ Artemis • Scalable and Cloud Ready!
  • 41. ECLIPSE KAPUA – GOALS •  Provide complete IoT Cloud solution •  Define and Implement needed services •  Ready to run
  • 42. ECLIPSE KAPUA – ARCHITECTURE
  • 43. ECLIPSE KAPUA – BACKHAND SERVICES •  Data Management •  Device Registry •  Device Management
  • 44. ECLIPSE KAPUA – FRONTEND SERVICES •  Management Console •  API Gateway
  • 45. ECLIPSE KAPUA - IMPLEMENTATION •  Micro-services oriented •  Pluggable service locator •  Single JVM •  OSGi •  Cloud Deployment
  • 46. ECLIPSE KAPUA – 1.0 •  MQTT based •  Apache ActiveMQ in the messaging layer •  JDBC store for services •  Elasticsearch for data store •  Single VM deployment
  • 48. INSERT DESIGNATOR, IF NEEDED48 FUTURE - KURA •  More data pre-processing •  BPM integration •  AMQP support •  Gateway support proxy
  • 49. INSERT DESIGNATOR, IF NEEDED49 KAPUA •  Micorservice implementation •  Docker images •  REST/AMQP APIs •  Hono support
  • 51. CONCLUSION •  Together Kura, Hono and Kapua will be able to answer even the most challenging IOT demands •  Lots of work ahead •  Everything open source •  Backed by big companies, like Red Hat, Eurotech, Bosch, … •  Join the effort
  • 52. THANK YOU •  https://www.eclipse.org/kura/ •  https://projects.eclipse.org/projects/iot.hono •  https://projects.eclipse.org/projects/iot.kapua