SlideShare a Scribd company logo
1 of 49
Download to read offline
© 2015 IBM Corporation
Production Deployment
Best Practices for
WebSphere Liberty Profile
Erin Schnabel
WebSphere Liberty Profile Lead Developer
schnabel@us.ibm.com
Christopher Vignola
WebSphere System Management Architect
cvignola@us.ibm.com
Topics
• Profile Configuration
• Topologies & Practices
• Application Deployment
• Management Configuration
• Numbers and Sizes
2
Profile
Configuration
3
Configuring Data Sources
• Use top-level libraries
• Allows multiple data sources and applications to share the
same class loader
<library id="DB2JCC4Lib">
<fileset dir="C:/DB2/java"
includes="db2jcc4.jar db2jcc_license_cisuz.jar"/>
</library>
<dataSource id="db2" jndiName="jdbc/sampleDB">
<jdbcDriver libraryRef="DB2JCC4Lib"/>
<properties.db2.jcc databaseName="SAMPLEDB"
serverName="localhost" portNumber="50000"/>
</dataSource>
<application location="myApp.ear">
<classloader commonLibraryRef="DB2JCC4Lib"/>
</application>
4
Configuring Data Sources: Connections
• Connection pooling and timeouts
• Reduce connectionTimeout to confirm that max pool size is
being exceeded
• Increase maxPoolSize if you see connection timeouts
• If you don’t need two phase commit:
• Use ConnectionPoolDataSource rather than XADataSource
• Data sources can enlist in a global transaction as a one-phase
resource even if they are not XA-capable.
5
Configuring Data Sources: Connection sharing
• Set isolation level property instead of programmatically
• Use isolationLevel property on datasource
• Set in resource reference binding/extension
• Declared isolation level allows for better matching/sharing of
connections
• Use containerAuthData instead of user/password
• Prevents applications using res-auth=Application from
accessing the data source with container credentials
6
Threading and Thread pools
• Auto-tuning thread pool
• Optimizes for executor throughput (measured every 1.5 sec)
• Dynamically adjusts between coreThreads and maxThreads
– Default coreThreads = (2*processorCores)
– Default maxThreads = MAX_INT
• Not usually necessary to tune the thread pool
• Some workloads may warrant increasing coreThreads
• Long-running / Outbound-to-self
• Measure performance before and after adjustment
7
Separate App and Admin HTTPS traffic
• Configure Virtual Hosts to isolate the application from other
(internal/administrative) traffic.
8
<httpEndpoint id=“appEndpoint” … />
<!– Restrict access to default_host: only accessible via default
endpoint -->
<virtualHost id=“default_host”
allowFromEndpointRef=“defaultHttpEndpoint”/>
<!-- define an application-specific virtual host -->
<virtualHost id=“applicationHost”
allowFromEndpointRef=“appEndpoint”>
<hostAlias>*:${app.http.port}</hostAlias>
<hostAlias>*:${app.https.port}</hostAlias>
</virtualHost>
<!-- configure plugin to route to the app-specific endpoint -->
<pluginConfiguration httpEndpointRef=“appEndpoint” />
server.xml:
<virtual-host name=”applicationHost" />
Ibm-web-bnd.xml
Virtual host
binding required in
the application
SSL Certificates and KeyStores
• Use only officially signed SSL certificates
• Use a separate keystore for inbound vs. outbound
• Encode or encrypt passwords in your configuration
<ssl id="defaultSSLConfig"
keyStoreRef="defaultKeyStore"
trustStoreRef="defaultTrustStore" />
<keyStore id="defaultKeyStore"
location="${server.config.dir}/key.jks"
type="JKS" password="{aes}..." />
<keyStore id="defaultKeyStore"
location="${server.config.dir}/trust.jks"
type="JKS" password="{aes}…" />
9
Security - General
• Harden your environment – extensive resources:
http://www.ibm.com/developerworks/websphere/techjournal/1210_lansche/1210_lansche.html
http://www.ibm.com/developerworks/websphere/techjournal/1303_lansche/1303_lansche.html
• Avoid vulnerabilities – keep service current.
• Register for support notifications at ibm.com/support .
10
Topologies
& Practices
11
Topologies
• Standalone
• collective Assisted Lifecycle
• Collective
When to Use Which Topology?
• Standalone – small, isolated, or situational deployments
• collective Assisted Lifecycle
• Small/Med deployments
• Existing admin skill
• multi-server QoS
• Collective
• Small/Med/Large deployments
• Lightweight environment
• Multi-server QoS
13
Universal Practices
• Server Package Deployment
• High Availability – Rule of 3
• Automated deployment
• Secure environment
14
QoS Practices (Optional)
• Dynamic Routing
• Auto-scaling
• z/OS integration
15
Gold Standard – HA Collective
16
Collective Controller
Replica Set
CC
CC
CC
• Include AdminCenter
• Use Dynamic Routing
• Use Auto-scaling
Machine Boundary
AppServer
AppServerLiberty
Profile
Per
App
IHS
IHS
IHS
Per
Collective
z/OS Integration
• Use read-only mount point for servicing runtime
• Use PROCs for running servers
• Use START/MODIFY/STOP commands for server lifecycle
• Use SAF Registry support
• Exploit platform integration as necessary:
• zosWLM
• zosTransaction
• zosLocalAdapters
17
Application
Deployment
18
Build & Deploy
• Use server package for deployment – 3 models
• Developers direct deploy
• Developers hand off app, admin packages/deploys
• Developer direct deploy w/packaging automation to ensure
“approved server config”
>> Establish build/deploy pipeline
• Automate – use script, Chef, Urbancode, etc
19
Example Build/Deploy Pipeline
20
Jenkins
Liberty
Server Package Deployment: Managing Config
21
$WLP_USER_DIR/MyServer/
server.xml
apps/
MyApp.war
deploy (apply target overrides)
$WLP_USER_DIR/MyServer/
server.xml
configDropins/
overrides/
prod.xml
apps/
MyApp.war
Server Package Update
• Update through build process
• Blue/Green deploy
• Dual install locations
• Ripple start (stop old/start new, JVM by JVM)
• Delete old instance at your convenience
22
Upgrade – 1 of 5
23
host1.com
http/s: 9080/9443
status: STARTED
/wlp-blue/usr/servers/prod1
/wlp-blue/bin
/wlp-blue/lib
host2.com
http/s: 9080/9443
status: STARTED
/wlp-blue/usr/servers/prod1
/wlp-blue/bin
/wlp-blue/lib
Upgrade – 2 of 5
24
host1.com
http/s: 9080/9443
status: STARTED
/wlp-blue/usr/servers/prod1
/wlp-blue/bin
/wlp-blue/lib
host2.com
http/s: 9080/9443
status: STARTED
/wlp-blue/usr/servers/prod1
/wlp-blue/bin
/wlp-blue/lib
host1.com
http/s: 9080/9443
status: STOPPED
/wlp-green/usr/servers/prod1
/wlp-green/bin
/wlp-green/lib
host2.com
http/s: 9080/9443
status: STOPPED
/wlp-green/usr/servers/prod1
/wlp-green/bin
/wlp-green/lib
Upgrade – 3 of 5
25
host1.com
http/s: 9080/9443
status: STOPPED
/wlp-blue/usr/servers/prod1
/wlp-blue/bin
/wlp-blue/lib
host2.com
http/s: 9080/9443
status: STARTED
/wlp-blue/usr/servers/prod1
/wlp-blue/bin
/wlp-blue/lib
host1.com
http/s: 9080/9443
status: STARTED
/wlp-green/usr/servers/prod1
/wlp-green/bin
/wlp-green/lib
host2.com
http/s: 9080/9443
status: STOPPED
/wlp-green/usr/servers/prod1
/wlp-green/bin
/wlp-green/lib
Upgrade – 4 of 5
26
host1.com
http/s: 9080/9443
status: STOPPED
/wlp-blue/usr/servers/prod1
/wlp-blue/bin
/wlp-blue/lib
host2.com
http/s: 9080/9443
status: STOPPED
/wlp-blue/usr/servers/prod1
/wlp-blue/bin
/wlp-blue/lib
host1.com
http/s: 9080/9443
status: STARTED
/wlp-green/usr/servers/prod1
/wlp-green/bin
/wlp-green/lib
host2.com
http/s: 9080/9443
status: STARTED
/wlp-green/usr/servers/prod1
/wlp-green/bin
/wlp-green/lib
Upgrade – 5 of 5
27
host1.com
http/s: 9080/9443
status: STARTED
/wlp-green/usr/servers/prod1
/wlp-green/bin
/wlp-green/lib
host2.com
http/s: 9080/9443
status: STARTED
/wlp-green/usr/servers/prod1
/wlp-green/bin
/wlp-green/lib
Management
Configuration
28
High Availability Services
• Collective scope
• Built-in to collective controller replica set
• Host scope (e.g. scalingMember-1.0 feature)
• Uses local port
29
Collective SSL
• Collective root, member root
• First controller establishes “true root”
• Must be copied to subsequent replicas
• Trust between
• Controllers and members
• Members and controllers
• Members on same host
• Certificates
• Signers
• Identity
30
Security
• Use external user registry – e.g.
• Ldap
• SAF
• Multiple registries allowed – e.g. as granular as per cluster.
• Collective Controller Replica set must use same registry.
31
Highly Available Collective Controller
• Three controllers minimum. Odd numbers only.
• Up to 2000 member per controller
Recommended: Max(Members/2000,3)
+1(for controller failure)
+1(for network partition)
• Use configDropIns directory – it’s replicated!
• Configure members with controller failover addresses.
32
CC
CC
CC
Dynamic Routing
• Requires IHS (or Apache).
• Use dynamicRouting-1.0 feature in controllers.
• Double-layer IHS to simplify firewall management.
• Terminate SSL at earliest opportunity.
33
CC
CC
CC
IHS
IHS
IHS
Auto-scaling
• Put scalingController-1.0 feature in at least 3 controllers.
• Set hostSingleton port for vertical scaling.
• Set min instances based on average demand.
34
AppServer
AppServer
AppServer
Elastic
Resources
CC
CC
CC
Auto-scaling Policy
• Leave headroom on max settings (e.g.
• CPU <= 90%
• Heap <= 90%
• Memory <=90%
• Include scaling policy in server package
• scaling-metadata.xml
35
Use Admin-metadata
• Owner
• Contacts
• Note
• Tags
• admin-metadata.xml – part of server package
• assignable to host, server, application, cluster, runtime
• There is also an API
• Used in AdminCenter to search and set views
36
Numbers and Sizes
37
38
Liberty Profile Collective Size Design Considerations
• Collectives are design for large scale
• What limits the size of a WebSphere Collective?
• Breadth and currency for shared Information across controller JVMs
• Communication and coordination of shared information
• Product features scale differently with large collective size
• Most affected : collectiveController, scalingController
• It is possible to create a large topology collective
But will it function to your requirements?
• Collective works well with defaults settings. Some environments may
require tuning.
39
When do you need multiple collectives?
• Isolation
• Development vs testing vs production
• Critical applications
• Backup site
• Lines of business
• Each funding area may have different policies for when to apply
fixes, when to upgrade
• Geography:
• Controllers can span data centers with qualifying* network and config
• Members can span data centers with tuning
• Large collectives require planning to avoid “urban sprawl”
40
How Large a collective can I create?
• No hard limit – trust, but verify
• Lab tested:
• Tested 10,000 members
• 5 controllers
• 50 VMs
• ~200 members per VM
• Controller VMs: 20GB memory+6 CPUs
• Member VMs: 64GB+16 CPUs
41
How Many Host OS Instances per collective
• No Design Limit
• Typical large topology up to hundreds of hosts.
• Practical Limits
• Operations may take longer:
– Configurations, server deployment
• Notifications flowing back to collective controllers
• Load on controllers with concurrent operations
• 50 hosts per collective controller guideline
42
How Many Application Servers per Host OS?
• Keep WAS JVMs completely within physical memory
• Allow for overhead
• Process footprint about 1.25 to 1.5X maximum heap size for 32 bit
heaps
• 1.6x to 1.8x for 64-bit heaps
• If App Server gets swapped out, add more memory or
else move to different host OS.
• Ensure sufficient CPU is allocated
• Especially for hypervisor
• Avoid CPU starvation
43
How Many Applications Per Server
• Balance between resource usage and isolation
• With one application per server
• One bad application does not bring down all other applications
• Easier to tune each application in isolation
• With more than one application per server
• Less resources: cost of application server runtime amortized
across multiple applications
• Smaller topology to manage
• Configure as much isolation as you can afford
• If you have 300 applications clustered on 3 nodes
– Complete isolation  900 JVMs
– Complete sharing  3 JVMs
44
System Management Best Practices
• Set and track your performance goals
• Measure performance of your most commonly used operations
• Track changes as you increase collective size
• Track changes over time to identify new issues
• Use Scripting (or your own Java framework)
• Automatable, repeatable, testable
• Don’t overload collective controllers
• Give enough memory + CPU
• Run AdminCenter in multiple controllers to spread load
• Don’t co-locate with resource intensive processes, e.g., application
servers with heavy load
Wrap Up
Covered
• Topologies & Practices
• Profile Configuration
• Application Deployment
• Management Configuration
• Numbers and Sizes
46
Notices and Disclaimers
Copyright © 2015 by International Business Machines Corporation (IBM). No part of this document may be reproduced or
transmitted in any form without written permission from IBM.
U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with
IBM.
Information in these presentations (including information relating to products that have not yet been announced by IBM) has been
reviewed for accuracy as of the date of initial publication and could include unintentional technical or typographical errors. IBM
shall have no responsibility to update this information. THIS DOCUMENT IS DISTRIBUTED "AS IS" WITHOUT ANY WARRANTY,
EITHER EXPRESS OR IMPLIED. IN NO EVENT SHALL IBM BE LIABLE FOR ANY DAMAGE ARISING FROM THE USE OF
THIS INFORMATION, INCLUDING BUT NOT LIMITED TO, LOSS OF DATA, BUSINESS INTERRUPTION, LOSS OF PROFIT
OR LOSS OF OPPORTUNITY. IBM products and services are warranted according to the terms and conditions of the
agreements under which they are provided.
Any statements regarding IBM's future direction, intent or product plans are subject to change or withdrawal without
notice.
Performance data contained herein was generally obtained in a controlled, isolated environments. Customer examples are
presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual
performance, cost, savings or other results in other operating environments may vary.
References in this document to IBM products, programs, or services does not imply that IBM intends to make such products,
programs or services available in all countries in which IBM operates or does business.
Workshops, sessions and associated materials may have been prepared by independent session speakers, and do not
necessarily reflect the views of IBM. All materials and discussions are provided for informational purposes only, and are neither
intended to, nor shall constitute legal or other guidance or advice to any individual participant or their specific situation.
It is the customer’s responsibility to insure its own compliance with legal requirements and to obtain advice of competent legal
counsel as to the identification and interpretation of any relevant laws and regulatory requirements that may affect the customer’s
business and any actions the customer may need to take to comply with such laws. IBM does not provide legal advice or
represent or warrant that its services or products will ensure that the customer is in compliance with any law.
Notices and Disclaimers (con’t)
Information concerning non-IBM products was obtained from the suppliers of those products, their published
announcements or other publicly available sources. IBM has not tested those products in connection with this
publication and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM
products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products.
IBM does not warrant the quality of any third-party products, or the ability of any such third-party products to
interoperate with IBM’s products. IBM EXPRESSLY DISCLAIMS ALL WARRANTIES, EXPRESSED OR IMPLIED,
INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE.
The provision of the information contained herein is not intended to, and does not, grant any right or license under any
IBM patents, copyrights, trademarks or other intellectual property right.
• IBM, the IBM logo, ibm.com, Bluemix, Blueworks Live, CICS, Clearcase, DOORS®, Enterprise Document
Management System™, Global Business Services ®, Global Technology Services ®, Information on Demand,
ILOG, Maximo®, MQIntegrator®, MQSeries®, Netcool®, OMEGAMON, OpenPower, PureAnalytics™,
PureApplication®, pureCluster™, PureCoverage®, PureData®, PureExperience®, PureFlex®, pureQuery®,
pureScale®, PureSystems®, QRadar®, Rational®, Rhapsody®, SoDA, SPSS, StoredIQ, Tivoli®, Trusteer®,
urban{code}®, Watson, WebSphere®, Worklight®, X-Force® and System z® Z/OS, are trademarks of
International Business Machines Corporation, registered in many jurisdictions worldwide. Other product and
service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on
the Web at "Copyright and trademark information" at: www.ibm.com/legal/copytrade.shtml.
Thank You
Your Feedback is
Important!
Access the InterConnect 2015
Conference CONNECT Attendee
Portal to complete your session
surveys from your smartphone,
laptop or conference kiosk.

More Related Content

What's hot

AAI-4847 Full Disclosure on the Performance Characteristics of WebSphere Appl...
AAI-4847 Full Disclosure on the Performance Characteristics of WebSphere Appl...AAI-4847 Full Disclosure on the Performance Characteristics of WebSphere Appl...
AAI-4847 Full Disclosure on the Performance Characteristics of WebSphere Appl...WASdev Community
 
AAI-1445 Managing Dynamic Workloads with WebSphere ND and in the Cloud
AAI-1445 Managing Dynamic Workloads with WebSphere ND and in the CloudAAI-1445 Managing Dynamic Workloads with WebSphere ND and in the Cloud
AAI-1445 Managing Dynamic Workloads with WebSphere ND and in the CloudWASdev Community
 
WebSphere and Docker
WebSphere and DockerWebSphere and Docker
WebSphere and DockerDavid Currie
 
Was liberty at scale
Was liberty at scaleWas liberty at scale
Was liberty at scalesflynn073
 
WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)
WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)
WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)Roman Kharkovski
 
