Skip Headers

Oracle® Fail Safe Concepts and Administration Guide
Release 3.3.1 for Windows
Part No. A96684-01
Go To Table Of Contents
Contents
Go To Index
Index

Previous Next

13
Configuring Oracle MTS Services for High Availability

Oracle Fail Safe helps you configure an Oracle Service for Microsoft Transaction Server (MTS) for high availability. (In this documentation, the Oracle Service for MTS is referred to as the Oracle MTS Service.) If a cluster node is shut down or fails, the group that contains the Oracle MTS Service fails over to another cluster node automatically.


Note:

Support for configuring an Oracle Service for Microsoft Transaction Server for high availability is provided for Oracle 8.1.6 and 8.1.7 database servers. Beginning with Oracle9i, Oracle Services for MTS is no longer needed for an Oracle database server to participate in a Microsoft Transaction Server transaction; all the code and logic to enable Oracle database servers to participate in Microsoft Transaction Server transactions are now embedded in the MTS application process. Therefore, this chapter is applicable for Oracle servers 8.1.6 and 8.1.7 only.

The following topics are discussed in this chapter:

Topic Reference
Introduction   Section 13.1  
Discovering Standalone Oracle MTS Services   Section 13.2  
Adding Oracle MTS Services to a Group   Section 13.3  
Security Requirements for Oracle MTS Services   Section 13.4  
Troubleshooting Problems with Oracle MTS Services   Section 13.5  

Microsoft Transaction Server is Microsoft's proprietary COM-based transaction processing system that runs on an Internet or network server. Microsoft Transaction Server is used to deploy and manage application and database transaction requests on behalf of a client computer. Microsoft Transaction Server provides the following:

Microsoft Transaction Server is a component of the three-tiered, server-centric architecture model. This enables the presentation, business logic, and data elements of applications to be clearly separated on different computers connected in a network.

Without any special database integration, you can deploy a COM component in Microsoft Transaction Server that connects to an Oracle database (see the Oracle Fail Safe Release Notes for a list of supported versions). However, the following features require the installation of Oracle MTS Service software):

After Oracle MTS Services software is installed, you create a special Windows service (referred to as an Oracle MTS Service) for each Oracle database to which your COM component connects. Use the Oracle Manager for MTS Services snap-in located in the Microsoft Management Console Explorer to create these services. The Oracle MTS Service provides the following:

The COM component can be created using the Oracle Call Interface (OCI), Oracle Objects for OLE (OO4O), Open Database Connectivity (ODBC), or Oracle Provider for OLE DB. For a given Oracle database, you only need one Oracle MTS Service on the network.

13.1 Introduction

If an Oracle MTS Service fails, the application transactions that use the Oracle MTS Service will fail. By configuring the Oracle MTS Service for high availability, you eliminate this point of failure in the configuration.

A multitiered implementation is a common way to configure a solution using Microsoft Transaction Server and Oracle MTS Service.

Figure 13-1 shows a multitiered implementation in which the Microsoft Transaction Server, Oracle MTS Service, Oracle HTTP Server, and COM components reside on a separate cluster from the database.

The three tiers in Figure 13-1 include:

Multitiered implementations allow for incremental deployment of high availability into your solution. For example, with Oracle Fail Safe, you can eliminate potential points of failure for the components in either the application or database tier, or both tiers can be configured on clusters for high availability with Oracle Fail Safe.

Figure 13-1 Three-Tiered Architecture for Highly Available Oracle MTS Services

Description of mts_architecture.gif follows
Description of the illustration mts_architecture.gif

13.2 Discovering Standalone Oracle MTS Services

You configure standalone Oracle MTS Services for high availability using Oracle Fail Safe Manager. Before you can view standalone Oracle MTS Services in the Oracle Fail Safe Manager interface, they must first be discovered.

Oracle Services for MSCS discovers Oracle MTS Services by reviewing the list in the Windows service manager, finding Oracle MTS Service entries, and determining which have not already been configured for high availability. Oracle Fail Safe displays the newly discovered services in the Oracle Fail Safe Manager tree view under the Standalone Resources folder.

13.3 Adding Oracle MTS Services to a Group

You configure an Oracle MTS Service for high availability by adding it to a group using the Add Resource to Group Wizard in Oracle Fail Safe Manager. The group you specify must already contain a Microsoft Distributed Transaction Coordinator and at least one virtual address. Typically, the group includes the following resources:

