OBIEE 11gR1 : Architecture and Use of WebLogic Server
July 9th, 2010 by Mark Rittman
Although the most obvious new thing about the recently launched 11gR1 release of OBIEE is the user interface, under the covers there’s been a lot of changes to the architecture, and how you perform systems management. There’s still the basic concept of a BI Server, Presentation Server, RPD and so on, but it’s now all managed and in some cases hosted, using WebLogic Server, the J2EE application server that Oracle have adopted following the acquisition of BEA.
For the 10g release, OC4J and in some cases, Oracle Application Server, was used in a limited form to provide a gateway between the users’ browser and the C++ OBIEE server applications, and to host the BI Office and BI Publisher J2EE applications, but you generally didn’t have to get too involved with it. In OBIEE 11g, WebLogic together with associated technologies such as OPMN, DMS and ODL are much more prominent and if you’re going to be administering an OBIEE 11g system (including running it on your own desktop), you’ll be getting to know WebLogic pretty well, together with the latest version of Oracle Enterprise Manager (or as it’s called in this release, Oracle Fusion Middleware Control).
When looking at the architecture of a new product, I often like to start at the top and work down. The diagram below shows the high-level architecture for OBIEE 11g, with the diagram showing a single OBIEE “BI Domain”, a container for a complete, single (and perhaps clustered) installation of OBIEE 11g.