Planning For Catastrophe with IBM WAS and IBM BPM
Planning For Catastrophe with IBM WAS and IBM BPMPlanning For Catastrophe with IBM WAS and IBM BPM
Planning For Catastrophe with IBM WAS and IBM BPMWASdev Community
 
Building out a Microservices Architecture with WebSphere Liberty Profile and ...
Building out a Microservices Architecture with WebSphere Liberty Profile and ...Building out a Microservices Architecture with WebSphere Liberty Profile and ...
Building out a Microservices Architecture with WebSphere Liberty Profile and ...David Currie
 
WebSphere App Server vs JBoss vs WebLogic vs Tomcat
WebSphere App Server vs JBoss vs WebLogic vs TomcatWebSphere App Server vs JBoss vs WebLogic vs Tomcat
WebSphere App Server vs JBoss vs WebLogic vs TomcatWASdev Community
 
Migrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-ServiceMigrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-ServiceDavid Currie
 
Was liberty profile and docker
Was liberty profile and dockerWas liberty profile and docker
Was liberty profile and dockersflynn073
 
AAI-3281 Smarter Production with WebSphere Application Server ND Intelligent ...
AAI-3281 Smarter Production with WebSphere Application Server ND Intelligent ...AAI-3281 Smarter Production with WebSphere Application Server ND Intelligent ...
AAI-3281 Smarter Production with WebSphere Application Server ND Intelligent ...WASdev Community
 
