migration to oracle fusion middleware 11g key point of success
TRANSCRIPT
Migration to Oracle Fusion Middleware 11g: Migration to Oracle Fusion Middleware 11g: Key PointKey Pointss of Success of Success
Deniz SeçilirDeniz SeçilirDeniz PazarcıoğluDeniz Pazarcıoğlu
Turkcell Teknoloji
IntroductionIntroduction
• Based on Oracle 11g migration scripts
• Additional migration scripts and tips for seamless migration
• A guide for any enterprise
AgendaAgenda
• Benefits of Fusion Middleware
• Turkcell SOA Components
• Hints For Migration
• Migration Process
• Q/A
Turkcell Group – Regional Leader
4
Life : ) - 20081.6 mn sub.Belarus
Azercell – 19964.1 mn sub.
Azerbaijan
Geocell – 19972.1 mn sub.
Georgia
Turkcell - 1994 34.1 mn sub.
Turkey
KKTCell - 1999 0.4 mn sub.
TRNC
Kazakhstan
KCell - 1999 9.7 mn sub.
Ukraine
Life : ) – 20058.7 mn sub.
Germany
Turkcell Europe-2011
Moldcell – 20001.0 mn sub.
Moldova
Segment focus
Turkcell content & applications
Now we are in Germany...
*Subscriber numbers are as of Q1 2011
› 9 countries
› 61.7 million subscribers
› Leadership in the region
Creates employment for more than 50.000 people in Turkey
The first and only Turkish company listed on NYSE
Complies with ISO9001, EU and US regulations
Massive tax contribution to the Turkish government
Corporate social responsibility projects on education, culture and sports
More About Turkcell
Turkcell Technology
We are an energetic team having more than 17 years of experience combined with an ongoing commitment to innovation.
Key Milestones
Turkcell Technology has more than 15 years of development experience with its solutions applied and proven at leading operators in more than 10 countries. From assisting the operation of network resources to improving business oriented intelligence, TTECH’s experts provide an expanding portfolio of packaged and custom solutions for telecom network operators.
More than 10 years of experience in Turkcell ICT
TTECH Center was put into serviceHC: 255 engineersFocus: Turkcell Group
Focus: Turkcell & Telia Sonera Group + Regional SalesHC: 410 engineers
TTECH company formed with its 44 engineers in TÜBİTAK-MAM Technological Free ZoneFocus: Turkcell
Focus: Turkcell & Telia Sonera GroupHC: 321 engineers
2009200820071994 - 2006 Today2010
Benefits of Fusion MiddlewareBenefits of Fusion Middleware
• Improved performance with 64 bit architecture
• Reduced time to market with new development capabilities
• Centralized Management & Monitoring
• Decreased operational costs
Turkcell SOA InfrastructureTurkcell SOA Infrastructure
Service OrchestrationService Orchestration
Business OrchestrationBusiness Orchestration
User Management
SubscriptionLifeCycle
Management
TechnicalTechnicalProduct&OfferProduct&Offer
CatalogCatalog
Inhouse CRM System Siebel CRM SMS
ChargingBilling Rating Collection CampaignManagement
CRMIntegration
(Synch)
Customer Self Care (Internet) Siebel SFA
BSS OSSGW
Order Decomposition
Order Fulfillment MNP Call
Center
BSS BSS OSS OSS
SOA Maturity LevelsSOA Maturity Levels
• Level 1: Service enablement
• Level 2: Process enablement
• Level 3: Business Integration and Process Improvement
Turkcell SOA ComponentsTurkcell SOA Components
Applications/Platforms
MessagingRouting
Monitoring Management
Adapters
BAM
Orchestration
Service SecurityPolicy Enforcement
OpenView
Optima
BRE
AQ
BPM
MonitoringManagement
BPEL/ESB CONSOLE
Maturity Level 1
Maturity Level 2
Maturity Level 3
JMS
MetadataRepository
Service Registry/
Repository
Service SecurityPolicy Enforcement
Turkcell SOA Programming ModelTurkcell SOA Programming Model
• Depends on AIA but does not use AIA as a product
• Enterprise Business Object (EBO)
• Enterprise Business Service (EBS)
• Application Business Connector Service (ABCS)
• Enterprise Business Flow (EBF)
• Siebel CRM Order
• Order Fulfillment Order (Canonical Data Model)
• 4
Model Driven Architecture
Turkcell Standards Based Design
SID Complaint Core Common Model
Extensibility Model
Enterprise Business Objects(EBO)Enterprise Business Objects(EBO)
Enterprise Business Service(EBS)Enterprise Business Service(EBS)
Siebel Get Customer Info
ABC Service
BSCSGet Customer Info
ABC Service
UDBGet Customer Info
ABC Service
Get Customer Information
Siebel CRM BSCS UDB
Application Business Connector Service(ABCS)Application Business Connector Service(ABCS)
Enterprise Business ServiceSIEBEL
Application Business Connector Service
Validate Enrich Transform
ABCS 1
ABCS 2
ABCS 3
UCCS
COMET
UDB
Enterprise Business Flow (EBF)Enterprise Business Flow (EBF)
• Pre Migration Steps
• Migration & Deployment
• Post Migration Steps
Migration ProcessMigration Process
• Partitions
• Importing DataSources
• Preparing 10G ESB processes for seamless migration
Pre Migration StepsPre Migration Steps
Upgrade ProcessUpgrade Process
Creating PartitionsCreating Partitions
• Custom Java Application using Embedded WLST
Migrating 10g datasources to 11g
Configuring deployment plan for datasources
Importing Data SourcesImporting Data Sources
• Ensure that projects are migrated in order of dependency.• Add soap service to routing rules if they don’t have one• Always check the “Invocable from an external web service”
Checklist for ESBChecklist for ESB’’SS
FilesFiles TasksTasks
components.xml List of BPEL & ESB Services
update.xml Custom migration script,containing the tasks below
ant-sca-upgrade.xml For upgrading the Soa 10G projects
ant-sca-compile.xml For compiling Soa 11G projects
ant-sca-package.xml For packaging projects
ant-sca-deploy.xml For deploying 11G projects and artifacts
Migration & DeploymentMigration & Deployment
• MDS
• Troubleshooting on Migrated Processes
• AQ , Fault Policy, Sensor Issues
Post Migration StepsPost Migration Steps
MDS : Artifact MigrationMDS : Artifact Migration
• Export dvm files from 10G environment$ESB_HOME/bin/export.sh dvm10G.zip
• Generate a SOA archive fileant -f ant-sca-upgrade.xml upgrade-xrefdvm -Dsource=location_of_the_zip_file -Dtarget=location_of_the_soa_archive
• Check the jar file contents, if you’re not using ISO-8859-1• Deploy the sca_XrefDvmFiles10g_rev1.0.jar
MDS : DVM Deployment Automatic ProcessMDS : DVM Deployment Automatic Process
• Navigate through your WebDav DVM addresshttp://yourserver/esb/slide/dvm
• Get dvm files from webdav• Rename *.xml files to *.dvm
for f in *.xml; do mv "$f" ${f//xml/dvm}; done
• Check the jar file contents, if you’re not using ISO-8859-1• Replace all dvm tags
10G Ver: <dvm name=”Trial" isNew="true">11G Ver: <dvm name=”Trial" xmlns="http://xmlns.oracle.com/dvm">
find . -type f -exec sed -i "s%isNew=\"true\"%xmlns=\"http://xmlns.oracle.com/dvm\"%" {} \;
• Deploy the sca_XrefDvmFiles10g_rev1.0.jar
MDS : DVM Deployment Manuel ProcessMDS : DVM Deployment Manuel Process
In bpel.xml<preferences>
<property name="myPref">MyCurrentValue</property></preferences>
In Process.bpel<copy>
<from expression="ora:getPreference('myPref')"/> <to variable=”any_variable" part="request" query="/ns21:UcapiMessage/@value"/> </copy>
BPEL Preferences in 10GBPEL Preferences in 10G
In composite.xml<component name="BPELProcess1">
<implementation.bpel src="BPELProcess1.bpel"/><property name="bpel.preference.myPref">MyCurrentValue</property>
</component>
In Process.bpel<copy>
<from expression="ora:getPreference('myPref')"/> <to variable=”any_variable" part="request" query="/ns21:UcapiMessage/@value"/> </copy>
BPEL Preferences in 11GBPEL Preferences in 11G
BPEL Preferences in 11G Changing ValueBPEL Preferences in 11G Changing Value
BPEL Preferences in 11G Changing ValueBPEL Preferences in 11G Changing Value
BPEL Preferences in 11G Changing ValueBPEL Preferences in 11G Changing Value
• Implement xpath function logic.
• Create ext-bpel-xpath-functions-config.xml configuration file
• Package as a jar file
• Copy the jar file to $DOMAIN_HOME/lib
Custom Xpath FuncionsCustom Xpath Funcions
• Review ESB Xpath header functions
• Review Usage of getDomainId()
ESB XPath Function Mediator Xpath Function
ehdr:setOutboundHeader mhdr:setProperty
ehdr:getRequestHeader mhdr:getProperty
Some Remainders on Migration ProcessSome Remainders on Migration Process
• AQ adapter is accessed differently in SOA Suite 11g.
• Post upgrade step must be taken into account for BPEL and Mediator
AQ Adapter Migration ProblemAQ Adapter Migration Problem
• After upgrading to Oracle Mediator, assign the "jca.aq.HeaderDocument" value from inbound to outbound in the .mplan file of the Oracle Mediator file.
AQ Adapter Migration Problem for ESBAQ Adapter Migration Problem for ESB
• Define a new variable of type string.• In the receive activity, make sure that the
jca.aq.HeaderDocument property gets written to the above variable.
• <invoke name="Invoke_1" inputVariable="Invoke_1_Enqueue_InputVariable" partnerLink="EnqueueClobPayload" portType="ns2:Enqueue_ptt" operation="Enqueue">
<bpelx:inputProperty name="jca.aq.HeaderDocument" variable="vInboundHeaders"/> </invoke>
AQ Adapter Migration Problem for BPELAQ Adapter Migration Problem for BPEL
• When upgrading an Oracle SOA Suite 10g application that uses this scenario, the WSDL file that is created during the upgrade does not contain the required binding information.
• Add the JCA entry to the WSDL file created by the upgrade.• Add the binding entry in the composite.xml file:<reference ui:wsdlLocation="aqMigrationProblemExample.wsdl" name="aqMigrationProblemExample"><interface.wsdl interface=
http://xmlns.oracle.com/pcbpel/adapter/aq/EnqueueRequest/#wsdl.interface(Enqueue_ptt)callbackInterface="http://xmlns.oracle.com/pcbpel/adapter/aq/DequeueReply/#wsdl.interface(Dequeue_ptt)xmlns:ns="http://xmlns.oracle.com/sca/1.0"/><binding.jca config="aqMigrationProblemExample_aq.jca"/></reference>
• Remove any unused WSDL references from the .bpel file
Upgrading an AQ Outbound Request – ReplyUpgrading an AQ Outbound Request – ReplyScenario for BPELScenario for BPEL
• Custom web application using 10g SOA DB
• Managing extended fault policy actions & error handling
• Using more indexes than default value for instance tracking
• Bulk resubmission for ESB&BPEL instances
• One by one recovery
Turkcell BO FrameworkTurkcell BO Framework
Turkcell BO FrameworkTurkcell BO Framework
Turkcell BO FrameworkTurkcell BO Framework
Turkcell BO FrameworkTurkcell BO Framework
Turkcell BO FrameworkTurkcell BO Framework
Turkcell BO FrameworkTurkcell BO Framework
• In 11g,fault policies and fault bindings are stored in the Oracle JDeveloper 11g project
• The fault policy file (fault-policies.xml) and fault policy bindings file
(fault-bindings.xml) in composite xml <property name="oracle.composite.faultPolicyFile">oramds:/apps/policies/fault-
policies.xml</property><property name="oracle.composite.faultBindingFile">oramds:/apps/policies/fault-
bindings.xml</property>
• We migrated our fault policies and bindings by our custom ant script(update.xml)
Migrating Fault PoliciesMigrating Fault Policies
<faultName> <condition> <action ref="bo-java-handler"/> </condition> </faultName>
<Action id="bo-java-handler"> <javaAction className="oracle.iccc.turkcellbo.eh.plugin.bo11g.EHPlugin11g" defaultAction="ora-terminate" > <returnValue value="DEFAULT" ref="ora-human-intervention"/> </javaAction> </Action>
Custom Fault Policy File for All CompositesCustom Fault Policy File for All Composites
• Deployment and configuration in 10g are not upgraded in Oracle JDeveloper 11g.
• In Oracle Fusion Middleware11g, you must create the 11g deployment plan manually, after you have migrated the application in Oracle JDeveloper.
• We migrated deployment plans by our custom ant script (update.xml)
Deployment PlansDeployment Plans
Composite Deployment in 11gComposite Deployment in 11g
Composite Deployment in 11gComposite Deployment in 11g
• Custom reusable file, in order to upgrade BPEL and ESB services.
• Updates invalid server reference
• Executes upgrade tasks (upgrade)
• Adds 11g .jws and .jpr files for importing into new JDeveloper (addfiles)
• Adds necessary files to support SOA-MDS
Update.xmlUpdate.xml
• Variable Sensors
• Fault Sensors
• Composite Sensors
• Activity Sensors
Using SensorsUsing Sensors
• Monitor incoming and outgoing messages at composite level
• Stored in sensorAction.xml
• During run time composite sensor data is persisted into database.
• Composite sensors only support the predefined DBSensorAction.
Composite SensorsComposite Sensors
Composite SensorsComposite Sensors
Composite SensorsComposite Sensors
• Used to monitor the execution of activities within BPEL
• bpel_process_name_sensor.xml : Defines the sensor definitions of a BPEL process.
• bpel_process_name_sensorAction.xml : Defines the sensor action definitions of a BPEL process.
• Database, JMS Queue, JMS Topic, Custom, JMS Adapter
Activity SensorsActivity Sensors
Activity SensorsActivity Sensors
• No need to define a correlation between asynchronous flows both running in 10g.
• Not able to receive callback from both 10g to 11g and vice-versa, without using any correlations prior versions of 11gPS2 and 10.1.3.5.
• Two solutionsApplying Patch Implementing Custom Correlation between 10g and 11g
10g TO 11g Asynchronous Invocation10g TO 11g Asynchronous Invocation
Defining Callbacks
From the SOA Infrastructure Menu... From the SOA Folder in the Navigator...1.Select SOA Administration > Common Properties.
1.Right-click soa-infra.2.Select SOA Administration > Common Properties.
SummarySummary
• Based on Oracle 11g migration scripts
• Additional migration scripts and tips for seamless migration
• A guide for any enterprise
Q & A