ODTUG is just around the corner, I’ll be there

Coming up in a few weeks is the ODTUG Kaleidoscope 2008 event in New Orleans (June 15-19). I’ll be there to present a few sessions and, meet up with old friends and make new acquaintances as well. The location will be great (probably a bit warm and humid, though) and there will be much to enjoy in between official conference business. I’ve never been to NOLA, so I’m particularly excited about seeing a new place.

The session scheduler (login required) is online and available to registered attendees. Once there, you’ll find my sessions listed (please come by, ask questions, try not to sleep):

  • Monday, 1:15p: Oracle Identity Management – The Total Identity Solution (presenting for Matt Topper who won’t be able to attend the conference)
  • Tuesday, 9:15a: RAC For Beginners: The Basics
  • Tuesday, 2p: Development DBA Panel (I’m the moderator)
  • Tuesday, 5p: Oracle ACE Directors Panel (I think I’m on the panel…or at least in the room)
  • Wednesday, 8a: How A RAT Will Save Your Job

Piocon will also have a booth set up at the conference, so stop by there and say hello (who knows–you might find me there occasionally too). The Oracle ACE Program will be represented well with many speakers and also Oracle representatives such as Justin Kestelyn will be floating around the event too.

I’ll also be participating in the Community Service Day coordinated by ODTUG on Saturday, June 14th. If you’re going to be volunteering with the group, I’ll probably see you then. If you can’t make it, I’ll see you on Sunday or during the week. If you haven’t heard about Community Service Day, check the link above to get more information and get involved!

See you in New Orleans!

PADI Rescue Diver, check

This past weekend, I was diving again at Haigh Quarry in the 50-57 degree (F) water to complete the dives for the PADI Rescue Diver certification. The dives were great and I continue to learn a lot from some good teachers and buddies too. I completed the dives and demonstrated the skills successfully, so I’m officially a Rescue Diver now. If you’re not familiar with PADI‘s certifications, the Rescue Diver certification is intended to teach you the skills necessary to assist another diver that’s having trouble or has stopped breathing. As part of the certification, we practice:

  • Searching for and bringing an unresponsive diver to the surface if they’re found on the bottom (you can’t safely just hit the “up button” and have them rocket to the surface)
  • Safely assisting a panicked diver (newer divers are especially prone to freaking out the first time they lose their regulator underwater or see a big animal)
  • Assisting an unresponsive diver on the surface, including providing rescue breaths for a diver that isn’t breathing

There are safe techniques for all these scenarios and safety of all parties is stressed in the course at every step of the way. Continue reading “PADI Rescue Diver, check”

Configuring Multiple Weblogic IIS Plug-Ins On Same IIS Server

As some of you may know, I’ve been working on a deployment of BEA Weblogic these past couple of weeks. We were doing some testing today and found an interesting side effect that was positively unexpected. Let me first say that the issues we encountered were with IIS configuration, not specifically with Weblogic. However, the issue wouldn’t have come up if we weren’t working on configuring the BEA-provided iisproxy.dll IIS plug-in.

Here’s the issue: We want to configure our production server to run two sites. The primary site is the production site and the secondary site is a staging site which we’re going to try to configure to behave exactly like production and have a configuration that matches production as well. So, we want to have two separate Weblogic Domains (that listen on different ports) and two separate IIS servers (that listen on separate ports). The desired configuration looks something like this:

Continue reading “Configuring Multiple Weblogic IIS Plug-Ins On Same IIS Server”

You want to be an Oracle ACE?

The Oracle ACE program is one way that Oracle recognizes community members that make significant contributions to the Oracle community through blogging, forum participation, user group presentations, and other similar volunteering activities. As one of the Oracle ACE Directors, I have tried to promote the program by raising awareness of its existence and the importance of spreading your knowledge for the good of all Oracle technologists. With help from Google, almost everyone consumes the knowledge posted by the good deeds of others, but a relative few (but growing) contribute to the body of knowledge available online.