Scalable, Available and Reliable Cloud Applications with PaaS and Microservices
Scalable, Available and Reliable Cloud Applications with PaaS and MicroservicesScalable, Available and Reliable Cloud Applications with PaaS and Microservices
Scalable, Available and Reliable Cloud Applications with PaaS and MicroservicesDavid Currie
 
WebSphere Liberty and IBM Containers: The Perfect Combination for Java Micros...
WebSphere Liberty and IBM Containers: The Perfect Combination for Java Micros...WebSphere Liberty and IBM Containers: The Perfect Combination for Java Micros...
WebSphere Liberty and IBM Containers: The Perfect Combination for Java Micros...David Currie
 
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsWebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsIan Robinson
 
Linux container & docker
Linux container & dockerLinux container & docker
Linux container & dockerejlp12
 
The Kubernetes WebLogic revival (part 1)
The Kubernetes WebLogic revival (part 1)The Kubernetes WebLogic revival (part 1)
The Kubernetes WebLogic revival (part 1)Simon Haslam
 
How to build a Citrix infrastructure on AWS
How to build a Citrix infrastructure on AWSHow to build a Citrix infrastructure on AWS
How to build a Citrix infrastructure on AWSDenis Gundarev
 
WebLogic JMX for DevOps
WebLogic JMX for DevOpsWebLogic JMX for DevOps
WebLogic JMX for DevOpsFrank Munz
 
12 Things About WebLogic 12.1.3 #oow2014 #otnla15
12 Things About WebLogic 12.1.3 #oow2014 #otnla1512 Things About WebLogic 12.1.3 #oow2014 #otnla15
12 Things About WebLogic 12.1.3 #oow2014 #otnla15Frank Munz
 
Migrating from Pivotal tc Server on-prem to IBM Liberty in the cloud
Migrating from Pivotal tc Server on-prem to IBM Liberty in the cloudMigrating from Pivotal tc Server on-prem to IBM Liberty in the cloud
Migrating from Pivotal tc Server on-prem to IBM Liberty in the cloudJohn Donaldson
 

