DevoxxFR 2024 Reproducible Builds with Apache Maven
Devoxx 2014 presentation
1. Rapid internet of things prototyping
using Node.js, Nodered and
CloudFoundry
• Yves Debeer, Eric Cattoir
• IBM
#DV14 # #DBVlu1e4m #ixYourTag @ Y@oyuvreTswditetebreHear n@dlCeattoirEric
2. Agenda
● Overview
● Device Hardware
● Development Environment
● Client Implementation
● Server Side
● Mobile App
#DV14 #Bluemix @yvesdebeer @CattoirEric
3. Agenda
● Overview
● Device Hardware
● Development Environment
● Client Implementation
● Server Side
● Mobile App
#DV14 #Bluemix @yvesdebeer @CattoirEric
7. Agenda
● Overview
● Device Hardware
● Development Environment
● Client Implementation
● Server Side
● Mobile App
#DV14 #Bluemix @yvesdebeer @CattoirEric
8. IBM DevOps Services
1. Agile development, tracking, reporting & Team collaboration
2. Use your favorite tool or Web IDE
Monitor
and Optimize
6.Multi-stage deployment
8. Automated feedback loop
Mobile
Quality
7. Application Performance Management and
monitoring
Web IDE
Hosted Git
Sublime
Jazz SCM
4. Continuous Integration with Jenkins (multi-tenant)
Automated
Deployment
Monitoring
& Analytics
Agile
Planning
Continuous
Integration
Develop
and Test
Plan
and Measure
DevOps
Services
Release
and Deploy
AppScan
5.Security Scanning (June-Beta)
#DV14 #Bluemix @yvesdebeer @CattoirEric
9. IBM Devops Services
● DevOps Solution in the cloud for
building Optimized for use with
BlueMix
● Integrated task tracking, agile planning,
source control with auto deploy
● Use your favorite tools or work from
the Web IDE
● Hosted Jazz SCM or Git or link to
GitHub
● Continuous Integration and
Deployment
#DV14 #Bluemix @yvesdebeer @CattoirEric
10. Agenda
● Overview
● Device Hardware
● Development Environment
● Client Implementation
● Server Side
● Mobile App
#DV14 #Bluemix @yvesdebeer @CattoirEric
11. NodeRed and Internet of Things
● Browser-based UI for creating flows of
events and deploying them to the runtime.
● Light-weight runtime built in node.js, is ideal
for edge-of-network environments or
running in the cloud.
● It can be easily expanded to take add new
nodes to the palette – taking full advantage
of the node package manager(npm)
ecosystem
● Runs on various hardware (i.e Rasberry PI)
#DV14 #Bluemix @yvesdebeer @CattoirEric
12. Nodered – IBM Opensoure Research Project
● Released on GitHub September 2013
(Apache 2 License)
– http://nodered.org - main site
– http://flows.nodered.org
● Recently launched online flow library
● Encourages sharing and reuse of flows
within the community
#DV14 #Bluemix @yvesdebeer @CattoirEric
13. Custom Nodes to access Tinkerforge Hardware
● Requires Javascript implementation + HTML config info
● TinkerConfigNode
– Sets up ip connection to Tinkerforge microcontroller
● DisplayNode
– Write information to LCD Display
● SensorNode
– Read information from Sensors
– Writes message to MQTT
#DV14 #Bluemix @yvesdebeer @CattoirEric
16. Agenda
● Overview
● Device Hardware
● Development Environment
● Client Implementation
● Server Side
● Mobile App
#DV14 #Bluemix @yvesdebeer @CattoirEric
17. IBM Bluemix
● Run your Applications
– Choice of runtimes
● Devops as a Service
– Use Web Base Tools
– Connect your own
● API's and Services
– IBM, Partner Provided,
Open source
#DV14 #Bluemix @yvesdebeer @CattoirEric
18. Catalog of Services
Security
Services
Big Data
services
Database
services
Web and
application
services
Cloud
Integration
Services
Mobile
Services
Internet of
Things
Services
Watson
Services
DevOps
Services
#DV14 #Bluemix @yvesdebeer @CattoirEric
21. IOT Service used as Server Side Solution
● Based on MQTT
– MQTT == MQ Telemetry Transport
– The MQTT specification is open and royalty free for ease of
adoption
● Open-source implementations available
● A Publish Subscribe messaging protocol
– Reliable messaging over low bandwidth, high latency unreliable
networks
#DV14 #Bluemix @yvesdebeer @CattoirEric
36. Information Links
● nodered.org - @NodeRED
● Internet of Things Cloud - @IBMIoT
● Bluemix @IBMBluemix
● MobileFirst @IBMMobile
#DV14 #Bluemix @yvesdebeer @CattoirEric
Notes de l'éditeur
Bluemix is built on top of IBM’s infrastructure as a service offering - SoftLayer. It embraces Cloud Foundry as an open source platform as a service and extends it with IBM, third party, and community built services.
Explain Diagram (verbs in blue - please use this terminology)
Start by Pushing your code through Cloud Foundry
Cloud Foundry interprets which language you’ve used and associates your code to the appropriate runtime - now you have a working app (layer above runtimes).
Your app can
Pull prebuilt services (IBM, 3rd party, or community built) in from the marketplace and utilize their functionality
Connect to traditional IT - aka “Your Systems” with a secure connector
Connect to other clouds that you utilize with a secure connector
All of this sits on infrastructure (networking, storage, servers) hosted by IBM Softlayer (IBM’s IaaS cloud offering)
Finally - when your app is built and ready to go, it can be accessed by anything with a web browser and a connection to the internet, a smartphone app (via the Bluemix SDK) to utilize backend services, or another type of app or system (via an API you create).