Note that there can be only one Microsoft Distributed Transaction Coordinator running on the cluster at any given time, and that there must be one Oracle MTS Service for each database involved in distributed transactions. Therefore, all Oracle MTS Services on a cluster must be added to the group containing the Microsoft Distributed Transaction Coordinator.

13.3.1 Before You Get Started

Before you add an Oracle MTS Service to a group, note the following:

  • Microsoft Distributed Transaction Coordinator (MS DTC) must be configured for high availability on all cluster nodes. (If you are using Windows 2000, MS DTC is installed and configured for high availability when you install Windows 2000 on a cluster. If you are using Windows NT, MS DTC is installed and configured for high availability when you install the Windows NT option pack on a cluster.)

    If you are using Windows 2000, the MS DTC resource is automatically added to the Cluster Group. However, the MS DTC resource and the Oracle MTS Service resource must be in the same group. Therefore, you must either manually move the MS DTC resource to the group where you will add the Oracle MTS Service resource, or let Oracle Fail Safe move the MS DTC resource for you.

    After the MS DTC resource has been moved to the new group, make sure all your applications access MS DTC using the virtual address of the new group.

    You can verify that MS DTC has been configured for high availability on all cluster nodes by looking for the MS DTC resource in the tree view under the Cluster Resources folder. You can verify that it has been configured to run on all cluster nodes by moving the group that it contains it to each cluster node.

    (See the Oracle Fail Safe Release Notes for information on supported operating system software versions.)

  • Oracle MTS Service software must be installed on a private disk on all cluster nodes.

  • An Oracle MTS Service must be created for each database on the cluster that will be involved in distributed transactions.

  • Make sure that the Microsoft Management Console with the Oracle Manager for Microsoft Transaction Server is not running on any cluster nodes. The add operation modifies the Oracle MTS Service and must have exclusive access to it. After the add operation is complete, you can restart the Oracle Manager for Microsoft Transaction Server.

13.3.2 Configuration Steps

Oracle Fail Safe Manager automates the steps required to make an Oracle MTS Service highly available with Oracle Fail Safe. In the Add Resource to Group Wizard in Oracle Fail Safe Manager, specify Oracle MTS Service as the resource type.

Table 13-1 provides a quick reference of the tasks needed to configure an Oracle MTS Service for high availability. For step-by-step instructions about any particular task, refer to the Oracle Fail Safe online help. From the Oracle Fail Safe Manager menu bar, choose Help, then "Search for Help on."

Table 13-1 Steps for Configuring an Oracle MTS Service

Step Procedure Comments
1 Ensure the Microsoft Distributed Transaction Coordinator (MS DTC) was configured for high availability when the operating system software was installed on the cluster. See the Microsoft operating system documentation for information on MS DTC.
2 Ensure that Oracle MTS Services software is installed on a private disk on each cluster node. See the Oracle database server documentation for information on installing Oracle MTS Services software.
3 Make sure that the Microsoft Management Console with the Oracle Manager for Microsoft Transaction Server is not running on any cluster nodes. The add operation modifies the Oracle MTS Service and must have exclusive access to it. After the add operation is complete, you can restart the Oracle Manager for Microsoft Transaction Server.
4 Invoke Oracle Fail Safe Manager. From the Windows Start menu, choose Oracle - <Oracle_Home>, then Oracle Fail Safe Manager.
5 Verify the cluster. Choose Troubleshooting, then Verify Cluster to run a procedure that validates the cluster hardware and software configurations.
6 Make sure the MS DTC resource is in the correct group. If you are running Windows 2000, the MS DTC resource is automatically added to the Cluster Group. You must move the MS DTC resource to the group where you will add the Oracle MTS Service or let Oracle Fail Safe do it for you.
7 If desired, add more virtual addresses to the group containing MS DTC. Choose Resources, then Add to Group to add more virtual addresses to the group. (A virtual address was added when MS DTC was configured for high availability.)
8 Add the Oracle MTS Service to the group that contains MS DTC. Choose Resources, then Add to Group to run the Add Resource to Group Wizard. The wizard helps you to create and configure the Oracle MTS Service for high availability.
9 Verify the group. Choose Troubleshooting, then Verify Group to check for and fix any problems with the group, virtual addresses, resources, or the failover configuration.
10 Configure other application components for failover. Configure other application and database servers with Oracle Fail Safe to make your entire application highly available.

13.3.3 Configuration Data for an Oracle MTS Service