What's hot (20)

AAI-4847 Full Disclosure on the Performance Characteristics of WebSphere Appl...
AAI-4847 Full Disclosure on the Performance Characteristics of WebSphere Appl...AAI-4847 Full Disclosure on the Performance Characteristics of WebSphere Appl...
AAI-4847 Full Disclosure on the Performance Characteristics of WebSphere Appl...
 
AAI-1445 Managing Dynamic Workloads with WebSphere ND and in the Cloud
AAI-1445 Managing Dynamic Workloads with WebSphere ND and in the CloudAAI-1445 Managing Dynamic Workloads with WebSphere ND and in the Cloud
AAI-1445 Managing Dynamic Workloads with WebSphere ND and in the Cloud
 
WebSphere and Docker
WebSphere and DockerWebSphere and Docker
WebSphere and Docker
 
Was liberty at scale
Was liberty at scaleWas liberty at scale
Was liberty at scale
 
WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)
WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)
WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)
 
Planning For Catastrophe with IBM WAS and IBM BPM
Planning For Catastrophe with IBM WAS and IBM BPMPlanning For Catastrophe with IBM WAS and IBM BPM
Planning For Catastrophe with IBM WAS and IBM BPM
 
Building out a Microservices Architecture with WebSphere Liberty Profile and ...
Building out a Microservices Architecture with WebSphere Liberty Profile and ...Building out a Microservices Architecture with WebSphere Liberty Profile and ...
Building out a Microservices Architecture with WebSphere Liberty Profile and ...
 
WebSphere App Server vs JBoss vs WebLogic vs Tomcat
WebSphere App Server vs JBoss vs WebLogic vs TomcatWebSphere App Server vs JBoss vs WebLogic vs Tomcat
WebSphere App Server vs JBoss vs WebLogic vs Tomcat
 
Migrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-ServiceMigrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-Service
 
Was liberty profile and docker
Was liberty profile and dockerWas liberty profile and docker
Was liberty profile and docker
 
AAI-3281 Smarter Production with WebSphere Application Server ND Intelligent ...
AAI-3281 Smarter Production with WebSphere Application Server ND Intelligent ...AAI-3281 Smarter Production with WebSphere Application Server ND Intelligent ...
AAI-3281 Smarter Production with WebSphere Application Server ND Intelligent ...
 
Scalable, Available and Reliable Cloud Applications with PaaS and Microservices
Scalable, Available and Reliable Cloud Applications with PaaS and MicroservicesScalable, Available and Reliable Cloud Applications with PaaS and Microservices
Scalable, Available and Reliable Cloud Applications with PaaS and Microservices
 
WebSphere Liberty and IBM Containers: The Perfect Combination for Java Micros...
WebSphere Liberty and IBM Containers: The Perfect Combination for Java Micros...WebSphere Liberty and IBM Containers: The Perfect Combination for Java Micros...
WebSphere Liberty and IBM Containers: The Perfect Combination for Java Micros...
 
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsWebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
 
Linux container & docker
Linux container & dockerLinux container & docker
Linux container & docker
 
The Kubernetes WebLogic revival (part 1)
The Kubernetes WebLogic revival (part 1)The Kubernetes WebLogic revival (part 1)
The Kubernetes WebLogic revival (part 1)
 
How to build a Citrix infrastructure on AWS
How to build a Citrix infrastructure on AWSHow to build a Citrix infrastructure on AWS
How to build a Citrix infrastructure on AWS
 
WebLogic JMX for DevOps
WebLogic JMX for DevOpsWebLogic JMX for DevOps
WebLogic JMX for DevOps
 
12 Things About WebLogic 12.1.3 #oow2014 #otnla15
12 Things About WebLogic 12.1.3 #oow2014 #otnla1512 Things About WebLogic 12.1.3 #oow2014 #otnla15
12 Things About WebLogic 12.1.3 #oow2014 #otnla15
 
Migrating from Pivotal tc Server on-prem to IBM Liberty in the cloud
Migrating from Pivotal tc Server on-prem to IBM Liberty in the cloudMigrating from Pivotal tc Server on-prem to IBM Liberty in the cloud
Migrating from Pivotal tc Server on-prem to IBM Liberty in the cloud
 

Viewers also liked

AAI-2013 Preparing to Fail: Practical WebSphere Application Server High Avail...
AAI-2013 Preparing to Fail: Practical WebSphere Application Server High Avail...AAI-2013 Preparing to Fail: Practical WebSphere Application Server High Avail...
AAI-2013 Preparing to Fail: Practical WebSphere Application Server High Avail...WASdev Community
 
AAI-2016 WebSphere Application Server Installation and Maintenance in the Ent...
AAI-2016 WebSphere Application Server Installation and Maintenance in the Ent...AAI-2016 WebSphere Application Server Installation and Maintenance in the Ent...
AAI-2016 WebSphere Application Server Installation and Maintenance in the Ent...WASdev Community
 
Suppressing http headers from web sphere application server
Suppressing http headers from web sphere application serverSuppressing http headers from web sphere application server
Suppressing http headers from web sphere application serverDave Hay
 
Introduction to WebSockets
Introduction to WebSocketsIntroduction to WebSockets
Introduction to WebSocketsWASdev Community
 
Websphere Application Server v7
Websphere Application Server v7Websphere Application Server v7
Websphere Application Server v7Chris Sparshott
 
Was liberty elastic clusters and centralised admin
Was liberty   elastic clusters and centralised adminWas liberty   elastic clusters and centralised admin
Was liberty elastic clusters and centralised adminsflynn073
 

Viewers also liked (6)

AAI-2013 Preparing to Fail: Practical WebSphere Application Server High Avail...
AAI-2013 Preparing to Fail: Practical WebSphere Application Server High Avail...AAI-2013 Preparing to Fail: Practical WebSphere Application Server High Avail...
AAI-2013 Preparing to Fail: Practical WebSphere Application Server High Avail...
 
AAI-2016 WebSphere Application Server Installation and Maintenance in the Ent...
AAI-2016 WebSphere Application Server Installation and Maintenance in the Ent...AAI-2016 WebSphere Application Server Installation and Maintenance in the Ent...
AAI-2016 WebSphere Application Server Installation and Maintenance in the Ent...
 
Suppressing http headers from web sphere application server
Suppressing http headers from web sphere application serverSuppressing http headers from web sphere application server
Suppressing http headers from web sphere application server
 
Introduction to WebSockets
Introduction to WebSocketsIntroduction to WebSockets
Introduction to WebSockets
 
Websphere Application Server v7
Websphere Application Server v7Websphere Application Server v7
Websphere Application Server v7
 
Was liberty elastic clusters and centralised admin
Was liberty   elastic clusters and centralised adminWas liberty   elastic clusters and centralised admin
Was liberty elastic clusters and centralised admin
 

Similar to AAI-3218 Production Deployment Best Practices for WebSphere Liberty Profile

Building microservices sample application
Building microservices sample applicationBuilding microservices sample application
Building microservices sample applicationAnil Allewar
 
