This document discusses two ways to integrate an IBM i program with a Bluemix application using REST services. The first way uses WebSphere Application Server Liberty Profile to expose a REST service that calls the IBM i program. The second way uses Cast Iron Live to expose an API that calls a REST service behind the firewall, which is then consumed by a Cloud Integration Service in Bluemix. Both options allow developers to integrate existing IBM i assets with new applications in Bluemix.
2. The app revolution
Fundamentally changing the way we interact with technology.
Apps are everywhere
The quantity and usefulness of
web and mobile apps has led to
an “app revolution” among
consumers and businesses alike.
Experience matters
Customers and employees now
expect a delightful and
seamless experience across all
interactions with a business.
Cloud makes it possible
Apps today can be stitched
together quickly with pre-built
assets. Cloud makes the API
economy possible.
3. App development is about speed and choice
Seconds to
Deploy Friction
Failing
Fast
Free
Any
Language
Continuous
Integration
Mobile
Ready
Useful
APIs
Focus on
Code
Choice of
Tools
Developers’ expectations have evolved.
3
4. Today’s apps must keep up with the speed of the app revolution.
Core IT
Timing is critical…
4
Benefits
Fully customizable.
Few limitations.
Necessary for some solutions.
Existing Investments.
Time Commitment
Weeks to setup and deploy.
Maintenance/upgrades of
hardware and software.
~ Weeks ~ Days
Code
Data
Runtime
Middleware
OS
Virtualization
Servers
Storage
Networking
~ Minutes
Customer Managed
Time to initial deployment
5. Today’s apps must keep up with the speed of the app revolution.
5
Timing is critical…
Benefits
Most control in the cloud.
Necessary for some solutions.
Infrastructure managed by SP.
Infrastructure as a Service
Customer Managed
Service Provider Managed
~ Days
Time Commitment
Minutes to provision VM.
Time to configure software
and apps varies.
Maintenance/upgrades of OS,
middleware, runtime.
IBM SoftLayer
~ Minutes
Code
Data
Runtime
Middleware
OS
Virtualization
Servers
Storage
Networking
Core IT
~ Weeks
Time to initial deployment
6. Today’s apps must keep up with the speed of the app revolution.
6
Customer Managed Platform as a Service
Service Provider Managed
~ Minutes
IaaS
Benefits
Setup environments and
deploy apps very quickly.
Infrastructure and platform
managed by SP.
Time Commitment
Minutes to setup and deploy.
Focus on your apps and their
data.
Timing is critical…
~ Weeks
IBM Bluemix
~ Days
Time to initial deployment
Code
Data
Runtime
Middleware
OS
Virtualization
Servers
Storage
Networking
Core IT
7. Leverage the power of Bluemix without abandoning what you already use.
7
…so are all of your other investments
IaaS PaaS
Core IT
IBM Bluemix
8. USE CASE DESCRIPTION
The use case demonstrates how to access an IBM i program from a
web app.
The original program is an RPG program that allows to get the reseller
list using the area code.
We have implemented two different use cases, in order to show how to
integrate Bluemix Web App with an RPG program behind the firewall:
1.In the first case, using the WebSphere Application Server Liberty
Profile, we have exposed a REST service which calls, via IBM i
Toolbox library, the RPG program running on V7R1. The front-end
application is on Bluemix, using “Liberty for Java and it consumes the
REST service exposed via Internet.
2.In the second case, using Cast Iron Live we have exposed an API
that calls a REST service behind the firewall, through the Cast Iron
Secure Connector. The Cloud Integration Service on Bluemix,
consumes the REST service, leveraging Cast Iron Live. The front-end
application is on Bluemix using “Node.js”.
9. Case 1
Enrich an application
IBM i via Bluemix
with REST Services
10. What you need
• IBM i V7R1 + Toolbox for Java and JTOpen
• Bluemix app WAS Liberty
• Server WAS Liberty Profile v8.5
• Exspose the REST service via firewall
11. OPTION 1
Bluemix
WAS
Liberty
(DMZ)
IBM i
(IIC: 172.17.192.142)
War Application
Call IBM i via
Toolbox
(Intranet
Call)
Call servizio
REST
(Internet Call)
Firewall
NAPT
85.18.90.201:9080
INTERNET
Demo
http://cloudknow-italy-web.mybluemix.net/home.html
12. OPTION 2
Bluemix
IBM i
(IIC: 172.17.192.142)
WAS
Liberty
War
Application
Call servizio
REST
(Internet Call)
Firewall
NAPT
85.18.90.201:9080
INTERNET
13. Accelerate application delivery across Hybrid IT
Systems of
Record
Systems of
Hybrid Engagement
Composable
Services
Infrastructure
Services
High Velocity
BluemixTM
Traditional IT
• Data & Transactions
• App Infrastructure
• Virtualized Resources
• Expanding Interface Modalities
• Big Data and Analytics
• Social Networking
14. Accelerate application delivery across Hybrid IT with DevOps
Systems of
Record
Systems of
Hybrid Engagement
Composable
Services
Infrastructure
Services
High Velocity
BluemixTM
Traditional IT
Rational Developer for IBM i
Maintain/evolve
traditional
applications
Develop new
Front end
15. Case 2
Enrich an application
IBM i via
Bluemix Cloud Integration
16. What you need
• IBM i V7R1 + Toolbox for Java and JTOpen
• Server Linux con WAS Liberty Profile v8.5
+ Secure Connector Cast Iron Live
• Bluemix app con Node.js
+ Cloud Integration Service
17. Integrate on-prem data in a Bluemix application (1/2)
(172.17.192.142)
Was
Liberty
Cast Iron
connector
172.17.196.112
Customer firewall
Cast Iron studio
System integrator
1
2
3
1. Install Cast Iron agent on the
machine exposing the rest service
and connect it to the Cast Iron
Cloud service
2. Model the orchestrationto to
connect and map rest api/data
across the two endpoints ( Cast
Iron Cloud and Ubuntu node )
3. Export orchestration file and deploy
it to Cast Iron Cloud service
Dimostrazione http://demo-ibmi-node.mybluemix.net/
18. Integrate on-prem data in a Bluemix application (2/2)
(172.17.192.142)
Was
Liberty
Cast Iron
connector
172.17.196.112
Developer
Customer firewall
1. Develop the application requiring to access
on-prem data
2. Create Cloud integration add-on linking it to
the orchestration artifact previously
deployed on the Cast Iron Cloud service
3. Bind the application to the cloud integration
add-on
4. Test/run the applicaiton
5. (Optionally) updated orchestration plan
could be injected later on (no application
impact)
2
1
3
4
Cast Iron studio
System integrator
5
Notes de l'éditeur
Please note: Presenter notes are on every slide. Written as a suggested script to help with messaging.
Apps Are Everywhere
Over the last 5 or so years, we’ve experienced an “App Revolution” on the web, on our smartphones, in our cars, on wearable devices (like a NikeFuel band, Smart Watch, Google Glass), and in our homes.
Apps today allow interactions that we wouldn't have imagined 5 years ago. Architects can design homes on their iPads, merchants can swipe credit cards and accept payments anywhere with their phones, and runners can track their progress with a band on their wrist. Even my mother knows the phrase “there’s an app for that.”
Experience Matters
All of the associated data (like a runner’s average speed and location over the course of a 30 minute run) is often times pushed up to the cloud (as it’s being generated) for further processing, storage, or to allow syncs other devices and services.
Customers expect an integrated experience on the web, across all of their devices, in physical stores, and even talking with customer service on the phone.
Cloud Makes it Possible
Needless to say, the cloud has been a very large driving factor in the “App Revolution.” It provides a fast, simple, and cost effective way to for startups and enterprises alike to deploy and host applications and mobile backends over the internet.
Apps can be stitched together quickly with pre-built assets exposed as APIs - cloud has made this possible.
Simply put, cloud keeps all of us connected.
The instant power and speed of cloud has brought about new expectations for building applications on it.
Developers now expect:
To be able to deploy updates to their applications in seconds
To write their code in whichever tool or language they choose
Each has its own distinct “personality” and followings of developers have evolved around each of these
To be able to continually integrate working copies of code into a shared mainline at multiple points during the day
To focus on writing code, not on the administration of servers, virtualization, operating systems, and middleware.
To “fail fast” - or ensure applications fail immediately and visibly to speed debugging and fixes
To integrate useful APIs into their applications - who wants to write code that’s already been written and tested?
To build applications that are mobile ready - as users today expect their experience to be tailored to whatever device they happen to be using.
Timing is critical if your apps (and the functionality they provide to your employees and/or customers) are to keep up with the new expectations and competition the app revolution has generated.
Let’s see how everything stacks up:
Core IT represents everything you own and manage in your data centers (the full stack pictured here). This is still a critical part of enterprise IT - let’s take a look why it is beneficial and what it takes to manage all of this.
Core IT Benefits
As stable and customizable as the customer wants - the only main limitation is cost.
Necessary for certain solutions (Core IT still has value in many scenarios i.e. transaction processing)
Houses a lot of the investments most companies have already made (customer data, inventory, SAP, you name it).
Core IT Time Commitment
Typically takes weeks to setup an environment and deploy an initial app - customer manages entire stack pictured here
Have to maintain hardware and software as well (think environment uptime, fixes, upgrades). Dedicated staff necessary.
Thus, Core IT doesn’t lend itself to the experimental nature of development in the cloud/app revolution
Infrastructure as a Service (and specifically IBM’s acquisition of SoftLayer) was the cloud’s initial answer to the need for faster deployments, faster environment setup, etc… by abstracting the infrastructure from the customer.
IaaS Benefits
Networking, Storage, Server, Vitualization managed by service provider.
Most customizable cloud offering
Solutions where` customizability of OS, Middleware, or Runtime needed
IaaS Time Commitment
Customer sets up and manages OS, Middleware, and Runtime - these still take at least a matter of days to setup and reach an initial deployment
Maintenance/upgrades necessary as well
We’ve realized that, in a large number of use cases, our customers want to move even faster and don’t need to spend the time managing the platform (VM, OS, Middleware, Runtime). IBM’s answer: Bluemix (platform as a service).
PaaS Benefits
Setup your environment and deploy apps quicker than any other offering
Service provider manages the Infrastructure AND the platform
PaaS Time Commitment
Minutes to initial deployment - developer can handle everything on his/her own
Maintenance and upgrades of Platform and Infrastructure handled by service provider
While timing is critical (what we just discussed), the systems and data you use today can’t be forgotten. That’s why Bluemix simply and securely connects to core IT and even other clouds (leveraging IBM’s proven reputation as a systems integrator).
Hybrid cloud, where Public and Private clouds work together with Core IT investments, is critical to success given the app revolution and the expectations and increased competition it has generated.
Overall, hybrid cloud represents the “New IT…”
Continuous delivery of software-driven innovation
DevOps is an enterprise capability for continuous software delivery that enables organizations to seize market opportunities and reduce time to customer feedback
Deliver quality software faster by streamlining development and accelerating testing
Maintaining a competitive advantage requires the continuous innovation of ideas and the ability to translate them into products and services that bring value to your customers. Collaborative development and continuous testing support the evolution of a business idea into a high quality software solution by applying lean principles, facilitating collaboration among all stakeholders, and striking the optimal balance between quality and time to market.
By establishing a solid development and testing strategy, organizations can remove unnecessary project risk, reduce costs and ensure their teams stay productive.
IBM provides integrated development solutions across platforms allowing software delivery teams to use the solutions that are right for them, in an integrated way – from traditional IT (on-premise) to private cloud (patterns on PureApplication System and Softlayer) to platform as a service (DevOps Services on Bluemix)
UrbanCode Deploy with Patterns:
Design and collaborate on full-stack portable application blueprints
Flexibility to deploy full-stack blueprints to any cloud
Integrate with Multi-stage delivery pipeline to automate delivery of full stack environments in different stages
Update existing environments where required, without having to tear existing infrastructure
Easily manage the change to environments templates and lifecycle, by versioning environment templates, change history etc.
Continuous delivery of software-driven innovation
DevOps is an enterprise capability for continuous software delivery that enables organizations to seize market opportunities and reduce time to customer feedback
Deliver quality software faster by streamlining development and accelerating testing
Maintaining a competitive advantage requires the continuous innovation of ideas and the ability to translate them into products and services that bring value to your customers. Collaborative development and continuous testing support the evolution of a business idea into a high quality software solution by applying lean principles, facilitating collaboration among all stakeholders, and striking the optimal balance between quality and time to market.
By establishing a solid development and testing strategy, organizations can remove unnecessary project risk, reduce costs and ensure their teams stay productive.
IBM provides integrated development solutions across platforms allowing software delivery teams to use the solutions that are right for them, in an integrated way – from traditional IT (on-premise) to private cloud (patterns on PureApplication System and Softlayer) to platform as a service (DevOps Services on Bluemix)
UrbanCode Deploy with Patterns:
Design and collaborate on full-stack portable application blueprints
Flexibility to deploy full-stack blueprints to any cloud
Integrate with Multi-stage delivery pipeline to automate delivery of full stack environments in different stages
Update existing environments where required, without having to tear existing infrastructure
Easily manage the change to environments templates and lifecycle, by versioning environment templates, change history etc.