Oracle Fail Safe Manager provides the Add Resource to Group Wizard to help you configure an Oracle MTS Service for high availability. When you use the Add Resource to Group Wizard, you need the following data:

  • Possible owner nodes for the Oracle MTS Service, if the cluster consists of more than two nodes, or if one node is not available in a two-node cluster

  • The name of the group containing MS DTC

  • The virtual address you want to associate with the Oracle MTS Service (if there is more than one virtual address in the group)

  • The Oracle MTS Service name

  • The Oracle MTS Service resource name (the name you want Oracle Fail Safe Manager to use to refer to the Oracle MTS Service)

  • The connection information for the database associated with the Oracle MTS Service

  • The operating system domain user account under which the Oracle MTS Service logs on

The clusterwide operation to add an Oracle MTS Service to a group will fail if any of the following conditions exists:

  • The Oracle MTS Service that you specify is not configured correctly. Make sure that the Oracle MTS Service runs as a standalone service before you add it to a group.

  • You attempt to add the Oracle MTS Service to a group that does not contain MS DTC.

  • The account under which the Oracle MTS Service runs is not a domain account.

  • MS DTC and Oracle MTS Service are not installed on every cluster node that is a possible owner node for the concurrent manager.

  • The database to which the Oracle MTS Service connects does not exist, the connection information for this database was entered incorrectly in the Add Resource to Group Wizard, or the information for this database in the tnsnames.ora file is incorrect.

If there is an error adding or removing an Oracle MTS Service from a group, check the Windows Event Viewer (Application Log) for error messages from "Oracle Fail Safe."

The following sections describe in detail the data requirements for adding an Oracle MTS Service to a group.

13.3.3.1 Choose Nodes

If you are adding an Oracle MTS Service to a group and the cluster consists of more than two nodes, you are asked to specify which nodes should be possible owners for the Oracle MTS Service by specifying a list of selected nodes, as shown in Figure 13-2. To specify that a particular node should not be a possible owner for the Oracle MTS Service, select the node from the Selected Nodes list and click the left arrow.

Section 2.6.6 describes in detail the concept of the possible owner nodes list.

Figure 13-2 Choose Nodes Wizard Page When All Nodes Are Available

Description of pn_mts_wiz.gif follows
Description of the illustration pn_mts_wiz.gif

If you are adding an Oracle MTS Service to a group and the cluster consists of two or more nodes, but one or more nodes are unavailable, you are also asked to specify which nodes should be possible owners for the Oracle MTS Service. In this case, the wizard page displays which nodes are unavailable and why, as shown in Figure 13-3.

Figure 13-3 Choose Nodes Wizard Page When Any Node Is Unavailable

Description of pn_mts_wiz_unavail.gif follows
Description of the illustration pn_mts_wiz_unavail.gif

13.3.3.2 Oracle MTS Service Virtual Address

A group must contain at least one virtual address before you add an Oracle MTS Service to it. If the group to which you are adding an Oracle MTS Service contains more than one virtual address, you are asked to select which one you would like to associate with the Oracle MTS Service, as shown in Figure 13-4.

Figure 13-4 Oracle MTS Service Virtual Address Wizard Page

Description of mts_virt_add.gif follows
Description of the illustration mts_virt_add.gif

13.3.3.3 Oracle MTS Service Identity

The Add Resource to Group Wizard requests the following information about the Oracle MTS Service identity, as shown in Figure 13-5.

  • Oracle MTS Service name

    This is the name of an existing Oracle MTS Service on the cluster. The list of names provided are those that have been identified by Oracle Fail Safe as standalone Oracle MTS Services on the cluster.

  • Resource name

    This is the name by which you want Oracle Fail Safe Manager to refer to the Oracle MTS Service. This name will appear in the Oracle Fail Safe Manager tree view.

    This name can be the same as the Oracle MTS Service name. If you specify a different name, make sure that it is unique across the cluster.

Figure 13-5 Oracle MTS Service Identity Wizard Page

Description of mts_id.gif follows
Description of the illustration mts_id.gif

13.3.3.4 Oracle MTS Service Database

The Add Resource to Group Wizard requests the following information for the database with which the Oracle MTS Service is associated, as shown in Figure 13-6.

  • User name

    This is the user name for the database account. You cannot change this field during an Add Resource to Group operation. If you want to change the database account that the Oracle MTS Service uses, do so before or after you run the Add Resource to Group operation.

  • Password

    This is the password for the account specified in the User Name field.

  • Confirm password

    This is the same password as you entered in the Password field.

  • Service name

    This is the service name for the database with which the account is associated. You cannot change this field during an Add Resource to Group operation; an Oracle MTS Service is always created for a specific database.

