kura an osgi-basedapplication framework for multi-services ... · m2m distributed systems business...

21
KURA an OSGi-based Application Framework for Multi-Services Gateways Introduction & Technical Overview Pierre Pitiot Grenoble 19 février 2014

Upload: others

Post on 23-Jul-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

KURA an OSGi-based Application Framework

for Multi-Services Gateways

Introduction & Technical Overview

Pierre Pitiot

Grenoble 19 février 2014

Page 2: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

Multi-Service Gateway ApproachESF / Increasing Value / Minimizing TCO

Page 3: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

The M2M Integration PlatformM2M Distributed Systems

Business Applications

Multi-ServiceGateway

M2MIntegrationPlatform

Integrate

+

Act

+

Connect

+

Collect & Integrate

M2M Protocol

@

Standard Interfaces

Standard Interfaces

Page 4: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

Simple integration into business applicationsREST APIsMQTT/HTTP BridgeReal-Time APIsGoogle Charts Visualizations Data Exports

Real-Time AnalyticsAdvanced Data PatternsEvent processingAlerts & Actions

Historical DataAggregated QueriesRedundant Elastic Storage

Open Transport & PayloadDevice InitiatedBandwidth OptimizedPublish & SubscribeSecure & Dedicated

Java Application FrameworkModular Protocol SupportDevice ManagementHardware AbstractionDriver Hardware Support

The M2M Integration PlatformThe Basic Functionality

Business Applications

Multi-ServiceGateway

M2MIntegrationPlatform

Integrate

Act

Store

Connect

Collect & Integrate

Page 5: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

The M2M Integration PlatformImplementing a full “M2M Software Stack”

Business Applications

Multi-ServiceGateway

M2MIntegrationPlatform

Application SoftwareFramework

Operating System

M2M Platform Client

Communication / Broker

Data Management Layer

API`s & Integrations

Data Store Layer

M2M Protocol

Integrate

Act

Store

Connect

Collect & Integrate

Page 6: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

Connect

• Open Standard Protocol with Open Standard Payload Format

• Device-initiated connection

– No need to open ports into your network

– Based upon TCP/IP

– Zero-Configuration

• Persistent Socket

– Extremely Low latency, high real-time

– Light-weight asset tracking through built-in Device Connection monitoring

• Bandwidth and Retries

– 2-bytes overhead per package

– QoS levels

– Data Agnostic

– Recommended EDC Payload with efficient serialization

Communicate

Page 7: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

Connect

• Publish and subscribe

– Decoupling the data producers from application consumers

– Application does not need to know detailed device topology

– Hierarchical Namespace

– One-to-many message distribution

• Secure

– SSL with Trusted Authority Certificates

– Authenticated access

– Two firewalls

• Dedicated

– One dedicated Broker instance per tenant

• Device Application Development (ESF)

– Modular, 100% Java, OSGi-based Application framework

– Flexible Data Publishing Policies

– Local Data Persistence to survive network drops

– Simple C++/Java/… clients

Manage

Page 8: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

Store

• Storage is realized using a combination of SQL for device/user managment, dataplan managment and NoSQL databases for device data

• Flexible:

– Aggregates data along the hierarchical namespace

– Allows queries by time ranges, topic, device, metrics

– Can store binary data

• Secure and Available

– guarantees tenant isolation at the storage level

– Highly available with built-in failover mechanism

– Database redundant and replicated across data centers

– NoSQL database is optimized for large volume inserts

Page 9: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

Act

• Dedicated Complex Event Processing Engine

• Declarative rules coded SQL-like language

• Can be created/updated at any point in time

• Complex Statistical Operations available (min, max, avg, stddev, vwap…)

• Continuous queries applicable to single data points, moving data windows (by time or numbers) on a single device or on an aggregate of the devices

• Parametrizable Event Triggering

– Alerts: SMS, Email, Twitter

– Application Integration: MQTT Messages towards devices, REST Calls towards IT Applications

Real-time Analytics

Page 10: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

The M2M Integration PlatformImplementing a full “M2M Software Stack”

Business Applications

Multi-ServiceGateway

M2MIntegrationPlatform

Application SoftwareFramework

Operating System

M2M Platform Client

Communication / Broker

Data Management Layer

API`s & Integrations

Data Store Layer

M2M Protocol

Integrate

Act

Store

Connect

Collect & Integrate

Page 11: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

Integrate

• Easy to use REST APIs for application integration

• Standard WADL resource file for API documentation

• Bidirectional MQTT to HTTP bridge to control devices through the REST APIs

• Asynchronous REST/Comet APIs for HTTP-based subscriptions on real-time streams of data

• XML and JSON payload formats

• Java and C++ ready-to-use libraries

• Rich set of publicly available examples and documentation

• Native support for Google Chart Tools to easily visualize acquired data into rich, live dashboards

