Open Liberty
Open Liberty
Open Liberty
V9 Update:
On Premise and In the Cloud
Ian Robinson: DE, WebSphere Foundation Chief Architect
@ian__robinson
Raj Suryavanshi: Offering Manager
rajsurya@us.ibm.com
Agenda
• Digital transformation is happening: A quick overview
• WAS’s Entry point approach to facilitate customer’s Journey to
Cloud
• Highlights of 2q2016 deliverables: Announcement: June 7, 2016,
eGA: June 24, 2016
• WAS v9 – Highlights
– Create, Connect, Optimize – brief overview
– Deep dive
• Seamlessly upgrade to WebSphere Application Server V9
1
Digital Transformation is happening….Clients are looking to:
Systems of Insight
Hybrid
CRM ERP Transactions Cloud
Integration bus Systems of Engagement
Social, Mobile, IoT
Systems of Record
3
WebSphere Application Server
The cornerstone of your cloud strategy
$325K
annual
30%+ 122% infrastructure Industry Leading 30% Intelligent
TCO ROI savings Security better performance Management
WAS on Cloud Liberty by year 3 - Open ID Connect with Java 8 45% less hardware 45% less software
Bluemix vs On- vs Open Source vs. Open Source - Secure Engineering 60% admin savings 90% fewer outages
premises Accreditation O-TTPS
Developer focused to Easy cloud connections for new & Smart management of
speed delivery pipeline existing apps the mission critical
• Lightweight composable runtime - • Create, expose and connect APIs • Leading edge cloud & mobile
perfect for microservices • Re-use existing apps and connect security
• Full integration with any DevOps to “on or off” premises • Enterprise Management of Java &
toolchain for continuous delivery • Deploy anywhere - on premises, Node.js
• Java EE7 market leadership and in cloud or hybrid • High availability: auto-scaling,
support for Open Source dynamic routing, health
management, diagnostics
WAS V9: 2Q16 Key Announcements
Create WAS V9 delivers robust & modern developer environment for speed &
new cloud enterprise scalability
apps • Cloud-First Java app platform - Speed development with composable runtime
and microservices architecture;
• Full Java EE7 certification for both WAS Traditional and Liberty Profiles;
• Leverage Spring and Spring Boot frameworks within applications;
• Quick start cloud native Java apps with Liberty app accelerator and Game-On
exemplar – seamless deploy to IBM Bluemix
• Leverage end-to-end DevOps Toolchain and Garage Method (best practices)
• Portability of apps with Docker support; Deploy to IBM Container Service, Docker
Data Center, and other container services
• Seamlessly manage Java and Node.js apps and APIs through common
management interface
5
WAS V9: 2Q16 Key Announcements (cont.)
Optimize Move apps anywhere, in any way, to increase speed and optimize costs
costs for • Create a borderless environment with easy app portability regardless of architectural
app infra environment (Cloud container services, Docker, VMWare)
• Exploit WAS ND intelligent management for workload optimization and placement
• Move apps to the IBM public cloud with choice of pre-configured environ, flexible PayGo
pricing models
• WAS Liberty app deployment to OpenShift and Pivotal Cloud Foundry running in IBM
SoftLayer, Amazon AWS, Microsoft Azure, and IBM Bluemix
• WAS on Bluemix- Single Tenant : New option to deploy on Cloud
• Ease of use enhancements for caching to optimize user experience
6
WAS V9: 2Q16 Key Announcements (cont.)
Connect Connect to cloud services to integrate new capabilities, improve time to mkt
existing & lower costs
apps & • Seamlessly connect on-premises apps to cloud services like Watson, Cloudant, dashDB.
data API Connect , Log Analytics (beta) - take advantage of latest technologies and extend the
value of existing Java apps
• Optimize use of APIs for exposing and better monetizing traditional apps
• Leverage PayGo models and eliminate risk and complexity of managing these new services
• Leverage “API Connect Essentials” now included in WAS editions
7
Why Java EE7 on WebSphere for Microservices
Production ready, EE7 compliant app server for microservices strategy
• Large Developer base using Java Framework (including Spring
based on Java EE)
• WAS V9 brings traditional WAS deployments up to the same level Ideal for
of EE7 and Java 8 as WebSphere Liberty microservices
WebSphere Application Server Editions
8x Liberty Core 4x WAS 1x WAS ND
1 PVU of Family
Edition entitles:
1 PVU ND *or*
4 PVUs Base *or*
8 PVUs Liberty Core
9
Composable Java EE Features For Liberty
WebSphere zosConnect-1.2
z/OS zosSecurity-1.0 zosTransaction-1.0 zosWlm-1.0 zosLocalAdapters-1.0
10
Composable Java EE Features For Liberty
jaxb-2.2 wasJmsClient-2.0
WebSphere jaxws-2.2 wmqJmsClient-2.0 zosConnect-1.2
z/OS zosSecurity-1.0 zosTransaction-1.0 zosWlm-1.0 zosLocalAdapters-1.0
jms-2.0 ejbPersistentTimer-1.0
jca-1.7 appClientSupport-1.0
collectiveController-1.0 clusterMember-1.0
jaspic-1.1
scalingController-1.0
j2eeManagement-1.1
WebSphere healthAnalyzer-1.0 healthManager-1.0 jacc-1.5 scalingMember-1.0 dynamicRouting-1.0
ND jdbc-4.1
concurrent-1.0 jndi-1.0
Java EE 6 sipServlet-1.0 mediaServerControl-1.0
javaee-7.0 mdb-3.2
mongodb-2.0 appSecurity-2.0
rtcomm-1.0 rtcommGateway-1.0
subset
WebSphere ejb-3.2
wsSecurity-1.1 managedBeans-1.0 batchManagement-1.0
couchdb-1.0
Base
ejbRemote-3.2
wsSecuritySaml-1.1 websocket-1.1 wsAtomicTransaction-1.2
ejbHome-3.2 websocket-1.0
ldapRegistry-3.0 httpWhiteboard-1.0 eventLogging-1.0
WebSphere ejbLite-3.2 ssl-1.0
Liberty Core
collectiveMember-1.0 osgiConsole-1.0 requestTiming-1.0
jsf-2.2 beanValidation-1.1
json-1.0 restConnector-1.0 oauth-2.0 samlWeb-2.0 osgiAppIntegration-1.0
monitor-1.0 jsp-2.3
timedOperations-1.0 cdi-1.2
bells-1.0 openid-2.0
wab-1.0 sessionDatabase-1.0 servlet-3.1
webCache-1.0 jpa-2.1
scim-1.0 openidConnectClient-1.0
blueprint-1.0 serverStatus-1.0 jsonp-1.0
javaMail-1.5 el-3.0
spnego-1.0 openidConnectServer-1.0
osgiBundle-1.0 distributedMap-1.0 jaxrs-2.0
concurrent-1.0 jaxrsClient-2.0 adminCenter-1.0
passwordUtilities-1.0
batch-1.0 javaMail-1.5 federatedRegistry-1.0
bluemixUtility-1.0 constrainedDelegation-1.0
webProfile-6.0 webProfile-7.0 logstashCollector-1.0 apiDiscovery-1.0
11
Liberty Server Config: simple server ‘shaping’
<server description="new server"> Features control which capabilities
(bundles) are installed in the server
<!-- Enable features -->
<featureManager>
<feature>servlet-3.1</feature>
<feature>jdbc-4.1</feature> 'instance' configurations specify
</featureManager> multiple resources like applications
and datasource definitions
<webApplication id="blogapp“
location="blogapp.war" name="blogapp"/>
<include location="${shared.config.dir}/datasource.xml"/>
</server>
Any of this configuration could be put
into a separate xml file and 'included' in
this 'master' configuration file
12
Customized Docker containers for Java EE
• WAS Liberty images on Docker Hub
– WAS Liberty containers (currently V8.5.5.8):
• Kernel, Java EE 6 Web Profile, Java EE 7 Web and Full Profile and latest Beta images
• Docker files: https://github.com/WASdev/ci.docker
kernel common webProfile7 javaee7
hub.docker.com/_/websphere-liberty
beta webProfile6
13
WDT Docker Support
• Easy setup an environment for developing and debugging applications
with Liberty running in local or remote Docker container
14
Liberty: Simple to get started locally
1. Download desired archive from http://wasdev.net/repo (e.g. wlp-
webProfile7.zip or wlp-javaee7.zip)
2. unzip <archive>
3. bin/server create myServer
4. cp myapp.war usr/servers/myServer/dropins
5. bin/server run myServer
6. http://localhost:9080/myapp
15
Liberty: Simple to run in any cloud
1. Clean separation of product install and user-defined configuration
2. Easy self-contained deployment of application + server/resource
configuration
build –t myappunder myServer
docker Self-contained
3. To PaaS… cf push myapp –p
wlp/usr/servers/myServer
4. Into a Docker container (CaaS)… wlp/usr/servers/myServer
FROM websphere-liberty dockerfile
COPY myServer /opt/ibm/wlp/usr/servers/defaultServer
5. To IaaS (hosted or on prem)… server package myServer –-include=usr
host1
transfer unzip or
java -jar
17
Liberty Docker Image Distribution (Unmanaged)
host1
pull
liberty host3
pull
+
18
Intelligent Management with WAS ND
Collectives
Administratively defined policy HTTP/S IHS Load balancing and session affinity/failover
/DP
collective
get dynamic liberty liberty liberty
topology controllers
Operations target individual
liberty liberty liberty liberty
servers or clusters cluster
members
dynamic liberty liberty liberty
start/stop
Admin Script
Dynamic Routing Auto Scaling
Collective Controller Controller starts and Health Management
provides routing updates provisions cluster Takes actions if policies
to Plugin members are breached 19
Intelligent Management with WAS ND
Cells
Administratively defined policy HTTP/S IHS Load balancing and session affinity/failover
/DP
cell
get dynamic WAS WAS WAS
topology trad trad trad
Admin Script
Dynamic Routing Auto Scaling
Collective Controller Controller starts and Health Management
provides routing updates provisions cluster Takes actions if policies
to Plugin members are breached 20
ND Intelligent Management: Also Supports Node.js and Docker
Collectives
Administratively defined policy HTTP/S IHS Load balancing and session affinity/failover
/DP
collective
get dynamic liberty liberty liberty
topology controllers
Added deploy rules and REST
API on controller for Liberty Node.js Node.js Node.js
liberty
Docker and Node.js cluster
members
dynamic liberty liberty liberty
start/stop
Admin Script
Dynamic Routing Auto Scaling
Collective Controller Controller starts and Health Management
provides routing updates provisions cluster Takes actions if policies
to Plugin members (Node.js coming soon) are breached 21
Integration with Managed Docker Deployments
Bluemix: IBM Containers
liberty
WAS WAS WAS
WAS
Docker Datacenter
JVM
WAS WAS WAS
OS
WAS WAS WAS
22
Managed Docker Container Deployments
Heterogeneous Container lifecycle and IBM Containers
operational management
• IBM Containers provide a managed runtime WAS WAS WAS
environment for Docker in Bluemix
• On-prem solutions WAS also Image
include Docker
Datacenter, from Docker Inc, which IBM WAS WAS WAS
also supports as a reseller.
Application
• Both provide secure Docker registry, the
ability to deploy and manageWAS multiple-
container Compose topologies and load-
balancing across container clusters using Docker Datacenter
Docker Swarm JVM
WAS WAS WAS
• The choice is transparent to the
WebSphere application container
OS
• Standalone containers or Collectives with WAS WAS WAS
built-in WAS intelligent management.
23
Liberty App Accelerator for Microservice creation
http://wasdev.net/accelerate
Get a Java-based
microservice that uses
Liberty built and deployed in
< 10min
Provides configuration for
your application
Provides code snippets for
your application
Possible deployment
options:
Local
Bluemix
Also See: http://wasdev.net/microservices
24
Feeding the DevOps Toolchains
Configuration Management
25
A microservices adventure
• Exemplar microservices application
– Ployglot
• Core services built using Liberty and Java EE7
• Deployed using Cloud Foundry, Container, and Event-driven runtimes
• https://game-on.org/ 26
IBM Bluemix Cloud and WebSphere PaaS
cf push
app.war
IaaS/CaaS
IaaS
VM VM
27
WAS as a Service
Variable VM sizes
28
WAS as a Service – Single Tenant Option
“I want to run Liberty in a non-IBM PaaS on-premise, in Amazon and Azure. I want all
the components from IBM to be fully supported and I want to use subcapacity pricing.”
Elaine
Systems
Administrator
Solution Highlights:
1. A user can deploy Liberty apps in a Docker container to AWS or Azure.
2. A user can deploy Liberty apps to OpenShift and Pivotal Cloud Foundry
running locally and can apply sub-capacity charging through suitable
configuration.
3. A user can deploy Liberty apps to OpenShift and Pivotal Cloud Foundry
running in Softlayer, AWS or Azure, and can apply sub-capacity charging
through suitable configuration.
30
Bringing efficiencies of cloud-services
to on-premises deployments
31
Enhance Applications with Bluemix Cloud Services
Retail example: WAS integration with Bluemix Watson Services for Cognitive Apps
Systems of Insight
Spanish Product Purchase
Language catalog History
Live Text
Chat
application via Mobile retail
Call Center WebRTC customer
Bluemix
Agent
Watson
Service for
Language
Translation
(Spanish (English
Web &
speaking) mobile speaking)
shopping
application
Logs & GC
Trace Events Kibana
Access
FFDC ElasticSearch (your tenant)
Logs
Logstash
Liberty
bluemixLogCollector-1.0
Liberty
Liberty logs.opvis.bluemix.net:9091 Bluemix 33
On-ramp to API Economy
34
API Discovery with Swagger Doc
• New apiDiscovery-1.0 feature makes API from all applications
discoverable via a single RESTful endpoint: /ibm/api/docs
• APIs described using Swagger 2.0 / Open API
• Query parameter allows filtering based on context root
• Supports both JSON and YAML (input and output)
• Specialized extension, /ibm/api/docs/apiconnect, for native integration with API
Connect
REST Applications
Admin UI
35
API Discovery Scenarios
• Liberty supports any path toward API discovery:
37
Ready for WebSphere
Application Server V9?
Upgrading to WebSphere v9
Migrate today to take advantage of v9 capabilities
• Intelligent management • Integration with cloud services
• API Lifecycle Management • Improved security & availability
4
Plugin
+ Template Artifact Library QA
Assembled EAR WAS
WAR Config
2 DB
Template
40
Eliminate Future Migration Costs
New Liberty features, and config, augment rather than replace old ones
Zero migration for unchanged apps on WAS Liberty, regardless of Java
EE version
unzip wlp-javaee7-8.5.5.9.zip
8.5.5.9 old
Your configuration, app
WLP_USER_DIR applications, servlet-3.0
9.0.0.0 resources Server 1
16.0.0.2
unzip wlp-javaee7-8.next.zip new
app
servlet-3.1
Point to your existing JRE Server 2
Within supported software levels. Java 6 will soon be out of service. WebSphere
Each features has a minimum level of Java Liberty 16.0.0.2
41
What’s With the 16.0.0.2?
Liberty Continuous Delivery
WAS V9 introduces a new 9.0.0.0 service stream for traditional WAS fixpacks.
WAS Liberty follows a continuous delivery model with a single service stream – it makes no sense to
persist with a major version for Liberty fixpacks in a ‘versionless’ single delivery stream.
To properly reflect this we are changing Liberty fixpack numbering to:
Y.R.M.F: year.release.modlevel.fixpack
eg 16.0.0.4 would be the fourth fix pack in 2016
The next fixpack after 8.5.5.9 is the second fixpack of 2016 and is numbered 16.0.0.2.
Its just a number - there is no migration required at all to the first V9 release of Liberty: 16.0.0.2.
42
Quick links for Additional Information
UrbanCode Accelerate
WebSphere WebSphere
Deploy Microservices
Migration Tools Connect
WAS plugin Creation
• WebSphere Migration • Automatically • WebSphere Liberty ibm.com/cloud-
Discovery Tool migrates App Accelerator computing/connect/
configurations to • http://wasdev.net/mic websphere
• WebSphere Migration newer versions of roservices
Toolkit WAS on premises or
• Urban Code Deploy IBM Bluemix
43
Thank You
Recent Customer requirements delivered
Create and vote on Requests For Enhancement
• https://www.ibm.com/developerworks/rfe/execute?use_case=submitRfe