440 likes | 614 Views
Best Practices for Building an Enterprise SOA Infrastructure. Antony Reynolds Craig Barr Matt Wright Ramkumar Menon. What We Will Do. Enterprise Deployment Guide Explain the why Identify best practice Demonstrate simplified enterprise deployment. Who We Are. Rubicon Red. Experience
E N D
Best Practices for Building an Enterprise SOA Infrastructure Antony Reynolds Craig BarrMatt Wright RamkumarMenon
What We Will Do • Enterprise Deployment Guide • Explain the why • Identify best practice • Demonstrate simplified enterprise deployment
Rubicon Red • Experience • Interacted with over 100 Oracle BPM / SOA Suite customers in 6 years • Assisted in the rescue of failing projects. • Oracle Partner Network - SOA Specialization • Knowledge • Involved in first beta of Oracle SOA Suite 11g in 2007. • Co-authored ‘Oracle SOA Suite 11gR1 Developer’s Guide’ • Over 30 FMW specialist consultants – one of the largest SOA Specialized partners in ANZ • Connected • Close relationships with local and Oracle HQ based resources • Lend credibility to issue escalation • Interact with key members of product support and development team
Program Agenda • Enterprise Deployment Requirements • EDG Solution • Virtualization Alternative • Automation Approach
Enterprise Requirements - Availability • In event of server failure • No loss of service • Recovery of persistent messages • Recovery of in-flight transactions • Achieved by • Active-active configuration • Warm standby • Cold standby
Enterprise Requirements - Scalability • Ability to increase capacity of system • Only scale components needing it • Achieved by • Scale out – more servers • Scale up – bigger servers
Enterprise Requirements - Security • Secure servers • Prevent direct access to • App tier • DB tier • Limit services exposed • Isolate tiers • Only adjacent tiers communicate • Secure services • Authorized users only • Achieved by • Network port restrictions • Access management
The Enterprise Deployment Guide • Oracle Best Practice Document • Strong on What • Weak on Why • Lacking Options • 346 Detailed Pages
Virtual Server Names soa.mycompany.com • What • Function specific names • Why • Separate admin from soa traffic • Separate internal from external traffic • Alternatives • Separate DNS for internal/external • OSB for all external access • 3.2 Network osb.mycompany.com admin.mycompany.com soainternal.mycompany.com
Load Balancer • What • Expose virtual hosts • SSL termination • Why • IP load balancing • SSL acceleration • Port mapping • Alternatives • OTD/SLB • 3.3 Network
Virtual IPs • What • Managed servers floating IP • Why • Whole server migration • Admin server failover • Alternatives • Virtualization • 3.4 Network
Firewalls • What • Restrict access between layers • Why • Isolate tiers • Alternatives • May not be needed • Separate management network • Dedicated replication network • 3.6 Network
Oracle Homes • What • At least 2 homes • Why • Separate binary from config • Resilient to corruption • Simplify patching • Alternatives • 1 local binary per server • 4.3.1 File Systems
Domain Directories • What • Separate admin &managed domain dirs • Separate manageddomain dirs per server • Why • Reduce risk of corruption • Alternatives • Managed domain dirs on local storage • 4.3.2 File Systems
JMS File Stores & Transaction Logs • What • Shared folder forALL servers • Why • Support recovery of JMS msgs • Support recovery of XA xacts • Alternatives • Use database for JMS queues • Use database for TLogs • 4.3.3 File Systems
DB Requirements • What • RAC • GridLink • UTF-8 • Why • High availability & Scalability • FCF, RCLB & affinity • International character sets • Alternatives • Single instance with cold failover • 5.2 Database
DB Service & Transactions • What • Optimized SOA service • Transaction privileges • Why • Load distribution & targeting • Enables XA recovery • 5.3,5.5 Database
OHS • What • Virtual Hosts • WL_Plugin • Why • Separate traffic • Load balancing • Alternatives • OTD • Non-Oracle web server • Same host as SOA • No OHS • 7. Web Tier
Managed Servers & Clusters • What • Distributed JMS destinations • Cluster address • FrontEnd host • Why • Scalability & Resiliency • Internal service lookup • Correct redirection • Alternatives • DB store • 9. SOA, 10. BPM, 11. OSB, 12. BAM
Server Migration • What • Configure node manager • Why • JMS messages recovery • XA transaction recovery • Singleton servers • Alternatives • Virtualization • DB JMS store • Cluster services
Coherence • What • Use WKA discovery • List subset of servers • Why • Avoid cross talk • Only need 1 listed server • Bad Alternative • Change default multicast address
Virtualization • Run managed servers in VM • VM have fixed IP • No floating IP for MS • No whole server migration • Failure of VM or VM host • Restart on available server • Live migration • Shared disk for domain/jms/tx • Maintains state
Performance • Database is important • Remove OHS tier • Separate domains • Long running • Short running • SLA based • Temporal load variation • User vs System traffic • Exalogic
Exalogic • New SOA EDG for Exalogic • Has options!!!! • Use OTD • Optimized with Exadata • Infiniband for internal communication • WLS & SOA optimizations • Physical or virtual
Drawbacks of a Manual Approach Manual setup can be • Time consuming • Error prone Which leads to • Pain & stress • Delays in delivery • Lack of consistency • Wasted effort • How do you delivery quickly and consistently?
Automation • What is available out-of-the-box?
Validation Script • An automated script to check correctness • Ensures targets are defined as per EDG • Uses WLST • Target Verification Script available for download at https://blogs.oracle.com/reynolds/entry/target_verification • How do we know we built the environment correctly?
Introduction Rubicon Red MyST • Declarative Configuration Management • Pre-built templates • Multi Node, Single Node, Complex, Simple topologies • No scripting or coding required • Rapid Provisioning • Define, Execute and Report on environments • Reduce effort to minutes for most complex topologies • Continuous Delivery Platform • SDLC Support for FMW Projects • Automates deployment across full set of FMW Components • Extensible Automation Framework • Supports extensions in multiple technologies • Add tasks and validators for custom components • 100% Automated Rollout of EDG Environments
Extensible Pluggable Framework • Example products supported: • Oracle WebLogic Server • Oracle SOA Suite (including B2B) • Oracle BPM Suite • Oracle AIA Foundation Packs • Oracle AIA Pre-Built Integration • Oracle Service Bus • Oracle Data Integrator • Oracle Business Intelligence • Oracle Governance (OER / OSR) • Oracle WebCenter Portal & Content • Oracle Repository Creation Utility • Oracle VM • Oracle EM 12c Cloud Control • Oracle BPM Process Accelerators • Oracle Business Activity Monitoring • Oracle Business Transaction Management • Security Administration • OPatch + Smart Update • Java Connector Architecture • User Messaging Service • Oracle HTTP Server • Oracle JRockit / Sun JDK
Benefits of Automation • Deliver significantly faster! • Deliver more reliably& consistently • Reduce overall risk • Decrease time-to-market • Delivery at the click of a button
Takeaways • EDG is a Guide not a Gospel • Automation enables a different game