Upload
swarup-sawant
View
177
Download
11
Embed Size (px)
Citation preview
Fast-Switch Integration ScenariosBetween SAP PI RuntimesSAP NW Know-How Network Conference Series
Jin Shin, SAP NW RIG USJuly 14, 2010
© SAP 2008 / Page 2
1. Introduction and PI Federation2. Fast-Switching Use Cases and Process3. Switch Using Directory API4. Switch Using Web Dispatcher5. Summary
Agenda
Global PI Landscape
DB
Adapter EngineAE1
DB
Adapter EngineXE1
DB
Integration ServerXYZ
DB
Adapter EngineAE3
DB
Adapter EngineAE2
DB
Integration ServerABC
Factors Leading to Distributed (“Federated”)PI Landscape
Customer-driven reasons that lead to federationSeparation of A2A and B2B processes
For security reasons internal (A2A) and external (B2B) communication are separated ontodifferent PI/XI systems
Separation by process typesSeparate PI/XI systems for different process types
Organizational RequirementsDifferent PI/XI systems shall reflect the business strategy or company setup
Business Continuity (specific use case: synchronization)Bypass the non-availability of a PI/XI system caused by maintenance activities or systemoutages via a redundant/second PI/XI systemBoth PI/XI systems must offer an identical set of services (system duplication)
RIG Checklist from Diverse CustomerWorkshops
Reasons for Central PI:Reduced effort in regards to: operations, maintenance and monitoringOne source of truthEconomics of scaleIn companies which are mainly common and have already centrally organized processes
Reasons for Federated PI:Network constraintsSeparated company divisions (more than 90% communication in the own division)Geographically distributed and organized organization (more than 90% communication in onearea)Downtime constraints and no overlapping downtime period across whole company divisions(or impossible to organize)
Mixed approaches and the reasons:One PI for central processes (HR, Financials, Master data) and decentral PI´s for divisions.
SAP PI 7.1 ff with DAE´s (switch of mainly sync portal scenariosfrom DAE1 to DAE2 with dispatcher in case of planned downtime)
PI1 PI3
PI4 Appl. 3 (ABAP+Java)
PI4CI+CAE
PI4 (Web Dispatcher)
Cluster
PI4 DAE1(DB + Java)
Sync. interfaces
RI4 DAE2(DB + Java)
AI4 DAE2(DB + Java)
PRD DAE1(DB + Java)
PI2
Development Test Production
Production Production
Preprod
Dispatcher
url 1
url 2
url 3url 3
url 2
url 1
Architecture of SAP PI (4 SID´s with 1 global and 3 regionalPI´s for central development and decentral runtime)
SAP
PI (US)
WebDispatcher
PI (EMEA)
WebDispatcher
PI (APJ)
WebDispatcher
SAP SAP
GlobalSLD
Other SAPComponentsusing SLDD PI (Global)
WebDispatcher SAP
Global 1
SAPGlobal 2
PI instancesconnected via
Web Dispatcher
Master datadistribution via
Global PI toregional SAP
systems
Master DataTransactional Data
SLD sync
SAP PI with DAE and J2SE´s(for global and local execution)
Palo Alto New York EMEA
> 25 apps < 5 apps
Dallas
~10 apps
J2SE J2SEDAE
PI (Global)
SAP ECC
100+Interfaces
~50Interfaces
< 10Interfaces
© SAP 2008 / Page 9
1. Introduction and PI Federation2. Fast-Switching Use Cases and Process3. Switch Using Directory API4. Switch Using Web Dispatcher5. Summary
Agenda
Use Cases for Fast-Switching between PIRuntimes
Primary Use Case for Runtime Engine SwitchBusiness Continuity
Facilitate in minimizing planned downtimes (e.g. system maintenance activities)Not a replacement for HA where automatic failover takes place in unplanned downtimes
Secondary Use CaseQuickly switchover between AEs (e.g. when new De-central AEs deployed)
Available PI Runtimes:Adapter Engine (e.g. Central and De-central AE)
Especially starting with AAE (7.1 EHP1) – more autonomous runtime with local UMEMore distribution and deployments foreseen for AAE compared to previous releases
Integration ServerEither completely redundant PI system or specific scenario duplication (e.g. missioncritical processes)
AEX (Advanced Adapter Engine Extended – planned for 7.3 release)No ccBPM scenarios
Fast-Switching Tools and Scope
ToolsDirectory APISAP Web Dispatcher
ScopeSwitch to separate adapter engine
AAE local processing scenarios– Standard adapter engine technical adapters (except RFC)
Switch to separate PI instanceStandard adapter engine technical adapters (except RFC)ABAP based adapters (except IDoc)
Fast-Switching Process Summary
Switch to separate adapter engineStop AE channels planned for switchoverExecute mass channel switchover to different AE via Dir API enabled application
Without activation to validate changes (especially in initial usage)Activate channels (if necessary)Adjust Web Dispatcher configuration to route sender requests to different AE
* Requires at least one De-central AE
Switch to separate PI instanceStart AE channels planned for switchoverAdjust Web Dispatcher configuration to route sender HTTP requests to different PI instance
* Requires at least one additional PI instance* Requires ES Repository, ID, and SLD landscape content sync as prerequisite
Restrictions
RestrictionsNo RFC protocol-based scenarios (e.g. IDoc/RFC)EOIO scenarios may be executed in wrong order, as the sequence is not synchronizedbetween different runtimes. The quality of service is only guaranteed for one runtime.Solution: stop until empty and the execute switch.EO scenarios may have duplicates. Solution: stop until empty and the execute switch.Outstanding acknowledgements must be receivedNo ccBPM scenarios when switching to AAE or AEXFile Adapter – Transport Protocol “File System (NFS)”
Values for Source/Target Directory should avoid local values (e.g. /data or D:/data)Otherwise, switch to new AE will process local server file systemUse a shared location (e.g. //<server>/data); may require permissions for <SID>adm andSAPService<SID> users)
***Need comprehensive planning and strict procedures when switching betweenruntimes.
© SAP 2008 / Page 14
1. Introduction and PI Federation2. Fast-Switching Use Cases and Process3. Switch Using Directory API4. Switch Using Web Dispatcher5. Summary
Agenda
Directory API
Integration Directory Programming Interface (Directory API) allows for :Mass maintenance of ID contentOption to create your own views to maintain individual ID contentExposed as web servicesAvailable on all XI/PI releases (different API version depending on release)
Purpose in Fast-Switching ContextMain goal: Switch AE designation using Dir API services
Required Dir API Services
1. Communication Channel service
2. Change List service
Different versions depending upon release:
WSDLs Source
1. Enterprise Services Repository (ES Repository)
2. Web Service Navigator (WS Navigator)
Service Call Sequence Details
Change List CreateExplicitly specify a change list to keep all newly changed communication channel objects in a single change list
Communication Channel QueryBasically a search operationResponse serves as input for next Read operation
Communication Channel ReadCC elements (party, component, channel) require an exact match in order for communication channel object details to bereturned. No wildcards allowed; 0..unbounded cardinality.Response serves as input for next Change operationPassword attribute values are not returned in the Read response
Communication Channel ChangeNo delta handling of attribute changes (exception – password attributes for 7.1 EHP1). All attributes must be included in theChange request – like a Create operation.Password Handling (must be supplied in Change request (3.0, 7.0, 7.1); Delta handling (7.1 EHP1 and beyond) – existingpasswords are kept
Change List ActivateChangeListID from initial Change List Create operation should be used.Activation should be optional – opportunity to check objects in ID before activation
CommunicationChannel Query
CommunicationChannel Read
CommunicationChannel Change
Change ListActivateChange List Create
© SAP 2008 / Page 19
1. Introduction and PI Federation2. Fast-Switching Use Cases and Process3. Switch Using Directory API4. Switch Using Web Dispatcher5. Summary
Agenda
SAP Web Dispatcher
Purpose in Fast-Switching ContextRoute sender application HTTP requests to a different PI runtimeNon-disruptive manner – sender applications can always point to one addressCentral change in one place to route to PI runtime address
For HTTP Requests OnlySOAP (Adapter Engine)HTTP (Integration Engine)Proxy (Integration Engine)
© SAP 2008 / Page 20
Sample Landscape with Web Dispatcher
SAP
Web Dispatcher
PI1
IntegrationEngine
Central AdapterEngine
PI2
IntegrationEngine
Central AdapterEngine
DI1
DecentralAdapter Engine
Non-SAP
SOAP
HTTP | XI Proxy
Web Dispatcher for Multiple Systems
Starts from Release 7.2Multiple backend system support currently only for 7.2 backends “officially”Multiple backend system support to lower releases technically possibleOfficial support planned
Check Note 908097 – “SAP Web Dispatcher: Released releases and applying patches”
Mechanisms for Separating RequestsModification Handler (rules, conditions, variables)Access Point (combination of host name and port)URL Prefix (identify requests based URL prefixes)
For the specific purpose of routing requests to a “switched” PI runtime, only theModification Handler and Access Point mechanisms are relevant since theURL prefixes used for the various SAP PI runtimes would be the same whenperforming a switch.
© SAP 2008 / Page 22
Modification Handler
Modifications of HTTP RequestsManipulation of HTTP header fields in a request (append, remove, change)Filtering requests (by creating an error page)Redirecting requests to another pageManipulation of URL values (path and query string)Use of regular expressions for increased flexibilityConditional logicDefine rules in sepate rules action file
Fast-Switching ContextBuild conditions based on HTTP host header field
Variable %{HTTP_HOST} holds HTTP host header in requestHost aliases created in advance for Web Dispatcher systemInternal property x-sap-webdisp-target-sid set to target system conditionally according hostheader
© SAP 2008 / Page 23
Configure Web Dispatcher for Normal Usage
Configure Web Dispatcher for Normal UsageSpecify the rules file (WD profile configuration)Define rules to route requests to target systems (e.g. below);
#PI1 requestsif %{HTTP_HOST} regimatch wd_pi1*SetHeader x-sap-webdisp-target-sid PI1 [break]#PI2 requestsif %{HTTP_HOST} regimatch wd_pi2*SetHeader x-sap-webdisp-target-sid PI2 [break]#DI1 requestsif %{HTTP_HOST} regimatch wd_di1*SetHeader x-sap-webdisp-target-sid DI1 [break]
© SAP 2008 / Page 24
Configure Web Dispatcher in Switch Scenario
Configure Web Dispatcher in Switch ScenarioSimple edit to the rules fileModify property x-sap-webdisp-target-sid to switched target systemExample – switch from PI1 to DI1:
Old Value:if %{HTTP_HOST} regimatch wd_pi1*SetHeader x-sap-webdisp-target-sid PI1 [break]
New Value:if %{HTTP_HOST} regimatch wd_pi1*SetHeader x-sap-webdisp-target-sid DI1 [break]
© SAP 2008 / Page 25
Access Point
Access Point of the Web DispatcherUnique access point for each connected systemConfigured based on ports and/or IP addresses (if available)
Fast-Switching ContextRequests routed to connected PI system based on which WD access point used by senderE.g. – one IP address or hostname can be used w/ multiple portsSRCSRV property of WD parameter wdisp/system_<xx> used to map ports to connected PIsystems
© SAP 2008 / Page 26
Configuring Web Dispatcher Ports (NormalUsage)
Configuring Web Dispatcher Access Point (Ports) for Normal UsageAdditional ports configured in WD profile using parameter icm/server_port_<xx>
icm/server_port_0 = PROT=HTTP, PORT=<wd_port_1>icm/server_port_1 = PROT=HTTP, PORT=<wd_port_2>
Map ports to connected PI systems using parameter wdisp/system_<xx>
wdisp/system_0 = SID=PI1, MSHOST=<host_pi1>, MSPORT=<ms_pi1_port>,SRCSRV=*:<wd_port_1>
wdisp/system_1 = SID=DI1, MSHOST=<host_di1>, MSPORT=<ms_di1_port>,SRCSRV=*:<wd_port_2>
Property SRCSRV is used to indicate which Web Dispatcher port is mapped to the targetsystem.Wildcard character ‘*’ indicates that any valid Web Dispatcher IP address or host alias canbe used.
© SAP 2008 / Page 27
Configuring Web Dispatcher Ports (SwitchScenario)
Configuring Web Dispatcher Access Point (Ports) for Switch ScenarioSimple edit to the WD profileModify port to system mapping assignment for configured parameter wdisp/system_<xx>Example – Switch from PI1 to DI1
Old Value:wdisp/system_0 = SID=PI1, MSHOST=<host_pi1>, MSPORT=<ms_port_pi1>,SRCSRV=*:<wd_port_1>
New Value:wdisp/system_0 = SID=DI1, MSHOST=<host_di1>, MSPORT=<ms_port_di1>,SRCSRV=*:<wd_port_1>
SRCSRV property remains unchanged since this is the entry port for PI1 requests.All other existing rules should remain in place.Requests coming through port <wd_port_1> will now go to DI1.
© SAP 2008 / Page 28
© SAP 2008 / Page 29
1. Introduction and PI Federation2. Fast-Switching Use Cases and Process3. Switch Using Directory API4. Switch Using Web Dispatcher5. Summary
Agenda
Summary
Fast-switching for business continuity under federated PI contextUse existing technology to facilitate in minimizing planned downtimesMore De-central AAE deployments foreseen w/ added mediation features and moreautonomous status
Many common SAP NetWeaver PI integration scenarios qualify for fast-switchingSome restrictions apply (e.g. RFC based scenarios, exhaust EO/EOIO queues)
Main RequirementsDirectory APIDispatcher (e.g. SAP Web Dispatcher 7.2)De-central AE (w/ local UME); separate PI instanceESR/ID content sync (for PI instance and AEX switchovers)
© SAP 2008 / Page 30
© SAP 2008 / Page 31
Further Information
SAP Help Portal:
SAP TechEd 2010
SAP SDN Community
Integration Directory Programming Interface
SAP Web Dispatcher for Multiple Systems
Session PMC212: Federated Process Integration - Robust and Scaling SAPNetWeaver PI Landscapes (Berlin, Las Vegas)
How-to Guides (Coming Soon):
How To... Fast-Switch Integration Scenarios Between SAP PI RuntimesPart I: Directory API
How To... Fast-Switch Integration Scenarios Between SAP PI RuntimesPart II: Web Dispatcher
© SAP 2008 / Page 32
Thank you!
© SAP 2008 / Page 33
Appendix
Near Zero Downtime Maintenance for SAPNetWeaver PI 7.1
Business valueProcedure for application of Support Package Stacks on PI system with businessdowntime reduced to one system restart
This holds for updating the SAP software – OS or DB updates not included
Update is performed on mirror system while production system is still available untilfinal switch to new SP level
All standard PI scenarios are fully available. Examples:Synchronous/asynchronous messagesEOIO, ccBPMIDOC, PlainHTTP, file adapter,…Mapping (including value mapping)
Normal productionNo restrictions
Normal productionNo restrictions
Near Zero Downtime Maintenance for SAPNetWeaver PI: Mirror update with back copy
Customer System Mirror System
Copied Customer System
Clone productive systemexcept XPI processing data
SP nSP n
SP n+mSP n+m
SP nSP n
SP nSP n
SP n+mSP n+m
Normal productionNo restrictions
Normal productionNo restrictions
Restricted productionOnly allow XPI
processing(all scenarios)
No non-XPI changeoperations
No config changes/design time changes
Restricted productionOnly allow XPI
processing(all scenarios)
No non-XPI changeoperations
No config changes/design time changes
Standard updateApply SP on mirror
systemXPI processing data
is not affected
Standard updateApply SP on mirror
systemXPI processing data
is not affected
System downStop production
Switch shadow tables
System downStop production
Switch shadow tables
Back copyCopy back DB tables
not containing XPIprocessing data
Use shadow tablesas copy target
Back copyCopy back DB tables
not containing XPIprocessing data
Use shadow tablesas copy target
Copy back DBexcept XPI processing data
t
© SAP 2008 / Page 36
Further Information – Near Zero Downtime
SAP SDN CommunityMinimizing Downtime for SAP Software Maintenance
Business Continuity – Best Practices to avoid “Unplanned Downtime” –Webinar Presentation
© SAP 2008 / Page 37
Copyright 2008 SAP AGAll rights reserved
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changedwithout prior notice.
Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors.
SAP, R/3, xApps, xApp, SAP NetWeaver, Duet, SAP Business ByDesign, ByDesign, PartnerEdge and other SAP products and services mentioned herein as well as their respective logos aretrademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned and associated logos displayedare the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary.
The information in this document is proprietary to SAP. This document is a preliminary version and not subject to your license agreement or any other agreement with SAP. This documentcontains only intended strategies, developments, and functionalities of the SAP® product and is not intended to be binding upon SAP to any particular course of business, product strategy,and/or development. SAP assumes no responsibility for errors or omissions in this document. SAP does not warrant the accuracy or completeness of the information, text, graphics, links, orother items contained within this material. This document is provided without a warranty of any kind, either express or implied, including but not limited to the implied warranties ofmerchantability, fitness for a particular purpose, or non-infringement.
SAP shall have no liability for damages of any kind including without limitation direct, special, indirect, or consequential damages that may result from the use of these materials. This limitationshall not apply in cases of intent or gross negligence.
The statutory liability for personal injury and defective products is not affected. SAP has no control over the information that you may access through the use of hot links contained in thesematerials and does not endorse your use of third-party Web pages nor provide any warranty whatsoever relating to third-party Web pages
Weitergabe und Vervielfältigung dieser Publikation oder von Teilen daraus sind, zu welchem Zweck und in welcher Form auch immer, ohne die ausdrückliche schriftliche Genehmigung durchSAP AG nicht gestattet. In dieser Publikation enthaltene Informationen können ohne vorherige Ankündigung geändert werden.
Einige von der SAP AG und deren Vertriebspartnern vertriebene Softwareprodukte können Softwarekomponenten umfassen, die Eigentum anderer Softwarehersteller sind.
SAP, R/3, xApps, xApp, SAP NetWeaver, Duet, SAP Business ByDesign, ByDesign, PartnerEdge und andere in diesem Dokument erwähnte SAP-Produkte und Services sowie diedazugehörigen Logos sind Marken oder eingetragene Marken der SAP AG in Deutschland und in mehreren anderen Ländern weltweit. Alle anderen in diesem Dokument erwähnten Namenvon Produkten und Services sowie die damit verbundenen Firmenlogos sind Marken der jeweiligen Unternehmen. Die Angaben im Text sind unverbindlich und dienen lediglich zuInformationszwecken. Produkte können länderspezifische Unterschiede aufweisen.
Die in diesem Dokument enthaltenen Informationen sind Eigentum von SAP. Dieses Dokument ist eine Vorabversion und unterliegt nicht Ihrer Lizenzvereinbarung oder einer anderenVereinbarung mit SAP. Dieses Dokument enthält nur vorgesehene Strategien, Entwicklungen und Funktionen des SAP®-Produkts und ist für SAP nicht bindend, einen bestimmtenGeschäftsweg, eine Produktstrategie bzw. -entwicklung einzuschlagen. SAP übernimmt keine Verantwortung für Fehler oder Auslassungen in diesen Materialien. SAP garantiert nicht dieRichtigkeit oder Vollständigkeit der Informationen, Texte, Grafiken, Links oder anderer in diesen Materialien enthaltenen Elemente. Diese Publikation wird ohne jegliche Gewähr, wederausdrücklich noch stillschweigend, bereitgestellt. Dies gilt u. a., aber nicht ausschließlich, hinsichtlich der Gewährleistung der Marktgängigkeit und der Eignung für einen bestimmten Zwecksowie für die Gewährleistung der Nichtverletzung geltenden Rechts.
SAP übernimmt keine Haftung für Schäden jeglicher Art, einschließlich und ohne Einschränkung für direkte, spezielle, indirekte oder Folgeschäden im Zusammenhang mit der Verwendungdieser Unterlagen. Diese Einschränkung gilt nicht bei Vorsatz oder grober Fahrlässigkeit.
Die gesetzliche Haftung bei Personenschäden oder die Produkthaftung bleibt unberührt. Die Informationen, auf die Sie möglicherweise über die in diesem Material enthaltenen Hotlinkszugreifen, unterliegen nicht dem Einfluss von SAP, und SAP unterstützt nicht die Nutzung von Internetseiten Dritter durch Sie und gibt keinerlei Gewährleistungen oder Zusagen überInternetseiten Dritter ab.
Alle Rechte vorbehalten.