Figure 13-6 Oracle MTS Service Database Wizard Page

Description of mts_db.gif follows
Description of the illustration mts_db.gif

13.3.3.5 Oracle MTS Service Authentication

The Add Resource to Group Wizard requests that you provide authentication information (a password) if the account under which the Oracle MTS Service logs on is a user account. If the account under which the Oracle MTS Service logs on is the system account, you do not enter any data on this page, as shown in Figure 13-7.

  • User name

    Displays the name of the account under which the Oracle MTS Service logs on. If the Oracle MTS Service logs on using the system account, then this field contains the string, "LocalSystem." If the Oracle MTS Service logs on using a user account, then this field contains that account name.

  • Password

    Displays nothing if the Oracle MTS Service logs on using the system account. Enter the user account password if the Oracle MTS Service logs on using a user account.

  • Confirm password

    Displays nothing if the Oracle MTS Service logs on using the system account. Reenter the user account password if the Oracle MTS Service logs on using a user account.

Figure 13-7 Oracle MTS Service Authentication Wizard Page

Description of mts_auth.gif follows
Description of the illustration mts_auth.gif

13.4 Security Requirements for Oracle MTS Services

The account that the Oracle MTS Service uses to log on to the system must be the system account or a domain user account.

The account that the Oracle MTS Service uses to connect to the database must have the following database roles, privileges, and rights:

13.5 Troubleshooting Problems with Oracle MTS Services

General information about troubleshooting fail-safe resources is in Chapter 6. For general information about troubleshooting an Oracle MTS Service, see Using Microsoft Transaction Server with Oracle, which is part of the Oracle8i for Windows documentation set.

If you have problems with an Oracle MTS Service configured for high availability, run the Verify Cluster operation to validate and fix any problems.

When you issue a Verify Group command on a group containing an Oracle MTS Service, Oracle Fail Safe does the following on all nodes that are possible owner nodes for the Oracle MTS Service:

You can run the Verify Group operation at any time. However, you should run it when any of the following occurs:

If any problems are found during the group verification, Oracle Fail Safe prompts you to fix them or returns an error message that further describes the problem.

13.5.1 Problems Adding an Oracle MTS Service to a Group

To troubleshoot problems when adding a standalone Oracle MTS Service to a group, ensure that:

  • The database associated with the Oracle MTS Service is accessible from all cluster nodes that are possible owner nodes for the Oracle MTS Service.

  • The account under which the required Oracle MTS Service runs is a system account or is a domain user account.

  • The Windows Registry entry for LAST_HOME is set to the highest Oracle home number on your local system.

    If you attempt to add an Oracle MTS Service to a group and the LAST_HOME entry for HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/ALL_HOMES is not equal to the highest Oracle home number on your system, then the Add Oracle MTS Service to Group operation will fail and you will receive the following messages:

    FS-10778: The Oracle MTS Service resource provider failed to configure the cluster resource <resource-name>
    
    FS-10618: Failed to change the configuration for Windows service <service-name>
    
    0x424: The specified service does not exist as an installed service
    
    

    For example, if you have HOME0, HOME1, and HOME2 on your system, the value for LAST_HOME must be 2 for the Add Oracle MTS Service to Group operation to work. To fix the problem, change the value of LAST_HOME to match the highest Oracle home number on the local system and rerun the Add Resource to Group Wizard.

13.5.2 Problems Placing a Group Online

If there is a problem placing a group that contains an Oracle MTS Service online, verify the group. When you use the Verify Group command (from the Oracle Fail Safe Manager Troubleshooting menu), Oracle Fail Safe checks the group configuration and attempts to fix any problems that it finds. If the Verify Group command cannot fix the problem, it returns an error message that should help you to resolve the problem manually. If the Verify Group command finds a problem, it will prompt you on how to proceed.

13.5.3 Windows Service for Oracle MTS Service Deleted

If you accidently delete an Oracle MTS Service from a cluster node that is a possible owner node for the Oracle MTS Service, run the Verify Group operation to re-create the Oracle MTS Service.


Previous Next
Oracle Logo
Copyright © 1996, 2002 Oracle Corporation

All rights reserved
Go To Table Of Contents
Contents
Go To Index
Index