There are a lot of smart people working in technology communities these days. Oracle’s community has been growing steadily and I think relatively rapidly in the last few years. Other non-Oracle communities have deep roots and dedicated individuals volunteering lots of their time to help build and maintain networks of technologists too. This afternoon, I read a blog post written by Sheeri Cabral who is a bona fide MySQL community leader and has the awards to prove it. Her post offers a bullet-list of tasks that, if followed, will put you on the road to being a community leader as well.

I think it’s a good time to note that community involvement is becoming a bigger factor in the job market. As a consulting practice manager that regularly interviews and occasionally hires talented individuals, I look at community involvement as a significant factor in my evaluation process. Those that are engaged in the community are more likely to get my attention and those that lead parts of the community receive and deserve a special place near the front of the line in my book. Right or wrong, those involved with the community have typically been more resourceful, harder working, and easier to work with in my experiences. Of course, you also have to “know your stuff”, but that’s becoming the easy part with such an active community producing tons of valuable technical content daily.

So, consider the blueprint Sheeri offers as the motivation to get you more involved. I know I will be working to check off the items on that list for my own community involvement in the coming months! For example, the ODTUG Kaleidoscope and Oracle OpenWorld events are going to be here before you know it and presenting at these events is a great way to give back some knowledge to the rest of the community.

If you want to present at Oracle OpenWorld, you’ve got an opportunity to do so (yes, YOU!). Oracle has made a few session slots available to those that have good ideas. To get started, see the blog postings about the submission process and then go to Oracle Mix and submit your idea! Once submitted, start blogging about it yourself and get others to vote for your idea so you can present at OOW08. If your idea doesn’t get picked, you can always choose to present at one of the OTN Unconference slots at OOW08 too. If timing doesn’t work out for you to attend OOW this year, we’re only a few months away from the start of the call for speakers for the Collaborate 09 conference (in Orlando, May, 2009). IOUG starts their call for papers in the fall, probably sometime in August or September. Watch the IOUG home page for your chance to submit a session proposal there too.

Finally, congratulations, Sheeri, on your well-deserved award and thanks for offering sage advice on community involvement!

Who wants to SCUBA pre-OOW08?

I’m thinking of organizing a 2-tank (or more) scuba dive down in Monterrey, California, a little ways south of SF for the weekend prior to OOW 08. You can’t really scuba in San Francisco Bay–not much there, murky, ships, etc. In Monterrey, it’s a whole different story and there are many dive operators and charters servicing the area. I’m proposing that we dive on Saturday, September 20 (my birthday!)–2 or maybe 3 tanks. For those like me that live in landlocked areas, getting to dive with the sea lions and wildlife of northern California is a rare opportunity.

If there’s enough interest, I’ll coordinate a group and find a charter that will take us out and a shop that will rent all the gear (if you don’t want to lug your own). If there are enough of us, I’ll even figure out a way to transport us from the SF area down to Monterrey and back. At this point, I haven’t made plans, just seeing how much interest there might be. I’ll figure out costs once I figure out how big the group may be.

If you’re interested, comment on this posting and/or email me directly (dannorris@dannorris.com) and I’ll keep a little list of who’s interested. If you’re not attending OOW, but can make it to Monterrey for a dive, you’re welcome too–I just need a dive buddy and I don’t particularly care if they know anything about Oracle :). See you underwater (hopefully)!

Configuring Weblogic For Restart After Reboot on Windows

I have been working on a customer project involving new installations of Oracle Database (a two-node failover cluster using Oracle Clusterware–good stuff) and two load-balanced BEA Oracle Weblogic servers for the middle tier. The middle tier environment runs on Windows Server 2003 Enterprise x64 Edition and is managed by an outsourced hosting facility.

I had worked with Weblogic before this project, but not on Windows and I was a little surprised by the difficulty finding relatively simple information on BEA’s support site as well as in their documentation.