Sa106 – practical solutions for connections administrators
Sa106 – practical solutions for connections administratorsSa106 – practical solutions for connections administrators
Sa106 – practical solutions for connections administratorsSharon James
 
IBM InterConnect 2015 - IIB in the Cloud
IBM InterConnect 2015 - IIB in the CloudIBM InterConnect 2015 - IIB in the Cloud
IBM InterConnect 2015 - IIB in the CloudAndrew Coleman
 
OSMC 2011 | Case Study - Icinga at Hyves.nl by Jeffrey Lensen
OSMC 2011 | Case Study - Icinga at Hyves.nl by Jeffrey LensenOSMC 2011 | Case Study - Icinga at Hyves.nl by Jeffrey Lensen
OSMC 2011 | Case Study - Icinga at Hyves.nl by Jeffrey LensenNETWAYS
 
WSO2 Dep Sync for Artifact Synchronization of Cluster Nodes
WSO2 Dep Sync for Artifact Synchronization of Cluster NodesWSO2 Dep Sync for Artifact Synchronization of Cluster Nodes
WSO2 Dep Sync for Artifact Synchronization of Cluster NodesWSO2
 
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...Kasun Gajasinghe
 
Nginx A High Performance Load Balancer, Web Server & Reverse Proxy
Nginx A High Performance Load Balancer, Web Server & Reverse ProxyNginx A High Performance Load Balancer, Web Server & Reverse Proxy
Nginx A High Performance Load Balancer, Web Server & Reverse ProxyAmit Aggarwal
 
Getting Started with MariaDB with Docker
Getting Started with MariaDB with DockerGetting Started with MariaDB with Docker
Getting Started with MariaDB with DockerMariaDB plc
 
6 tips for improving ruby performance
6 tips for improving ruby performance6 tips for improving ruby performance
6 tips for improving ruby performanceEngine Yard
 
Practical advice on deployment and management of enterprise workloads
Practical advice on deployment and management of enterprise workloadsPractical advice on deployment and management of enterprise workloads
Practical advice on deployment and management of enterprise workloadsJarek Miszczyk
 
Docker based Architecture by Denys Serdiuk
Docker based Architecture by Denys SerdiukDocker based Architecture by Denys Serdiuk
Docker based Architecture by Denys SerdiukLohika_Odessa_TechTalks
 
Practical solutions for connections administrators
Practical solutions for connections administratorsPractical solutions for connections administrators
Practical solutions for connections administratorsSharon James
 
Deploying windows containers with kubernetes
Deploying windows containers with kubernetesDeploying windows containers with kubernetes
Deploying windows containers with kubernetesBen Hall
 
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018Mandi Walls
 
DevOPS training - Day 2/2
DevOPS training - Day 2/2DevOPS training - Day 2/2
DevOPS training - Day 2/2Vincent Mercier
 
Java Development on Bluemix
Java Development on BluemixJava Development on Bluemix
Java Development on BluemixRam Vennam
 
Spring Cloud: API gateway upgrade & configuration in the cloud
Spring Cloud: API gateway upgrade & configuration in the cloudSpring Cloud: API gateway upgrade & configuration in the cloud
Spring Cloud: API gateway upgrade & configuration in the cloudOrkhan Gasimov
 
1049: Best and Worst Practices for Deploying IBM Connections - IBM Connect 2016
1049: Best and Worst Practices for Deploying IBM Connections - IBM Connect 20161049: Best and Worst Practices for Deploying IBM Connections - IBM Connect 2016
1049: Best and Worst Practices for Deploying IBM Connections - IBM Connect 2016panagenda
 

Similar to AAI-3218 Production Deployment Best Practices for WebSphere Liberty Profile (20)

Building microservices sample application
Building microservices sample applicationBuilding microservices sample application
Building microservices sample application
 
Sa106 – practical solutions for connections administrators
Sa106 – practical solutions for connections administratorsSa106 – practical solutions for connections administrators
Sa106 – practical solutions for connections administrators
 
IBM InterConnect 2015 - IIB in the Cloud
IBM InterConnect 2015 - IIB in the CloudIBM InterConnect 2015 - IIB in the Cloud
IBM InterConnect 2015 - IIB in the Cloud
 
OSMC 2011 | Case Study - Icinga at Hyves.nl by Jeffrey Lensen
OSMC 2011 | Case Study - Icinga at Hyves.nl by Jeffrey LensenOSMC 2011 | Case Study - Icinga at Hyves.nl by Jeffrey Lensen
OSMC 2011 | Case Study - Icinga at Hyves.nl by Jeffrey Lensen
 
WSO2 Dep Sync for Artifact Synchronization of Cluster Nodes
WSO2 Dep Sync for Artifact Synchronization of Cluster NodesWSO2 Dep Sync for Artifact Synchronization of Cluster Nodes
WSO2 Dep Sync for Artifact Synchronization of Cluster Nodes
 
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...
 
Nginx A High Performance Load Balancer, Web Server & Reverse Proxy
Nginx A High Performance Load Balancer, Web Server & Reverse ProxyNginx A High Performance Load Balancer, Web Server & Reverse Proxy
Nginx A High Performance Load Balancer, Web Server & Reverse Proxy
 
Getting Started with MariaDB with Docker
Getting Started with MariaDB with DockerGetting Started with MariaDB with Docker
Getting Started with MariaDB with Docker
 
6 tips for improving ruby performance
6 tips for improving ruby performance6 tips for improving ruby performance
6 tips for improving ruby performance
 
Practical advice on deployment and management of enterprise workloads
Practical advice on deployment and management of enterprise workloadsPractical advice on deployment and management of enterprise workloads
Practical advice on deployment and management of enterprise workloads
 
Docker based Architecture by Denys Serdiuk
Docker based Architecture by Denys SerdiukDocker based Architecture by Denys Serdiuk
Docker based Architecture by Denys Serdiuk
 
Practical solutions for connections administrators
Practical solutions for connections administratorsPractical solutions for connections administrators
Practical solutions for connections administrators
 
Deploying windows containers with kubernetes
Deploying windows containers with kubernetesDeploying windows containers with kubernetes
Deploying windows containers with kubernetes
 
TechBeats #2
TechBeats #2TechBeats #2
TechBeats #2
 
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
 
DevOPS training - Day 2/2
DevOPS training - Day 2/2DevOPS training - Day 2/2
DevOPS training - Day 2/2
 
Java Development on Bluemix
Java Development on BluemixJava Development on Bluemix
Java Development on Bluemix
 
Spring Cloud: API gateway upgrade & configuration in the cloud
Spring Cloud: API gateway upgrade & configuration in the cloudSpring Cloud: API gateway upgrade & configuration in the cloud
Spring Cloud: API gateway upgrade & configuration in the cloud
 
1049: Best and Worst Practices for Deploying IBM Connections - IBM Connect 2016
1049: Best and Worst Practices for Deploying IBM Connections - IBM Connect 20161049: Best and Worst Practices for Deploying IBM Connections - IBM Connect 2016
1049: Best and Worst Practices for Deploying IBM Connections - IBM Connect 2016
 
ITB2017 - Keynote
ITB2017 - KeynoteITB2017 - Keynote
ITB2017 - Keynote
 

