Professional Documents
Culture Documents
David Shaffer
Managing Partner, Middleworks
dave@middleworks.com
4
12c Base Upgrade Docs and Presos
• Previous SOA Expert Series upgrade webinar:
www.middleworks.com/soa-expert/#12cUpgradeWebinar
• SOA Suite 12.2.1 Upgrade doc:
http://docs.oracle.com/middleware/1221/core/FUPSS
(tip: can get to a single PDF of doc at
http://docs.oracle.com/middleware/1221/core/FUPSS.pdf)
• Upgrade videos:
http://docs.oracle.com/middleware/1221/cross/upgrade_videos.htm
8
SOA Suite 11g -> 12c Upgrade Basics
• Great doc at http://www.middleworks.com/soaexpert/upgrade/4.Danilo-12cUpgradeTips.pdf
(excerpted here)
• Choose in-place domain upgrade and re-configuration or side-by-side
upgrade with new install / config / deploy
• Can upgrade to 12.1.3 or straight to 12.2.1.x (recommend latter)
• Prerequisites:
– Starting point: SOA Suite 11.1.1.6, 11.1.1.7 or 11.1.1.9 or 12.1.3
– 64-bit OS and JVM – must be supported version
– Dehydration store DB must be supported version – 11g or 12c
– OPSS 12c must use DB or LDAP based policy store
Less
Less Work Keeps History Lower Risk
Downtime
All Allows
Keeps Running
Components Topology
Processes
(BAM) Change
Used most often when you have Typically preferred otherwise
long-lived processes
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 11
Upgrade Process | Step-by-Step Overview
1. Understand the upgrade process PREPARATION
Side-by-Side Upgrade
New installation of schemas and domains
New deployment & configuration of the existing 11g projects
Suitable in stateless & short-running scenarios
Appropriate if the targeted sytem architecture should be diferent than with 11g or if the current topology is not
supported
Validate your starting point which has to be 11.1.1.6 (PS5) or 11.1.1.7 (PS6)
Calculate system requirements (Memory, Disk Space, Network, OS)
Make a complete backup of your existing environment
Make sure that DB, OS and JVM are supported and apply recommended database parameters on the new
installation
Save copies of customized start scripts, configuration files, policies
More details: Upgrade Planning Guide and Interoperability and Compatibility Guide
For a development or evaluation distribution, see "Downloading Oracle Fusion Middleware 12c (12.2.1)
Development Distributions“
We decided to build our own OC testing framework based on JUnit Standard and SOA Suite APIs to integrate it within
other implementations and to establish a proper test-driven development
This allows us to
use the same test approach for BPEL, BPMN, OSB, Java, Human Tasks, XSLT and XQuery…
re-route external references to a mock service implemented in the same framework (in Java) including changing
references to standard web services so that database or file adapters can also be mocked
Human task handling (finishing the human task with a predefined outcome and predefined values)
Smooth integration into continuous integration environment
20
Upgrade Suggestions
• If upgrading now, go to 12.2.1.1 – Many compatibility fixes to allow
XSLTs to upgrade without change. Need following two properties set
at startup to turn on backward compatibility mode:
-Doracle.xdkjava.compatibility.version=11.1.1
-Doracle.soa.compatibility.version=11.1.1
• Test composites thoroughly without • Make sure enough disk space is available
redeploying after upgrade of test system for upgrade.
and determine tuning to be applied. • If issues are encountered, support can
take time. Budget enough time.
• BAM upgrade is more complex – read
documentation carefully and plan.
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Oracle Copyright
Safe Harbor Statement
The following is intended to outline our general product direction. It is intended for
information purposes only, and may not be incorporated into any contract. It is not a
commitment to deliver any material, code, or functionality, and should not be relied upon
in making purchasing decisions. The development, release, and timing of any features or
functionality described for Oracle’s products remains at the sole discretion of Oracle.
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Oracle Copyright
Key Upgrade related features in SOACS roadmap
• CY2017
– Lift and shift (AppToCloud) from on premise to
cloud for SOA or OSB in SOACS including side by
side upgrade.
– Works across versions (say 11.1.1.7 onprem)
– Shift and provisioning is combined.
– Can change URLs as you shift.
• Other projects also being considered.
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Oracle Copyright
External http
callbacks
Onprem
Loopback invokes
Callbacks
LB
WLS FE host/port
Inactive
http Client inactive
http Client Adapt
http Client ers
http Client
DNS Loopback Invokes
Switch LB Callbacks
WLS FE host/port
cloud
External http
callbacks
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Oracle Copyright
Benefits of Side by Side Upgrade - onprem to cloud
• Side by Side Upgrade • What is automated?
– Minimum down time
– Creating a soacs deployment with test endpoints
– Rapid rollback.
– Creating a soacs deployment with production
– Active instances before cutover stay onprem and endpoint.
will run there
– Cutover steps are manual/scripted by user.
– Two consoles needed while preserving historical
info
– No down time while you prepare your new cloud
instance.
– Can test against test endpoints before cutover.
– A few minor limitations (message ordering,
correlation sets)
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Oracle Copyright
Cutover steps in SOA in SOACS (onprem to cloud side by
side)
• Approach 1: • Approach 2
– Assumptions: New POD is tested with changes – Assumptions: New POD is tested with changes
applied. POD has test endpoints. applied. POD has test endpoints.
– Delete new POD and recreate with test endpoints – Delete new POD with test endpoints and recreate
again. POD with production endpoints. Inbound adapter
– Apply all changes and do sanity tests if possible. addresses are different between onprem and cloud
– Cutover – Apply all changes and do sanity tests if possible.
• Disable inbound adapters in onprem system or – Cutover
redeploy composite with test inbound endpoint. • Cutover adapter clients
• Redeploy all composites with deployment plan • Cutover HTTP clients.
with production endpoints in new POD. (and/or
change token values). Inbound adapter addresses
could be the same between onprem and cloud.
• Cutover HTTP clients
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 8
Side-by-side upgrade checklist (on-prem)
Document how you will:
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Oracle Copyright
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Oracle Copyright
When do you destroy the old production system in side by
side?
• When you no longer have a need to • After you have cut over to new
rollback to old production. production system.
• When all long running instances in • When all backlogged messages in
old production have completed. queues in old production has
• When you no longer need the drained.
history present in the old
production. (best practice is
frequent purges of history)
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Oracle Copyright
Alternative to concurrent side by side execution (onprem)
• Not all customers can tolerate • Alternative HTTP cutover
concurrent side by side execution. – Block HTTP traffic
• Willing to take some down time. – Let old domain drain.
• Have short lived instances. – Shut down old domain.
– Cutover HTTP clients.
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Oracle Copyright
IEEE SOA Suite 12C Upgrade
Sireesha Beeram
About me
➢Sireesha Beeram
➢Sr. Programmer Analyst @ IEEE for SOA
–s.beeram@ieee.org
➢Using Oracle SOA since 2011
➢Upgraded from SOA 11.1.6 to 12.2.1
Overview
•Why Upgrade?
•IEEE SOA Architecture
–11g Environment Vs 12c
•Upgrade Strategy
•Upgrade Tasks
• Overview of 2 tasks
–Automatic Build
–BAM
•Benefits seen
•Specific Issues / Details
Why Upgrade
•Mobile Enable Services (REST/JSON)
•Increase in transaction
volume/Customers (about 3X)
–More flexible coherence architecture to
scale out (separate jvm)
•Browser Independent for BAM
•Automate deployment process
IBP SOA implementation: key stats
➢ Web services:
➢ Over 120 OSB services exposed as both as REST
JSON and SOAP.
–60 composites/~100 Bpel process/250 xslt/300
xqueries files
–25 BAM Dashboards, 5 DataObjects
➢ Consumers:
➢ Internal consumers ~ 10
➢ External consumers ~20
➢ Cloud Integrations ~10
2.Maven
1. Schedule: Mon/Wed/Friday
Project POM
3.Deploy
BAM
2
Benefit Seen
➢Overall, upgrade easier than expected
➢12c Auto-purge solves 90% out-of-the-box
➢OSB/EM Console monitoring during Performance
testing
➢40% Code reduction:
➢ Removed Custom REST:Exposed pipeline to
REST
➢ UMS Adapter replaced custom email code/jars
➢ IEEE Customizations:Taxware client jars
removed
➢Happy Customers
➢ Can use any browser for BAM
Faisal Farooqui
IT-Director of Core Service
Who are we?
We are a cost containment company in healthcare space
2
How do we use SOA Suite
Management
❏ Three OSB Instances (200+ proxies) and One SOA Instance (50+
composites)
3
Logical Layout
External F5 Load Balancer
Firewall
WebCenter Portals
Enterprise Claims
Offline BUS SOA Suite
BUS BUS
Messaging Server
Coherence
Oracle Database
4
Reason for Upgrade
❏ Integration ❏ Development Environment
❏ Reusability
❏ Templates
❏ Pipeline sharing
5
Planning
❏ Early Adoption: migration from 11.1.1.7 to 12.1.3
❏ Prerequisites
❏ RISK Management
6
Execution
❏ Switched from in-place to side-by-side upgrade
❏ Approach
artifacts as needed. 7
Execution
❏ The migration process was fairly smooth; most of the issues were
8
Issues
❏ Request Entity too large
❏ XSLT Incompatibilities
❏ XDK Incompatibilities
10
Lesson Learned
❏ Ran a POC with Search Bus, most of the issues were resolved with
issues uncovered
11
CI Solution for Reference
pom
DEV JDEV Change
JPR DEV Service Now Request
DEV
DEV
(create)
SVN Change
Service Now Request
MGR
(approve)
Maven
package Build Artifact
DEV
Weblogic/OSB/SOA
Maven deploy
DEV SQA
BAMBOO STABLE
Maven test
Email PROD
Success/Fail