Cluster Server 7.4.2 Configuration Guide for SAP Web Application Server - Windows

Last Published:
Product(s): InfoScale & Storage Foundation (7.4.2)
Platform: Windows
  1. Section I. Getting Started
    1. Introducing the Veritas High Availability Agent for SAP Web Application Server
      1. About the Veritas High Availability agent for SAP Web Application Server
        1.  
          Typical SAP Web Application Server configuration in a VCS cluster
      2.  
        How application availability is achieved in a physical environment
      3. How does the Veritas High Availability solution work
        1.  
          How the VMwareDisks agent communicates with the vCenter Server instead of the ESX/ESXi host
        2.  
          Typical VCS cluster configuration in a virtual environment
      4. Agent functions
        1.  
          Online
        2.  
          Offline
        3.  
          Monitor
        4.  
          Clean
      5.  
        Agent attributes for SAP Web Application Server
      6.  
        Installing the agent for SAP Web Application Server
    2. Installing and configuring the SAP Web Application Server for high availability
      1.  
        Monitoring an SAP instance
      2.  
        About installing SAP Web Application Server for high availability
      3.  
        About configuring SAP Web Application Server for high availability
      4. Setting up SAP systems for clustering
        1.  
          Installing SAP systems using a virtual hostname
      5.  
        Installing SAP system using Virtual Hostname
      6.  
        Configuring the agent for message server restart
      7. Configuring the Enqueue Replication Server
        1.  
          Configuring the Enqueue Replication Server manually
        2.  
          Configuring the Enqueue Replication Server using SAPInst
      8. Clustering an SAP instance
        1.  
          Configuring the first node in the cluster
        2.  
          Configuring all other nodes in the cluster
        3. Creating and adding domain groups and users
          1.  
            User accounts
          2.  
            Groups
          3.  
            Adding new domain groups and users
          4.  
            Creating SAP system users, sapsidadm and SAPServiceSAPSID
          5.  
            Adding the sapsidadm user to the SAP_SAPSID_GlobalAdmin Group
          6.  
            To add the SAPServiceSAPSID user to the SAP_SAPSID_GlobalAdmin Group
        4.  
          Creating and adding local groups and users
        5.  
          Creating and adding local groups and users
        6.  
          Creating sapmnt and saploc share directories
  2. Section II. Configuring the application for high availability
    1. Configuring the application in a physical environment
      1.  
        Overview
      2.  
        Before configuring the service groups for SAP Web Application Server
      3.  
        Configuring service groups with the SAP Web Application Server agent
      4.  
        Configuring the SAPWebAS preonline script
    2. Configuring the application in a VMware environment
      1.  
        About configuring application monitoring with Veritas High Availability solution for VMware
      2. Configuring application monitoring for SAP Web Application Server
        1.  
          Configuring the VCS cluster
        2.  
          Configuring the application
    3. Optional configuration tasks for the SAP Web Application Server agent
      1.  
        Setting the SAPMonHome attribute
      2.  
        Configuring the execution period for agent functions
      3.  
        Executing a custom monitor program
      4.  
        Preventing early faulting of Java and Add-In instances
  3. Section III. Troubleshooting the Agent
    1. Troubleshooting the agent for SAP Web Application Server
      1.  
        Starting the SAP Web Application Server outside a cluster
      2. Troubleshooting common problems
        1.  
          Unable to see an entry in the SAP MMC for an SAP instance
        2.  
          The agent for SAP Web Application Server fails to bring online an SAP instance resource through VCS
        3.  
          SAP instance does not come online, and the startsap.exe command exits with exit code -1
        4.  
          In case of an Enqueue server failure, the Enqueue server instance fails to take over the lock table from the Enqueue Replication server instance
        5.  
          The ensmon.exe command returns exit code 4 for a Enqueue server instance
        6.  
          The return code of the ensmon.exe command is 8 for an Enqueue Replication server instance
        7.  
          The Enqueue server instance does not fail over to the correct Enqueue Replication server instance
        8.  
          In case of a resource fault, the Service Group does not fail over
      3. Reviewing SAP Web Application Server agent log files
        1.  
          Using SAP instance log files
        2.  
          Using SAP log files
      4. Reviewing error log files
        1.  
          Using SAP NetWeaver instance files
        2.  
          Reviewing cluster log files
        3.  
          Using trace level logging
      5.  
        Checks for an SAP Add-In Usage Types
  4. Appendix A. Sample Configurations
    1.  
      About the sample configuration for the agent for SAP Web Application Server
    2.  
      Sample agent type definition for SAP WebAS
    3. Sample SAP resource configuration in a physical environment
      1.  
        Sample SAP primary application server instance
      2.  
        Sample SAP additional application server instance
      3.  
        Sample SAP Central Services instance
      4.  
        Sample SAP Enqueue Replication server instance
    4. Sample service group configurations in a physical environment
      1.  
        Sample service group configuration for ABAP and Java Usage types
      2.  
        Sample service group dependency for SAP Web Application Server
    5.  
      Sample configuration in a virtual environment

Configuring the SAPWebAS preonline script

