Oracle BI EE 11g - Vertical Clustering - Fault Tolerance & Multiple BI Servers in a Box

One of the significant changes in the BI EE 11g is in the way clustering is done. Mark has covered horizontal clustering (using the scale-out option in the installer) in his previous post here. The entire process of clustering is much more automated in 11g and is much easier to manage & maintain. BI EE 11g supports 2 kinds of clustering

  1. Vertical Clustering - Multiple instances of BI Server, Presentation Services etc on a single box
  2. Horizontal Clustering - Multiple instances of BI Server, Presentation Services etc on multiple boxes

Vertical Clustering is new to 11g as this is something that 10g did not support(though there were unsupported work-arounds available). Vertical Clustering is preferred in cases where we want to make optimal use of the hardware & provide fault tolerance. This does not provide high availability when the server itself goes down. In this type of clustering generally 3 components are clustered

  1. BI Server
  2. BI Presentation Services
  3. Java Host

That is, all the components that can act in active-active configuration can be clustered in Vertical Clustering. Other components like Scheduler, Cluster Controller which work in active-passive fashion are generally not clustered vertically.

In this blog entry we will be looking at how Vertical Clustering is done. One important point to note is, the concepts of clustering itself haven't changed much.

We start with logging into the enterprise manager FMW control and navigating to the deployment section. Since we are doing vertical clustering, we do not need to have a shared drive for the repository & the web catalogs. But again its better to identify a drive that can potentially be shared in the future with other machines as Vertical Clustering does not provide high availability(for future migration to horizontal clustering).

Once the drive is identified (one for RPD and the other for Web Catalog), copy the web catalog to the shared drive. In the deployment section of the Enterprise Manager, enter the shared directory details of both the RPD and the Web Catalog. Upload the repository (RPD) into the shared drive using the enterprise manager.

After uploading the repository into the shared drive, restart the BI Server. After the restart you will notice that the repository that has been uploaded in the shared drive would automatically be synchronized to the BI Server.

After making this change navigate back to the Capacity-Scalability tab and increase the number of BI Servers and Presentation Services to 2 as shown below

This will automatically create new instances(within the main instance) in BI EE for both the BI Server and Presentation Server(after Activating the changes). We can validate this by looking at the number of directories under {ORACLEINSTANCE}/bifoundation/OracleBIServerComponent and {ORACLEINSTANCE}/bifoundation/OracleBIPresentationServerComponent

You can see 2 new directories created for the new BI Server and Presentation Server that we added through the EM. Lets now start these new components through the capacity management interface

In order to test the cluster, lets open up the DSN and configure the Admin Tool DSN to connect through the cluster controller as shown below

Lets now login to the Admin Tool and see the status of all the new servers in the Cluster Manager

As you see, the new components that we added for vertical clustering have been enabled automatically. This entire process now has become a lot easier. Also, Presentation Services plug-in and Presentation Services have been decoupled. So, essentially a single web server can communicate to multiple presentation services in a round-robin fashion without the need for load balancer. In horizontal clustering with multiple machines, load balancer will be required though in order to switch between different HTTP servers based on the incoming load. The screenshot below shows the sessions in multiple presentation services on a single box.

Next up is a blog post on the new Lookup feature followed by the Double Column feature available within the repository.