Deploy IBM Sterling Order Management Software on Oracle Cloud and Microsoft Azure

IBM Sterling Order Management Software is a widely implemented retail order management system. Over half of the organizations still run the application on increasingly aging infrastructure on-premises. When considering cloud migration, organizations want to use the best services from multiple cloud providers for performance, cost, and vendor relationship reasons. The multicloud split-stack architecture is a common solution for packaged application migration to the cloud.

In this customer-inspired reference architecture, a leading global retailer has migrated the IBM Sterling Order Management Software database from an on-premises colocation data center to Oracle Base Database Service on Oracle Cloud Infrastructure (OCI) using a multicloud split-stack architecture. The on-premises Oracle 11g database was upgraded and migrated to 19c on OCI without any downtime. After the database migration, the IBM Sterling Order Management Software application tier runs on Microsoft Azure, and the Oracle database tier runs on OCI, with OCI-Azure Interconnect connecting the application and database.

This reference architecture provides the following benefits:

  • Upgrade IBM Sterling Order Management Software database from 11g to 19c and migrate to OCI
  • Reduce infrastructure costs by up to 60%
  • Improve performance as OCI multithreading provides twice the capacity when compared to a single thread in other cloud providers
  • Use Oracle Base Database Service with Terraform to automate system provisioning and grant user privileges
  • Roll out new features faster on OCI

Architecture

This reference architecture illustrates a high performance multicloud split-stack deployment connected by a dedicated low latency and high bandwidth OCI-Azure Interconnect.

The IBM Sterling Order Management Software application and web servers are deployed on VMs in Microsoft Azure US East. The application connects to the Oracle Real Application Clusters (Oracle RAC) database on OCI Ashburn via OCI-Azure Interconnect. The two-node Oracle RAC database is used to meet the high performance and high availability needs. The Oracle RAC database is a managed cloud service of the Oracle Base Database Service that reduces customer operational overheads.

The Disaster Recovery (DR) instance is implemented in the OCI San Jose region that interconnects to Microsoft Azure US West (not shown in this architecture diagram). Alternatively, OCI-Azure Interconnect is also available between OCI Phoenix and Microsoft Azure US West3. The production database is replicated to DR using Oracle Data Guard.

The federation of Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) and Microsoft Azure Active Directory enables the OCI account using single sign-on. OCI and Microsoft Azure logging data are forwarded to Dynatrace cloud monitoring for operational insights. Wiz cloud security is used for monitoring the multicloud deployment to proactively identify, remediate, and prevent risks to the business.

The following diagram illustrates this reference architecture.



oci-multicloud-ibm-azure-arch-oracle.zip

Cloud migration

Before migration, the customer had implemented a hybrid cloud split-stack architecture, with the IBM Sterling Order Management Software application and web servers on Microsoft Azure and databases in a on-premises colocation data center. A phased migration approach was designed to upgrade and migrate the database from 11g colocation to 19c on OCI, while keeping the application tier on Microsoft Azure.

Oracle database upgrade and migration process
  1. Create a 11g temporary database on OCI
  2. Replicate the on-premises 11g production database to the 11g temporary database on OCI
  3. Create a 19c production database on OCI
  4. Use Oracle GoldenGate in the OCI marketplace to replicate data from the 11g temporary database to the 19c Database on OCI
  5. Cut over the production application on Microsoft Azure to point to the 19c database on OCI and disconnect other replications

The following diagram illustrates the cloud migration.
Description of oci_multicloud_ibm_azure_flow.png follows
Description of the illustration oci_multicloud_ibm_azure_flow.png

oci-multicloud-ibm-azure-flow-oracle.zip

The architecture has the following components:

  • Region

    An Oracle Cloud Infrastructure region is a localized geographic area that contains one or more data centers, called availability domains. Regions are independent of other regions, and vast distances can separate them (across countries or even continents).

  • Availability domains

    Availability domains are standalone, independent data centers within a region. The physical resources in each availability domain are isolated from the resources in the other availability domains, which provides fault tolerance. Availability domains don’t share infrastructure such as power or cooling, or the internal availability domain network. So, a failure at one availability domain is unlikely to affect the other availability domains in the region.

  • Virtual cloud network (VCN) and subnets

    A VCN is a customizable, software-defined network that you set up in an Oracle Cloud Infrastructure region. Like traditional data center networks, VCNs give you complete control over your network environment. A VCN can have multiple non-overlapping CIDR blocks that you can change after you create the VCN. You can segment a VCN into subnets, which can be scoped to a region or to an availability domain. Each subnet consists of a contiguous range of addresses that don't overlap with the other subnets in the VCN. You can change the size of a subnet after creation. A subnet can be public or private.

  • Bastion service

    Oracle Cloud Infrastructure Bastion provides restricted and time-limited secure access to resources that don't have public endpoints and that require strict resource access controls, such as bare metal and virtual machines, Oracle MySQL Database Service, Autonomous Transaction Processing (ATP), Oracle Container Engine for Kubernetes (OKE), and any other resource that allows Secure Shell Protocol (SSH) access. With Oracle Cloud Infrastructure Bastion service, you can enable access to private hosts without deploying and maintaining a jump host. In addition, you gain improved security posture with identity-based permissions and a centralized, audited, and time-bound SSH session. Oracle Cloud Infrastructure Bastion removes the need for a public IP for bastion access, eliminating the hassle and potential attack surface when providing remote access.

  • OCI and Azure Interconnect

    Oracle Cloud and Microsoft Azure Interconnect is Oracle’s first multicloud offering. It delivers a direct network connection between specific Azure and Oracle Cloud Infrastructure (OCI) data centers around the world. It enables Azure administrators and developers to connect their applications to applications and services running in OCI without creating dedicated links or sending their application traffic across the public internet.

  • Streaming

    Oracle Cloud Infrastructure Streaming provides a fully managed, scalable, and durable storage solution for ingesting continuous, high-volume streams of data that you can consume and process in real time. You can use Streaming for ingesting high-volume data, such as application logs, operational telemetry, web click-stream data; or for other use cases where data is produced and processed continually and sequentially in a publish-subscribe messaging model.

  • Oracle Base Database Service

    Oracle Base Database Service is a fully managed database service that lets developers quickly develop and deploy secure, cloud native applications. Oracle automates all tasks, such as backup and recovery, database and operating system patching, updates, and data encryption.