At this high level, components in OBIEE 11g can be divided into two types:
- Java Components, the parts of OBIEE that are written in J2EE and run directly in the application server. These components include BI Publisher, the BI Office plugin, the BI Security Service, BI SOA Services, BI Action Services and the JMX MBeans that are used for configuring OBIEE
- System Components, which were implemented as Windows services in 10g, and include the BI Server, BI Presentation Server, BI Scheduler and BI Cluster Controller
This is similar to how it was in 10g, in that some (more recent) components of OBIEE 10g were implemented in J2EE and installed in either OC4J or Oracle Application Server, whilst the historical core of OBIEE ran as server components that you managed through either scripts, or Windows services. In 11g, these server processes still run outside of the J2EE application server, but now they are managed through the application server administration console and are stopped and started as if they were regular J2EE components (Oracle consider these Java components and system components as “peers”).
The Java Components and System Components are managed through a number of tools, including Fusion Middleware Control (aka Enterprise Manager), Weblogic Server Admin Console and OPMN. All of these components connect to a repository database, which can be any recent Oracle database and contains the schemas (scheduler, nqacct etc) that you had to create manually in 10g, plus a few others new for 11g.
If you’ve not used WebLogic Server before, each WebLogic installation has at least one “admin” server, and usually one or more “managed servers”.
- The Admin Server contains the admin console application, used to administer managed servers, and Fusion Middleware Control, used to administer OBIEE 11g
- One or more Managed Servers, which contain the J2EE OBIEE applications plus the “coreapplication” System Components
When you install OBIEE 11g, you get one admin server and one managed server. You can create another managed server, either on the same box if it’s big (as you used to do with multiple OC4J JVMs in 10g), or more usually on additional machines that are then managed by the original admin server. The admin server console is generally used to manage WebLogic-level tasks (starting up managed servers, communicating with the node manager etc), whilst the majority of the OBIEE administration is carried out using Fusion Middleware Control (which sometimes gets referred to as Enterprise Manager).
So whilst it looks initially a bit confusing and overwhelming, the basics are still the same. The BI Server is still a standalone C++ application, it’s just that it’s managed (stopped, started, monitored etc) through Fusion Middleware Control and OPMN. The various J2EE components such as BI Publisher are still J2EE, they are just installed in WebLogic now (apparently this will be extended to other J2EE application servers over time). Some key differences, especially if you’re running on Windows, is that there are no longer and BI Server, BI Presentation Server etc services, and you also can’t go around editing configuration files now as WebLogic manages them (actually this is only partially true, and I’ll get onto that in a separate posting). More importantly, all the WebLogic overhead means that you’ll need about 4GB of RAM if you’re installing OBIEE 11g on your laptop, along with a database for the repository schemas as source data, which is about twice what you need for the 10g version, so now’s the time to put in for a laptop upgrade.
There are some key Fusion Middleware technologies, terminology and utilities that you’ll need to get to know when starting to work with OBIEE 11g.
- WebLogic Server (often abbreviated to WLS) : this is the J2EE application server that Oracle uses across the board for all their 11g BI applications, such as Essbase 11.1.2, Discoverer 11g, BI Publisher 11g , Real Time Decisions 11g. It’s also used for the upcoming Fusion ERP applications, and is the default application server that you get with JDeveloper 11g. In the past it’s role in OBIEE was performed by OC4J and Oracle Application Server (which used OC4J under the covers), and both of these in 11g have been replaced by the core WebLogic Server, with JRockit (as opposed to the Sun JVM) generally used as the JVM (thanks Simon H for the clarification in the comments).
- OPMN (or Oracle Process Manager and Notification Server to give it its full name) : You may have first come across this in Oracle Application Server 10g, where it was used to start up the various Application Server components (OC4J_BI_Forms, OC4J_Portal etc). Its since been adopted across the technology stack to start, stop and monitor processes across distributed servers, and it’s used in OBIEE 11g to do the same for the system components (BI Server, BI Presentation Server, BI Scheduler and BI Cluster Controller). You can either access OPMN through the command line (opmnctl), or Oracle’s recommended approach is to use a graphical interface within Fusion Middleware Control. OPMN is also used in the 11g stack to control Essbase, Discoverer and other BI components, so it’s a tool that’s worth learning.
- DMS, or Dynamic Monitoring System, works alongside OPMN and provides statistics on the various components which can be persisted in a database. This will definitely be interesting when it comes to performance monitoring and optimization for 11g.
- ODL, Oracle Diagnostic Logging, is a centralized framework for logging. Again, interesting for performance, though not all logs (nqquery.log, for example) are covered by it.
- JPS (Java Platform Security) and CSF (Credential Store Framework) are just two parts of security in 11g. Security is a big change in 11g with users no longer stored in the RPD (including the Administrator user, which has now gone), and users, roles and groups now managed by WebLogic, linking out to LDAP servers as neccessary.
Two other changes are around patching, and upgrading. Patches are now handled by OPatch, the standard mechanism for other Oracle products. I’m in two minds about this as previous patches for 10g were dead simple – you just installed the new version over the old – but for 11g, it’s a lot more complicated now and I guess OPatch, with a patch repository and ability to roll back, was inevitable at some point. There’s also an Upgrade Assistant, again something common in the Oracle world, to migrate installations and metadata from previous releases.
So, one way to understand how all the components fit together is to look at how the components start up after a reboot. With OBIEE 11g, you use Oracle WebLogic Server admin console to start up the WebLogic Managed Server that contains the OBIEE components, and then you use Oracle Fusion Middleware Control to start these individual components up.
UPDATE 14-Aug-2010 : The official GA release also introduces a Windows Start Menu entry for starting all OBIEE 11g services. See this posting for full details.
1. Once the WebLogic Server admin server is up and running, your first step is to log into the WebLogic admin console (typically, at http://localhost:7001/console) and navigate to the Server view. You then instruct the Node Manager to start WebLogic managed server, which typically takes a couple of minutes to complete.

2. Starting the managed server will also auto-start the java components (again via Node Manager), and the system components (via OPMN), so that you should now be able to log in. On a fresh installation, you’ll need to log in using the WebLogic Server administrator password that you specified during the install and configuration.

3. If you want to stop and start any of the OBIEE components, you do this via Fusion Middleware Control (or via the OPMN command line utility, which we’ll cover in a future posting). In the screenshot below, I’m showing the buttons used to stop and start all of the components together. Other screens let you stop and start individual components, something you’ll still need to do if you update a configuration file, switch to a new RPD etc.

A couple of points to notice on this. Firstly, on the left-hand side you can see the entry for the managed server (bi_server1) under bifoundation_domain, that contains the J2EE components for OBIEE. The coreapplication under Business Intelligence is the application that manages the server applications (BI Server etc) that are written in C++. Also note that one of the five components is down. Which one is it, and what is causing it? Let’s take a look.
4. Keeping with Fusion Middleware Control, I select Capacity Management > Availability from the tabs, and see that it’s the Scheduler that’s down.

Now this is the one component that depends on the database to be up and running before it’ll start, and although I know I’ve configured it (this is done automatically during the install now), it might need a restart to get it working. The recommended way to do this is to stop and start it from Fusion Middleware Control, so I highlight the BI Schedulers entry and press the Start Selected button above it.

It starts OK, so it was probably just a problem with the database not being up when the auto-start happened. I could also have started the component using opmnctl, and this is something I’ll look at more in a future posting.
5. Finally, I want to switch off caching, as OBIEE turns it on by default for new installs but this interferes with results when I’m doing development work. In OBIEE 11g, whether caching is turned on or not is still determined by an entry in the nqsconfig.ini file, but you’re meant to manage this setting via Fusion Middleware Control (if you edit it directly in the file, the admin server will overwrite your changes when you restart it, though you can disable this behaviour). To turn off caching, I navigate to the Capacity Management > Performance tab, where I can see the entry to enable the cache.

But if you notice, it’s all grayed-out. This is because you have to “lock and edit” the session first, which serialises access to these settings and stops another administrator changing things at the same time as you. I press the Lock and Edit Configuration button, and then uncheck the Cache Enabled checkbox, press Apply, then then press Activate Changes. This copies the new parameter value into the nqsconfig.ini file, but I still have to restart the BI Server system component before this becomes active, just like I had to do with OBIEE 10g.

So there you have it, a mix of old stuff (the BI Server and Presentation Server, config files etc) and new (WebLogic Server, system components, OPMN and so on). In future postings I’ll be looking at how you perform other OBIEE 11g administration and systems management tasks, and I’ll also take a look at how high availability and scaling out is achieved (clue – it’s much easier in 11g).
In the meantime, if you’d like to keep abreast on the news on OBIEE 11g as it becomes available, including details of our forthcoming 11g-focused training courses and services, be sure to bookmark our newly-launched OBIEE 11g Resource Centre. We’ll be posting links to all our OBIEE 11g articles, and there’ll be news in a few days time about a special, hands-on OBIEE 11g Training Days event we’ll be running in London and Atlanta in October 2010.

July 10th, 2010 at 4:16 pm
Mark – this was a useful overview of OBIEE 11g. I have just a couple of small corrections:
1) “the equivalent of OC4J (which is a JVM) is JRocket, which Oracle have now adopted instead of OC4J as their preferred JVM engine”:
Actually the equivalent of OC4J is the core WebLogic Server. The application server (OC4J or WLS) runs on top of a JVM. In the case of iAS/OC4J this is the Sun HotSpot JVM, whereas for WebLogic it is either the JRockit JVM or the Sun JVM (depending on platform and preference).
2) OPMN is the Oracle Process Manager and Notification server.
Keep up the excellent posts – it’s interesting to see what’s happening in the Oracle BI world!
Simon
July 12th, 2010 at 11:55 am
@Simon
Thanks for the clarification. I’ve updated the post to reflect your comments
cheers
Mark
July 14th, 2010 at 5:09 am
Hi Mark,
Thanks for the Great post. is the 32 bit version availabl for partners ?
Thanks
Yuvaraj Narayanan
July 14th, 2010 at 6:12 am
@Yuvaraj,
Best speak to your local partner manager. I think the beta program has closed now (the software is due for release imminently) but they may have a program for providing access to partners in the meantime.
regards, Mark
July 14th, 2010 at 5:49 pm
Hi Mark,
i tried to go to the Oracle 11g Resource center link in your blog . however the page is not availabe .
July 14th, 2010 at 10:07 pm
@Venky – on what page was the link that didn’t work? What URL is the link calling?
Mark
July 15th, 2010 at 7:53 am
Hi Mark
It seems there is now a closer alignment between the application server and OBIEE. Do you see this integration being as successful on other app servers, such as websphere, and how strongly woul you recommend OBIEE 11g customers stick with weblogic ?
Regards
Evan
July 15th, 2010 at 9:50 am
@Evan
The 11g release of OBIEE has many more J2EE components around things like the Action Framework, mapping and so on, and so you’re correct in saying there is closer alignment. Much of the management framework around 11g also presupposes there is a J2EE infrastructure around the OBIEE platform.
My understanding is that the initial release of OBIEE11g will support WebLogic Server only, with support for other J2EE app servers (WebSphere, Tomcat, etc etc) coming in a later release. So if you want to use the initial release of OBIEE 11g, you’ll have to use WebLogic Server (which comes bundled with the installer).
regards, Mark
July 16th, 2010 at 10:21 am
Hi Marks,
Thanks for sharing !
Is it possible to install OBIEE weblogic and System components on different machine..
Thanks,
Sunil Gond
July 16th, 2010 at 3:53 pm
@Sunil
Yes, you can install the WebLogic Admin server on one machine, and install the Managed Server (which includes the Java components and system components) on another.
Mark
July 20th, 2010 at 6:51 pm
Great blog Mark!
I have problems in making obiccs1 working… even the installation process failed in starting it. Any idea? What is this obiccs1 for?
Regards
July 20th, 2010 at 9:17 pm
@Julio
This is the Cluster Controller system component. Assuming you’re on the beta program, you should raise this as an SR using your beta program CSI. The feature should work, but there may be a problem with your particular environment or use case – whichever way, raise it as an SR and Oracle Support will help, or log it as a bug if it’s not working as expected.
Mark
July 22nd, 2010 at 10:18 am
Hi Mark,
Thanks for the great post. Having read this after thrashing in the deep end through the beta program, things suddenly make more sense.
Sandeep
August 16th, 2010 at 7:21 am
Mark,
Its very clear on concepts.
Thanks
Ramesh Pabba
August 18th, 2010 at 8:26 am
Thanks Mark for gr8 post
August 18th, 2010 at 7:25 pm
My obiee 11g simple install fails at the “Executing: opmnctl start coreapplication_obiccs1″ configuration task.
The diagnostic logs for opmn says that process ping failed no address for the request.
Any resolution ideas?
August 18th, 2010 at 7:31 pm
Prasanth,
Are you installing all components on the same box? What is the spec of the environment you are using (OS, RAM etc) – is this in Windows or Linux? Do the other processes start up OK? What happens if you retry the step?
Mark
August 18th, 2010 at 7:53 pm
Yes i am installing on one box. I am doing on windows box. Its windows server 2003 R2 SP2 64 bit OS. Its a pretty robust server environment with 32 GB Ram and 120GB hard drive. It keeps on failing even if i retry the step. Under the opmn diagnostic logs i see the error “Ping failed in Ready callback for proc:(658182365:5396) [No addresses for the request.]”
Under the Oracle Business Intelligence folder in the start up menu the only thing availabe is BI ODBC Install and DeInstall
I can start and stop Weblogic server thats it. There is no Start BI Services nor can i get onto the middle ware control console through the URL
August 18th, 2010 at 7:59 pm
Prasanth,
Could there be an issue with the network? Are you running this on a laptop, if so, did you set up the loopback adapter beforehand? Do you have a database installed on the machine as well, for example an Oracle 11g database?
Mark
August 18th, 2010 at 8:07 pm
I am running this on a server. The database is 10.2 and its on a different machine. But I dont see any network related issues here. I continued further with few failed config tasks. I will test the app and see if those failures have any impact on it.
Thanks for your comments. I will let you know how it went
August 18th, 2010 at 9:44 pm
As i suspected, I am not able to start any of the system components.
I can start the Admin server and the managed server but couldnt start any of the system components because of the opmn.
I tried to start opmn alone as such from the MS DOS windows command line as well as services and not successful in doing so. Now i am stuck as the diagnostic logs are not much informative
August 19th, 2010 at 1:03 pm
Very good post thank you !
In 10g, I seperated Presentation Services and BI Server on 2 different hosts. In 11g, will it be the same with the Entreprise Install –> BI System Option on one host and the rest on another host ?
August 20th, 2010 at 3:15 am
Prasanth, same happened to me during the install, but I “continued” nonetheless. Things working fine since.
August 23rd, 2010 at 11:05 pm
Hi Prasanth, I rang into the same issue although I installed on a laptop. Found that the imfamous IPv6 was the issue.
August 24th, 2010 at 12:25 pm
Not a comment but a question. We are installing 11g at the moment. Up till now all is running and working but we don’t see graphs and pictures (we see little red crosses instead)
Can someone please help us out, where do we need to configure this? or what else do we need to do?
Thanks
Jackie
August 31st, 2010 at 6:10 pm
I also continued with the issue but i am not able to start the BI components at all. My OPMN does not start as a result all the BI Components do not start
September 1st, 2010 at 3:14 pm
@Prasanth:
I am ran into the same issue. I tried different ways, however no luck. I have almost same server configuration what you have. Please share, if you have got some resolution.