340 likes | 515 Views
Building a PaaS for Oracle Unified Business Process Management Suite 11g.
E N D
Building a PaaS for Oracle Unified Business Process Management Suite 11g The huge demand for BPM solutions along with IT consolidation efforts present the need for a BPM platform as a service (PaaS) solution. In this session, Thomson Reuters explains the strategy and architecture of its PaaS implementation for Oracle Unified Business Process Management Suite/Oracle SOA Suite 11g. Learn how Thomson Reuters is using a multitenant architecture on shared infrastructure to host these applications, kick-starting process initiatives in diverse business units while controlling costs. The presentation discusses the history of BPM at Thomson Reuters, the motivation for a PaaS, architectural considerations and the multitenancy model, subsystem specs, topology and configuration, and strategies for platform provisioning and management WALI ANSARY Lead Software Engineer, BPM Platform
Agenda • BPM at Thomson Reuters • Plan: PaaS Approach & Overview • Build: Architecture & Implementation • Run: Platform Management & Operations • Lessons Learned
Thomson Reuters – Our Business Financial & Risk Legal Tax & Accounting IP & Science Trading Platforms Legal Research Corporate Intellectual Property Investors Data Legal Practice Tooling Professional Scientific & Scholarly Research Marketplaces Marketing Knowledge Solutions Life Sciences Governance Risk & Compliance Government Government Global Growth & Operations Reuters News Media
BPM opportunities at Thomson Reuters • Content is the common thread that binds these diverse business • The assembly lines of this information factory generally follow a similar workflow pattern • There are systems and services, as well as thousands of people fulfilling tasks along these pathways • Managed services also have workflow needs
Agenda • BPM at Thomson Reuters • Plan: PaaS Approach & Overview • Build: Architecture & Implementation • Run: Platform Management & Operations • Lessons Learned
Goal Establish a platform-as-a-service solution to host Oracle BPM/SOA Suite 11g for diverse business units
General Considerations & Requirements • Get tenants up and running quickly • All implementations will be internal-facing • Leverage mature Enterprise IT assets • Governance regime must respect BU diversity • Primary focus on BPM, not entire Fusion Middleware
Agenda • BPM at Thomson Reuters • Plan: PaaS Approach & Overview • Build: Architecture & Implementation • Run: Platform Management & Operations • Lessons Learned
Multi-tenancy – objectives and options • Administrative Isolation • Configuration: Each tenant has own Domain • Binaries: Each tenant potentially has own Middleware Home • Runtime Isolation • Minimize/eliminate resource contention and spillover effects • Sharing Continuum: • Share nothing – separate host per tenant runtime • Share everything – share large pool of high-capacity hosts, and manage isolation through careful distribution and allocation of resources between multiple runtimes per host
Multi-tenancy – Apartment Complex Model • The Platform – provides the structure: • Provisions tuned, secured, isolated, and configured “dial-tone” SOA/BPM WebLogic Domains to BUs • Makes and enforces governance rules for the tenants • Upgrades, patches, tunes, scales, and monitors the WebLogic/Fusion Middleware layers • Abstracts the complexities of the WebLogic/Fusion Middleware server environment by providing services and utilities to BUs to perform bare-minimum administration • Consults BU development teams on BPM/SOA implementations The Tenant – occupies a unit: • Is responsible for all phases of the BPM/SOA composite lifecycle – analyze, design, develop, support, maintain, version, retire… • Deploys to their own “unit” • Complies with governance rules laid out by the Platform BPMS Platform 4b 4a 3b 3a 2a 2b 1
Start with existing IT assets • Acquire App Server Hosts and Oracle DB RAC • Mount shared disk for storing copies of binaries
Setup Middleware Home with only WebLogic • Setup Node Managers
Prepare for tenant • Mount NAS volumes for Domain Home and Runtime Artifacts • Create Schemas with RCU • Setup DNS and Big/IP VIPs • Rollout BPM/SOA binaries • Create tenant linux accounts
Configure Domain on NAS • All references to Middleware Home through symbolic link • Setup directory structure for runtime artifacts
Repeat for new tenant, capacity allowing • Excess capacity reserved for Whole Server Migration
Multi-tenancy – Resource Allocations • Currently • Configurable resources are capped evenly at configuration time (e.g. disk usage, DB connections, etc) • Runtime profile and resource consumption monitored and alerted, and manually handled reactively (e.g. CPU, native memory, file descriptors, etc.) • Exploratory: • OS-level resource quota allocation per WebLogic Server process (pam, quota, lxc) • Automated corrective-action based off alerts • Oracle Database Resource Manager • Custom Work Managers
Monitoring & Alerting: Cloud Control 12c • The Platform is responsible for monitoring and alerting on the health of server environment • OEM Cloud Control 12c • Ride enterprise-wide initiative to use OEM as the primary asset for monitoring and alerting • Supplemented with a combination of: • WLDF Watches and Notifications • WLDF metrics harvested into DB store • Cron-based scripts, some to be later replaced with User-defined Metrics in OEM Cloud Control 12c
Middleware: Stack • Note the absence of OHS and OSB • No pressing need, although that could change
Choosing Physicals over VMs • Physicals over VMs for agility, performance, efficiency, and administrative simplicity • Each tenant’s WebLogic Domain gets a slice of the physical infrastructure
WebLogic: Standard Topology & Config • Admin Server (2GB) , 2-node SOA Cluster (8-16GB), 1-node BAM Cluster (2GB) • Dedicate one host for Admin Servers, even-distribute Managed Servers across other hosts • Configure for manual Whole Server Migration • Leave breathing room on any N-1 to accommodate demand from 1
WebLogic: Standard Topology & Config • Configure multi-LDAP virtualization across multiple Active Directory domains and Embedded LDAP • Develop and integrate custom WebLogic Security Providers using SSPIs to integrate with non-standard corporate SSO provider
Middleware: Heavy usage of Shared Storage • (Nearly) everything is on shared storage • IT has dedicated storage team with years of experience supporting highly-available fault-tolerant NetApp NAS • Simplicity in administration primary driver: • Fewer copies of Middleware Homes = fewer patches to apply • No domain pack/unpack needed – all hosts point to the single copy of the Domain Home • Single spot to access log files • Future direction to migrate various file stores (OPSS, JMS, Tlogs) to the DB, further reducing the overall IOPS pressure on NAS filers
SCM: Build, Deploy, & Configure • Customized WLST scripts only way for tenants to perform SCM activities • Simplifies, limits, abstracts, and validates for tenants – our value-add on top of out-of-the-box tools • Helps with governance enforcement • Works around granting administrative access • Sudo-access to SCM scripts to tenant developers/release management on the Admin Host in each environment • Pluggable into tenant’s Continuous Integration tool of choice
Agenda • BPM at Thomson Reuters • Plan: PaaS Approach & Overview • Build: Architecture & Implementation • Run: Platform Management & Operations • Lessons Learned
Platform Management • Consists of internal operations to run the platform • Goals: • Control human cost of performing these operations. • Strive for consistency and control drift • Ensure quality • Approach: • Use BPM for repeatable internal processes
Platform Management: Domain Provisioning • Fully automated on the Middleware Tier –provisioning of BPM/SOA Domain in minutes • Requests fulfilled by partner teams for Big/IP VIPs, Floating IPs, DNS records, AD Groups, DB schemas using RCU, Admin Host Linux accounts
Platform Management: Patching • Multiple tenants’ Domains by default share the same Middleware Home, but have ability to get their own • Never patch an already provisioned MWH; accumulate interim patches, alpha-test, beta-test, then provision a new MWH • If a tenant needs a patch, re-point their domain to a patched MWH (update symbolic link and domain-registry.xml) • Control the number of MWHs; encourage tenants to keep moving
Platform Management: Work Streams • Independent Work Streams create “stepping stones” for tenant upgrades: • Middleware Home Image -> T2P-based tool to create Middleware Homes of a specific version/patch level • Domain Configuration Template (DCT) –> Domain Template and WLST-based tool to create and upgrade SOA/BPM Domain with specific configuration and topology • SCM – WLST, bash, and ant-based tools for tenants to perform deployments and configuration updates
Platform Management: Work Streams • Each Work Stream: • Releases versionable artifacts, each new release containing latest updates • Involves regression testing before the releasing artifact • Catalogs compatibility with artifacts from other Work Streams - Our way of saying “you have to be on version/patch X of the binaries to use configuration/topology Y”
Agenda • BPM at Thomson Reuters • Plan: PaaS Approach & Overview • Build: Architecture & Implementation • Run: Platform Management & Operations • Lessons Learned
Lessons Learned • Build a team with strong WebLogic administrator, and engineers who “get BPM and SOA” • Establish strong relationship with Oracle Product Management, Oracle Support, and use partner help • Don’t overinvest in engineering in areas that aren’t your core-competency (e.g. monitoring tools, automation tools, dynamic elastic clustering, etc.) • Let your customers shape your governance regime, and over time