Cloud Messaging is one of the most critical elements at the core of any Internet of Things and Industrial Internet application. The degree of efficiency and connectivity provided by the cloud messaging technology usually drives the overall efficiency and reach of the entire system.
Vortex Cloud is a Cloud Messaging implementation that targets public as well as private clouds and enables embedded, mobile, web, enterprise and cloud applications to efficiently and securely share data across the Internet. Vortex Cloud has been designed ground up to address easy of connectivity, wire-efficiency, scalability, elasticity and security.
This presentation will (1) introduce the Vortex Cloud architecture and explain how it provides elasticity and fault-tolerance, (2) explain the different deployment models supported for public-cloud, private-cloud and no-cloud (3) get you started developing a simple Internet of Things Application.
Six Myths about Ontologies: The Basics of Formal Ontology
Building and Scaling Internet of Things Applications with Vortex Cloud
1. Building and Scaling Internet
of Things Applications
with
Angelo
Corsaro,
PhD
Chief
Technology
Officer
angelo.corsaro@prismtech.com
- Cloud
2. CopyrightPrismTech,2014
Cloud Messaging is a key architectural element at the foundation of any Internet
of Things (IoT) and Industrial Internet (I2) Systems
As the architectural element providing connectivity, its time and space efficiency,
elasticity, and fault-tolerance is key in operating and scaling Internet of Things
and Industrial Internet Applications
Cloud Messaging
7. CopyrightPrismTech,2014
One Standard, One set of Tools, One Goal — Ubiquitous Data Sharing
The Vortex Platform
VORTEX
Web
VORTEX
Lite
VORTEX
Gateway
VORTEX
Cloud
Private
Clouds
VORTEX
Tools
• Insight
• Record/Replay
• Tuner
• Tester
• Configurator
OpenSplice
Enterprise
VORTEX
Café
13. CopyrightPrismTech,2014
At its core, Vortex-Cloud is made by two
building blocks:
Discovery Service: Deals with
transparently mediating and scaling
the match between applications as well
as establishing connectivity
Routing Service: Efficiently and
scalable mediates the communication
between DDS applications
Discovery and Routing Services
Discovery
Service
Routing
Service
14. CopyrightPrismTech,2014
The Discovery service, is an elastic and fault tolerant service that:
Controls access to information
Matches DataReaders and DataWriters while minimising the discovery
information propagated to end applications
Establish the optimal communication path between communicating end-points
Manages and load-balance the Routing Service instances
For a generic DDS application, the Discovery Service is completely transparent
Discovery Service
36. CopyrightPrismTech,2014
The Routing service, is an elastic and fault tolerant service that:
Efficiently routes information from producer to consumers
Provides configurable decoupling between producing and consuming
applications
For a generic DDS application, the Routing Service is completely transparent
Routing Service
48. CopyrightPrismTech,2014
Through configuration, Vortex Cloud can be used in a wide cast of deployment
scenarios. The main deployment cases can be classified as:
Single or Multi site (region) IaaS deployment
Federated Deployment
In-System Deployment
Deployment Scenarios
49. CopyrightPrismTech,2014
In IaaS deployments Vortex-Cloud is deployed on a private or public IaaS infrastructure such
as:
- Amazon EC2
- Linode
- Digital Ocean
- Google Cloud Platform
- Microsoft Azure
- …
Vortex-Cloud can be deployed as a single instance or federated across IaaS regions or even
providers (e.g. spanning across Linode and EC2)
IaaS Deployment
53. CopyrightPrismTech,2014
IaaS deployment is straight forward
First you need to decide how many
Discovery and Routing service
instance to run — You need two
instance of each to ensure fault-
tolerance
Then you simply need to start the
instance with the proper transport
and end-point configuration
IaaS Deployment Configuration
Discovery
Service
Routing
Service
54. CopyrightPrismTech,2014
Deployment of a Vortex-Cloud instance on a Linode server 88.80.185.102:
Example Configuration
java
-jar
-Dlog.level=INFO
-Dcloud.discovery.user.tcp.port=7400
-Dcloud.discovery.user.externalNetworkAddresses=88.80.185.102:7400
-Dcloud.discovery.services.tcp.port=6400
discovery-service.jar
java
-jar
-Dlog.level=INFO
-Dcloud.routing.user.tcp.port=5000
-Dcloud.routing.user.externalNetworkAddresses=88.80.185.102:5000
-Dcloud.routing.services.tcp.port=5005
-Dcloud.routing.services.tcp.peers=88.80.185.102:6400
routing-service.jar
55. CopyrightPrismTech,2014
Federated deployment allows to efficiently exchange data between systems
without relying on a centralised IaaS infrastructure
This deployment can be thought-of as if the servers typically available on a IaaS
platform were to be deployed on the edge of the systems being integrated
Another way of looking at this deployment is as a special kind of multi-site
private cloud deployment in which a single instance of Vortex-Cloud is
configured to span multiple sites
Federated Deployment
57. CopyrightPrismTech,2014
The federated deployment makes it possible to isolate and decouple subsystems
along to transparently integrate them
Sub-systems can take advantage of multicast, while communication among Vortex
Cloud can be carried over unicast (either UDP/IP or TCP/IP)
Federated deployment can be used to transparently connect to a Vortex-Cloud
instance deployed on a IaaS an entire subsystem
Deployment Options
59. CopyrightPrismTech,2014
Management of Vortex-Cloud instances will be fully supported through Vortex-
Insight
In Vortex v1.0 a command line tool is available to inspect the status of an
instance of Vortex Cloud
- Discovered DataReader and DataWriters
- Discovery Service Instances
- Routing Service Instances
- Routes
Vortex Cloud Management
65. CopyrightPrismTech,2014
Vortex enable seamless, ubiquitous, efficient and timely data sharing across
mobile, embedded, desktop, cloud and web applications
It is the first platform to address the data-sharing needs of Business Critical IoT,
and Industrial Internet Systems
Vortex is fully interoperable with DDS compliant implementations
Concluding Remarks