How to Provision an Oracle SOA Cloud Service Environment – Basics

The Oracle Public Cloud offers a number of Platform As A Service (PaaS) services including SOA Suite Cloud Service. In order to provision an instance of SOACS there are a number of pre-requisite steps.

  1. Object Storage needs to be created. This Object storage is required for Database backup storage.
  2. A database instance needs to be provisioned and the object storage created in Step 1 referenced.
  3. SOACS can then be provisioned, and during the process the Repository Creation Utility is run against the database created in step 2.

For a more detailed explanation of the SOACS provisioning process please refer to blog post How To Provision Oracle Public Cloud Services. During the provisioning of the PaaS services we end up with a machine image.

The document Using Oracle Compute Cloud Service (for PaaS) provides a useful definition;

A machine image is a template of a virtual hard disk of a specific size with an installed operating system.
A shape is a resource profile that specifies the number of CPUs and the amount of memory to be allocated to an instance in Oracle Compute Cloud Service.

As with anything new, terminology can sometimes make things sound more complicated than they really are.
For those interacting with the Oracle Public Cloud there are a number of terms and concepts that you will need to understand.

The table below isn’t complete but we may update it when we get some free time J.

Terms

 Abbreviation  Name  Description / Comments
 OPC Oracle Public Cloud For those new to Oracle Cloud please refer https://www.oracle.com/cloud/index.html
 IaaS Infrastructure As A Service Provides elastic and / or dedicated Compute, Network and Storage resources.
 PaaS Platform As A Service
 SaaS Software As A Service
 SOACS Oracle SOA Suite Cloud Service An Oracle PaaS offering to provide rapid provisioning of SOA Suite (SOA, OSB< MFT, B2B) and API Manager environments in the OPC.
 SSH Secure Shell Commonly required in Public Cloud environments to provide a secure channel over an unsecured network to support remote access to command line of Virtual Machines (eg  Linux environments).

Whilst Oracle Fusion Middleware Control Console allows access to log files via a browser, it is often useful to use Linux utilities to tail log files during runtime interactions with SOA services.

By using SSH privileged developers can access the virtual machines running OPC services such as SOACS and API Manager.

Commonly tools such as Putty are used.

 OCPU Oracle Compute Unit Currently defined as the CPU capacity equivalent of one physical core of an Intel Xeon processor with hyper threading enabled.

Each OCPU corresponds to two hardware execution threads, known as vCPUs.

When you provision SOA Suite Cloud Service you can specify the compute shape from a drop down list. The pre-established Compute Shapes have differing quantities of OCPU and Memory per node (Virtual Machine).

 VM Virtual Machine
OPC Console OPC Console This console is used to view MyAccount and MyService details. MyAccount shows the purchase order information associating with subscribing to the various OPC Services, whilst the MYServices Console presents the various services that are covered by subscription and allows the provisioning of services eg Database and / or SOA etc. The MyServices Console also  shows the OCPUs that are being consumed by the various instances of the provisioned services.
Block Storage “Block storage enables applications such as OLTP databases that have high IOPS (input/output operations per second) requirements to store and retrieve data efficiently, by bypassing the host operating system and interacting directly with virtual block devices. Chunks of data are stored in blocks, each with an address, but with no other metadata. Applications decide where data is stored, and they retrieve data by calling the appropriate block addresses directly. Block storage optimizes storage for IOPS and block-based access and provides POSIX-compliant file systems for Oracle Compute Cloud Service instances. It is limited in terms of scalability and does not support the definition of granular metadata for stored data.”

Source: https://docs.oracle.com/cloud/latest/storagecs_common/CSSTO

Object Storage “Object storage provides an optimal blend of performance, scalability, and manageability when storing large amounts of unstructured data. Multiple storage nodes form a single, shared, horizontally scalable pool in which data is stored as objects (blobs of data) in a flat hierarchy of containers. Each object stores data, the associated metadata, and a unique ID. You can assign custom metadata to containers and objects, making it easier to find, analyze, and manage data. Applications use the unique object IDs to access data directly via REST API calls. Object storage is simple to use, performs well, and scales to a virtually unlimited capacity.”

Source: https://docs.oracle.com/cloud/latest/storagecs_common/CSSTO

Bastion Host “A bastion host is a computer that is fully exposed to attack. The system is on the public side of the demilitarized zone (DMZ), unprotected by a firewall or filtering router. Frequently the roles of these systems are critical to the network security system.”

Source: https://en.wikipedia.org/wiki/Bastion_host

Private IP Each VM provisioned is allocated a Private IP address. Commonly a bastion host is used as an entry point to minimise the number of servers that require.
Public IP Note:
1. Not all the VM’s provisioned for our evaluation scenario will automatically have a public IP address. Obviously the load balancer would need to be publicly addressable. Public IP addresses can be allocated if required.
Firewall Access to each Virtual machine is governed by firewall rules which can be easily managed. Default rules are established based on the deployment topology, for example if you have a cluster, the cluster nodes need to be able to communicate with each other.

Additional rules including which protocols are supported (HTTP, FTP) are easily configured.

Author: David Reid

PaaS - Middleware Solutions Consultant