Page 12: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

ModBUS

CanBUS

USB, Bluetooth

DB Service

Page 13: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

on

Java VM

OSGi Application Container

Field Protocols

Connectivity and Delivery

Ad

min

istr

ati

on

GU

I

Applications

Op

era

tio

n &

Ma

na

ge

me

nt

Gateway Basic Services

Network ConfigurationNetwork Management

ESF Functional BlocksDevice Abstraction

Device Abstraction

USBjavax.usb

OtherGPIO I2C

Ready to use OSGi bundles

exposing Java APIs for device

access and with the native code

dependencies pre-compiled.

Serialjavax.comm

Bluetoothjavax.bluetoothDevice Abstraction

Page 14: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

ESF Functional BlocksGateway Basic Services

on

Java VM

OSGi Application Container

Field Protocols

Connectivity and Delivery

Ad

min

istr

ati

on

GU

I

Applications

Op

era

tio

n &

Ma

na

ge

me

nt

Network ConfigurationNetwork Management

Device Abstraction

Gateway Basic Services

Gateway Basic Services

WatchdogService

ClockService

PositionService

DatabaseService

ProcessService

Device ProfileService

Configurable OSGi Services

available to the applications to

interact with the basic gateway

functionality.

Configuration Service

Page 15: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

ESF Functional BlocksNetwork Management

Network Management

Link Monitor

Ethernet

on

Java VM

OSGi Application Container

Field Protocols

Connectivity and Delivery

Ad

min

istr

ati

on

GU

I

Applications

Op

era

tio

n &

Ma

na

ge

me

nt

Gateway Basic Services

Device Abstraction

Network ConfigurationNetwork Management

WiFi Cellular

DHCP NAT DNS

Firewall

Configurable OSGi Services to

access the current network

configuration and administer it.

It interacts with the Linux system to

configure network interfaces

including WiFi access points and

PPP connections.

Page 16: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

ESF Functional BlocksConnectivity and Delivery

on

Java VM

OSGi Application Container

Field Protocols

Ad

min

istr

ati

on

GU

I

Applications

Op

era

tio

n &

Ma

na

ge

me

nt

Gateway Basic Services

Network ConfigurationNetwork Configuration

Device Abstraction

Connectivity and Delivery

Connectivity & Delivery

Eclipse Paho (MQTT) Other Client

Data Transport

Data Service

Cloud Service

Configurable OSGi Services which

greatly simplify the development of

telemetry M2M applications

interacting with a remote Cloud

server.

Page 17: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

ESF Functional BlocksOperation & Management

on

Java VM

OSGi Application Container

Field Protocols

Connectivity and Delivery

Ad

min

istr

ati

on

GU

I

Applications

Gateway Basic Services

Network ConfigurationNetwork Configuration

Device Abstraction

Op

era

tio

n &

Ma

na

ge

me

nt

Remote System Command

Remote Configuration Management

Operation & Management

Remote Software Updates

Remote Log Retrieval

Remote VPN Access

Page 18: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

ESF Functional BlocksField Protocols

Field ProtocolsField Protocols

ModBUS

CANBus

Fitness

Vending

Custom Protocol

on

Java VM

OSGi Application Container

Connectivity and Delivery

Ad

min

istr

ati

on

GU

I

Applications

Op

era

tio

n &

Ma

na

ge

me

nt

Gateway Basic Services

Network ConfigurationNetwork Configuration

Device Abstraction

Field Protocols

People Counter

Remote Serial Ports

Page 19: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

ESF Functional BlocksAdministration GUI

on

Java VM

OSGi Application Container

Field Protocols

Connectivity and Delivery

Applications

Op

era

tio

n &

Ma

na

ge

me

nt

Gateway Basic Services

Network ConfigurationNetwork Configuration

Device Abstraction

Ad

min

istr

ati

on

GU

I

Administration Web UI

Local SW Update

Device

Configuration

Dynamic Service

Configuration

Page 20: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

ESF Developer’s ExperienceDesigned from ground-up for developers

Emulate on PC Deploy on Target Cloud Managed

Start developing your M2M

application in the comfort of

your PC.

• Full Eclipse Integration

• Target Platform Definition

• Emulated Services

• Run/Debug from Eclipse

• Support Mac/Linux Hosts

When you are ready, deploy

your application on the

gateway.

• One-click Deployment

• Eclipse Plugin

• Remote Debugging

Provision your application to

field devices from the Cloud.

Manage your application

configuration and lifecycle

from a Cloud infrastructure.

No more field visits!

• Web-based Console

• REST API Integration

• Smart Alerts

Page 21: KURA an OSGi-basedApplication Framework for Multi-Services ... · M2M Distributed Systems Business Applications Multi-Service Gateway M2M Integration Platform Integrate + Act + Connect

www.eurotech.com

Thank You!