High availability (HA) refers to the ability to maintain operational integrity when a server failure occurs. This can be achieved by installing two or more Oracle SOA Suite 12c nodes in a cluster to protect against failure. Server failures could be software induced, such as a JVM crashing due to it being out of memory, or due to hardware failure, such as a local disk going bad. Installing an Oracle SOA Suite 12c cluster requires additional setup and configuration that are different from that of a single-node installation.
In this chapter, we describe how to set up a two-node Oracle SOA Suite 12c cluster in an active-active mode, wherein if a server fails, the other will continue processing transactions, ensuring a relatively high degree of availability. This type of architecture provides a high degree of failover, wherein most asynchronous transactions are failed over on the active node in the cluster, with little loss of transactional data.
There are many ways in which you can set up a highly available SOA Infrastructure, such as vertical and/or horizontal scaling over physical machines, hardware partitioning using virtualization, and cloud computing. The Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite 12c (12.1.3), informally referred to as the Enterprise Deployment Topology (EDG), provides a detailed example of how to install a highly available production-quality environment. This guide is comprehensive and complete, discussing all aspects of enterprise deployment. With 290 pages, the Oracle documentation is extremely detailed (and somewhat complicated) for the non-experienced administrator, requiring a deep understanding of Oracle WebLogic Server clustering and failover concepts.
This chapter describes many more scaled down and simplified instructions, and despite the limitations of our architecture (which will be described later), is completely acceptable for most mid-sized to large production environments. The intent of this chapter is to provide instructions that are easy to execute and entirely repeatable, while remaining light on concepts and explanation.
There are many types of architectures that can be implemented in an enterprise deployment topology, and this chapter focuses on one of the simpler ones. With reduced complexity comes certain disadvantages.
The resulting installation as documented in this chapter, is based on the following 64-bit software products:
Figure 12.1 depicts the architecture of our two-node Oracle SOA Suite 12c cluster. It relies on two physical servers called SOAHOST1 and SOAHOST2 (also aliased as WEBHOST1 and WEBHOST2). A single domain, soa_domain, is created in this architecture. The managed servers are clustered as depicted in the following figure. Oracle HTTP Server, installed on each of the separate physical hosts, listens on port 7777
and routes console requests to the Admin Server, and transactional requests to the SOA and OSB managed servers. Each node of the cluster requires access to a shared filesystem and shared database.
Oracle Web Services Manager (WSM) is installed on a separate managed server and must be started up prior to bringing up SOA and OSB. ESS is also installed on its own independent managed servers.
Multiple load-balanced URLs should be set up and defined on an external hardware load balancer, such as F5 BIG-IP. No secure communication, such as SSL, is defined in this architecture, as it assumes that the installation is exclusively used internally. This can be reconfigured later if needed. The EDG located at http://docs.oracle.com/cd/E12839_01/core.1111/e12036/toc.htm details this.
Certain design considerations are made in the architecture outlined in this chapter. Failover of certain components may not be possible, all for the purpose of considerably reducing the complexity. This architecture is not ideal if your environment cannot guarantee the recovery of a failed physical server, which is rarely the case nowadays.
Thus, the following are the considerations that deviate from the EDG with reference to our architecture:
Certain terms and variables described in this chapter require familiarization prior to the installation. Refer to the following table for a set of explanations:
3.144.252.204