In a clustered environment, the SAP administrator installs and configures SAP Enqueue and SAP Enqueue Replication Server. SAP Enqueue and Enqueue Replication Server have the following requisites:

  • If an Enqueue server instance fails, the server must fail over to the node on which the Enqueue Replication Server instance is running.

  • If the Enqueue Replication Server instance fails, the instance must fail over to a node on which Enqueue Server is NOT running.

The SAPWebAS preonline script facilitates proper Enqueue server failover behavior. The existing VCS preonline script calls the SAPWebAS preonline script.

The SAPWebAS preonline script performs the following tasks:

  • If the service group for which the script is running does not have an Enqueue server or an Enqueue Replication Server resource, the script returns the control to the VCS preonline script.

  • If the service group has an Enqueue server or Enqueue Replication Server resource, the script determines the node on which the online operation can be performed. The script also ensures that the online operation does not execute the VCS preonline script again.

To accomplish this failover behavior, you must configure the VCS preonline script.

The VCS preonline trigger calls an external preonline trigger utility - sapwebaspreonline.exe. The initiated preonline trigger performs the steps necessary for correct failover behavior of the Enqueue servers. The sapwebaspreonline.exe utility is located in the %VCS_HOME%\bin\SAPWebAS directory.

To configure SAPWebAS preonline script

  1. Go to the %VCS_HOME%\bin\Trigger directory.
  2. Skip this step if the preonline file exists in this directory.

    If the preonline file does not exist, copy the sample preonline trigger file from the %VCS_HOME%\bin\Sample_Triggers directory to the %VCS_HOME%\bin\Triggers directory, rename the file to preonline, and then use this file.

  3. Add the following lines to the preonline file:
    #--------------------------------------------------------------
    # Start sapwebas preonline trigger.
    #--------------------------------------------------------------
    # Perl preonline.pl <system> <group> <whyonlining> 
    <systemwheregroupfaulted>
    my $system = $ARGV[0];
    my $group = $ARGV[1];
    my $whyonlining = $ARGV[2];
    my $systemwheregroupfaulted = undef;
    my $sArgs = join(' ', @ARGV);
    VCSAG_LOG_MSG("I", "Arguments [$sArgs]", 15041);
    if(defined $ARGV[3]) {
    	$systemwheregroupfaulted = $ARGV[3];
    }
    my $SAPWebASPreOnlineTrigger = sprintf("%s\\bin\\SAPWebAS\\
    sapwebaspreonline.exe", $vcs_home);
    VCSAG_LOG_MSG("I", 
    "The trigger command is [$SAPPreOnlineTrigger]", 15041);
    if(defined $systemwheregroupfaulted)
    {
    	VCSAG_LOG_MSG("I", "The group is faulted on syetem =
    [$systemwheregroupfaulted]", 15042);
    	$CMD = sprintf("\"%s\" %s %s %s %s", $SAPWebASPreOnlineTrigger,
    	$system, $group, $whyonlining, $systemwheregroupfaulted);
    }
    else {
    	$CMD = sprintf("\"%s\" %s %s %s", $SAPWebASPreOnlineTrigger, 
     $system, $group, $whyonlining);
    }
    system($CMD);
    my $exit_value = $? >> 8;
    VCSAG_LOG_MSG("I", "The exit code from the trigger: [$exit_value].",
     15046, $exit_value);
    if($exit_value == 0) {
    	VCSAG_LOG_MSG("I", "The PreOnline Trigger for SAP executed 
    successfully.", 15046);
    	exit;
    }
    elsif($exit_value == 1) {
    	VCSAG_LOG_MSG("I", "The PreOnline Trigger for SAP FAILED.", 15047);
    	exit;
    }
    else {
    	VCSAG_LOG_MSG("I", "Unknown PreOnline trigger.", 15048);
    }
    #--------------------------------------------------------------
    # End sapwebas preonline trigger.
    #--------------------------------------------------------------
    .
    .
    # give control back to HAD.
    if (defined $ARGV[3]) {
    	'\"$vcs_home\\bin\\hagrp\" -online -nopre $ARGV[1] -sys $ARGV[0] 
    -checkpartial $ARGV[3]';
    	exit;
    }
    
    '\"$vcs_home\\bin\\hagrp\" -online -nopre $ARGV[1] -sys $ARGV[0]';
    exit;
    
    
  4. Use the following command to set the preonline trigger attribute to true for the Service Groups to which the Enqueue and Enqueue Replication server instances belongs:

    C:\> hagrp -modify service_group PreOnline 1 -sys system

The preonline script is now configured to facilitate Enqueue and Enqueue Replication server behavior. You can view the logs in the VCS engine log, engine_A.log.

Note:

Once the preonline trigger is configured, you may see unexpected behavior while manually switching or performing online operations on the Enqueue Replication service group. This behavior is a result of the control logic within the preonline trigger that protects the Enqueue lock table. For system maintenance, if you prefer to perform manual operations on the service groups, you can do so by disabling the preonline trigger.

To disable the preonline trigger, use the following command:

C:\> hagrp -modify service_group PreOnline 0 -sys system