Preparation
For no reason other than I could, I recently decided to undertake installing the new Oracle Enterprise Manager 11g Grid Control (technically, upgrade my 10.2.0.5 environment). For those not in the know, it was released about 2 weeks ago, and one major change is that it utilizes Weblogic server instead of the old iAS (this is the Fusion model). In fact, there is no application server included in the EM 11g download; the installer assumes you have a Middleware home with the appropriate version of Weblogic server already installed. The first thing I did in preparation for the upgrade was to contact our Oracle techstack sales guy and ensure that I was allowed to install Weblogic server. While I’m fully licensed to run EM 10.2.0.5 with tuning and diagnostics packs, I didn’t want to make any assumptions about Oracle giving up a new application server for free. After confirming my legality from a license perspective, I began to update our internal wiki with all of the pieces of EM which would be hard to remember/replace in the event that they were lost. This included a list of current EM users and their access, scheduled jobs, and user-defined metrics. Finally, I shut everything down and made a VMWare snapshot of the disk, so that I could revert painlessly, if necessary.
Weblogic Server
The next step was to install Weblogic server, which is a pre-requisite to running the EM 11g installer. In reality, you could install this web server anytime, whether EM 10g was running or not. I went to pull it from OTN, and noticed a few things. First, it appears that Fusion Middleware 11gR1 (10.3.3 – in typical Oracle versioning tradition) has been release very recently. I was only interested in what I knew was certified, Fusion Middleware 11g (10.3.2 – couldn’t Oracle put one person in charge of making sure that the technical versions match the product names, and that the versions were generally aligned?). You can find the download page here. I was looking for linux x86_64, which isn’t on their list, so I pulled the generic platform version. There’s a small net installer (stub file which goes out and grabs the install later) or a package installer (traditional, everything in there version). Grab whatever floats your boat. When I grab the generic version, it requires I have my own JDK installed, so to invoke the installer it looks something like this:
java -jar wls1032_generic.jar
The familiar Oracle looking installer starts; I’ll use screenshots from here on as it will probably be easier to follow, just go left to right:
1. Initial splash screen
2. Give us the information we already have!
My personal favorite after leaving email address blank:
Are you sure you want to remain clueless??
You didn't give us your email! Are you really really sure we can't spam you?
OK, now back to the installation… I missed the screenshot, but somewhere you are asked for 2 passwords. Make sure you
jot them down, as you’ll need them later to administer the web server and also to do the actual EM install.
3. Where is your JDK?
4. Where do you want to put the Weblogic App Server?
5. Default components
6. Installer at Work
.
7. Complete (Uncheck Quickstart)
8. Quickstart - If you get to this screen... cancel it and exit!
Enterprise Manager 11g Installation
This installation impressed me; it was straightforward and worked. I do have to ding it on a few things. First, Oracle decided that EM 11g would run by default as https using an SSL cert it generates during the install. So many problems there. First, our proxy server (where all web traffic goes, by default, even if redirected back internally) has a security mechanism set up to not allow SSL on non-standard (443, 8443) ports. Oracle chose something logical: port 1159. Second, we have an internal certificate I could use, which would be far more legitimate. How about asking me if I have something for it to chew on, instead of having it generate some garbage cert which I have to figure out how to replace?
I ran into some RDBMS parameter issues. EM 11g requires you to have the repository running 11.1 or 11.2, and there’s even some patches they want in place before you do the upgrade. Well worth reviewing the prerequisites and documentation. Before you run the installer, issue an
alter system set job_queue_processes=0;
and revert it upon completion to its original value.
Finally, I ran into a problem early on when the installer detected the Oracle Applications Management Pack in my EM 10g inventory. At some point in the past, I’d installed it with the intention of seeing what it brought to the table. That’s as far as I ever got, never even configured it, but the installer basically says you can’t do an upgrade with that pack in place. You have to do a full install. Ick. So I uninstalled it via OUI from the OMS home and it happily proceeded next time I ran the installer. I guess if you’re using that APM you’re out of luck.
You can grab EM 11g from OTN here; once extracted & staged you just use the old standby:
runInstaller
1. Welcome to our latest product! Can we have your email please?
2. We really need to know more about you. Can we have your username and password to the world's slowest support site?
3. I chose to upgrade 10.2.0.5
4. Hey! I found your old stuff!
.
5. I see your listener - whats the sys password?
6. Hey Bozo! Didn't you read the upgrade guide? There's some mandatory parameters you need to fix!
7. I found your Middleware home. Where do you want to install EM 11g?
8. What were your Weblogic passwords?
.
.
Did you notice in step 8, it’s adding a tablespace?
9. Do you want to change ports that you don't even understand the use of?
10. Ready to launch!
.
.
11. Chugging along for about an hour
12. The root.sh we all know and love, now available in allroot.sh!
.
13. Read the fine print; it has pertinent URLs and information!
14. More fine print
.
.
.
.
15. Do you agree to tell the truth, the whole truth, and nothing but the truth?
.
.
.
.
.
.
Success & First Impressions
First of all, it works, the installer didn’t error out too much, and after getting past the ssl port/cert issues (use IE it has the best error messages!) I have to say my first impression was that it did everything right. My users were all still there, all my targets were there, my user-defined metrics survived, and my jobs were all running. It even emailed me an alert I was subscribed to when I shut down a scrub database. No tweaks. The graphics look a little cleaner. I am guessing that the java pages were compiled on the fly, as it was painfully slow to do anything the first time. After that, it was noticeably faster than EM 10g. Must be all the Fusion going on.
Here’s what the screen looks like:
A new look, but familiar in most ways.
.
.
.
.
.
.
.
.
.
.
Starting and Stopping
This has changed a little bit, but I thought I’d just copy my start/stop scripts in here wholesale and you can tweak them for your environment:
Start:
#!/bin/bash
ORACLE_HOME=/u01/oem/Middleware/oms11g
AGENT_HOME=/u01/oem/Middleware/agent11g
$ORACLE_HOME/bin/emctl start oms
$AGENT_HOME/bin/emctl start agent
$ORACLE_HOME/bin/emctl status oms -detail
Stop:
#!/bin/bash
ORACLE_HOME=/u01/oem/Middleware/oms11g
AGENT_HOME=/u01/oem/Middleware/agent11g
$ORACLE_HOME/bin/emctl stop oms -all
$AGENT_HOME/bin/emctl stop agent
Final Notes
What’s up with all the periods (.) all over this post? I fought WordPress the whole time to keep my screenshots from overlapping section headers and each other. Eventually I gave up and used periods to occupy white space as a placeholder.
A special note of acknowledgment to
sysadmin guy who made me understand why no browser could find the login page (the non-standard SSL port issue noted above). I literally did the install twice, thinking I’d screwed something up or missed some step. In the end, I probably had it right the first time, but didn’t see any way to reach the login page so reverted and reinstalled all pieces.
The Weblogic server admin screens have about a million tabs, checkboxes, radio buttons and text-entry areas for parameters. There is a learning curve there:
There's tabs on the tabs!
Addendum
I feel compelled to add an addendum to this posting because of a few things I’ve noticed after running 11g a few days. First, it consumes more memory; we had to throw another gig at it (database footprint unchanged). Second, after rebooting the host, we noticed it trying to start processes; it slipped a gcstartup file in the init.d directory. This script basically checks your oratab file and tries to start whatever homes it finds in there. Fine and good (I guess) but really of no value for me. Having the Weblogic server and the OMS “running” before the database isn’t really useful to me.
Useful URLs and other eratta
main EM login screens:
Weblogic console
It appears that some of the logs aren’t automatically rotated in $ORACLE_INSTANCE/WebtierIH1/diagnostics/logs/OHS/ohs1; I’d double check it if I were you. My mod_wl_ohs.log was 500Mb. I fixed this by gzipping the old mod_wl_ohs.log at the end of my stop enterprise manager script; every time I shut down EM, it will gzip it and eventually age 2 weeks and be caught by:
In addition, you probably want to consider a cron job to delete old access/error/em_upload_https logs; something like this is pretty vanilla in the crontab (delete logs older than about 2 weeks):
/usr/bin/find /u01/oem/gc_inst/WebTierIH1/diagnostics/logs/OHS/ohs1 -mtime +14 -exec rm -rf {} \;