Upgrading WebLogic Application Environments
Planning how you will upgrade an application environment is an important step in the process. To ensure that your plan addresses all of the aspects of upgrading that are necessary for your environment, complete the following steps:
Generate an inventory of the application environment, and identify the components defined in the following table. You can view a sample application environment in Overview of the Upgrade Process.
"List of Supported Operating System Configurations" in "WebLogic Server 9.0 Supported Configurations" in Supported Configurations for WebLogic Server 9.0 at
"Supported Database Configurations" in Supported Configurations for WebLogic Server 9.0 at
"Supported Web Servers, Browsers, and Firewalls" in Supported Configurations for WebLogic Server 9.0 at
Most existing WebLogic Server applications can be run without modification in the new WebLogic Server 9.0 application environment. However, you should review Compatibility with Previous Releases to determine whether any feature changes affect the applications in your environment.
Using the information gathered in the preceding steps, create a plan for upgrading your application environment. Identify the scope and timing of the upgrade process, based on your business needs. Please note the following:
You have the option of backing up the domain during the upgrade process, as described in Backup Domain. However, the wizard archives the domain directory only; it does not preserve file permissions.
BEA recommends that before upgrading your application environment, you manually back up the components defined in the following table. You should back up the relevant information on all machines in the domain.
If it is important for you to maintain a record of all messages that are logged, back up the log files. As log files can be large, you may want to delete them to conserve disk space, if it is not important to maintain them.
Before upgrading your application environment, you must install WebLogic Server 9.0 on each machine in the domain. For more information about installing WebLogic Server 9.0, see Installation Guide at
Note: If you are using Node Manager in your pre-9.0 installation, when installing the 9.0 product, you should set the Node Manager listen port to match the port number used in the pre-9.0 installation, if possible. The default value for the listen port for Node Manager is 5556.
Some configurations include Managed Servers running on one or more machines that are remote from the Administration Server for the domain. If you have this type of configuration, you must upgrade the domain directories on each of the machines that host the remote Managed Servers.
To prepare the remote domain directories, you must copy the following files from the root directory of the pre-upgraded domain directory on the host machine for the Administration Server to the root directory of the host domain(s) of the remote Managed Servers:
Note: If the database in your configuration is not compatible with WebLogic Server 9.0, the data must be upgraded to a database that is supported before it can be used in the new application environment. For more information, see Step 2: Verify Supported Configuration Information.
CLASSPATHenvironment variable and
PATHenvironment variable, where
WL_HOMErefers to the top-level installation directory for WebLogic Server.
The following table summarizes the steps for updating an application environment. Some steps are mandatory, others are optional. Each step that is performed must be done on every machine in the domain.
Note: If you are installing WebLogic Server 9.0 into an existing BEA Home directory that contains an installation of WebLogic Server 7.0 or 8.1, all custom security providers that reside in the default location,
If you are currently using a customized version of Node Manager to provide high availability to Managed Servers and you wish to continue doing so in the new application environment, upgrade Node Manager:
Upgrade the WebLogic domain on every machine that hosts any Managed Servers. Be sure to copy the appropriate files to the Managed Servers before performing the upgrade, as described in Step 4: Prepare the Remote Managed Server Domain Directories.
Due to recent changes in the MBean hierarchy, BEA does not guarantee that existing configuration and administration scripts (such as WLST,
weblogic.Admin, Ant, and so on) will run in all 9.0 environments. BEA recommends that you update your scripts to take advantage of the new features provided with WebLogic Server 9.0. For more information about new WebLogic Server features and changes in the MBean hierarchy, see "What's New in WebLogic Server 9.0" in the WebLogic Server and WebLogic Express Release Notes at
weblogic.Adminutility. For more information, see
The WebLogic Scripting Tool (WLST) is a command-line scripting interface (built with Jython) that you can use to configure WebLogic domains. Using WLST, WebLogic Server administrators can perform administrative tasks and initiate WebLogic Server configuration changes interactively or by running an executable script.
With the release of WebLogic Platform 8.1, WLST was made available for evaluation from BEA's dev2dev site, but it was not formally included in the WebLogic Platform 8.1 product. It was offered in two formats: WLST online and WLST offline.
In WebLogic Server 9.0, the online and offline versions of WLST have been enhanced and merged into a single tool. This new version of WLST fully supports the administrative and configuration features offered by 9.0. For more information about WLST, see WebLogic Scripting Tool at
As with the other pre-9.0 tools, BEA does not guarantee that existing WLST scripts will run in 9.0 due to recent changes in the MBean hierarchy. BEA recommends that you update your scripts to take advantage of the new features provided with WebLogic Server 9.0. For more information about new WebLogic Server features and changes in the MBean hierarchy, see "What's New in WebLogic Server 9.0" in the WebLogic Server and WebLogic Express Release Notes at
Follow the steps described in Upgrade Your Application Environment.
See "What's New in WebLogic Server 9.0" in the WebLogic Server and WebLogic Express Release Notes at
The MIB is located at
/weblogic90/server/lib/BEA-WEBLOGIC-MIB.asn1. WebLogic Server does not change object identifiers (OIDs) for existing managed objects; it only adds new OIDs for new managed objects.
For a list of deprecated managed objects, see "Deprecated MBeans" in WebLogic Server MBean Reference at
http://download.oracle.com/docs/cd/E13222_01/wls/docs90/wlsmbeanref/core/index.html. The description of each deprecated MBean includes a pointer to the replacement MBean. (Each SNMP managed object corresponds to an MBean attribute.)
Note: A number of runtime MBeans that are internal to BEA have been removed from the MIB. These MBeans are not included in the deprecated MBeans list. For more information, see WebLogic Server Known and Resolved Issues at
The Upgrade Wizard does not carry forward any customizations that have been made to the default startup scripts, such as the setting of the
JAVA_OPTIONS environment variable. After the upgrade process is complete, you will need to customize the default scripts again.
Note: If you are upgrading your domain to WebLogic Server 9.0 and you want to continue using a pre-5.1 version of PointBase, you must add the JAR files for the pre-5.1 version of the PointBase database to the beginning of the
CLASSPATH environment variable definition. To do so, update the
set CLASSPATH statement in your
CLASSPATHvariable, as follows:
CLASSPATHenvironment variable definition.
Note: If the
nodemanager.domains file resides on the machine where the Administration Server and Managed Server are configured to run and they share the same domain directory, you can manually edit the file to include an entry for the domain, in the following form:
For more information, see "Configuring nodemanager.domains File" in "Additional Configuration Information" in Managing Server Startup and Shutdown at
nmEnroll command updates the
nodemanager.domains file under the
/common/nodemanager directory with information about the domain, where
WL_HOME refers to the top-level installation directory for WebLogic Server. The
nodemanager.domains file specifies the domains that a Node Manager instance controls. This file is necessary so that standalone clients do not need to specify the domain directory explicitly.
nm_password.properties, the Node Manager secret file, which contains the encrypted username and password that is used for server authentication
nmEnrollcommand to enroll the machine on which WLST is running with Node Manager.
SerializedSystemIni.datfile. By default, these files are saved in the directory in which WLST was started.
nodemanager.domainsfile, containing the information about the domain, is written to this directory. By default, the directory used for this purpose is
WL_HOMErefers to the top-level installation directory for WebLogic Server.
For example, if the domain directory is specified as
c:/bea/mydomain/common/nodemanager, and the default home directory for Node Manager,
/common/nodemanager, is used, then you enroll the machine on which WLST is running with Node Manager by entering the following command:
For more information, see
nmEnroll in WebLogic Scripting Tool at
Once you start the Administration Server, verify the remote server start options, such as
CLASSPATH, reference the WebLogic Server 9.0 installation on the target managed server. This can be accomplished using the Administration Console, as described in "Configure startup arguments for Managed Servers" in Administration Console Online Help at
Warning: If the remote server startup options are not set correctly, when attempting to start a Managed Server using Node Manager, messages similar to the following may be written to the log file. Because these messages may be sent recursively, they may eventually consume all space available on the drive.
No config.xml was found.
Would you like the server to create a default configuration and boot? (y/n):
java.io.IOException: The handle is invalid
at COM.jrockit.io.FileNativeIO.read(III)I(Native Method)
at COM.jrockit.io.NativeIO.read(Ljava.io.FileDescriptor;II)I(Unknown Source)
at COM.jrockit.io.NativeIOInputStream.read(II)I(Unknown Source)
at COM.jrockit.io.NativeIOInputStream.read(I[BI)I(Unknown Source)
at COM.jrockit.io.NativeIOInputStream.read([BII)I(Unknown Source)
at java.io.FileInputStream.read([BII)I(Unknown Source)
Execute standard procedures for quality assurance and performance tuning before promoting an application environment to production. You should test the execution of your applications (including external client applications) in your test application environment. If your applications use APIs that have been deprecated or removed, then you may encounter warnings or exceptions at run time. If you do, you can make any required modifications before promoting your applications to production.
Once all test criteria have been met, you can promote the application environment to production, as outlined in your upgrade plan (defined previously in Step 4: Create an Upgrade Plan).
Once the new 9.0 application environment is deployed into production, you can start redirecting requests to the new environment from the existing environment. Gradually, you can quiesce the existing environment. This might be accomplished using a load balancer, for example.