Running Oracle SOA Suite on Docker - Part 4: (Quick-)starting an environment

Running Oracle SOA Suite on Docker - Part 4: (Quick-)starting an environment

Johannes Michler PROMATIS Horus Oracle


Executive Vice President – Head of Platforms & Development

Operating - installing and maintaining - Oracle Fusion Middleware, especially Oracle SOA Suite 12.2.1.4 is quite some work. Not only does installation itself consist of a number of steps, but each quarterly critical patch update also requires applying a number of patches and - especially in simple, single server environments quite some downtime.

This blog post series will cover how to run Oracle Fusion Middleware - especially Oracle SOA Suite on docker. The first post covered the high-level steps of manual installation, Docker and Kubernetes options and has pointers to the relevant Oracle certification documentation. The second post then described how - using OCI and Oracle Linux - a host to run docker containers can be setup up within minutes. After that in the third post we covered provisioning an Oracle Database instance to hold the meta data of Oracle SOA Suite.

In the 4th episode we will cover how we can quickly create a metadata repository, configure and then start a SOA Suite environment in a headless mode.

In the next episode I'll demonstrate an alternative and show how the graphical RCU and config utility can be used within docker. In upcoming episodes we will cover patching and more advanced deployment options.

Creating the SOA Suite docker container

To configure the details of the "to be created" metadata repository create a adminserver.env file as follows:

CONNECTION_STRING=myxe1:1521/freepdb1
RCUPREFIX=SOA2
DB_PASSWORD=Promatis1
DB_SCHEMA_PASSWORD=Promatis1
ADMIN_PASSWORD=Promatis1
DOMAIN_NAME=soainfra
DOMAIN_TYPE=soa
ADMIN_HOST=soaadmin2
ADMIN_PORT=7001
PERSISTENCE_STORE=jdbc

Next, we create the SOA Suite docker container especially used for rcu:

docker volume create soa1_userproject
docker run -d --rm --name soaadmin2 --network soanet1 -v soa1_userprojects:/u01/oracle/user_projects -p 7001:7001 --env-file ./adminserver.env container-registry.oracle.com/middleware/soasuite_cpu:12.2.1.4-jdk8-ol7-240117

Monitor the creation of the metadata repository (through rcu) and of the domain:

docker tail -f soaadmin2 

After the AdminServer is started we can start a managed server. For this we prepare a soa_server1_r2.env as follows:

MANAGED_SERVER=soa_server1
DOMAIN_NAME=soainfra
ADMIN_HOST=soaadmin2
ADMIN_PORT=7001
ADMIN_PASSWORD=Promatis1
MANAGED_SERVER_CONTAINER=true
MANAGEDSERVER_PORT=8001

Then we can start the soa_server1 as a separate (but connected) docker container:

docker run -d --rm --name soams1 --network soanet1 -v soa1_userprojects:/u01/oracle/user_projects -p 8001:8001 --env-file ./soa_server1.env container-registry.oracle.com/middleware/soasuite_cpu:12.2.1.4-jdk8-ol7-240117 "/u01/oracle/container-scripts/startMS.sh"

You should now be able to access the SOA Suite environment through a browser.

Some more scenarios are described over there: https://github.com/oracle/docker-images/tree/main/OracleSOASuite/dockerfiles/12.2.1.4.

Summary

By using scripts for automating rcu and domain creation it is possible to create the metadata repository as well as configure the domain for Oracle SOA Suite quickly. In an upcoming blog post we'll cover how a domain can be configured in a fully flexible way, how the docker image can get patched as well as which other options are available to create a SOA Suite environment in OCI.

SOA Suite 12.2.1.4 on Oracle Cloud Infrastructure (OCI)

SOA Suite 12.2.1.4 on Oracle Cloud Infrastructure (OCI)

Johannes Michler PROMATIS Horus Oracle


Senior Vice President – Head of Platforms & Development

Recently we have seen a lot of our customers implementing Oracle SOA Suite on Oracle Cloud Infrastructure - some upgrading from earlier releases of the SOA Suite, others doing a new implementation of an integration platform based on SOA Suite. This blog will have a look at typical customer situations and how we brought them onto a new SOA integration platform on OCI from a high level perspective.

There is also a recent Oracle Video describing SOA on OCI.

New SOA Suite Customer

The situation we saw with this customer was as follows:

The customer had previously implemented hundreds of 1:1 integrations between their On Premise (in various, globally distributed data centers) and Cloud Applications and was searching for an integration platform around an Enterprise Service Bus. The basic idea is to define Canonical Business Objects that can then be exchanged between the different systems more easily than connecting everything individually.

The customer had neither Oracle Database licenses (for the SOA Suite Metadata repository) nor Oracle SOA Suite licenses. Using Oracle Integration Cloud (OIC) was not (yet) an option, mainly due to complex Event Hub patterns.

Given the above prerequisites, the customer had three options to license Oracle SOA Suite:

In consultation with the Oracle SOA Suite product management (many thanks to their great help during this evaluation and the subsequent project), the customer decided to subscribe to the SOA Suite on OCI Marketplace. Although this was very early after Oracle published the images, we faced no major issues and this approach was:

  • much cheaper than buying On Premise SOA and Database licenses to run them in an On Premise or Cloud Data center and
  • brought us a more up to date and longer supported version (12.2.1.4) than we would have gotten with SOACS

Customer doing a SOA Suite Lift And Shift

The situation for this customer was different from the previous one:

The Customer has been using SOA Suite for 10+ years to implement all integrations around their central ERP System "Oracle E-Business Suite 12.1.3". They were initially 10g customers who had upgraded to 12.1.3 and then last year to 12.2.1.3. Their hardware and operating system (SUSE Linux 11) were both running out of support. SOA Suite Release 12.1.3 itself will soon also run out of support. The customer runs their E-Business Dev- and Test Environments on OCI and plans to move EBS PROD as well.

Given the above, the customer had evaluated the following options in more detail:

  • Buy new "On Premise" hardware and do a new 12.2.1.4 installation of SOA Suite there
  • Do a "custom" installation of both SOA Suite 12.2.1.4 and a Database 19c for the Metadata Repository on OCI
  • Use the SOA Suite on OCI marketplace image in the Bring Your Own License (BYOL) fashion: https://cloudmarketplace.oracle.com/marketplace/en_US/listing/74792101

Together with the customer, we finally decided to do a "custom" installation of SOA Suite on OCI. Basically the reasons were:

  • With the marketplace images it is not possible to use a custom installed Oracle Database as the metadata repository. However, using DBaaS for OCI also in the BYOL model is significantly more expensive than using just OCI Compute (and e.g. the 19.7 database marketplace image)
  • On Premises, we had two SOA environments installed on a single machine due to a limited number of SOA Suite licenses. This gave us more flexibility/performance than having two separate machines. This setup is not (yet) supported by the marketplace image
  • The marketplace image has a lot of pre-configured setup (e.g. B2B) that did not fit our needs / previous setup

Summary

For both customers running SOA Suite on OCI, it helped them to create state-of-the-art integration architectures using SOA Suite on OCI. So far, all instances have performed in a very stable manner at considerably lower costs than if the customers had run Oracle SOA Suite in an On Premises data center.