More from WASdev Community

Don't Wait! Develop Responsive Applications with Java EE7 Instead
Don't Wait! Develop Responsive Applications with Java EE7 InsteadDon't Wait! Develop Responsive Applications with Java EE7 Instead
Don't Wait! Develop Responsive Applications with Java EE7 InsteadWASdev Community
 
ASZ-3034 Build a WebSphere Linux Cloud on System z: From Roll-Your-Own to Pre...
ASZ-3034 Build a WebSphere Linux Cloud on System z: From Roll-Your-Own to Pre...ASZ-3034 Build a WebSphere Linux Cloud on System z: From Roll-Your-Own to Pre...
ASZ-3034 Build a WebSphere Linux Cloud on System z: From Roll-Your-Own to Pre...WASdev Community
 
AAI-2236 Using the new Java Concurrency Utilities with IBM WebSphere
AAI-2236 Using the new Java Concurrency Utilities with IBM WebSphereAAI-2236 Using the new Java Concurrency Utilities with IBM WebSphere
AAI-2236 Using the new Java Concurrency Utilities with IBM WebSphereWASdev Community
 
AAI-2235 Open JPA and EclipseLink Usage Scenarios Explained
AAI-2235 Open JPA and EclipseLink Usage Scenarios ExplainedAAI-2235 Open JPA and EclipseLink Usage Scenarios Explained
AAI-2235 Open JPA and EclipseLink Usage Scenarios ExplainedWASdev Community
 
AAI-1713 Introduction to Java EE 7
AAI-1713 Introduction to Java EE 7AAI-1713 Introduction to Java EE 7
AAI-1713 Introduction to Java EE 7WASdev Community
 
Deploy, Monitor and Manage in Style with WebSphere Liberty Admin Center
Deploy, Monitor and Manage in Style with WebSphere Liberty Admin CenterDeploy, Monitor and Manage in Style with WebSphere Liberty Admin Center
Deploy, Monitor and Manage in Style with WebSphere Liberty Admin CenterWASdev Community
 
AAI-2075 Evolving an IBM WebSphere Topology to Manage a Changing Workloa
AAI-2075 Evolving an IBM WebSphere Topology to Manage a Changing WorkloaAAI-2075 Evolving an IBM WebSphere Topology to Manage a Changing Workloa
AAI-2075 Evolving an IBM WebSphere Topology to Manage a Changing WorkloaWASdev Community
 
Arduinos, application servers, and me: Adventures in and out of the cloud
Arduinos, application servers, and me: Adventures in and out of the cloudArduinos, application servers, and me: Adventures in and out of the cloud
Arduinos, application servers, and me: Adventures in and out of the cloudWASdev Community
 

More from WASdev Community (8)

Don't Wait! Develop Responsive Applications with Java EE7 Instead
Don't Wait! Develop Responsive Applications with Java EE7 InsteadDon't Wait! Develop Responsive Applications with Java EE7 Instead
Don't Wait! Develop Responsive Applications with Java EE7 Instead
 
ASZ-3034 Build a WebSphere Linux Cloud on System z: From Roll-Your-Own to Pre...
ASZ-3034 Build a WebSphere Linux Cloud on System z: From Roll-Your-Own to Pre...ASZ-3034 Build a WebSphere Linux Cloud on System z: From Roll-Your-Own to Pre...
ASZ-3034 Build a WebSphere Linux Cloud on System z: From Roll-Your-Own to Pre...
 
AAI-2236 Using the new Java Concurrency Utilities with IBM WebSphere
AAI-2236 Using the new Java Concurrency Utilities with IBM WebSphereAAI-2236 Using the new Java Concurrency Utilities with IBM WebSphere
AAI-2236 Using the new Java Concurrency Utilities with IBM WebSphere
 
AAI-2235 Open JPA and EclipseLink Usage Scenarios Explained
AAI-2235 Open JPA and EclipseLink Usage Scenarios ExplainedAAI-2235 Open JPA and EclipseLink Usage Scenarios Explained
AAI-2235 Open JPA and EclipseLink Usage Scenarios Explained
 
AAI-1713 Introduction to Java EE 7
AAI-1713 Introduction to Java EE 7AAI-1713 Introduction to Java EE 7
AAI-1713 Introduction to Java EE 7
 
Deploy, Monitor and Manage in Style with WebSphere Liberty Admin Center
Deploy, Monitor and Manage in Style with WebSphere Liberty Admin CenterDeploy, Monitor and Manage in Style with WebSphere Liberty Admin Center
Deploy, Monitor and Manage in Style with WebSphere Liberty Admin Center
 
AAI-2075 Evolving an IBM WebSphere Topology to Manage a Changing Workloa
AAI-2075 Evolving an IBM WebSphere Topology to Manage a Changing WorkloaAAI-2075 Evolving an IBM WebSphere Topology to Manage a Changing Workloa
AAI-2075 Evolving an IBM WebSphere Topology to Manage a Changing Workloa
 
Arduinos, application servers, and me: Adventures in and out of the cloud
Arduinos, application servers, and me: Adventures in and out of the cloudArduinos, application servers, and me: Adventures in and out of the cloud
Arduinos, application servers, and me: Adventures in and out of the cloud
 

Recently uploaded

A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfVishalKumarJha10
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionOnePlan Solutions
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfproinshot.com
 

Recently uploaded (20)

Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 