Recommendations

Use the following recommendations as a starting point. Your requirements might differ from the architecture described here.
  • IBM Sterling Order Management Software version

    This architecture supports IBM Sterling Order Management Software version 10.0.2303.1 (current version at the time of publishing this solution) and higher. We recommend that you use the latest version of IBM Sterling Order Management Software.

    Before deploying IBM Sterling Order Management Software in a multicloud architecture, familiarize yourself with the following requirements by following the links in the Explore More section:
    • For IBM Sterling Order Management Software system requirements, see System Requirements.
    • IBM Sterling Order Management Software has a dependency on a relational database system for state and data management. A Java Message Service (JMS) enabled message broker system is also required for service-to-service communication and order workflows. IBM Sterling Order Management Software supports several database and message broker options that you can deploy in your environment. For more information, see:
      • Oracle 19c database tier: Configuring an Oracle database on UNIX or Linux
      • JMS message broker: Integrating with JMS Systems
  • Latency

    Use OCI and Azure Interconnect for the network connection between clouds to provide a low latency connection.

  • Database

    Use Oracle database 19c or higher version. Oracle database 19.16.0.0 is used in this reference architecture. We recommend VM.Standard2.16 shape with Automatic Storage Management (ASM). The database size is about 800 GB. Each Oracle RAC node has 16 CPU cores and 240 GB memory.

  • Disaster Recovery

    In cloud deployment, the standby disaster recovery instance can be sized at a quarter of the production to reduce the cost and scale up to the full capacity in the event of DR failover. The production application and data must be replicated to DR to meet Recovery Time Objective (RTO) and Recovery Point Objective (RPO) defined by the business.

    During the database upgrade and migration, we recommend creating a DR/temporary database on OCI in the same region to prevent any risk and serve as a contingency to production. The database can be used in network latency testing and to set application performance baseline before the upgrade. After the upgrade and migration, the DR instance should be set up in a different region.

  • Oracle Database Service for Microsoft Azure

    Oracle Database Service for Microsoft Azure allows you to easily integrate Oracle Cloud Infrastructure Database into your Microsoft Azure cloud environment. Oracle Database Service for Microsoft Azure uses a service-based approach and is an alternative to manually creating complex cross-cloud deployments for your application stacks.

    We recommend using Oracle Database Service for Microsoft Azure in a multicloud split-stack architecture as it runs over the private, low latency, high bandwidth network link between Microsoft Azure and OCI. Users have the option to choose Oracle Base Database (including Oracle RAC), Oracle Autonomous Database, Oracle Exadata Database Service, and MySQL HeatWave and provision the Oracle Database Service for Microsoft Azure from their Microsoft Azure console.

Considerations

When deploying IBM Sterling Order Management Software in a multicloud architecture, consider the following options for scalability and availability.

  • Application availability

    Before deploying IBM Sterling Order Management Software, review the considerations for high availability and performance management as outlined in the IBM documentation links in the Explore More section.

    In this reference architecture, the IBM Sterling Order Management Software application is deployed with multiple VMs on Microsoft Azure and Oracle RAC database on OCI to provide high availability. Fault domains offer the best resilience within an availability domain. If you need higher availability, consider using multiple availability domains or regions where feasible.

  • Storage I/O throughput

    Storage sizing is crucial in getting the expected I/O throughput for the disk reads and writes.

  • Scalability

    This reference architecture uses Oracle Base Database Service with Oracle Real Application Clusters (Oracle RAC) database. You can manually scale the number of CPU cores of the database up or down at any time.

    You can use Oracle Autonomous Database or Oracle Exadata Database Service with IBM Sterling Order Management Software. The autoscaling feature of Oracle Autonomous Database allows your database to use up to three times the current base number of CPU cores at any time. As demand increases, autoscaling automatically increases the number of cores in use. Oracle Autonomous Database allows you to scale the storage capacity anytime without affecting availability or performance.

Acknowledgments

  • Authors: Periyakaruppan Ramanathan, Wei Han
  • Contributors: Shishir Saha (IBM), Nicole Champion