<rant>I have to say that I’m pleased that Oracle closed this deal so that (I never thought I’d say this) they can make BEA’s support as good as Oracle Support and Metalink. I know it will take quite a while–probably 6-12 months–but it absolutely needs to happen. It’s little reminders like these that make me glad I work with Oracle (or the companies they ultimately buy) and not other software. I’m as guilty as anyone of not knowing how good we Oracle professionals have it when it comes to good, well-organized documentation, a solid support site with a killer knowledge repository (with an awesome search), and a warm, active community of users (too many “thanks to” to mention at this point).</rant>

Back to the reason you’re reading: this post will summarize what turns out to be the relatively easy changes required to ensure that your Windows-based Weblogic managed servers will start up at boot time.

When creating a new Weblogic Domain on Windows, you’ll sometimes have the opportunity to choose the Sun JDK or BEA JRockit JDK to use for your domain’s Java engine. Be conscious of which one you choose (for WL 10.0, it’s on the screen where you choose a Development or Production configuration). I chose BEA JRockit for my environment’s servers because on 64-bit Windows, it’s the only one supported. For 32-bit Windows, you have the option to use Sun’s JDK, but then we’d have a mix and more potential for new bugs to pop up due to the JDK differences. There’s a small change in this process when using Sun’s JDK versus BEA JRockit and I’ll note that as well.

To ensure that your Windows-based BEA Weblogic Managed Server(s) start at boot time, follow these steps:

  1. After creating the new domain and the new Managed Server (Managed Server is a Weblogic term to identify the differences between an Admin Server and the application server where applications should be deployed), modify the Managed Server settings.
  2. Lock & Edit the configuration and proceed to Environment > Servers > (name of your Managed Server) > Configuration tab > Server Start subtab. Then scroll down to the Arguments box and enter -Xnohup in the box. If you’re using Sun’s JDK instead of BEA JRockit, enter -Xrs in that box instead. This is documented at http://edocs.bea.com/wls/docs100/server_start/nodemgr.html#wp1101004.
  3. Once that’s in place, you can Activate Changes.
  4. The admin server says that no restarts are needed, but I would restart it just to make sure. I’m not sure how the admin server can change a JDK flag without restarting the application server. Maybe I’m just not knowledgeable enough to know how it works, but I think it’s just not smart enough to know that you *do* have to restart.
  5. The last change was the one that I missed initially. Briefly, the reason I missed it was that it has to do with crash recovery and in my opinion, a server reboot shouldn’t cause an application server to crash, so I ignored this part of the documentation. One has to ask why you wouldn’t want crash recovery enabled by default anyway, but that’s probably for another rant some other day. Anyway, the final change is to modify a property for the node manager process. Edit BEA_HOME\wlserver_10.0\common\nodemanager\nodemanager.properties and set CrashRecoveryEnabled=true (it is in the file set to false by default). Save and exit the editor.
  6. This is Windows, so go to the Services control panel and restart the BEA Products NodeManager service to put the change into effect.
  7. Ensure that your managed server is up and running. Then, test the changes you’ve made by rebooting the node and see that your managed server restarts after the reboot is complete (and you’ve given time for node manager to start the managed server).

If you have problems, check the node manager logfile (BEA_HOME\wlserver_10.0\common\nodemanager\nodemanager.log) as it will be most useful in determining what happened. If you don’t see any hint that it even tried to restart the server after the reboot, then it’s probably because the crash recovery setting is not enabled–make sure you changed the right thing in the right file.

I didn’t test to see if this process will restart the admin server as well, but I think it probably will or at least should. With a production configuration, you have to enter the username/password for the admin server when starting it, so you may have to store that in the admin server configuration, but that should be a relatively easy fix. In my case, we didn’t want our admin server running all the time and only start it when needed, so having it start after a reboot wasn’t necessary or desired.