AAI-3218 Production Deployment Best Practices for WebSphere Liberty Profile

  • 1. © 2015 IBM Corporation Production Deployment Best Practices for WebSphere Liberty Profile Erin Schnabel WebSphere Liberty Profile Lead Developer schnabel@us.ibm.com Christopher Vignola WebSphere System Management Architect cvignola@us.ibm.com
  • 2. Topics • Profile Configuration • Topologies & Practices • Application Deployment • Management Configuration • Numbers and Sizes 2
  • 4. Configuring Data Sources • Use top-level libraries • Allows multiple data sources and applications to share the same class loader <library id="DB2JCC4Lib"> <fileset dir="C:/DB2/java" includes="db2jcc4.jar db2jcc_license_cisuz.jar"/> </library> <dataSource id="db2" jndiName="jdbc/sampleDB"> <jdbcDriver libraryRef="DB2JCC4Lib"/> <properties.db2.jcc databaseName="SAMPLEDB" serverName="localhost" portNumber="50000"/> </dataSource> <application location="myApp.ear"> <classloader commonLibraryRef="DB2JCC4Lib"/> </application> 4
  • 5. Configuring Data Sources: Connections • Connection pooling and timeouts • Reduce connectionTimeout to confirm that max pool size is being exceeded • Increase maxPoolSize if you see connection timeouts • If you don’t need two phase commit: • Use ConnectionPoolDataSource rather than XADataSource • Data sources can enlist in a global transaction as a one-phase resource even if they are not XA-capable. 5
  • 6. Configuring Data Sources: Connection sharing • Set isolation level property instead of programmatically • Use isolationLevel property on datasource • Set in resource reference binding/extension • Declared isolation level allows for better matching/sharing of connections • Use containerAuthData instead of user/password • Prevents applications using res-auth=Application from accessing the data source with container credentials 6
  • 7. Threading and Thread pools • Auto-tuning thread pool • Optimizes for executor throughput (measured every 1.5 sec) • Dynamically adjusts between coreThreads and maxThreads – Default coreThreads = (2*processorCores) – Default maxThreads = MAX_INT • Not usually necessary to tune the thread pool • Some workloads may warrant increasing coreThreads • Long-running / Outbound-to-self • Measure performance before and after adjustment 7
  • 8. Separate App and Admin HTTPS traffic • Configure Virtual Hosts to isolate the application from other (internal/administrative) traffic. 8 <httpEndpoint id=“appEndpoint” … /> <!– Restrict access to default_host: only accessible via default endpoint --> <virtualHost id=“default_host” allowFromEndpointRef=“defaultHttpEndpoint”/> <!-- define an application-specific virtual host --> <virtualHost id=“applicationHost” allowFromEndpointRef=“appEndpoint”> <hostAlias>*:${app.http.port}</hostAlias> <hostAlias>*:${app.https.port}</hostAlias> </virtualHost> <!-- configure plugin to route to the app-specific endpoint --> <pluginConfiguration httpEndpointRef=“appEndpoint” /> server.xml: <virtual-host name=”applicationHost" /> Ibm-web-bnd.xml Virtual host binding required in the application
  • 9. SSL Certificates and KeyStores • Use only officially signed SSL certificates • Use a separate keystore for inbound vs. outbound • Encode or encrypt passwords in your configuration <ssl id="defaultSSLConfig" keyStoreRef="defaultKeyStore" trustStoreRef="defaultTrustStore" /> <keyStore id="defaultKeyStore" location="${server.config.dir}/key.jks" type="JKS" password="{aes}..." /> <keyStore id="defaultKeyStore" location="${server.config.dir}/trust.jks" type="JKS" password="{aes}…" /> 9
  • 10. Security - General • Harden your environment – extensive resources: http://www.ibm.com/developerworks/websphere/techjournal/1210_lansche/1210_lansche.html http://www.ibm.com/developerworks/websphere/techjournal/1303_lansche/1303_lansche.html • Avoid vulnerabilities – keep service current. • Register for support notifications at ibm.com/support . 10
  • 12. Topologies • Standalone • collective Assisted Lifecycle • Collective
  • 13. When to Use Which Topology? • Standalone – small, isolated, or situational deployments • collective Assisted Lifecycle • Small/Med deployments • Existing admin skill • multi-server QoS • Collective • Small/Med/Large deployments • Lightweight environment • Multi-server QoS 13
  • 14. Universal Practices • Server Package Deployment • High Availability – Rule of 3 • Automated deployment • Secure environment 14
  • 15. QoS Practices (Optional) • Dynamic Routing • Auto-scaling • z/OS integration 15
  • 16. Gold Standard – HA Collective 16 Collective Controller Replica Set CC CC CC • Include AdminCenter • Use Dynamic Routing • Use Auto-scaling Machine Boundary AppServer AppServerLiberty Profile Per App IHS IHS IHS Per Collective
  • 17. z/OS Integration • Use read-only mount point for servicing runtime • Use PROCs for running servers • Use START/MODIFY/STOP commands for server lifecycle • Use SAF Registry support • Exploit platform integration as necessary: • zosWLM • zosTransaction • zosLocalAdapters 17
  • 19. Build & Deploy • Use server package for deployment – 3 models • Developers direct deploy • Developers hand off app, admin packages/deploys • Developer direct deploy w/packaging automation to ensure “approved server config” >> Establish build/deploy pipeline • Automate – use script, Chef, Urbancode, etc 19
  • 21. Server Package Deployment: Managing Config 21 $WLP_USER_DIR/MyServer/ server.xml apps/ MyApp.war deploy (apply target overrides) $WLP_USER_DIR/MyServer/ server.xml configDropins/ overrides/ prod.xml apps/ MyApp.war
  • 22. Server Package Update • Update through build process • Blue/Green deploy • Dual install locations • Ripple start (stop old/start new, JVM by JVM) • Delete old instance at your convenience 22
  • 23. Upgrade – 1 of 5 23 host1.com http/s: 9080/9443 status: STARTED /wlp-blue/usr/servers/prod1 /wlp-blue/bin /wlp-blue/lib host2.com http/s: 9080/9443 status: STARTED /wlp-blue/usr/servers/prod1 /wlp-blue/bin /wlp-blue/lib
  • 24. Upgrade – 2 of 5 24 host1.com http/s: 9080/9443 status: STARTED /wlp-blue/usr/servers/prod1 /wlp-blue/bin /wlp-blue/lib host2.com http/s: 9080/9443 status: STARTED /wlp-blue/usr/servers/prod1 /wlp-blue/bin /wlp-blue/lib host1.com http/s: 9080/9443 status: STOPPED /wlp-green/usr/servers/prod1 /wlp-green/bin /wlp-green/lib host2.com http/s: 9080/9443 status: STOPPED /wlp-green/usr/servers/prod1 /wlp-green/bin /wlp-green/lib
  • 25. Upgrade – 3 of 5 25 host1.com http/s: 9080/9443 status: STOPPED /wlp-blue/usr/servers/prod1 /wlp-blue/bin /wlp-blue/lib host2.com http/s: 9080/9443 status: STARTED /wlp-blue/usr/servers/prod1 /wlp-blue/bin /wlp-blue/lib host1.com http/s: 9080/9443 status: STARTED /wlp-green/usr/servers/prod1 /wlp-green/bin /wlp-green/lib host2.com http/s: 9080/9443 status: STOPPED /wlp-green/usr/servers/prod1 /wlp-green/bin /wlp-green/lib
  • 26. Upgrade – 4 of 5 26 host1.com http/s: 9080/9443 status: STOPPED /wlp-blue/usr/servers/prod1 /wlp-blue/bin /wlp-blue/lib host2.com http/s: 9080/9443 status: STOPPED /wlp-blue/usr/servers/prod1 /wlp-blue/bin /wlp-blue/lib host1.com http/s: 9080/9443 status: STARTED /wlp-green/usr/servers/prod1 /wlp-green/bin /wlp-green/lib host2.com http/s: 9080/9443 status: STARTED /wlp-green/usr/servers/prod1 /wlp-green/bin /wlp-green/lib
  • 27. Upgrade – 5 of 5 27 host1.com http/s: 9080/9443 status: STARTED /wlp-green/usr/servers/prod1 /wlp-green/bin /wlp-green/lib host2.com http/s: 9080/9443 status: STARTED /wlp-green/usr/servers/prod1 /wlp-green/bin /wlp-green/lib
  • 29. High Availability Services • Collective scope • Built-in to collective controller replica set • Host scope (e.g. scalingMember-1.0 feature) • Uses local port 29
  • 30. Collective SSL • Collective root, member root • First controller establishes “true root” • Must be copied to subsequent replicas • Trust between • Controllers and members • Members and controllers • Members on same host • Certificates • Signers • Identity 30
  • 31. Security • Use external user registry – e.g. • Ldap • SAF • Multiple registries allowed – e.g. as granular as per cluster. • Collective Controller Replica set must use same registry. 31
  • 32. Highly Available Collective Controller • Three controllers minimum. Odd numbers only. • Up to 2000 member per controller Recommended: Max(Members/2000,3) +1(for controller failure) +1(for network partition) • Use configDropIns directory – it’s replicated! • Configure members with controller failover addresses. 32 CC CC CC
  • 33. Dynamic Routing • Requires IHS (or Apache). • Use dynamicRouting-1.0 feature in controllers. • Double-layer IHS to simplify firewall management. • Terminate SSL at earliest opportunity. 33 CC CC CC IHS IHS IHS
  • 34. Auto-scaling • Put scalingController-1.0 feature in at least 3 controllers. • Set hostSingleton port for vertical scaling. • Set min instances based on average demand. 34 AppServer AppServer AppServer Elastic Resources CC CC CC
  • 35. Auto-scaling Policy • Leave headroom on max settings (e.g. • CPU <= 90% • Heap <= 90% • Memory <=90% • Include scaling policy in server package • scaling-metadata.xml 35
  • 36. Use Admin-metadata • Owner • Contacts • Note • Tags • admin-metadata.xml – part of server package • assignable to host, server, application, cluster, runtime • There is also an API • Used in AdminCenter to search and set views 36
  • 38. 38 Liberty Profile Collective Size Design Considerations • Collectives are design for large scale • What limits the size of a WebSphere Collective? • Breadth and currency for shared Information across controller JVMs • Communication and coordination of shared information • Product features scale differently with large collective size • Most affected : collectiveController, scalingController • It is possible to create a large topology collective But will it function to your requirements? • Collective works well with defaults settings. Some environments may require tuning.
  • 39. 39 When do you need multiple collectives? • Isolation • Development vs testing vs production • Critical applications • Backup site • Lines of business • Each funding area may have different policies for when to apply fixes, when to upgrade • Geography: • Controllers can span data centers with qualifying* network and config • Members can span data centers with tuning • Large collectives require planning to avoid “urban sprawl”
  • 40. 40 How Large a collective can I create? • No hard limit – trust, but verify • Lab tested: • Tested 10,000 members • 5 controllers • 50 VMs • ~200 members per VM • Controller VMs: 20GB memory+6 CPUs • Member VMs: 64GB+16 CPUs
  • 41. 41 How Many Host OS Instances per collective • No Design Limit • Typical large topology up to hundreds of hosts. • Practical Limits • Operations may take longer: – Configurations, server deployment • Notifications flowing back to collective controllers • Load on controllers with concurrent operations • 50 hosts per collective controller guideline
  • 42. 42 How Many Application Servers per Host OS? • Keep WAS JVMs completely within physical memory • Allow for overhead • Process footprint about 1.25 to 1.5X maximum heap size for 32 bit heaps • 1.6x to 1.8x for 64-bit heaps • If App Server gets swapped out, add more memory or else move to different host OS. • Ensure sufficient CPU is allocated • Especially for hypervisor • Avoid CPU starvation
  • 43. 43 How Many Applications Per Server • Balance between resource usage and isolation • With one application per server • One bad application does not bring down all other applications • Easier to tune each application in isolation • With more than one application per server • Less resources: cost of application server runtime amortized across multiple applications • Smaller topology to manage • Configure as much isolation as you can afford • If you have 300 applications clustered on 3 nodes – Complete isolation  900 JVMs – Complete sharing  3 JVMs
  • 44. 44 System Management Best Practices • Set and track your performance goals • Measure performance of your most commonly used operations • Track changes as you increase collective size • Track changes over time to identify new issues • Use Scripting (or your own Java framework) • Automatable, repeatable, testable • Don’t overload collective controllers • Give enough memory + CPU • Run AdminCenter in multiple controllers to spread load • Don’t co-locate with resource intensive processes, e.g., application servers with heavy load
  • 46. Covered • Topologies & Practices • Profile Configuration • Application Deployment • Management Configuration • Numbers and Sizes 46
  • 47. Notices and Disclaimers Copyright © 2015 by International Business Machines Corporation (IBM). No part of this document may be reproduced or transmitted in any form without written permission from IBM. U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM. Information in these presentations (including information relating to products that have not yet been announced by IBM) has been reviewed for accuracy as of the date of initial publication and could include unintentional technical or typographical errors. IBM shall have no responsibility to update this information. THIS DOCUMENT IS DISTRIBUTED "AS IS" WITHOUT ANY WARRANTY, EITHER EXPRESS OR IMPLIED. IN NO EVENT SHALL IBM BE LIABLE FOR ANY DAMAGE ARISING FROM THE USE OF THIS INFORMATION, INCLUDING BUT NOT LIMITED TO, LOSS OF DATA, BUSINESS INTERRUPTION, LOSS OF PROFIT OR LOSS OF OPPORTUNITY. IBM products and services are warranted according to the terms and conditions of the agreements under which they are provided. Any statements regarding IBM's future direction, intent or product plans are subject to change or withdrawal without notice. Performance data contained herein was generally obtained in a controlled, isolated environments. Customer examples are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual performance, cost, savings or other results in other operating environments may vary. References in this document to IBM products, programs, or services does not imply that IBM intends to make such products, programs or services available in all countries in which IBM operates or does business. Workshops, sessions and associated materials may have been prepared by independent session speakers, and do not necessarily reflect the views of IBM. All materials and discussions are provided for informational purposes only, and are neither intended to, nor shall constitute legal or other guidance or advice to any individual participant or their specific situation. It is the customer’s responsibility to insure its own compliance with legal requirements and to obtain advice of competent legal counsel as to the identification and interpretation of any relevant laws and regulatory requirements that may affect the customer’s business and any actions the customer may need to take to comply with such laws. IBM does not provide legal advice or represent or warrant that its services or products will ensure that the customer is in compliance with any law.
  • 48. Notices and Disclaimers (con’t) Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products in connection with this publication and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products. IBM does not warrant the quality of any third-party products, or the ability of any such third-party products to interoperate with IBM’s products. IBM EXPRESSLY DISCLAIMS ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. The provision of the information contained herein is not intended to, and does not, grant any right or license under any IBM patents, copyrights, trademarks or other intellectual property right. • IBM, the IBM logo, ibm.com, Bluemix, Blueworks Live, CICS, Clearcase, DOORS®, Enterprise Document Management System™, Global Business Services ®, Global Technology Services ®, Information on Demand, ILOG, Maximo®, MQIntegrator®, MQSeries®, Netcool®, OMEGAMON, OpenPower, PureAnalytics™, PureApplication®, pureCluster™, PureCoverage®, PureData®, PureExperience®, PureFlex®, pureQuery®, pureScale®, PureSystems®, QRadar®, Rational®, Rhapsody®, SoDA, SPSS, StoredIQ, Tivoli®, Trusteer®, urban{code}®, Watson, WebSphere®, Worklight®, X-Force® and System z® Z/OS, are trademarks of International Business Machines Corporation, registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at: www.ibm.com/legal/copytrade.shtml.
  • 49. Thank You Your Feedback is Important! Access the InterConnect 2015 Conference CONNECT Attendee Portal to complete your session surveys from your smartphone, laptop or conference kiosk.