Oracle® Real User Experience Insight

Installation Guide

12c Release 5 (12.1.0.6) for Linux x86-64

E52123-01

February 2014

Oracle Real User Experience Insight Installation Guide, 12c Release 5 (12.1.0.6) for Linux x86-64

E52123-01

Copyright © 2014 Oracle and/or its affiliates. All rights reserved.

Primary Author: Paul Coghlan

Contributing Author: Eddy Vervest

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable:

U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007). Oracle USA, Inc., 500 Oracle Parkway, Redwood City, CA 94065.

This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.

Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.

This software and documentation may provide access to or information on content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services.

Contents

Preface

- Audience

- Documentation Accessibility

- Related Documents

- Conventions

1 Getting Started

- 1.1 What is RUEI?

- 1.1.1 Data Collection

- 1.1.2 Product Architecture

- 1.2 Security for Network Data Collection

- 1.3 Connection Options for Network Data Collection

- 1.3.1 Copy Ports

- 1.3.2 TAPs

- 1.4 Installation Options

- 1.5 Local and Remote Database Installations

- 1.6 Scaling Scenarios

- 1.7 Server Requirements

- 1.7.1 Single-Server Requirements

- 1.7.2 Reporter Requirements

- 1.7.3 Collector Requirements

- 1.7.4 Processing Engine Requirements

- 1.7.5 Deployment Best Practices

- 1.7.6 Data Retention Policies

- 1.7.7 Full Session Replay Storage Requirements

- 1.7.8 Memory Requirements

- 1.8 Software Requirements

- 1.9 Network Requirements

- 1.10 Client Requirements

2 Installing the RUEI Software

- 2.1 Prerequisites

- 2.1.1 Planning the Software Installation

- 2.1.2 Planning the Software Installation Location

- 2.1.3 Configuring the Network Interface for Network Data Collection

- 2.1.4 Operating System Security Configuration

- 2.1.5 Verify NTP Daemon Operation for Network Data Collection

- 2.1.6 Installing the RUEI Prerequisites

- 2.1.7 Installing All Requirements Using a Yum Repository (Alternative)

- 2.1.8 Oracle Database Installation

- 2.2 Obtaining the RUEI Software

- 2.3 Unpacking the RUEI Software

- 2.4 Generic Installation Tasks

- 2.4.1 The RUEI Configuration File

- 2.4.2 Installing Java

- 2.5 Remote Tag Data Collector Installation

- 2.6 Remote Network Data Collector Installation

- 2.7 Reporter Installation

- 2.7.1 Installing the Apache Web Server and PHP

- 2.7.2 Installing the Oracle Database Instant Client

- 2.7.3 Installing the php-oci8 Module

- 2.7.4 Installing the Zend Decoder

- 2.7.5 Creating the Reporter Database Instance

- 2.7.6 Installation of the Reporter Software

- 2.8 Configuring the Network Interface

- 2.9 Enabling International Fonts (Optional, but Recommended)

- 2.10 Mail (MTA) Configuration (Optional, Reporter Only)

- 2.11 SNMP (Reporter Only)

- 2.11.1 Configuring SNMP for RUEI

- 2.12 Configuring Automatic Browser Redirection (Optional)

- 2.13 Configuring Reporter Communication (Split-Server Setup Only)

- 2.14 Verifying Successful Installation of RUEI

3 Upgrading to RUEI 12.1.0.6

- 3.1 Changes to Data Representation in RUEI 12.1.0.4

- 3.1.1 Changes in BI Export

- 3.2 KPI Values

- 3.3 XPath Support

- 3.4 Increased Database Space Requirements

- 3.5 Default Tablespace Modes

- 3.6 Upgrading Filters

- 3.6.1 Error During Upgrade

- 3.6.2 Upgrading application.name and application.page-group Filters

- 3.7 Framework Exception Downloads

- 3.8 Settings Within the ruei.conf File

- 3.9 Report Data Export

- 3.10 Upgrading From RUEI 11.1 to 12.1.0.6

- 3.10.1 Upgrading the Reporter System from RUEI 11.1

- 3.10.2 Upgrading the Remote Collector System(s) from RUEI 11.1

- 3.10.3 Upgrading Historical Data from RUEI 11.1

- 3.11 Upgrading From RUEI 12.1.0.x to 12.1.0.6

- 3.11.1 Upgrading the Reporter System from RUEI 12.1.0.x

- 3.11.2 Upgrading the Remote Collector System(s) from RUEI 12.1.0.x

- 3.11.3 Upgrading the Processing Engine System(s) from RUEI 12.1.0.x

- 3.11.4 Upgrading Historical Data from RUEI 12.1.0.x

- 3.12 Rolling Back to Version 12.1.0.4 or 12.1.0.5

- 3.12.1 Rolling Back Remote Collector Systems

- 3.12.2 Rolling Back Processing Engine Systems

- 3.13 Changes to KPIs with Release 12.1.0.6

- 3.13.1 KPI Threshold Profiles

- 3.13.2 KPIs based on the User Flow Success Ratio metric

4 Deploying the ADF Monitoring Service

- 4.1 Create a RUEI System User

- 4.2 Deploy the ADF Monitoring Service Software

- 4.3 Configure the ADF Application

- 4.3.1 Generate a Default Deployment Descriptor

- 4.3.2 Modify the Deployment Descriptor

- 4.3.3 Create a Wallet

- 4.3.4 Redeploy the ADF Application with the Modified Deployment Descriptor

- 4.4 Troubleshooting the ADF Monitoring Service

5 Installing and Configuring SSO Authentication Integration

- 5.1 Turning off the Default Web Server

- 5.2 Reporter System Without Local Database

- 5.2.1 Creating the Oracle User

- 5.2.2 Setting up the Oracle HTTP Server Environment

- 5.2.3 Creating the Installation Directory

- 5.3 Reporter System With Local Database

- 5.4 Installing Oracle HTTP Server

- 5.5 Registering RUEI with the Oracle SSO Server

- 5.5.1 Registering with Oracle SSO Version 10.1.4

- 5.5.2 Registering with Oracle SSO Version 11.1

- 5.6 Verifying the Oracle HTTP Server Configuration

6 Configuring RUEI

- 6.1 Introduction

- 6.2 Performing Initial RUEI Configuration

- 6.3 Configuring Collector Systems

- 6.3.1 Resetting Collector Systems

- 6.4 Performing Post-Installation Configuration

- 6.4.1 Specifying the Cookie Technology

- 6.4.2 Adding/Uploading HTTPS SSL Keys

- 6.4.3 Specifying How Users are Identified

- 6.4.4 Defining Applications and Page Identification

- 6.4.5 Specifying the Scope of Monitoring

- 6.4.6 Authorizing Initial Users

- 6.5 Verifying and Evaluating Your Configuration

- 6.5.1 Viewing a Traffic Summary

- 6.5.2 Confirming Data Collection

7 Configuring the Oracle Access Manager

- 7.1 Creating an OAM Access Gate for RUEI

- 7.1.1 Configuring the OAM_REMOTE_USER Header Variable

- 7.2 Downloading and Installing the Access Gate Software

- 7.3 Configuring the Access Gate Software on the RUEI Server

- 7.4 Configuring the Required Session Traffic Definitions

8 Installing Processing Engines

- 8.1 Prerequisites

- 8.1.1 Planning the Software Installation Location

- 8.1.2 Operating System Security Configuration

- 8.1.3 Verify NTP Daemon Operation

- 8.1.4 Installing the RUEI Prerequisites

- 8.1.5 Oracle Database Software Installation

- 8.2 The RUEI Configuration File

- 8.3 Processing Engine Installation

- 8.3.1 Creating Groups and Users

- 8.3.2 Installing the Oracle Database Instant Client

- 8.3.3 Creating the Processing Engine Database Instance

- 8.3.4 Installation of the Processing Engine Software

- 8.4 Configuring Processing Engine Communication

- 8.4.1 Configuring the SSH Connections

- 8.4.2 Configuring the Database Link Connections

- 8.5 Registering Processing Engines

- 8.6 Configuring Multiple Processing Engines

9 Configuring a Failover Reporter System

- 9.1 Introduction

- 9.2 Preparing the Primary Reporter

- 9.3 Installing the Secondary Reporter

- 9.4 Configuring Reporter Failover

- 9.5 Initiating Reporter Failback

10 Configuring a Failover Collector System

- 10.1 Introduction

- 10.2 Installing the Secondary Collector

- 10.3 Configuring the Secondary Collector

- 10.4 Initiating Collector Failback

11 Configuring a Failover Processing Engine System

- 11.1 Introduction

- 11.2 Preparing the Primary Processing Engine

- 11.3 Installing the Secondary Processing Engine

- 11.4 Configuring Processing Engine Failover

- 11.5 Instigating Processing Engine Failback

A Installing the Oracle Database Software

- A.1 Download the Oracle Database Software

- A.2 Operating System Prerequisites

- A.3 Creating the Database User Accounts and Groups

- A.4 Configuring the Kernel Parameter Settings

- A.5 Setting Shell Limits for the Oracle User

- A.6 Creating the Database Directory

- A.7 Configuring the Oracle User's Environment

- A.8 Creating an Oracle init Script File

B Generic Database Instance Setup

- B.1 Overview

- B.2 Creating the Database Instance

- B.3 Creating Tablespaces

- B.4 Rescheduling Oracle Database Maintenance

- B.5 Installing SQL Packages

- B.6 Creating the RUEI Database User

- B.7 Setting up the Connection Data

- B.8 Setting up the Oracle Wallet

C Setting up an Alternative Enriched Data Export Database Instance

- C.1 Introduction

- C.2 Setting up the Alternative Database Instance

- C.2.1 Creating the Database Instance

- C.2.2 Using Compressed Tablespaces

- C.2.3 Rescheduling Oracle Database Maintenance

- C.2.4 Creating the RUEI Database User

- C.2.5 Setting up DRCP Connection Pooling

- C.3 Connecting the RUEI Systems to the Alternative Database Server

- C.3.1 Setting up the Connection Data

- C.3.2 Setting up the Oracle Wallet

- C.3.3 Editing the RUEI Configuration File

D Setting up a Connection to the Enterprise Manager Repository

- D.1 Introduction

- D.2 Setting Up a Connection to Oracle Enterprise Manager 12.1.0.6

- D.3 Setting Up a Connection to Oracle Enterprise Manager 12.1.0.5

- D.3.1 Setting Up the Data Connection

- D.3.2 Setting Up the Oracle Wallet

E The ruei-check.sh Script

F Verifying Monitored Network Traffic

- F.1 Introduction

- F.2 Creating Traffic Snapshots

- F.3 Analyzing Traffic Information

G Troubleshooting

- G.1 Running the ruei-check.sh Script

- G.2 ORA-12805: Parallel Query Server Died Unexpectedly

- G.3 The ruei-prepare-db.sh Script Fails

- G.4 Starting Problems

- G.5 Data Collection Problems

- G.6 Data Processing Problems

- G.7 E-Mail Problems

- G.8 SSL Decryption Problems

- G.9 Missing Packages and Fonts Error Messages

- G.10 ORA-xxxxx Errors

- G.11 Oracle DataBase Not Running

- G.12 General (Non-Specific) Problems

- G.13 Network Interface Not Up

- G.14 OAM-Related Problems

- G.15 ruei-check.sh Script Reports PHP Timezone Error

- G.16 ORA-00020: maximum number of processes (%s) exceeded

- G.17 rsync Fails When user@ Argument not Specified

- G.18 ORA-00600 Error Reported

- G.19 Dropped Segments and Bad Checksums

- G.20 Errors During Installation on RedHat Enterprise/Oracle Linux 6.x

H Installation Checklist

I Removing RUEI From Systems

J Third-Party Licenses

Index

Preface

Oracle Real User Experience Insight (RUEI) provides you with powerful analysis of your network and business infrastructure. You can monitor the real-user experience, define Key Performance Indicators (KPIs) and Service Level Agreements (SLAs), and trigger alert notifications for incidents that violate them.

Audience

This document is intended for the following people:

- System administrators responsible for the installation of RUEI. This assumes a sound understanding of the Linux operating system.

- The person within your organization designated as RUEI Super Administrator (that is, the admin user). They are responsible for post-installation configuration, and system maintenance.

Some familiarity with network and web technology is assumed. In particular, you should have a sound understanding of network topology, and a good operational knowledge of your organization's network and application environment.

Documentation Accessibility

For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.

Access to Oracle Support

Oracle customers have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.

Related Documents

For more information, see the following documents in the Oracle Real User Experience Insight (RUEI) documentation set:

- Oracle Real User Experience Insight Release Notes.

- Oracle Real User Experience Insight User's Guide.

- Oracle Real User Experience Insight Administrator's Guide.

The latest version of this and other RUEI books can be found at the following location:

http://www.oracle.com/technetwork/documentation/realuserei-091455.html

Conventions

The following text conventions are used in this document:

Convention

Meaning

boldface

Boldface type indicates graphical user interface elements associated with an action, or terms defined in text or the glossary.

italic

Italic type indicates book titles, emphasis, or placeholder variables for which you supply particular values.

monospace

Monospace type indicates commands within a paragraph, URLs, code in examples, text that appears on the screen, or text that you enter.

1 Getting Started

This chapter introduces the role of Oracle Real User Experience Insight (RUEI). In particular, it describes how RUEI monitors data traffic, its operational requirements, and the available deployment options. Information is also provided about how you can increase the amount of information available within the RUEI Reporter database.

1.1 What is RUEI?

The usage of web applications and services continues to grow. This includes not only the use of the Internet as a marketing channel, but also Extranet-based supply chain and back-office integration, and Intranet deployment of internal applications. Increasingly, it also includes the utilization of web services which implement clearly defined business functions. Applications can be accessed from mobile devices and there are many cloud based deployment options including on-premises, SaaS and hybrid. RUEI is designed for measuring, analyzing, and improving the availability and performance of all of these deployment scenarios. To achieve this, RUEI is capable of performing data collection from network traffic, ADF servers and/or data collection using Javascript browser instrumentation.

To view a visual demonstration on how you can use RUEI, access the following URL and click Begin Video:

https://apex.oracle.com/pls/apex/f?p=44785:24:0::NO:24:P24_CONTENT_ID,P24_PREV_PAGE:5783,1

1.1.1 Data Collection

Figure 1-1 shows the Network Data Collector (available in previous RUEI releases) and Figure 1-2 shows the Tag Data Collector which is an option that allows you to collect data using Javascript and does not require network monitoring.

Figure 1-1 Network Data Collector

Figure 1-2 Tag Data Collector

Table 1-1 outlines the different data collections that are available with RUEI.

Table 1-1 Data Collection Methods

Network

Tag

Overview

This option collects data that passes through the network and was the default option in previous releases and requires either a local or remote collector. It monitors all network traffic in promiscuous mode.

This option, also called tag based monitoring, collects data by monitoring the request and processing of a specific web URL (the tag) which is inserted into all pages and requires either a local or remote collector. It monitors only the traffic related to a local IP address.

Applications

You must define an application. See Identifying and Reporting Web Pages chapter of User's Guide.

You must define an onload object and use the generated javascript in your application. See Identifying and Reporting Web Pages chapter of User's Guide.

Suites

You must define a Suite. See Working With Suites and Web Services chapter of User's Guide.

Only WebCenter Sites can be monitored using tag-based data collection. See Working With Suites and Web Services chapter of User's Guide.

Further Information

Section 2.1.1, "Planning the Software Installation"

Section 1.2, "Security for Network Data Collection"

Section 1.3, "Connection Options for Network Data Collection"

Section 2.1.1, "Planning the Software Installation"

ADF Monitoring Service

This option collects data (for example, user names) from the application server for ADF based applications, enhancing the data from network data collection. See Chapter 4, "Deploying the ADF Monitoring Service".

The options are further described in Section 2.1.1, "Planning the Software Installation".

The network data collection method is based on Network Protocol Analysis (NPA) technology. This method is 100% non-intrusive. Hence, it does not place any load on a web server, or require installing software agents that will impact performance. In addition, it does not require any change to the current application or infrastructure. When a new application release is deployed, or when an additional web server is added, there is no or very little change required to RUEI's monitoring environment. Typically, RUEI is installed before the web servers, behind a firewall in the DMZ (as shown in Figure 1-3).

Figure 1-3 How RUEI Collects Data with a Network Data Collector

When an object is requested by a visitor, RUEI sees the request and measures the time the web server requires to present the visitor with the requested object. At this point, RUEI knows who requested the page (the client IP), which object was requested, and from which server the object was requested (server IP).

When the web server responds and sends the requested object to the visitor, RUEI sees that response. At this point, RUEI can see whether there is a response from the server, whether this response is correct, how much time the web server required to generate the requested object, and the size of the object. In addition, RUEI can also see whether the object was completely received by the visitor, or if the visitor aborted the download (that is, proof of delivery). Hence, RUEI can determine the time taken for the object to traverse the Internet to the visitor, and calculate the Internet throughput between the visitor and the server (that is, the connection speed of the visitor).

1.1.2 Product Architecture

RUEI is based on a three-layer product architecture, as shown in Figure 1-4.

Figure 1-4 RUEI Product Architecture

The monitored data packets are processed by the layers shown in Table 1-2.

Table 1-2 Product Architecture Layers

Layer

Description

Data Collection

This layer is responsible for acquiring raw data and delivering it to the Data Processor layer. This data can be collected from multiple sources. The available attachment options are described later in this section.

Data Processing

This layer converts the raw data into the OLAP data sets. These comprise the multi-dimensional data structure that is viewable with the Data Browser.

Data Presentation (Reporter)

This layer is RUEI's analysis and reporting environment. This is a web-based information portal that can be accessed from any supported browser.

As will be explained in a later section, each of these layers can be deployed on the same system, or for scalability issues, on separate systems.

1.2 Security for Network Data Collection

To read HTTP(S) data streams, a proprietary software module reassembles TCP/IP packet streams. Because the network data collectors do not have an assigned IP number, and the software using these data collectors does not have a functional IP stack, RUEI is not able to respond to incoming traffic received on the data collectors. This makes RUEI "invisible" to the monitored networks, and completely secure.

Note:
Because of the non-intrusive way in which RUEI collects data, it is not possible for it to request retransmission in the event of an error on the measurement port.

Data collection can be configured to log encrypted data. To facilitate this, a copy of the web server's private SSL keys needs to be set up in the data collector. In addition, RUEI can be configured to omit logging of sensitive data in the arguments of POST requests of forms or content; so called data masking (or blinding).

1.3 Connection Options for Network Data Collection

RUEI supports the use of both copy portsFoot 1  and TAPsFoot 2  for monitoring network traffic (10/100 Mbps and 1/10 Gbps Ethernet connections are supported). Copy ports and TAPs are available for copper or fibre-based network infrastructures. While both devices allow non-intrusive monitoring of network traffic, there are differences between these two connection options. These are highlighted in the rest of this section.

Monitoring SSL and Forms Traffic

Be aware that SSL and Oracle Forms traffic are particularly sensitive to disruptions in the TCP packet stream. This is because they require state information to be maintained for the duration of the connection, and any lost packets can cause that information to be lost, preventing RUEI from accurately monitoring and reporting the connection.

Therefore, you should ensure that each Collector is connected to a reliable network device, such as a TAP. In addition, it is strongly recommended that you regular review the information available through the Collector Statistics window (select System, then Status, and then Collector status) to verify the integrity of the TCP packet stream. Particular attention should be paid to the reported TCP and SSL connection errors.

1.3.1 Copy Ports

A copy port is a switch that starts to build up a Layer 2 forwarding table on the basis of the source MAC address of the different packets that the switch receives. After this forwarding table is built, the switch forward traffic that is destined for a MAC address directly to the corresponding port.

For example, after the web server MAC in Figure 1-5 is learned, unicast traffic from the browser to the web server is only forwarded to the web server port. Therefore, the Collector does not see this traffic.

Figure 1-5 Network Connection Using a Copy Port

In the configuration shown in the lower part of Figure 1-5, the Collector is attached to a port that is configured to receive a copy of every packet that the browser sends and receives. This port is called a copy port. Copy ports can copy traffic from any or all data ports to a single unused port and prevents bi-directional traffic on the port to protect against backflow or traffic into the network.

Be aware that activating a copy port on a switch can have a performance impact. Typically, copy ports support a wide range of configuration options, and for further information about these options you should consult your switch documentation or contact the vendor.

1.3.2 TAPs

TAPs can be placed between any two network devices (such as routers and firewalls). Any monitoring device connected to a TAP receives the same traffic as if it were in-line, including all errors. This is achieved through the TAP duplicating all traffic on the link, and forwarding it to the monitoring port(s). The example shown in Figure 1-6 illustrates a typical TAP deployment for one Collector.

Figure 1-6 Network Monitoring Using a TAP

Important

Unlike copy ports, in the event of power failure, TAPs continue to allow data to flow between network devices. In addition, copy ports are prone to packet loss when under load. TAP devices are available for copper or fibre-based infrastructures. Moreover, they can be easily deployed when and where required, but without reconfiguration of switches or engineers needing to re-cable a network link. For these reasons, the use of TAPs is strongly recommended over that of copy ports.

Broadly speaking, there are three types of TAPs: network, regeneration, and aggregation TAPs. RUEI supports the use of network and regeneration TAPs. Aggregation taps are only supported if they maintain the ordering of packets in the packet stream. Note that reporting accuracy can be impacted when using aggregation taps if the monitor port gets saturated, resulting in packet loss and inaccurate timing information. In addition, be aware that when capturing data with a network TAP, the use of cascaded TAP configurations is not supported.

It is possible in RUEI to monitor and process data from multiple networks, by either deploying a tap on each network segment and connecting those to a central collector, or by deploying multiple collectors, one on each monitored segment (see Section 1.6, "Scaling Scenarios").

1.4 Installation Options

A RUEI system can be installed to be one of three things: a Reporter, a Collector, or a Processing Engine. Each of these installation options is reviewed in the following sections.

Reporter

A Reporter system processes the data gathered by the Collectors attached to it. After processing, this data is stored in an Oracle database, referred to as the Reporter database. System users can review the collected data through a browser-based interface.

In order for RUEI to be able to accurately monitor network traffic, and report its results, it needs certain information about your network and application infrastructure. This includes how pages, service function calls, and end users will be identified, the scope of monitoring in your network environment, the monitoring of specific KPIs and SLAs, and the roles and permissions assigned to system users. This information is held in a separate Configuration database.

Collector

A Collector gathers data and submits the data to a Reporter. Multiple Collectors can be attached to the same Reporter. Note that a direct connection is required between the Collector systems and the Reporter system. A collector can be either network based or tag based as described in Section 2.1.1, "Planning the Software Installation".

Note that each Reporter installation also contains a local Collector instance. The Reporter can be configured to just process information gathered by this local Collector (this is a single-server configuration), or to receive information from additional Collectors. Note that the local Collector instance on the Reporter system can also be disabled if not required.

Processing Engine

A Processing Engine is an optional component in a RUEI deployment that undertakes the data processing role normally performed by the Reporter. Essentially, it involves offloading the overhead of processing the data gathered by the Collectors to one or more separate systems.

Each Processing Engine has its own (local) database, in which intermediate network traffic monitoring results are stored. Once processed, this data is used to update the Reporter's database. All configuration information is also maintained within this database. Note that each Processing Engine system requires a direct connection between its associated Collector systems and the Reporter system.

1.5 Local and Remote Database Installations

As explained earlier, the data available via the Reporter system is stored in an Oracle database, called the Reporter database. The information required by RUEI in order to correctly monitor and report on your web infrastructure, such as information about monitored applications and system users, is held in a separate Configuration part of the database. The database can reside locally on the Reporter system, or on a remote database server (such as a database cluster).

The use of a remote database server provides a number of potential advantages over a locally installed database. In particular, it offers easier integration with existing security and back-up policies, as well as improved performance through the use of dedicated servers.

Currently, RUEI supports Oracle 11g and 12c Release 1 database installations. Note that the Oracle 10g (or older) database is not supported.

1.6 Scaling Scenarios

This section highlights the different deployment scenarios available to you. The selection of the most appropriate deployment scenario is primarily determined by the level of monitored network traffic, your reporting requirements, and the hardware specifications of your deployment systems.

Single-Server Deployment

This is the simplest deployment, and is suitable for monitoring web environments with low to medium levels of traffic. An example is shown in Figure 1-7.

Figure 1-7 Single-Server Deployment

In this deployment, a single system servers as both Collector and Reporter. As explained in the previous section, the Reporter database can reside locally on the Reporter system or on a remote database server.

Multiple-Server Deployment

The use of multiple servers may be considered when there is a need to monitor very high levels of traffic. In addition, this deployment also provides the possibility of enhanced security. For example, by placing the Collector(s) outside the office network, while placing the Reporter system within the network. Figure 1-8 shows an example of a multiple-Collector deployment.

Figure 1-8 Multiple-Collector Deployment

This features a deployment in which both data lines are monitored in the same reporting environment. Note that this deployment assumes that the traffic on each line is mutually exclusive. It also illustrates a deployment used for security reasons. While the traffic from web servers A and B are monitored and reported, the traffic from web server C is not. This is also the reason why the Collectors are not placed above the switch. Note that the Collector instance on the Reporter system (system 1) is disabled.

For security reasons, it is recommended that access to the Reporter system is restricted to trusted IP ranges. Similarly, you may want to locate the Reporter system inside the internal network to maximize its security. The Collector's data gathering ports should be within the DMZ.

The application and infrastructure configuration information held in the database is maintained by the Reporter based on information provided by system users through its browser-based interface. Each Collector uses this information to determine how the data it gathers should be reported.

Three-Tier Deployment

As explained earlier, a Processing Engine serves to offload a significant amount of the processing normally performed by the Reporter to a separate system. It is strongly recommended that you consider the use of a Processing Engine within your deployment when CPU utilization on the Reporter system is reaching its upper limit. Figure 1-9 shows an example of a Processing Engine within a multiple-Collector deployment.

Note:
The use of Processing Engines is only supported for remote Collectors. A combined installation of a Processing Engine and a Collector on the same system is not supported.

Figure 1-9 Three-Tier Deployment

It is important to understand that the processing performed on the Reporter system includes not only the processing of the data gather by the attached Collectors, but also the use of the Enriched data export facility. This enables you to combine the data gathered by RUEI with other data sources. Be aware that, when enabled, this facility places a considerable additional load on the Reporter system. The Enriched data export facility is described in the Oracle Real User Experience Insight User's Guide.

1.7 Server Requirements

The required minimum system specifications for the selected configuration (as explained in Section 1.4, "Installation Options") are described in the following sections.

Network Cards

It is recommended that you carefully consider the selection of network cards for your infrastructure. Depending on the connection option you selected in Section 1.3, "Connection Options for Network Data Collection", both copper and fibre-based network cards may be required. If necessary, consult both your network and systems management teams.

Network Cards Within Bonded Groups

Be aware that monitoring of netwotk traffic using network cards that are part of a bonded group is not supported.

Note:
For more information about required and recommended system specifications, please contact Customer Support.

1.7.1 Single-Server Requirements

Table 1-3 Single-Server System Minimum Requirements

Element

Requirements

CPU

64-bit Intel or AMD dual-CPU, dual-core processor (> 2 G Hz) or equivalent.

Memory

16 GB.

Disk space

Minimum 700 GB HDD free space.Foot 2 ,Foot 3

Network interfaces

When using a network-TAP deviceFoot 4 , a minimum of three network interfaces are required:

- Two interfaces for network traffic capturing.

- One interface for network services.

GSM modem (optional)

Optional support for a GSM modem to send text messages. The modem needs to be either GSM07.05 or GSM07.07 compatible. It can be connected through a serial or USB port. If USB is used, RUEI uses the first available port (ttyUSB0). Alternative methods of sending text messages are available (http/e-mail).

Footnote 1 To ensure acceptable performance of the RUEI installation, it is recommended to use high performance disk systems, with a minimum supported I/O rate of 70 MB/s. When monitoring high volumes of traffic, more powerful disk systems may be required. (Hardware) RAID-10 or equivalent storage configurations are strongly recommended.

Footnote 2 This may need to be increased if Enriched data exchange is enabled.

Footnote 3  The use of an NFS share for local data (that is, $RUEI_DATA and $RUEI_HOME) is not supported. Note that this restriction does not apply to $RUEI_DATA/processor/data and $RUEI_DATA/collector/wg/REPLAY.

Footnote 4 When capturing data with a network-TAP device, the use of cascaded TAP configurations is not supported.

1.7.2 Reporter Requirements

Table 1-4 Reporter System Minimum Requirements

Element

Requirements

CPU

64-bit Intel or AMD dual-CPU, dual-core processor (> 2 G Hz) or equivalent.

Memory

16 GB.

Disk space

Minimum 700 GB HDD free spaceFoot 2 ,Foot 3 .

Network interfaces

A minimum of one network interface is required.

GSM modem (optional)

Optional support for a GSM modem to send text messages. The modem needs to be either GSM07.05 or GSM07.07 compatible. It can be connected through a serial or USB port. If USB is used, RUEI uses the first available port (ttyUSB0). Alternative methods of sending text messages are available (http/e-mail).

Footnote 1 To ensure acceptable performance of the RUEI installation, it is recommended to use high performance disk systems, with a minimum supported I/O rate of 70 MB/s. When monitoring high volumes of traffic, more powerful disk systems may be required. (Hardware) RAID-10 or equivalent storage configurations are strongly recommended.

Footnote 2 This may need to be increased if Enriched data exchange is enabled.

Footnote 3  The use of an NFS share for local data (that is, $RUEI_DATA and $RUEI_HOME) is not supported. Note that this restriction does not apply to $RUEI_DATA/processor/data and $RUEI_DATA/collector/wg/REPLAY.

1.7.3 Collector Requirements

The requirements for Collector systems are shown in Table 1–5.

Table 1-5 Collector System Minimum Requirements

Element

Requirement

CPU

64-bit Intel or AMD dual-core processor or equivalent.

Memory

8 GB.

Disk space

Minimum 200 GB HDD free spaceFoot 1 .

Network interfaces

When using a network-TAPFoot 2  device, a minimum of three network interfaces are required:

- Two interfaces for network traffic capturingFoot 3 .

- One interface for communication with the Reporter system.

When using a network-copy port, a minimum of two network interfaces are required:

- One interface for network traffic capturing.

- One interface for communication with the Reporter system.

Footnote 1  The use of an NFS share for local data (that is, $RUEI_DATA and $RUEI_HOME) is not supported. Note that this restriction does not apply to $RUEI_DATA/processor/data and $RUEI_DATA/collector/wg/REPLAY.

Footnote 2 Capturing data with a network-TAP device prevents the use of a cascaded TAPs configuration.

Footnote 3 For up and down stream traffic. Note that the use of TAPs that integrate up and down stream traffic on one line (that is, link aggregation TAPs) is not recommended.

1.7.4 Processing Engine Requirements

The requirements for Processing Engine systems are shown in Table 1-6.

Note:
A separate Processing Engine server is only required in very large scale environments (for example, handling hundreds of millions of clicks per day). At least two servers must be dedicated to Processing Engine duties if you want to run the Processing Engine separately from the Reporter.

Table 1-6 Processing Engine System Minimum Requirements

Element

Requirements

CPU

64-bit Intel or AMD dual-CPU, dual-core processor (> 2 G Hz) or equivalent.

Memory

16 GB.

Disk space

Minimum 700 GB HDD free spaceFoot 2 ,Foot 3 .

Network interfaces

A minimum of one network interface is required.

Footnote 1 To ensure acceptable performance of the RUEI installation, it is recommended to use high performance disk systems, with a minimum supported I/O rate of 70 MB/s. When monitoring high volumes of traffic, more powerful disk systems may be required. (Hardware) RAID-10 or equivalent storage configurations are strongly recommended.

Footnote 2 This may need to be increased if Enriched data exchange is enabled.

Footnote 3  The use of an NFS share for local data (that is, $RUEI_DATA and $RUEI_HOME) is not supported. Note that this restriction does not apply to $RUEI_DATA/processor/data and $RUEI_DATA/collector/wg/REPLAY.

Important:
Please note that an Intel (or compatible) 64-bit platform is a strict requirement for both the hardware and the operating system in all deployment scenarios.

1.7.5 Deployment Best Practices

This section presents a best practices framework within which to optimize your RUEI deployment. It is recommended that you carefully review the following information.

Planning Your Deployment

It is important that the nature of the monitored network environment is clearly understood before deciding upon your RUEI deployment strategy. This includes not only the basic network connectivity, ports, addressing, and physical device requirements, but also a sound understanding of the monitored applications.

Moreover, before deploying RUEI, the basic traffic flows within the network must have been identified. This should include information about average and peak volumes of traffic. Any physical deployment requirements (such as space limitations, distances, power planning, rack space and layout, or cabling) should also have been identified.

You can use the checklist presented in Appendix H, "Installation Checklist" to capture much of this information.

Forms-Based Traffic

If you are planning to monitor Forms-based traffic, be aware that the memory requirements may be higher than those outlined in Section 1.7, "Server Requirements". This is especially the case in deployments with heavy levels of Forms traffic. In this case, you should consider a split-server deployment.

Full Session Replay

If you are planning to make use of the Full Session Replay (FSR) facility, you may need to configure additional storage capacity. This is explained in Section 1.7.7, "Full Session Replay Storage Requirements".

Encrypted Traffic

If a significant level of the monitored traffic is encrypted, this can increase the CPU overhead. In this case, it is recommended that you consider configuring additional CPUs or, alternatively, a split-server deployment.

Very High Levels of Traffic

When very high levels of traffic are being monitored (that is, more than 10 million page views per day), it is strongly recommended that you consider a split-server deployment. Alternatively, consider the use of a remote database server. The latter has the effect of significantly reducing (by up to 30%) the CPU overhead on the Reporter system. Monitored environments with more than 20 million page views per day should consider the use of both a split-server deployment and a remote database server.

1.7.6 Data Retention Policies

The availability of specific data within the Data Browser, as well as reports based on that data, depends on the amount of available disk space on the Collector and Reporter systems, as well as the amount of database space available on the Reporter system.

Data gathered during monitoring is first written to log files, stored on the Collector system. These files are copied to, and processed by, the Reporter to populate the database that holds the multi-dimensional data structure viewable through the Data Browser and reports. These temporary log files are automatically removed from the Collector system after three days, and from the Reporter system (by default) after seven days.

The size of the database user quota for the Reporter system is configurable during installation. By default, it is set to 500 GB. It is important to understand that data is consolidated when it is no longer required by the Reporter's defined retention policy. For example, by default, daily information about the last 32 days is retained. Daily information older than this is consolidated into the monthly information. Similarly, monthly information is consolidated into yearly information.

RUEI maintains data at several aggregation levels, whose retention is configured in days. The following describes the various aggregation levels and their default values:

- Instance: 8 days

- 5-minute: 15 days

- Hourly: 32 days

- Daily: 90 days

- Monthly: 60 months

These numbers can be fine-tuned per category of data (app, suite, service, SLA) and beyond that per individual type (for example, All Pages or Failed Pages). The default value for enriched data exchange is 8 days for each type.

DB space is about 5 GB per period each. This is heavily dependent on load and diversity of traffic. You should occasionally check the reporter data retention screen, especially in the first month, to verify enough disk space is available.

Statistics data is configurable from the CLI. However, statistics retention is not configurable, while User flow completion and fusion product retention are only configurable from the command line.

Minimum and maximum values for data retention settings are automatically determined. Less-detailed aggregation levels must always have at least as much retention as more-detailed aggregation levels.

Be aware that a new RUEI installation will grow quickest during the first 32 days. After that time, the growth rate will slow. Of course, the growth rate depends on monitored traffic levels.

1.7.7 Full Session Replay Storage Requirements

If you are planning to make use of the Full Session Replay (FSR) facility, you may need to configure additional storage capacity available to the Collector system. This should be a separate device (not a partition of the Collector server's existing hard drive), and made accessible to the RUEI file system. The procedure to do this, together with guidance on storage requirements, is described in the rest of this section. Note that this procedure must be repeated for each Collector for which full session replay information is required.

Configuring Additional Storage for Full Session Replay

The procedure described below assumes that you have a fully operational system, and that FSR has been enabled. To configure the additional required storage, do the following:

1. Mount the device. For example, under /mnt/external_storage.

2. Temporarily stop the Collector by issuing the following command:

appsensor stop wg

3. Move the $APPSENSOR_HOME/wg/REPLAY directory to the new device. In the above example, this is /mnt/external_storage, and the result is that the replay files are now located in the /mnt/external_storage/REPLAY directory.

4. Create a symbolic link from /mnt/external_storage/REPLAY to $APPSENSOR_HOME/wg/REPLAY.

5. Restart the Collector by issuing the following command:

appsensor start wg

6. Calculate the required storage capacity. To do so, multiple the average number of daily page views by the average page size. Then, multiple this number by the number of days you wish full session replay data to be retained. Use Table 1-7 as guidance.

Table 1-7 Full Session Replay Storage Estimates

Low page weight (~10 Kb)

Medium page weight (~50 Kb)

High page weight (~100 Kb)

Page views per day (millions)

Size per day (GB)

Disk I/O (MB/sec)

Size per day (GB)

Disk I/O (MB/sec)

Size per day (GB)

Disk I/O (MB/sec)

0.5

5

0.1

25

0.3

50

0.6

2

20

0.2

100

1.2

200

2.3

5

50

0.6

250

2.9

500

5.8

10

100

1.2

500

5.8

1000

11.6

20

200

2.3

1000

11.6

2000

23.1

50

500

5.8

2500

28.9

5000

57.9

Important:
Table 1-7 is intended for guidance only. It is strongly recommended that you regularly review average page sizes and daily page views, and adjust the required storage size as necessary.

Note:
Be aware that FSR functionality uses a significant number of non-sequential read operations. Please consult your hardware vendor for information on how to optimize your I/O performance.

7. Select Configuration, then General, then Advanced settings, and then Collector data retention policy. Click the Full session replay storage size (GB) setting. Specify (in gigabytes) the required storage size. Note that the maximum that can be specified is 100 TB. When ready, click Save.

1.7.8 Memory Requirements

When calculating the amount of RAM required by your RUEI installation, it is recommended that you consider the following:

- For a Reporter system without configured Processing Engines, or a Processing Engine system itself, each million visitor sessions per day requires 256 MB. Hence, 3 million visitor sessions per day would require 768 MB. In addition, each million page views requires 100 MB - 256 MB. Note that exact amount depends the length of monitored URLs, average session duration, and the number of events (such as custom dimensions).

- For each Collector system, each 100 concurrent hits require 2 MB, and each 1000 SSL connections require 1 MB. In addition, up to 600 MBps of network traffic can be buffered before individual TCP sessions start to be dropped. Up to 600 MBps should also be assumed for content checks (such as XPath queries and error strings). Note that if you define a large number of content checks, or specify that they contain NLS character sets, the memory required may increase.

1.8 Software Requirements

The following GNU/Linux distributions are supported:

- Oracle Linux 5.x or 6.x 64-bit Intel or AMD compatible.

- RedHat Enterprise Linux 5.x or 6.x 64-bit Intel or AMD compatible.

The following database versions are supported:

- 11gR1

- 11gR2

- 12c Release 1

The minimum required Oracle Database release for RUEI is 11.1.1.0.7. Note that the best performance for RUEI 12.1.0.4 is achieved with Oracle Database 12c Release 1.

Note:
If you experience an ORA-12805: Parallel Query Server Died Unexpectedly error (Oracle Database 11.1 and 11.2.0.1 releases), see Section G.2 for a suitable workaround.

Encrypting Sensitive Data

If sensitive data needs to be encrypted, you have the opportunity to encrypt your entire disk configuration during the disk partitioning phase of the Linux installation procedure.

1.9 Network Requirements

- All server system clocks should be synchronized via NTP using UDP port 123.

- Support DNS information requests over TCP and UDP port 53.

- Support reports and e-mail alerts using TCP port 25.

- Support SNMP traps on request from an SNMP Manager using UDP port 161/162.

- The RUEI user interface is accessible over HTTPS port 443.

- In the case of a remote database setup, access to TCP port 1521 is required between the Reporter and remote database server.

- Each remote Collector system should be accessible by the Reporter system over TCP port 22. It is recommended all other ports be blocked.

- If you are configuring a failover Reporter system (described in Chapter 9, "Configuring a Failover Reporter System"), the primary and secondary Reporter systems need to be able to contact each other using ICMP.

- If you are configuring a failover Collector system (described in Chapter 10, "Configuring a Failover Collector System"), the primary and secondary Collector systems need to be able to contact each other using ICMP.

Collector-Reporter and Collector-Processing Engine Bandwidths

The amount of data transferred between a remote Collector and the Reporter system largely depends on the type and level of network application traffic monitored by RUEI. In addition, the configuration of RUEI (such as defined functional errors, content checks, and page naming schemes) also influences the size of Collector files that need to be transferred to the Reporter system.

At peak times, the amount of data that needs to be transferred will be higher than during low traffic periods. Note that the exact amount of the data transmission from a remote Collector to the Reporter system can only be determined after the actual RUEI deployment.

For an initial deployment, the following simple rule can be used: each 5 million daily page views will result in a peak transfer of approximately 125 MB at peak time, and approximately 1 GB per day. Hence, typically only a few percent of the actual monitored traffic will be stored by a Collector and transferred to the Reporter. When you want or need to minimize this data transfer, it is recommended that you minimize the amount of monitored HTTP traffic which is not required by RUEI. For example, by using a subnet or VLAN-filtered network.

In the case of deployments that make use of Processing Engines, the above also applies to Collector-Processing Engine connections.

Firewall Requirements

Table 1-8 shows the firewall requirements for your RUEI deployment.

Table 1-8 RUEI Firewall Rules

From

To

Port(s)

Socket type

Required

Description

Reporter

Collector

22 (SSH)

TCP

Y

Each remote Collector system must be accessible by the Reporter system over TCP port 22.

Reporter

Processing Engine

22 (SSH)

TCP

Y

Each Processing Engine system must be accessible by the Reporter system over TCP port 22.

Reporter

Processing Engine

1521Foot 1  (NET8)

TCP

Y

Each Processing Engine system must be accessible by a database connection (by default, over port 1521).

Reporter

NTP server

123 (NTP)

UDP

Y

All server system clocks must be synchronized via NTP.

Processing Engine

NTP server

123 (NTP)

UDP

Y

All server system clocks must be synchronized via NTP.

Processing Engine

Collector

22 (SSH)

TCP

Y

Each Collector system must be accessible by the Processing Engine system over TCP port 22.

Processing Engine

Reporter

1521 (NET8)

TCP

Y

Each Processing Engine system must be accessible by a database connection (by default, over port 1521).

Collector

NTP server

123 (NTP)

UDP

Y

All server system clocks must be synchronized via NTP.

Remote DB server

NTP server

123 (NTP)

UDP

Y

All server system clocks must be synchronized via NTP.

Reporter

DNS server

53 (DNS)

TCP/UDP

NFoot 2

Support DNS information requests.

Collector

DNS server

53 (DNS)

TCP/UDP

NFootref 2

Support DNS information requests.

Remote DB server

DNS server

53 (DNS)

TCP/UDP

NFootref 2

Support DNS information requests.

Reporter

Mail server

25 (SMTP)

TCP

N

Support reports and E-mail requests.

Reporter

SNMP Manager server

161, 162 (SNMP)

UDP

N

Support SNMP traps on request from an SNMP Manager.

Client browsers

Reporter

443 (HTTPS)

TCP

Y

The RUEI user interface is accessible over HTTPS.

Client browsers

Tag based collector

80/443

TCP

N

Support tag based data collection.

ADF Application

Reporter

443 (HTTPS)

TCP

N

Support ADF Monitoring Service.

Footnote 1 Note that this port is configurable.

Footnote 2 Optional, but strongly recommended.

1.10 Client Requirements

The workstations that will access the RUEI user interface must have one of the following browsers installed:

- Mozilla Firefox 3.6 (or above).

- Internet Explorer 7, 8, or 9.

- Safari 4 and 5.

- Google Chrome 17 (or above).

Note that JavaScript must be enabled. No other browser plug-ins are required.

In addition, the workstation should have a screen resolution of 1024 * 768 (or higher).

Important:
Ensure that any pop-up blocker within the browser has been disabled.

AJAX Support

RUEI uses AJAX to enhance its user interaction. Internet Explorer relies on the MSXML control to facilitate AJAX. The AJAX dependencies can trigger a security warning when using strict security settings.

Footnote Legend

Footnote 1: Copy ports are also known as Switched Port Analyzer (SPAN) ports which is a feature of Cisco switches.
Footnote 2: Test Access Port (TAP) devices are provided by specialist vendors, such as NetOptics Inc.

2 Installing the RUEI Software

This chapter describes the prerequisites and procedure for installing each of the RUEI components. The procedure for upgrading an existing RUEI 11.1 installation to release 12.1 is described in Chapter 3, "Upgrading to RUEI 12.1.0.6". The post-installation configuration procedure is described in Chapter 6, "Configuring RUEI".

Note:
Before attempting to install RUEI components on any system, make sure that you have applied the latest OpenSSL patches for your operating system using the appropriate commands (for example, yum update or up2date). Applying the latest OpenSSL patches helps improve the security of the system.

2.1 Prerequisites

This section describes the steps that should be taken before starting to install the RUEI software. Ensure that all preconditions described in this section are met before proceeding with the installation process.

2.1.1 Planning the Software Installation

For an introduction to RUEI data collection see Section 1.1.1, "Data Collection". The following installation data collection options are available:

- Network data collector: This option collects data that passes through the network and was the default option in previous releases and requires either a local or remote collector.

- Tag data collector: This option, also called tag based monitoring, collects data by monitoring the request and processing of a specific web URL (the tag) which is inserted into all pages.

- ADF monitoring Service: This option collects data (for example, user names) from the application server for ADF based applications, enhancing the data from network data collection.

Table 2-1 Installation Overview and Data Collection Methods

Network

Tag

Requirement

Access to network traffic to perform Network Protocol Analysis.

Access to application templates to insert Javascript code.

Single Server
(as in Figure 1-7)

Use the reporter option when running the installer as described in Section 2.7.6, "Installation of the Reporter Software" (installs network data collector automatically).

Use the reporter-tag option when running the installer as described in Section 2.7.6, "Installation of the Reporter Software" (installs tag based data collector automatically).

Multiple Server
(as in Figure 1-9)

Use the collector option when running the installer as described in Section 2.6, "Remote Network Data Collector Installation" for Systems 1 and 2 of Figure 1-9.

Use the reporter option when running the installer as described in Section 2.7.6, "Installation of the Reporter Software" for Systems 3 and 4 of Figure 1-9.

Use the tag-server option when running the installer as described in Section 2.5, "Remote Tag Data Collector Installation" for Systems 1 and 2 of Figure 1-9.

Use the reporter option when running the installer as described in Section 2.7.6, "Installation of the Reporter Software" for Systems 3 and 4 of Figure 1-9.

ADF Monitoring Service

This option collects data (for example, user names) from the application server for ADF based applications, enhancing the data from network data collection. See Chapter 4, "Deploying the ADF Monitoring Service".

2.1.2 Planning the Software Installation Location

Depending on the installation location of the Reporter database and the RUEI software, the necessary disk space needs to be carefully planned. During operating system installation, you will need this information at hand for the disk partitioning phase.

Table 2-2 shows the disk space requirements for the RUEI installation components.

Table 2-2 Required Disk Space Specifications

Partition

Min. Required Disk Space (GB)

Component

ORACLE_BASE (default /u01/app/oracle)Foot 1

500

Database server

RUEI_HOME (default /opt/ruei)

5

Reporter, Collector

RUEI_DATA (default /var/opt/ruei/)

100

Reporter, Collector

Footnote 1 This is the example database location used throughout this guide.

This means that for a stand-alone RUEI server installation, a minimum of 700 GB is required. In the case of a high-traffic implementation, involving a dedicated remote Collector, a minimum of 200 GB of disk space is recommended for /var/opt/ruei (RUEI_DATA).

Important:
The Reporter and database servers require high-performance data storage. RAID-10 or RAID-5 (or equivalent) storage configurations with high-performance disks are strongly recommended.

2.1.3 Configuring the Network Interface for Network Data Collection

If you want to use network data collection:

1. Ensure that a static IP address is assigned to the interface used to access the RUEI web interface. In addition, the assigned IP address and host name should be configured in the /etc/hosts file. If necessary, ensure that all Reporter, Collector, and Processing Engine systems are correctly defined in the DNS system.

2. Ensure that the network interface(s) used for network packet monitoring are administratively up, but without an IP address.

Important:
Make the network interface up status permanent (after a reboot) by setting the ONBOOT parameter of the capturing interfaces to yes. The network interfaces configuration can be found in the /etc/sysconfig/networking/devices/ifcfg-ethX file (where X represents the necessary network interface). Alternatively, use the graphical utility system-config-network to perform the above actions.

2.1.4 Operating System Security Configuration

When the system boots for the first time, a post-installation wizard appears, and allows you to finalize the operating system configuration settings. Ensure that:

1. The RUEI firewall rules shown in Table 1-8 are correctly configured.

2. Security Enhanced Linux (SELinux) is disabled. This is necessary for the correct operation of RUEI. Note that changing the SELinux setting requires rebooting the system so that the entire system can be relabeled.

3. For security reasons, it is strongly recommended that you check the Encrypt System check box during operating system installation so that all sensitive data is stored in a secure manner. A passphase is required during booting the system.

2.1.5 Verify NTP Daemon Operation for Network Data Collection

Ensure that the date and time settings are correctly specified. The use of NTP is strongly recommended, and is required in a split-server deployment. In addition, all time zones specified for Reporter, Collector, and Processing Engine systems must be identical.

Because the NTP daemon is a critical component of RUEI, especially in a split server configuration, it is recommended that you verify that it is activated in at least run level 5 during boot. Use the following commands:

/sbin/chkconfig --list | grep ntpd
ntpd     0:off   1:off   2:off   3:off   4:off   5:off   6:off
/sbin/chkconfig ntpd on
/sbin/chkconfig --list | grep ntpd
ntpd     0:off   1:off   2:on    3:on    4:on    5:on    6:off
/etc/init.d/ntpd start
Starting ntpd:                                     [  OK  ]

Note that if the NTP daemon is not already running, you can start it by issuing the following command:

/etc/init.d/ntpd restart

The following sample output shows when the NTP daemon is synchronized (indicated by an "*").

ntpq -pn
remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*194.171.167.130     .PPS.         1 u 994 1024 377     6.429   0.041   0.093
+80.85.129.25        130.235.20.3  3 u 725 1024 377     4.435   0.673   0.129
+82.94.235.106       135.81.191.59 2 u 678 1024 377     1.709   1.774   0.020
127.127.1.0         .LOCL.       10 l   8   64 377     0.000   0.000   0.001

Important:
In distributed environments, all time zones specified for Reporter, Collector, and Processing Engine systems must be identical.

2.1.6 Installing the RUEI Prerequisites

Note that the procedure described in this section is only required for a Reporter system. The procedure depends on whether you are using RedHat Enterprise/Oracle Linux 5.x or 6.x, and is described in the following sections.

2.1.6.1 RedHat Enterprise/Oracle Linux 5.x

After performing a minimum RedHat installation, complete the following steps:

1. The required packages are available from the RedHat Enterprise/Oracle Linux distribution sets. Issue the following command to install all prerequisites for the Reporter:

rpm -Uhv httpd-2.2.15-*..x86_64.rpm \
libpcap-0.9*.x86_64.rpm \
apr-1.2.7-11.*.x86_64.rpm \
apr-util-1.2.7-*.x86_64.rpm \
php-5.1.6-*.x86_64.rpm \
mod_ssl-2.2.3-*.el5.x86_64.rpm \
distcache-1.4.5-*.x86_64.rpm \
php-common-5.1.6-*.x86_64.rpm \
php-cli-5.1.6-*.x86_64.rpm \
php-mbstring-5.1.6-*.x86_64.rpm \
php-soap-5.1.6-*.x86_64.rpm \
php-ldap-5.1.6-*.x86_64.rpm \
gmp-4.1.4-*.el5.x86_64.rpm \
postgresql-libs-8.1.11-*.el5_1.1.x86_64.rpm \
lm_sensors-2.10.7-*.el5.x86_64.rpm \
net-snmp-5.3.2.2-*.el5.x86_64.rpm \
net-snmp-utils-5.3.2.2-*.el5.x86_64.rpm \
perl-XML-Twig-3.26-*.fc6.noarch.rpm \
perl-XML-Parser-2.34-*.x86_64.rpm

2. Issue the following command to install all optional fonts. Alternatively, install the multi-byte character sets necessary to meet your NLS requirements.

rpm -Uhv fonts-*

2.1.6.2 RedHat Enterprise/Oracle Linux 6.x

After performing a minimum RedHat installation, complete the following steps:

1. The required packages are available from the RedHat Enterprise/Oracle Linux 6.x distribution sets. Issue the following command to install all prerequisites for the Reporter:

rpm -Uvh httpd-2.2.15-*..x86_64.rpm \
libpcap-1.0.0-*.x86_64.rpm \
apr-1.3.9-*.x86_64.rpm \
apr-util-1.3.9-*.x86_64.rpm \
php-5.3.3-*.x86_64.rpm \
mod_ssl-2.2.15-*.x86_64.rpm \
php-common-5.3.3-*.x86_64.rpm \
php-cli-5.3.3-*.x86_64.rpm \
php-soap-5.3.3-*.x86_64.rpm \
php-ldap-5.3.3-*.x86_64.rpm \
hdparm-9.16-*.x86_64.rpm \
libpcap-1.0.0-*.x86_64.rpm \
gmp-4.3.1-*.x86_64.rpm \
lm_sensors-3.1.1-*.x86_64.rpm \
net-snmp-5.5-*.x86_64.rpm \
net-snmp-libs-5.5-*.x86_64.rpm \
net-snmp-utils-5.5-*.x86_64.rpm \
perl-XML-Twig-3.34-*.noarch.rpm \
perl-XML-Parser-2.36-*.x86_64.rpm \
ksh-20100621-*.x86_64.rpm \
rsync-3.0.6-*.x86_64.rpm \
wget-1.12-*x86_64.rpm \
bc-1.06.95-*.x86_64.rpm \
bind-utils-9.7.3-*.x86_64.rpm

2. If you are using a version of RedHat Enterprise/Oracle Linux before version 6.5 (that is, version 6.0 to 6.4), install the following OpenSSL package:

rpm -Uhv openssl098e-0.9.8e-*.x86_64.rpm

3. Issue the following command to install all optional fonts. Alternatively, install the multi-byte character sets necessary to meet your NLS requirements.

rpm -Uhv *-fonts*

4. Issue the following command to ensure that connections between Collectors and Reporters do not fail.

ln -s /usr/lib64/libpcap.so.N.N.N /usr/lib64/libpcap.so.0.9.4

where N.N.N is the version of libpcap installed. For example:

ln -s /usr/lib64/libpcap.so.1.0.0 /usr/lib64/libpcap.so.0.9.4

2.1.7 Installing All Requirements Using a Yum Repository (Alternative)

As an alternative to manual installation (described in the previous section), you can use a Yum repository to install the required RPMs. This requires a working Yum repository. Information about Yum repositories is available at the following location:

http://linux.duke.edu/projects/yum/

The procedure depends on whether you are using RedHat Enterprise/Oracle Linux 5.x or 6.x, and is described in the following sections.

2.1.7.1 RedHat Enterprise/Oracle Linux 5.x

After performing a minimum RedHat installation, complete the following steps. Note that a graphic environment is not required.

1. Install the necessary Reporter packages using the following commands:

yum -y install perl-URI
yum -y install perl-XML-Twig
yum -y install net-snmp-utils
yum -y install sendmail-cf
yum -y install httpd
yum -y install mod_ssl
yum -y install php
yum -y install php-mbstring
yum -y install php-ldap
yum -y install php-soap
yum -y install librsvg2
yum -y install xorg-x11-xinit

2. Issue the following command to install all optional fonts. Alternatively, install the multi-byte character sets necessary to meet your NLS requirements.

rpm -Uhv fonts-*

2.1.7.2 RedHat Enterprise/Oracle Linux 6.x

After performing a minimum RedHat installation, complete the following steps. Note that a graphic environment is not required.

1. Install the necessary Reporter packages using the following commands:

yum -y install perl-URI
yum -y install perl-XML-Twig
yum -y install net-snmp-utils
yum -y install sendmail-cf
yum -y install httpd
yum -y install mod_ssl
yum -y install php
yum -y install php-ldap
yum -y install php-soap
yum -y install librsvg2
yum -y install xorg-x11-xinit
yum -y install rsync
yum -y install ksh
yum -y install *-fonts
yum -y install wget
yum -y install bc
yum -y install bind-utils
yum -y install hdparm
yum -y install libpcap

2. If you are using a version of RedHat Enterprise/Oracle Linux before version 6.5 (that is, version 6.0 to 6.4), install the following OpenSSL package:

yum -y install openssl098e

3. Issue the following command to install all optional fonts. Alternatively, install the multi-byte character sets necessary to meet your NLS requirements.

rpm -Uhv fonts-*

4. Issue the following command to ensure that connections between Collectors and Reporters do not fail.

ln -s /usr/lib64/libpcap.so.N.N.N /usr/lib64/libpcap.so.0.9.4

where N.N.N is the version of libpcap installed. For example:

ln -s /usr/lib64/libpcap.so.1.0.0 /usr/lib64/libpcap.so.0.9.4

2.1.8 Oracle Database Installation

Download and install Oracle Database 11g Enterprise Edition from the Oracle database home page at the following location:

http://www.oracle.com/technology/software/products/database/index.html

The procedure for installing the Oracle database is fully described in the product documentation. It is strongly recommended that you download and review the appropriate Oracle Database 11g Quick Installation Guide. It is available from the Oracle Database Documentation Library. A summary of this procedure is described in Appendix A, "Installing the Oracle Database Software". Note that the path, user, and group names used in this guide are based on the Oracle database product documentation.

Note:
While RUEI is supported on Oracle Database releases 11.1.1.0.7 and later, the best performance for RUEI 12.1.0.5 is achieved with Oracle Database 11gR2.

2.2 Obtaining the RUEI Software

The RUEI software is available from the Oracle E-Delivery web site (http://edelivery.oracle.com). Select the following media pack criteria:

- Oracle Enterprise Manager

- Linux x86-64

2.3 Unpacking the RUEI Software

Copy the downloaded RUEI zip file to /root directory on the server, and unzip it. Use the following commands:

cd /root
unzip package_name.zip

The following directories are created which contain the software required to complete the RUEI installation:

- /root/RUEI/121

- /root/RUEI/ZendOptimizer

- /root/RUEI/ZendGuardLoader

- /root/RUEI/IC

- /root/RUEI/PHP

- /root/RUEI/Java

- /root/RUEI/extra

2.4 Generic Installation Tasks

All steps described in this section must be performed regardless of your planned installation (that is, a Reporter with local database, a Reporter with remote database, a Processing Engine, or a Collector).

2.4.1 The RUEI Configuration File

The /etc/ruei.conf file specifies the settings used within your installation. A template of this file is provided in the /root/RUEI/extra directory of the RUEI distribution zip. Note that all components in your RUEI environment (such as the remote database and Collectors) require the same global /etc/ruei.conf configuration file. Note that there is one exception to this requirement, and that is for Processing Engine systems. This requirement is fully described in Chapter 8, "Installing Processing Engines". The settings shown in Table 2-3 are defined.

Table 2-3 RUEI Configuration Settings

Setting

Description

ValueFoot 1

RUEI_HOMEFootref 2

Home directory of the RUEI software.

/opt/ruei

RUEI_DATAFoot 2

Directory for RUEI data files.

/var/opt/ruei

RUEI_USER

The RUEI operating system user.

moniforce

RUEI_GROUP

The RUEI operating system group.

moniforce

RUEI_DB_INSTFoot 3

The database instance name.

ux

RUEI_DB_TSCONFFoot 4

The configuration tablespace name

UXCONF

RUEI_DB_TSSTATFootref 4

The statistics tablespace name

UXSTAT

RUEI_DB_USERFoot 5

The database user name.

UXINSIGHT

RUEI_DB_TNSNAMEFoot 6

The Reporter or Processing Engine database connect string.

uxinsight

RUEI_DB_TNSNAME_CFGFoot 7

The Reporter database connect string.

$RUEI_DB_TNSNAME or config

RUEI_DB_TNSNAME_BIFootref 5

The export database connect string.

uxinsight

MKSTORE_BINFoot 8

The location of the mkstore utility.

TZFoot 9

The PHP timezone setting.

Europe/Amsterdam

Footnote 1 Be aware that all variables specified in this table are the values used throughout this guide, and can be modified as required.

Footnote 2 The directory name cannot exceed 50 characters in length.

Footnote 3 The database instance name cannot exceed 8 characters in length.

Footnote 4 A database table space name cannot exceed 30 characters in length.

Footnote 5 The database user name cannot exceed 30 characters in length.

Footnote 6 The alias name cannot exceed 255 characters in length.

Footnote 7 RUEI_DB_TNSNAME is the default for a Reporter system. For a Processing Engine, the example value config is used in this guide.

Footnote 8 Necessary when you want to integrate your RUEI deployment with Oracle Enterprise Manager's Incident Manager facility (see Appendix D, "Setting up a Connection to the Enterprise Manager Repository").

Footnote 9 This should be the appropriate timezone setting, and must be valid for both Linux and PHP. For Linux, you can use the tzselect utility, and for PHP use the following location: http://www.php.net/manual/en/timezones.php.

Important

Be aware that the TZ, RUEI_HOME, RUEI_DATA, RUEI_USER and RUEI_GROUP settings described in Table 2-3 must be specified in terms of literal values. Therefore, the following is not permitted:

RUEI_BASE=/my/ruei/dir
export RUEI_HOME=$RUEI_BASE/home

Note:
If you change settings in /etc/ruei.conf after the installation of a RUEI system, you must restart system processing to make these changes effective (System > Maintenance > System reset > Restart system processing).

Failover Reporter Configuration Settings

Table 2-4 shows the settings that are used to configure a failover Reporter, and are only relevant to Reporter systems. See Chapter 9, "Configuring a Failover Reporter System" for information on the configuration procedure.

Table 2-4 RUEI Failover Reporter Configuration Settings

Setting

Description

RUEI_REP_FAILOVER_PRIMARY_IP

The primary Reporter IP address.

RUEI_REP_FAILOVER_STANDBY_IP

The secondary Reporter IP address.

RUEI_REP_FAILOVER_VIRTUAL_IP

The virtual Reporter IP address.

RUEI_REP_FAILOVER_VIRTUAL_DEV

The network interface used to connect to the virtual Reporter IP address.

RUEI_REP_FAILOVER_VIRUAL_MASK

The network mask of the virtual Reporter IP address.

Failover Collector Configuration Settings

Table 2-5 shows the settings that are used to configure a failover Collector, and are only relevant to Collector systems. See Chapter 10, "Configuring a Failover Collector System" for information on the configuration procedure.

Table 2-5 RUEI Failover Collector Configuration Settings

Settings

Description

RUEI_COL_FAILOVER_PRIMARY_IP

The primary Collector IP address.

RUEI_COL_FAILOVER_STANDBY_IP

The secondary Collector IP address.

RUEI_COL_FAILOVER_VIRTUAL_IP

The virtual Collector IP address.

RUEI_COL_FAILOVER_VIRTUAL_DEV

The network interface used to connect to the virtual Collector IP address.

RUEI_COL_FAILOVER_VIRTUAL_MASK

The network mask of the virtual Reporter IP address.

There is no need to change the settings for JAVA_HOME and INSTANTCLIENT_DIR if you intend to use the software contained on the RUEI distribution pack.

1. Create the moniforce group and RUEI_USER user. The home directory of moniforce should be set to /var/opt/ruei, with read permissions for group members.

/usr/sbin/groupadd moniforce
/usr/sbin/useradd moniforce -g moniforce -d /var/opt/ruei
chmod -R 750 /var/opt/ruei
chown -R moniforce:moniforce /var/opt/ruei

Note:
The login shell for the moniforce (RUEI_USER) user must be set to /bin/bash.

2. An example of the configuration file is included in the RUEI distribution pack. Ensure the file is readable by the RUEI_USER user by issuing the following commands:

cp /root/RUEI/extra/ruei.conf /etc/
chmod 644 /etc/ruei.conf
chown moniforce:moniforce /etc/ruei.conf

In case of a remote Reporter database installation, the ruei.conf file needs to be identical to that of the Reporter system.

2.4.2 Installing Java

For Reporter, Collector, and Processing Engines systems, you need to install the Java Runtime Environment (JRE). Java is bundled within the RUEI distribution pack.

1. Issue the following commands:

cd /usr/java
tar xzf /root/RUEI/Java/jre-7u55-linux-x64.tar.gz

Note you are prompted to accept the Java licence agreement. You cannot continue until you have done so.

2. This installs the necessary Java software in the directory /usr/java/jre1.7.0_55. To make the install directory version independent, create a more generic symlink using the following command:

ln -s /usr/java/jre1.7.0_55 /usr/java/jre

2.5 Remote Tag Data Collector Installation

The procedure described in this section is only relevant to remote tag-based data Collector systems, see Section 2.1.1, "Planning the Software Installation" and Section 1.6, "Scaling Scenarios".

Logon to the Collector system as the root user, and do the following:

1. Install Apache using the following command:

rpm -Uhv httpd-2.2.15-*..x86_64.rpm

2. Ensure that the web server starts automatically after re-boot by issuing the following command:

/sbin/chkconfig httpd on

3. Create the RUEI application root directory using the following commands:

mkdir -p /opt/ruei
chmod 750 /opt/ruei

4. Change to the RUEI root directory and run the ruei-install.sh script using the following commands:

cd /root/RUEI/121
chmod +x ruei-install.sh ruei-check.sh

5. Install the tag based data collector as described in Section 2.1.1, "Planning the Software Installation":

./ruei-install.sh tag-server

6. Re-start the Apache web server using the following command:

/sbin/service httpd restart

7. As the root user, add the following lines to the .bash_profile file of the RUEI_USER (RUEI_DATA/.bash_profile):

source /etc/ruei.conf
source $RUEI_HOME/bin/env.sh

8. Verify that the RUEI software was correctly installed by issuing the following command:

./ruei-check.sh postinstall

9. Set up a password-less remote login from the Reporter system to the newly created Collector system. The necessary configuration steps are described in Section 2.13, "Configuring Reporter Communication (Split-Server Setup Only)"

2.6 Remote Network Data Collector Installation

The procedure described in this section is only relevant to remote network data Collector systems, see Section 2.1.1, "Planning the Software Installation" and Section 1.6, "Scaling Scenarios".

Logon to the Collector system as the root user, and do the following:

1. Create the RUEI application root directory using the following commands:

mkdir -p /opt/ruei
chmod 750 /opt/ruei

2. Change to the RUEI root directory and run the ruei-install.sh script using the following commands:

cd /root/RUEI/121
chmod +x ruei-install.sh ruei-check.sh

3. Install the network based collector as described in Section 2.1.1, "Planning the Software Installation":

./ruei-install.sh collector

4. As the root user, add the following lines to the .bash_profile file of the RUEI_USER (RUEI_DATA/.bash_profile):

source /etc/ruei.conf
source $RUEI_HOME/bin/env.sh

5. Configure the network interfaces as described in Section 2.8, "Configuring the Network Interface".

6. Verify that the RUEI software was correctly installed by issuing the following command:

./ruei-check.sh postinstall

7. Set up a password-less remote login from the Reporter system to the newly created Collector system. The necessary configuration steps are described in Section 2.13, "Configuring Reporter Communication (Split-Server Setup Only)"

2.7 Reporter Installation

This section describes the procedure for installing the required components for a Reporter system. These include the Apache web server, the Oracle database Instant Client, and the Zend Optimizer (or Zend Guard Loader).

2.7.1 Installing the Apache Web Server and PHP

This section describes the installation and configuration of the Apache web server, and the components that use it.

2.7.1.1 PHP Configuration

1. Ensure that the web server starts automatically after re-boot by issuing the following command:

/sbin/chkconfig httpd on

2. Edit the /etc/sysconfig/httpd file to include the following line at the bottom of the file:

source /etc/ruei.conf

3. Create the following settings in the /etc/php.d/ruei.ini file:

session.gc_maxlifetime = 14400
memory_limit = 192M
upload_max_filesize = 128M
post_max_size = 128M

2.7.1.2 Avoiding RSVG Warnings

RUEI uses RSVG for graph generation. In order to avoid warnings about a missing directory, create the empty .gnome2 directory using the following command:

mkdir -p /var/www/.gnome2

2.7.1.3 Securing Apache Web Server

In order to protect sensitive data on RUEI, it is strongly recommended that access to the Reporter interface is restricted to HTTPS. This can be achieved by executing the following command as the root user:

sed -i -e 's/^Listen 80/#Listen 80/' /etc/httpd/conf/httpd.conf

2.7.1.4 PHP Multibyte Character Support

This section only applies to RedHat Enterprise/Oracle Linux 6.x. You need to install the php-mbstring RPM version on the distribution set relevant to your operating system. For example:

cd /root/RUEI/PHP/OL6
rpm -Uhv php-mbstring-5.3.3-version.x86_64.rpm

Updates and patches of php-mbstring can be found here:

http://public-yum.oracle.com/repo/OracleLinux/OL6/

2.7.2 Installing the Oracle Database Instant Client

Install the Oracle database Instant Client and SQLplus extension by issuing the following commands as the root user:

cd /root/RUEI/IC
rpm -Uhv oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
rpm -Uhv oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm

2.7.3 Installing the php-oci8 Module

Install the php-oci8 module (this is part of the RUEI distribution set). Note that the procedure differs depending on whether you are using RedHat Enterprise/Oracle Linux 5.x or 6.x.

RedHat Enterprise/Oracle Version 5.x

Issue the following commands:

cd /root/RUEI/PHP/OL5
rpm -Uhv php-oci8-11gR2-5.1.6-27.el5_7.4.x86_64.rpm

Note that if you are using a version of RedHat Enterprise/Oracle Linux prior to 5.7, you should use php-oci8-11gR2-5.1.6-27.el5.x86_64.rpm. This is also shipped with the RUEI distribution set.

RedHat Enterprise/Oracle Version 6.x

Issue the following commands:

cd /root/RUEI/PHP/OL6
rpm -Uhv php-oci8-11gR2-5.3.3-4.el6.x86_64.rpm

2.7.4 Installing the Zend Decoder

If you are installing on RedHat Enterprise/Oracle Linux version 5.x, you will need to install the Zend Optimizer. If you are installing on version 6.x, you need to install the Zend Guard Loader. The procedure is described in the following sections.

2.7.4.1 Installing the Zend Optimizer (version 5.x)

Go to the directory containing the Zend Optimizer code, unpack the tar file, and run the Zend optimizer installer. Read the license agreement. You will not be able to proceed until you have accepted the license terms. Accept all default settings, and allow the installer to restart the Apache web server. Issue the following commands:

cd /root/RUEI/ZendOptimizer
tar zxvf ZendOptimizer-3.3.3-linux-glibc23-x86_64.tar.gz
cd ZendOptimizer-3.3.3-linux-glibc23-x86_64
./install

Note:
If you upgrade your system packages (for example, using Yum), this can overwrite changes you previously made to the /etc/php.ini file. Therefore, you should be prepared to re-install the Zend Optimizer. When doing so, ensure the Zend Optimizer installer indicates the location of the php.ini file as /etc/php.ini and not /usr/local/Zend/etc/php.ini.

Important: it is recommended you move the Zend configuration lines created in the /etc/php.ini file to the RUEI-specific PHP configuration file /etc/php.d/ruei.ini to prevent PHP upgrade issues. If you performed a default installation of the Zend Optimizer, this involves moving the following lines:

[Zend]
zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-3.3.3
zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-3.3.3
zend_optimizer.version=3.3.3

zend_extension=/usr/local/Zend/lib/ZendExtensionManager.so
zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.so

2.7.4.2 Installing the Zend Guard Loader (version 6.x)

Go to the directory containing the Zend Guard Loader code, unpack the tar file, copy the required module to the Reporter system, and set it permissions. Issue the following commands:

cd /root/RUEI/ZendGuardLoader
tar xvf ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz
cp ZendGuardLoader-php-5.3-linux-glibc23-x86_64/php-5.3.x/ZendGuardLoader.so \
/usr/lib64/php/modules/
chown root.root /usr/lib64/php/modules/ZendGuardLoader.so
chmod 755 /usr/lib64/php/modules/ZendGuardLoader.so

Add the following lines to the /etc/php.d/ruei.ini file:

zend_extension=/usr/lib64/php/modules/ZendGuardLoader.so
zend_loader.enable=1
; Disable license checks (for performance reasons)
zend_loader.disable_licensing=0
; The Obfuscation level supported by Zend Guard Loader. The levels are detailed in
; the official Zend Guard Documentation. 0 - no obfuscation is enabled
zend_loader.obfuscation_level_support=3
; For more information on how to create a license file, see the Zend Guard User
;  Guide                                                                                                                                                      zend_loader.license_path=

Important: because the Zend Guard Loader does not handle garbage collection very well, it must be disabled by including the following line in the /etc/php.d/ruei.ini file:

zend.enable_gc = Off

Be aware that this disables garbage collection for all PHP-based applications running on the Reporter system.

2.7.5 Creating the Reporter Database Instance

The procedure described in this section should be skipped if you are installing a secondary (failover) Reporter system (see Chapter 9, "Configuring a Failover Reporter System"), and you should continue at Section 2.7.6, "Installation of the Reporter Software".

The Reporter database can reside either locally (that is, on the Reporter server) or on a remote database server. In this section you will create the database instance required for RUEI, and generate the "connection data" required for the Reporter to connect to this database instance. As an alternative for the database setup described in this chapter, you can follow the procedure described in Appendix B, "Generic Database Instance Setup".

You will need the following scripts to be present on the system where the database instance (RUEI_DB_INST) will be created:

- ruei-prepare-db.sh: creates the database instance, Oracle wallet, and database connect files. Note that this script will only run on Linux. If you are installing the Oracle database on a different operating system, see Appendix B, "Generic Database Instance Setup" for more information.

- sql_scripts: this directory contains a number of SQL scripts that are called by the ruei-prepare-db.sh script.

- ruei-check.sh: this is a hardware and environment check utility, and is automatically invoked by ruei-prepare-db.sh. The script can also be used as a stand-alone troubleshooting utility. For a complete description of the script, refer to Appendix E, "The ruei-check.sh Script".

The four "connection data" files created during the procedure described in this section are as follows:

- cwallet.sso

- ewallet.p12

- sqlnet.ora

- tnsnames.ora

The RUEI configuration file (/etc/ruei.conf) also needs to be present on the database server and configured as described in Section 2.4.1, "The RUEI Configuration File".

Do the following:

1. Copy the ruei-prepare-db.sh and ruei-check.sh scripts, and the sql_scripts directory to the server on which you intend to run the database instance, and make them executable for the oracle user. These scripts can be found in the RUEI distribution zip (/root/RUEI/121).

2. Review the settings in the /etc/ruei.conf file to match your needs as described in Section 2.4.1, "The RUEI Configuration File". If you want to use different names for the configuration and statistics tablespaces make sure these names are set before continuing. Note that the same tablespace names must be used for all components in your RUEI environment, such as the remote database and Processors.

3. Logon to the database server as the oracle user on the database server, and set the ORACLE_HOME environment variable. You need to run the ruei-prepare-db.sh script as the oracle user. This script creates the $RUEI_DB_INST database, but only after a number of hardware and software environment checks have been performed. The actual checks performed depend on the system type you are currently installing.
The script prompts you for the Reporter database user passwordFoot 1 . This enables the RUEI application to login to the database automatically. The script also creates the "connection data" files for you now.

The script also prompts you for a default tablespace name to be used for this installation, and then creates the "connection data" files.

Issue the following commands:

chmod +x ruei-prepare-db.sh ruei-check.sh
chmod -R +r /home/oracle/sql_scripts/
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1Foot 2
./ruei-prepare-db.sh create

Note that you are prompted whether you want the installation script to check your system. It is recommended that you do so. The checks performed are fully described in Appendix E, "The ruei-check.sh Script".

If you ran the above commands on a combined Reporter/Database server, you can skip step 4 and proceed to step 5.

4. This step only applies when using a remote database.
In the case of a Reporter system using a remote database, you will need to copy the generated /tmp/ruei-database-configuration.tar file in step 3 from the database server to the Reporter system. The /tmp/ruei-database-configuration.tar file must be extracted on the Reporter server in the directory /var/opt/ruei (RUEI_DATA). The permissions of the files need to be set so that the specified RUEI_USER (moniforce) can use them.

Copy the generated .tar file, which holds connection data files to the Reporter system. Logon to the Reporter server and extract the .tar file using the following commands:

cd /var/opt/ruei
tar xvf path-to-tar-file/ruei/database-configuration.tar
chown moniforce:moniforce cwallet.sso ewallet.p12 sqlnet.ora tnsnames.ora

5. Because logging of the database can consume a large amount of disk space, it is recommended that you install a clean-up script to avoid the usage of unnecessary disk space. Copy the (example) script to the oracle user directory and activate it via cron using the following commands:

mkdir -p /home/oracle/bin
cp /root/RUEI/extra/ruei-clean.sh /home/oracle/bin
chmod +x /home/oracle/bin/ruei-clean.sh
su - oracle -c 'echo "10 0 * * * /home/oracle/bin/ruei-clean.sh" | crontab'

2.7.6 Installation of the Reporter Software

The procedure described in this section is relevant to all configurations described in Section 1.6, "Scaling Scenarios" and Section 2.1.1, "Planning the Software Installation". Installing the reporter software also installs the collector and processor software.

1. The RUEI directory locations are flexible, however it is necessary to use the exact directory name described as configured in the /etc/ruei.conf file. Create the RUEI application root directory using the following commands:

mkdir -p /opt/ruei
chmod 750 /opt/ruei

Note:
The specified $RUEI_HOME and $RUEI_DATA directories must have 750 permissions defined for them. See Table 2-3 for more information on these directories.

2. Make the apache and moniforce members of two additional groups using the following commands:

/usr/sbin/usermod -aG moniforce apache
/usr/sbin/usermod -aG uucp apache
/usr/sbin/usermod -aG uucp moniforce

3. Go to the directory that holds the RUEI software, and enter the following commands:

cd /root/RUEI/121
chmod +x ruei-install.sh

4. Use one of the following options to install the reporter software:

- If you are installing a reporter in a split server configuration or you want to use only network based data collection as described in Section 2.1.1, "Planning the Software Installation":

./ruei-install.sh reporter

- If you are installing on a single server and you want to use tag based data collection as described in Section 2.1.1, "Planning the Software Installation" (Note that this option also supports network based data collection):

./ruei-install.sh reporter-tag

For information on monitoring an application based on tagging, see Defining Applications in the Identifying and Reporting Web Pages chapter of the RUEI Users Guide.

5. Re-start the Apache web server using the following command:

/sbin/service httpd restart

6. As the root user, add the following lines to the .bash_profile file of the RUEI_USER (RUEI_DATA/.bash_profile):

source /etc/ruei.conf
source $RUEI_HOME/bin/env.sh

7. Verify that the RUEI software was correctly installed by issuing the following command:

./ruei-check.sh postinstall

8. This step should not be performed if you are installing a secondary (failover) Reporter system (see Chapter 9, "Configuring a Failover Reporter System"). You should continue at Section 2.8, "Configuring the Network Interface".
As the moniforce user, set the RUEI admin user password to enable logging onto the RUEI interface with the following commands:

su - moniforce
set-admin-password

You are prompted to enter and confirm the password.

Password Requirements

When defining the admin user password, bear the following in mind:

- The password must have at least eight characters, and contain at least one non-alphanumeric character (such as $, @, &, and !).

- The initial password must be changed within seven days.

- The user name and password are case sensitive.

2.8 Configuring the Network Interface

This section is only relevant to network data Collector systems.

Make the monitoring network interface up status permanent (after a reboot) by setting the ONBOOT parameter of the capturing interfaces to yes in the interface configuration files. The network interfaces configuration can be found in the /etc/sysconfig/network-scripts/ifcfg-ethX file (where X represents the necessary network interface). Alternatively, use the graphical utility system-config-network to set the appropriate interfaces to "activate device when computer starts".

2.9 Enabling International Fonts (Optional, but Recommended)

This section is only relevant to the Reporter system.

For PDF generation with international character content, additional fonts are required to be enabled. These fonts need to be made available to Java. Use the following command to copy (or move) the RUEI-installed fonts to the appropriate Java directory:

cp RUEI_HOME/bi-publisher/fonts/* \
/usr/java/jre/lib/fonts/

2.10 Mail (MTA) Configuration (Optional, Reporter Only)

This section is only relevant to the Reporter system.

RUEI assumes a working local MTA for sending PDF reports and E-mail alerts. By default, Linux uses the Sendmail MTA. By default, Sendmail delivers the E-mail directly to the destination MTA. If this behavior is not according to your needs or policies, sending mail via a SmartHost (relay) might be an alternative. To configure a SmartHost in Sendmail, do the following:

1. Install the Sendmail configuration utility by going to the directory containing the uploaded RPM and issuing the following command for RedHat Enterprise/Oracle Linux 5.x:

rpm -Uhv sendmail-cf-8.13.8-*.el5.x86_64.rpm

In RedHat Enterprise/Oracle Linux 6.x, issue the following command:

rpm -Uhv sendmail-cf-8.14.4-*.el6.x86_64.rpm

2. Find the line which contains the Smart Host setting in /etc/mail/sendmail.mc. Modify the SMART_HOST setting to your needs. For example:

define('SMART_HOST', 'my.example')dnl

3. Generate the new configuration into a new sendmail.cf by executing the following command:

make -C /etc/mail

4. Restart Sendmail. For example:

/etc/init.d/sendmail restart

Note:
Extensive information about the configuration of the Sendmail MTA is available at http://www.sendmail.org.

2.11 SNMP (Reporter Only)

You can download the RUEI MIB definition file through the Reporter interface. This definition file can then be added to your SNMP manager. The procedure for downloading the MIB file is described in the Oracle Real User Experience Insight User's Guide.

2.11.1 Configuring SNMP for RUEI

To enable the RUEI_USER to use the SNMP utilities, complete the following (applies to OL6, not OEL5):

1. As the root user, edit the snmpd config file in /etc/sysconfig/snmpd and make sure the 'OPTIONS' line is not commented out by removing the '#' at the start of the line.

2. Add the following option to the line:

-u RUEI_USER

3. As the root user, start and stop the snmpd daemon to have it set the correct permissions on all related files by issuing the following commands:

service snmpd start
service snmpd stop

2.12 Configuring Automatic Browser Redirection (Optional)

This section is only relevant to Reporter systems.

To have the browser automatically redirected to the correct RUEI path, create the file /var/www/html/index.html with the following content:

<head>
<meta http-equiv="REFRESH" content="0;URL=/ruei/">
</head>

2.13 Configuring Reporter Communication (Split-Server Setup Only)

This section is only relevant to a Reporter system with remote Collector(s).

A password-less SSH connection must be setup between the Moniforce user from the Reporter system to each Collector system. Do the following:

1. Logon to the Reporter server as root. Issue the following commands:

su - moniforce
ssh-keygen -P ""

Press Enter to accept the defaults.

2. Logon as root to each of the Collector systems and become the moniforce user by issuing the following command:

su - moniforce

3. Create the .ssh directory (if it does not already exist) for the moniforce user on each Collector system by issuing the following commands:

mkdir ~/.ssh
chmod 700 ~/.ssh

4. Copy the SSH key on the Reporter system to the required location on the Collector system by issuing the following commands:

cd ~/.ssh
ssh root@Reporter cat /var/opt/ruei/.ssh/id_rsa.pub >> authorized_keys

(you will need to specify the Reporter system root password)

chmod 600 authorized_keys

5. Check that it is now possible to execute a remote command (as moniforce user) on the Reporter system without using a password. For example:

- Logon as root on the Reporter server.

- Logon as moniforce user: su - moniforce.

- Execute a remote pwd command: ssh Collector pwd.

- Enter yes to the question "Are you sure you want to continue connecting (yes/no)?".

- The command should return /var/opt/ruei.

6. The above steps must be performed for each Collector!

Note:
If the connection between the Reporter and the Collector(s) has not been correctly configured, you will receive an authorization error when you try to register the remote Collector.

2.14 Verifying Successful Installation of RUEI

On completion of the Initial Setup Wizard (described in Section 6.2, "Performing Initial RUEI Configuration"), you can verify your installation by selecting System, then Status. All system indicators should report OK. Note Status notification will indicate "Unknown" because no system alerts have yet been configured. This is fully described in the Oracle Real User Experience Insight User's Guide.

Footnote Legend

Footnote 1: The database password is also used as the Oracle wallet password. Both passwords must be 8-30 characters in length, and contain both numbers and letters. For information on changing the Oracle wallet password, please consult the appropriate Oracle documentation.
Footnote 2: This line requires customization based on your database version and installation path.

3 Upgrading to RUEI 12.1.0.6

This chapter describes the procedure for upgrading an existing RUEI 11.1 or 12.1.0.x installation to release 12.1.0.6. The post-installation configuration procedure is described in Chapter 6, "Configuring RUEI". Before upgrading RUEI, check that your system conforms to the prerequisites outlined in Section 2.1, "Prerequisites."

Additional Installation Dependency

As of version 12.1.0.3, a new dependency has been introduced. This requires the installation of the php-soap module (available in the Linux DVD) as part of the upgrade procedures described in Section 3.10, "Upgrading From RUEI 11.1 to 12.1.0.6" and Section 3.11, "Upgrading From RUEI 12.1.0.x to 12.1.0.6".

3.1 Changes to Data Representation in RUEI 12.1.0.4

As of version 12.1.0.4, the way data is represented in RUEI tables was changed, the following is a summary of those changes:

- Parent level values are no longer prefixed to the current value.
In previous versions of RUEI, it was the convention to prefix the parent values to a value so that, for instance, the page name would be prefixed with the application and page group values to become "MyApp " Admin " Login.asp". This is no longer the case, and in RUEI 12.1.0.4 the page name is presented simply as "Login.asp".

Note that it is now possible in RUEI to enable a Hierarchical view of data, which will visually prefix the parent level values to each child value during display in the UI. This is just a visual tool and it is not related to the way data is stored in the tables.

- Using NULL to represent empty values.
In the past, RUEI would rely on special values to represent values for which no information was found. For example, if a user could not be identified for a given session, the user would be set to "anonymous". Similarly, a page might be set to "none", or a missing cookie to "no-cookie".

In this release, special values are no longer required as all empty values will now be set to NULL. All references to special values in your existing configuration, such as filters on KPIs, reports, and dashboards, will automatically be converted to use NULL by the upgrade procedure during installation. If you also choose to convert all historic data, then all special values in your data will also be updated.

- The page-group dimension can now become NULL.
In previous versions of RUEI, a page-group for which no value could be found was assigned the same value as the page name. This is no longer the case. A page-group with no value is now set to NULL. The upgrade procedure will convert such occurrences automatically.

3.1.1 Changes in BI Export

The changes described in Section 3.1, "Changes to Data Representation in RUEI 12.1.0.4" are applicable to all RUEI tables, and will also be visible in any BI exports. This means that once you have upgraded to RUEI 12.1.0.6, the data in the BI export tables will look different.

Oracle recommends you verify that the new data representation will not be incompatible with any applications that use the RUEI BI export functionality.

3.2 KPI Values

In previous versions before 12.1.0.0.1, KPI percentage values were sometimes incorrectly reported as a number between 0 and 1, rather than between 0 and 100. The upgrade script prompts you to confirm the correction of suspect KPI historical values and targets. This is described in Section 3.10.1, "Upgrading the Reporter System from RUEI 11.1".

Note that while best effort has been made to ensure that historical data and target values are correctly transformed as necessary, it is recommended that you review KPI reporting and target configuration to ensure they meet your requirements.

3.3 XPath Support

As of version 11.1, support for the use of XPath queries has been extended to provide full XPath 1.0 functionality for content scanning. This has important implications when upgrading an existing RUEI installation.

The upgrade script reports all namespaces found in the current configuration. These must be explicitly defined upon completion of the upgrade process. Otherwise, your configuration will no longer work correctly.

In addition, be aware that XPath expressions executed against content that is not well-formed XHTML code can return different results than in previous versions. Therefore, it is strongly recommenced that you carefully review all XPath expressions used in your RUEI installation. For further information on XPath support, see the Oracle Real User Experience Insight User's Guide.

3.4 Increased Database Space Requirements

As of version 12.1.0.1, due to the addition of hourly information within Data Browser groups, the amount of required database space has significantly increased. It is recommended that you regularly review database utilization and your data retention policies in order to ensure that they meet your reporting requirements.

3.5 Default Tablespace Modes

As of version 12.1.0.3, the default (USERS) and configuration (UXCONF) tablespaces within new installations are by default set to force logging mode. This mode is necessary for the creation of online database backups. Previously, the default mode was nologging. The procedure for changing this configuration is described in the Oracle Real User Experience Insight Advanced Administrator's Guide.

Existing customers should be aware that database backups created without the force logging mode may be unusable. The upgrade procedure does not change your database's current setting. However, be aware that changing the tablespace mode to force logging can considerably increase disk I/O.

3.6 Upgrading Filters

The following sections outline issues with upgrading filters.

3.6.1 Error During Upgrade

Exception: ORA-00600: internal error code, arguments:
[qkebCreateConstantOpn1]

Exception: An internal system error has occurred. Please contact the Administrator with the error details.

The workaround is to recreate the tables using the following steps as the $RUEI_USER user:

1. Create data backups:

cd /tmp

cop backup -s c txn_names >TXN_NAMES
cop backup -s c txn_abort_conditions >TXN_ABORT_CONDITIONS
cop backup -s c txn_steps >TXN_STEPS
cop backup -s c txn_abort_clauses >TXN_ABORT_CLAUSES
cop backup -s c txn_step_clauses >TXN_STEP_CLAUSES

2. Drop the tables:

sqlplus /@$RUEI_DB_TNSNAME
drop table c_txn_names cascade constraints;
drop table c_txn_abort_conditions cascade constraints;
drop table c_txn_steps cascade constraints;
drop table c_txn_abort_clauses cascade constraints;
drop table c_txn_step_clauses cascade constraints;

3. Create new tables:

makedatabase @

4. Restore data:

cop backup -r c txn_names <TXN_NAMES
cop backup -r c txn_abort_conditions <TXN_ABORT_CONDITIONS
cop backup -r c txn_steps <TXN_STEPS
cop backup -r c txn_abort_clauses <TXN_ABORT_CLAUSES
cop backup -r c txn_step_clauses <TXN_STEP_CLAUSES

5. As the root user, enter the following commands:

cd /root/RUEI/extra
./ruei-upgrade-12.1.0.6.sh convert_filters

3.6.2 Upgrading application.name and application.page-group Filters

If you are upgrading from a version prior to version 12.1.0.4, upgrading the application.name and application.page-group filters of KPIs, reports, dashboards, user flows, and logout events does not work correctly when the application name is a sub-application containing a suite name in parentheses or when the page-group value is actually a page-name, rather than a group containing several page-names.

To check for items that may not work after the upgrade, run the upgrade_check step from the upgrade script:

cd /root/RUEI/extra
chmod +x ruei-upgrade-12.1.0.6.sh
./ruei-upgrade-12.1.0.6.sh upgrade_check

3.7 Framework Exception Downloads

Framework exception download zip files from earlier release versions are incompatible with this release. When the upgrade is completed, download the zip files again to get a version compatible with this release.

3.8 Settings Within the ruei.conf File

As of version 12.1.0.4, the RUEI_HOME, RUEI_DATA, RUEI_USER and RUEI_GROUP settings described in Table 2-3 must be specified in terms of literal values. Therefore, the following is not permitted:

RUEI_BASE=/my/ruei/dir
export RUEI_HOME=$RUEI_BASE/home

Furthermore, the TZ setting, described in Table 2-3, must be set to an appropriate time zone string, such as 'Europe/Amsterdam'. Run the tzselect program to select an appropriate time zone. You must also set the ORA_SDTZ (session default time zone) variable to be identical to $TZ. For example:

export TZ=Europe/Amsterdam
export ORA_SDTZ=$TZ

The appropriate timezone setting must be valid for both Linux and PHP. For Linux, you can use the tzselect utility, and for PHP use the information from:

http://php.net/manual/en/timezones.php

Also, the database tablespace names used by RUEI are configurable from version 12.1.0.5 onwards, and must be set in the ruei.conf file. Before upgrading set them in ruei.conf to the current values as follows:

export RUEI_DB_TSCONF=UXCONF
export RUEI_DB_TSSTAT=UXSTAT

3.9 Report Data Export

Authentication for report exports uses RUEI user credentials and cannot be configured using Apache configuration files any longer. To continue using report data export urls:

1. Review each of the users listed in the /opt/ruei/.credentials file.

2. Create a RUEI user for each of the users noted from step 1. Each user must be given the Report Data Export role. Note that passwords are retrievable, if you do not know the password for a user, give the user a new password.

3. Delete the /opt/ruei/.credentials file.

4. Delete the $RUEI_HOME/gui/.htaccess file.

3.10 Upgrading From RUEI 11.1 to 12.1.0.6

This section describes the procedure for upgrading from an existing RUEI 11.1 installation to release 12.1.0.6.

Important:
Before proceeding with the upgrade, make a backup of your configuration, the main database, and the databases on each processor separately. Select System, then select Maintenance, and then click Backup and restore. The configuration backup is required in case of a rollback.
For instructions on how to back up your database, refer to the Oracle Enterprise Manager Cloud Control Administrator's Guide.

3.10.1 Upgrading the Reporter System from RUEI 11.1

The Reporter upgrade procedure described in this section applies to both single server installations as well as dedicated Reporter systems.

Do the following:

1. Login to the Reporter as root. Within the /root directory, unzip the RUEI zip file, and go to the directory containing the application files. Use the following commands:

cd /root
unzip Vxxxx.zip

2. Issue the following commands:

cd /usr/java
tar xzf /root/RUEI/Java/jre-7u55-linux-x64.tar.gz

3. This installs the necessary Java software in the directory /usr/java/jre1.7.0_55. To make the install directory version independent, create a more generic symlink using the following command:

rm ./jre
ln -s /usr/java/jre1.7.0_55 /usr/java/jre

4. Install the php-soap module and restart the web server by issuing the following commands:

rpm -Uhv php-soap-5.1.6-*.x86_64.rpm
service httpd restart

5. Stop all processing on the Reporter and Collector system(s) using the following commands:

cd /root/RUEI/extra
chmod +x ruei-upgrade-12.1.0.6.sh
./ruei-upgrade-12.1.0.6.sh stop_ruei

6. Insert the following lines in the /etc/ruei.conf file:

export RUEI_DB_TNSNAME_CFG=$RUEI_DB_TNSNAME
export RUEI_DB_TSCONF=UXCONF
export RUEI_DB_TSSTAT=UXSTAT

If you have not already completed the task described in Section 3.8, "Settings Within the ruei.conf File," set the TZ setting, described in Table 2-3, to an appropriate time zone string, such as 'Europe/Amsterdam'. Run the tzselect program to select an appropriate time zone. You must also set the ORA_SDTZ (session default time zone) variable to be identical to $TZ. These modification need to be made to /etc/ruei.conf. For example:

export TZ=Europe/Amsterdam
export ORA_SDTZ=$TZ

The appropriate timezone setting must be valid for both Linux and PHP. For Linux, you can use the tzselect utility, and for PHP use the information from:

http://php.net/manual/en/timezones.php

7. Perform the necessary pre-upgrade actions by executing the following commands:

cd /root/RUEI/extra
./ruei-upgrade-12.1.0.6.sh rpm_pre_install

Note that, depending on your deployment, the upgrade actions may take a couple of hours to complete if you are upgrading from release 12.1.0.3 or earlier.

8. Make the ruei-prepare-db.sh script available to the Oracle user (for example, by extracting the RUEI distribution zip) on the system where the database resides. Update the RUEI database instance by issuing the following commands:

cd /root/RUEI/121
cp ruei-prepare-db.sh /home/oracle
cp -r sql_scripts /home/oracle
chmod +x /home/oracle/ruei-*.sh
chmod +r /home/oracle/sql_scripts/*
su - oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1Foot 1
./ruei-prepare-db.sh sql_packages
./ruei-prepare-db.sh user_grants
./ruei-prepare-db.sh set_incremental_stats

Upon completion, you should again become the root user.

9. For each required Collector system, perform the steps indicated in Section 3.10.2, "Upgrading the Remote Collector System(s) from RUEI 11.1".

10. Install the new versions of the RPMs using the following commands:

cd /root/RUEI/121
chmod +x ruei-install.sh
./ruei-install.sh reporter

Existing installations (upgrades) need to copy the fonts after the RPMs have been installed using the following commands:

. /etc/ruei.conf
cp $RUEI_HOME/bi-publisher/fonts/* /usr/java/jre/lib/fonts/

11. As the root user, add the following lines to the .bash_profile file of the RUEI_USER user (RUEI_DATA/.bash_profile):

source /etc/ruei.conf
source $RUEI_HOME/bin/env.sh

12. Perform the necessary post-upgrade actions by executing the following commands:

cd /root/RUEI/extra
./ruei-upgrade-12.1.0.6.sh rpm_post_install

As explained in Section 3.2, "KPI Values", the upgrade script may prompt you to confirm the conversion of suspect KPI historical values and targets.

In case you want to alter any of the choices you made above, you can re-run this procedure by executing the following command:

13. ./ruei-upgrade-12.1.0.6.sh kpi_convert_percent

Note that the above command must be executed before attempting the next step.

14. Restart processing using the following commands:

cd /root/RUEI/extra
./ruei-upgrade-12.1.0.6.sh reinitialize
./ruei-upgrade-12.1.0.6.sh start_ruei

15. The upgrade converts the RUEI configuration and current data to the new model. However, the old data has not yet been converted. For more information, see Section 3.10.3, "Upgrading Historical Data from RUEI 11.1".

Note:
During and after the upgrade procedure, if error or information messages appear in the event log (select System, then Status, and then Event log), you should mark them as read after completing the upgrade procedure, and monitor whether new messages are reported. In the event of re-occurring error messages, you should contact Customer Support.

3.10.2 Upgrading the Remote Collector System(s) from RUEI 11.1

For each required remote Collector system, login as root. Within the /root directory, unzip the RUEI zip file, go to the directory containing the application files, and install the new versions of the RPMs. Do the following:

1. Unzip the RUEI distribution package using the following commands:

cd /root
unzip Vxxxx.zip

2. Issue the following commands:

cd /usr/java
tar xzf /root/RUEI/Java/jre-7u55-linux-x64.tar.gz

3. This installs the necessary Java software in the directory /usr/java/jre1.7.0_55. To make the install directory version independent, create a more generic symlink using the following command:

rm ./jre
ln -s /usr/java/jre1.7.0_55 /usr/java/jre

4. Insert the following lines in the /etc/ruei.conf file:

export RUEI_DB_TSCONF=UXCONF
export RUEI_DB_TSSTAT=UXSTAT

5. Upgrade the Collector RPMs using the following commands:

cd /root/RUEI/121
chmod +x ruei-install.sh
./ruei-install.sh collector

6. As the root user, add the following lines to the .bash_profile file of the RUEI_USER user (RUEI_DATA/.bash_profile):

source /etc/ruei.conf
source $RUEI_HOME/bin/env.sh

After completing the above procedure for each required Collector system, you should continue with the upgrade of the Reporter system (as described in Section 3.10.1, "Upgrading the Reporter System from RUEI 11.1").

3.10.3 Upgrading Historical Data from RUEI 11.1

Because RUEI 12.1.0.4 uses a new data model for storing and querying data, you will need to upgrade your pre-12.1.0.4 data if you still want to be able to view it in the new RUEI version. Note that converting the data is not required for proper operation of your RUEI 12.1.0.6 system. This step is only required if you wish to be able to view data processed and stored before the installation of 12.1.0.6.

A description of what is new and what has changed in the way data is stored and presented in 12.1.0.4 can be found in Section 3.1, "Changes to Data Representation in RUEI 12.1.0.4".

The data upgrade must be performed on each individual processing engine and the reporter.

3.10.3.1 Moving Old Data to a Separate Tablespace

This is an optional step to free up space in the USERS tablespace for conversion of old data and collection of new data. It moves old data to a separate tablespace where it remains as a backup.

1. Create a tablespace to hold the old data, for instance UXBACKUP. Its size will be about the same as the USERS tablespace, but make sure to add enough database files:

sqlplus sys/<password>@$RUEI_DB_TNSNAME as sysdba
SQL> create tablespace UXBACKUP datafile 'uxbackup01.dbf' size 5M reuse autoextend on default compress;
SQL> alter user RUEI_DB_USER quota unlimited on UXBACKUP;
SQL> alter tablespace UXBACKUP add datafile 'uxbackup02.dbf' size 5M reuse autoextend on;

2. Run the following step from the upgrade script after logging in as root:

cd /root/RUEI/extra
./ruei-upgrade-12.1.0.4.sh backup_data_cubes UXBACKUP

3.10.3.2 Converting Data

Note that data for applications that are no longer configured will not be converted. In order to retain this data, add it back in the Configuration > Applications/Services screen with the exact same name before running the conversion.

Run the following step from the upgrade script after logging in as root:

cd /root/RUEI/extra
./ruei-upgrade-12.1.0.6.sh convert_data_cubes

Note that depending on the amount of data in the system, this might take a long time to complete.

3.10.3.3 Deleting the Original Data

The original data cubes will be preserved as a backup in case a problem occurs during the upgrade. Once you are satisfied with the data upgrade, you can remove them permanently by logging in as root and executing the following:

cd /root/RUEI/extra
./ruei-upgrade-12.1.0.6.sh delete_old_data

This will permanently delete all pre-RUEI 12.1.0.4 data cubes.

To remove the data from the disk, enter the following commands as the RUEI_USER user:

sqlplus sys/<password>@$RUEI_DB_TNSNAME as sysdba
SQL> drop tablespace UXBACKUP INCLUDING CONTENTS AND DATAFILES;
SQL> drop tablespace UXTEMP INCLUDING CONTENTS AND DATAFILES;

3.11 Upgrading From RUEI 12.1.0.x to 12.1.0.6

This section describes the procedure for upgrading from an existing RUEI 12.1.0.x installation to release 12.1.0.6.

Important:
Before proceeding with the upgrade, make a backup of your configuration, the main database, and the databases on each processor separately. To perform a configuration backup, select System, then select Maintenance, and then click Backup and restore. The configuration backup is required in case of a rollback.
For instructions on how to back up your database, refer to the Oracle Enterprise Manager Cloud Control Administrator's Guide.

3.11.1 Upgrading the Reporter System from RUEI 12.1.0.x

The Reporter upgrade procedure described in this section applies to both single server installations as well as dedicated Reporter systems.

Do the following:

1. Login to the Reporter as root. Within the /root directory, unzip the RUEI zip file, and go to the directory containing the application files. Use the following commands:

cd /root
unzip Vxxxx.zip

2. Issue the following commands:

cd /usr/java
tar xzf /root/RUEI/Java/jre-7u55-linux-x64.tar.gz

3. This installs the necessary Java software in the directory /usr/java/jre1.7.0_55. To make the install directory version independent, create a more generic symlink using the following command:

rm /usr/java/jre
ln -s /usr/java/jre1.7.0_55 /usr/java/jre

4. Install the php-soap module and restart the web server by issuing the following commands:

rpm -Uhv php-soap-5.1.6-*.x86_64.rpm
service httpd restart

Note:
Perform this step only if you are upgrading from a version prior to 12.1.0.3.

5. Stop all processing on the Reporter and Collector system(s) using the following commands:

cd /root/RUEI/extra
chmod +x ruei-upgrade-12.1.0.6.sh
./ruei-upgrade-12.1.0.6.sh stop_ruei

6. Insert the following lines in the /etc/ruei.conf file:

export RUEI_DB_TNSNAME_CFG=$RUEI_DB_TNSNAME
export RUEI_DB_TSCONF=UXCONF
export RUEI_DB_TSSTAT=UXSTAT

If you have not already completed the task described in Section 3.8, "Settings Within the ruei.conf File," set the TZ setting, described in Table 2-3, to an appropriate time zone string, such as 'Europe/Amsterdam'. Run the tzselect program to select an appropriate time zone. You must also set the ORA_SDTZ (session default time zone) variable to be identical to $TZ. These modification need to be made to /etc/ruei.conf. For example:

export TZ=Europe/Amsterdam
export ORA_SDTZ=$TZ

The appropriate timezone setting must be valid for both Linux and PHP. For Linux, you can use the tzselect utility, and for PHP use the information from:

http://php.net/manual/en/timezones.php

7. Perform the necessary pre-upgrade actions by executing the following commands:

cd /root/RUEI/extra
./ruei-upgrade-12.1.0.6.sh rpm_pre_install

Note that, depending on your deployment, the upgrade actions may take a couple of hours to complete if you are upgrading from a version prior to version 12.1.0.4.

8. This step should be performed if you are upgrading from a version prior to 12.1.0.1.
Make the ruei-prepare-db.sh script available to the Oracle user (for example, by extracting the RUEI distribution zip) on the system where the database resides. Update the RUEI database instance by issuing the following commands:

cd /root/RUEI/121
cp ruei-prepare-db.sh /home/oracle
cp -r sql_scripts /home/oracle
chmod +x /home/oracle/ruei-*.sh
chmod +r /home/oracle/sql_scripts/*
su - oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1Foot 2
./ruei-prepare-db.sh sql_packages
./ruei-prepare-db.sh user_grants
./ruei-prepare-db.sh set_incremental_stats

Upon completion, you should again become the root user.

9. For each required Collector system, perform the steps indicated in Section 3.11.2, "Upgrading the Remote Collector System(s) from RUEI 12.1.0.x".

10. For each required Processing Engine system, perform the steps described in Section 3.11.3, "Upgrading the Processing Engine System(s) from RUEI 12.1.0.x".

11. Install the new versions of the RPMs using the following commands:

cd /root/RUEI/121
chmod +x ruei-install.sh
./ruei-install.sh reporter

Existing installations (upgrades) need to copy the fonts after the RPMs have been installed using the following commands:

. /etc/ruei.conf
cp $RUEI_HOME/bi-publisher/fonts/* /usr/java/jre/lib/fonts/

12. As the root user, add the following lines to the .bash_profile file of the RUEI_USER (RUEI_DATA/.bash_profile):

source /etc/ruei.conf
source $RUEI_HOME/bin/env.sh

Note:
Skip this step if you are upgrading from version 12.1.0.3 or later.

13. Perform the necessary post-upgrade actions by executing the following commands:

cd /root/RUEI/extra
./ruei-upgrade-12.1.0.6.sh rpm_post_install

As explained in Section 3.2, "KPI Values", the upgrade script may prompt you to confirm the conversion of suspect KPI historical values and targets.

14. Only perform this step if you are upgrading from version 12.1.0.0.0, otherwise this step can be ommited.
In case you want to alter any of the choices you made in the previous step, you can re-run this procedure by executing the following command:

./ruei-upgrade-12.1.0.6.sh kpi_convert_percent

Note that the above command must be executed before attempting the next step.

15. Restart processing using the following commands:

cd /root/RUEI/extra
./ruei-upgrade-12.1.0.6.sh reinitialize
./ruei-upgrade-12.1.0.6.sh start_ruei

16. The upgrade has converted the RUEI configuration and current data to the new model. However, if you are upgrading from release 12.1.0.3 or earlier, the old data has yet to be converted. For more information, see Section 3.11.4, "Upgrading Historical Data from RUEI 12.1.0.x".

Note:
During and after the upgrade procedure, if error or information messages appear in the event log (select System, then Status, and then Event log), you should mark them as read after completing the upgrade procedure, and monitor whether new messages are reported. In the event of re-occurring error messages, you should contact Customer Support.

3.11.2 Upgrading the Remote Collector System(s) from RUEI 12.1.0.x

For each required remote Collector system, login as root. Within the /root directory, unzip the RUEI zip file, go to the directory containing the application files, and install the new versions of the RPMs. Do the following:

1. Unzip the RUEI distribution package using the following commands:

cd /root
unzip Vxxxx.zip

2. Issue the following commands:

cd /usr/java
tar xzf /root/RUEI/Java/jre-7u55-linux-x64.tar.gz

3. This installs the necessary Java software in the directory /usr/java/jre1.7.0_55. To make the install directory version independent, create a more generic symlink using the following command:

rm jre
ln -s /usr/java/jre1.7.0_55 /usr/java/jre

4. Insert the following lines in the /etc/ruei.conf file:

export RUEI_DB_TSCONF=UXCONF
export RUEI_DB_TSSTAT=UXSTAT

5. Upgrade the Collector RPMs using the following commands:

cd /root/RUEI/121
chmod +x ruei-install.sh
./ruei-install.sh collector

6. As the root user, add the following lines to the .bash_profile file of the RUEI_USER user (RUEI_DATA/.bash_profile):

source /etc/ruei.conf
source $RUEI_HOME/bin/env.sh

Skip this step if you are upgrading from version 12.1.0.3 or later.

After completing the above procedure for each required Collector system, you should continue with the upgrade of the Reporter system (as described in Section 3.11.1, "Upgrading the Reporter System from RUEI 12.1.0.x").

3.11.3 Upgrading the Processing Engine System(s) from RUEI 12.1.0.x

The upgrade procedure described in this section should be performed for each Processing Engine system. Note that Processing Engine systems should be upgraded sequentially. That is, do not start upgrading the next system until upgrade of the previous system is complete. Do the following:

1. Login to the Processing Engine as root. Within the /root directory, unzip the RUEI zip file, and go to the directory containing the application files. Use the following commands:

cd /root
unzip Vxxxx.zip

2. Issue the following commands:

cd /usr/java
tar xzf /root/RUEI/Java/jre-7u55-linux-x64.tar.gz

3. This installs the necessary Java software in the directory /usr/java/jre1.7.0_55. To make the install directory version independent, create a more generic symlink using the following command:

rm /usr/java/jre
ln -s /usr/java/jre1.7.0_55 /usr/java/jre

4. Insert the following lines in the /etc/ruei.conf file:

export RUEI_DB_TSCONF=UXCONF
export RUEI_DB_TSSTAT=UXSTAT

5. Perform the necessary pre-upgrade actions by executing the following commands:

cd /root/RUEI/extra
./ruei-upgrade-12.1.0.6.sh rpm_pre_install

6. This step should only be performed if you are upgrading from a version prior to 12.1.0.1.
Make the ruei-prepare.sh script available to the Oracle user (for example, by extracting the RUEI distribution zip) on the system where the database resides. Update the Processing Engine database instance by issuing the following commands:

cd /root/RUEI/121
cp ruei-prepare-db.sh /home/oracle
cp -r sql_scripts /home/oracle
chmod +x /home/oracle/ruei-*.sh
chmod +r /home/oracle/sql_scripts/*
su - oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1Foot 3
./ruei-prepare-db.sh sql_packages
./ruei-prepare-db.sh user_grants

Upon completion, you should again become the root user.

7. Install the new versions of the RPMs using the following commands:

cd /root/RUEI/121
chmod +x ruei-install.sh
./ruei-install.sh processor

8. As the root user, add the following lines to the .bash_profile file of the RUEI_USER (RUEI_DATA/.bash_profile):

source /etc/ruei.conf
source $RUEI_HOME/bin/env.sh

Skip this step if you are upgrading from 12.1.0.3 or 12.1.0.4.

After completing the above procedure for each required Processing Engine, you should continue with the upgrade of Reporter system (as described in Section 3.11.1, "Upgrading the Reporter System from RUEI 12.1.0.x").

3.11.4 Upgrading Historical Data from RUEI 12.1.0.x

Because RUEI 12.1.0.4 uses a new data model for storing and querying data, you will need to upgrade your pre-12.1.0.4 data if you still want to be able to view it in the new RUEI version. Note that converting the data is not required for proper operation of your RUEI 12.1.0.4 system. This step is only required if you wish to be able to view data processed and stored before the installation of 12.1.0.6.

A description of what is new and what has changed in the way data is stored and presented in 12.1.0.4 can be found in Section 3.1, "Changes to Data Representation in RUEI 12.1.0.4".

The data upgrade must be performed on each individual processing engine and the reporter.

3.11.4.1 Moving Old Data to a Separate Tablespace

This is an optional step to free up space in the USERS tablespace for conversion of old data and collection of new data. It moves old data to a separate tablespace where it remains as a backup.

1. Create a tablespace to hold the old data, for instance UXBACKUP. Its size will be about the same as the USERS tablespace, but make sure to add enough database files:

sqlplus sys/<password>@$RUEI_DB_TNSNAME as sysdba
SQL> create tablespace UXBACKUP datafile 'uxbackup01.dbf' size 5M reuse autoextend on default compress;
SQL> alter user RUEI_DB_USER quota unlimited on UXBACKUP;
SQL> alter tablespace UXBACKUP add datafile 'uxbackup02.dbf' size 5M reuse autoextend on;

2. Run the following step from the upgrade script after logging in as root:

cd /root/RUEI/extra
./ruei-upgrade-12.1.0.6.sh backup_data_cubes UXBACKUP

3.11.4.2 Converting Data

Note that data for applications that are no longer configured will not be converted. In order to retain this data, add it back in the Configuration > Applications/Services screen with the exact same name before running the conversion.

Run the following step from the upgrade script after logging in as root:

cd /root/RUEI/extra
./ruei-upgrade-12.1.0.6.sh convert_data_cubes

Note that depending on the amount of data in the system, this might take a long time to complete.

3.11.4.3 Deleting the Original Data

The original data cubes will be preserved as a backup in case a problem occurs during the upgrade. Once you are satisfied with the data upgrade, you can remove them permanently by logging in as root and executing the following:

cd /root/RUEI/extra
./ruei-upgrade-12.1.0.6.sh delete_old_data

This will permanently delete all pre-RUEI 12.1.0.4 data cubes.

To remove the data from the disk, enter the following commands as the RUEI_USER user:

sqlplus sys/<password>@$RUEI_DB_TNSNAME as sysdba
SQL> drop tablespace UXBACKUP INCLUDING CONTENTS AND DATAFILES;
SQL> drop tablespace UXTEMP INCLUDING CONTENTS AND DATAFILES;

3.12 Rolling Back to Version 12.1.0.4 or 12.1.0.5

This section describes the procedure to rollback to version 12.1.0.4 or 12.1.0.5 after upgrading to version 12.1.0.6. Note that the Collector included in the Reporter installation is automatically rolled back during the described procedure. However, remote Collector systems must be individually rolled back. The procedure to do this is described later in this section.

Important:
Be aware that it may not be possible to restore your system to its exact state prior to upgrading. It is strongly recommended that you contact Customer Support before rolling back an upgrade. For instructions on how to restore your database, refer to the Oracle Enterprise Manager Cloud Control Administrator's Guide.

Note that in the following instructions, it is assumed that the old version (12.1.0.4 or 12.1.0.5) distribution set is extracted to /root/old, and the 12.1.0.6 distribution set is extracted to /root.

1. Login to the Reporter system as root. Within the /root/old directory, unzip the RUEI 12.1.0.4 or 12.1.0.5 distribution zip file, and go to the directory containing the application files. Use the following commands:

mkdir /root/old
cd /root/old
unzip <path to distribution set>/Vxxx.zip

2. Stop all processing by issuing the following commands:

cd /root/RUEI/extra
./ruei-upgrade-12.1.0.6.sh stop_ruei

3. As the root user, remove the following lines from the .bash_profile file of the RUEI_USER user (RUEI_DATA/.bash_profile):

source /etc/ruei.conf
source $RUEI_HOME/bin/env.sh

4. Remove the 12.1.0.6 RPMs by issuing the following commands as root:

L=$(rpm -qa | grep ^ux-)
rpm -e $L

5. Restore the previous RPMs by issuing the following commands:

cd /root/old/RUEI/121
chmod +x ruei-install.sh
./ruei-install.sh reporter

6. Stop all processing by issuing the following commands:

cd /root/RUEI/extra
./ruei-upgrade-12.1.0.6.sh stop_ruei

7. Restore the database backup you created during the upgrade

8. Rollback all required remote Collectors (using the procedure described in Section 3.12.1, "Rolling Back Remote Collector Systems"). If your installation does not make use of a remote Collector, proceed directly to step 9.

9. Rollback all required Processing Engine systems (using the procedure described in Section 3.12.2, "Rolling Back Processing Engine Systems"). If your installation does not make use of a Processing Engine, proceed directly to step 10.

10. Ensure that the backup you created prior to upgrading (by selecting System, then Maintenance, then Backup and restore, and then select Backup system to file) is available to the Reporter system by coping it, for instance, to the /tmp directory. Then issue the following command as the root user to make the backup file readable to the RUEI_USER user:

chmod 644 /tmp/backup_file_name.tar.gz

11. Restore the backup file by issuing the following command as the RUEI_USER user:

project -restore --collectors /tmp/backup_file_name.tar.gz

3.12.1 Rolling Back Remote Collector Systems

Do the following:

1. Login to the remote Collector system as root. Within the /root/old directory, unzip the 12.1.0.4 or 12.1.0.5 distribution zip file, and go to the directory containing the application files. Issue the following commands:

mkdir /root/old
cd /root/old
unzip <path to distribution file>/Vxxx.zip

2. Restore the previous RPMs by issuing the following commands:

cd /root/old/RUEI/121
chmod +x ruei-install.sh
./ruei-install.sh ux-collector-*.rpm

3.12.2 Rolling Back Processing Engine Systems

Do the following:

1. Login to the remote Processing Engine system as root. Within the /root/old directory, unzip the 12.1.0.4 or 12.1.0.5 distribution zip file, and go to the directory containing the application files. Issue the following commands:

mkdir /root/old
cd /root/old
unzip <path to distribution file>/Vxxx.zip

2. Restore the processor database backup you created during the upgrade.

3. Remove the 12.1.0.6 RPMs by issuing the following commands as root:

L=$(rpm -qa | grep ^ux-)
rpm -e $L

3.13 Changes to KPIs with Release 12.1.0.6

This section outlines changes to performance management with this release.

3.13.1 KPI Threshold Profiles

RUEI 12.1.0.6 introduces a new feature, the ability to create and edit KPI treshold profiles and associate those profiles with KPIs. This is described in the Controlling the Reporting of Monitored Traffic chapter of the RUEI User's Guide. In previous releases KPI automatic (or auto-learnt) targets were evaluated over a period of 30 days, and a sampling window of 180 minutes. After upgrading, all KPIs are associated with a system default profile which is set to these values. You can edit this default profile or create a new profile and associate KPIs with different settings.

3.13.2 KPIs based on the User Flow Success Ratio metric

The User Flow Success Ratio (txn-success-ratio) KPI metric was deprecated with the release of RUEI 12.1.0.3, however it was available up to this release. With Release 12.1.0.6, this KPI metric is no longer available. If you are upgrading to 12.1.0.6 and you use this metric, note the following:

- Any KPIs based on this metric will be deleted.

- Historic data for KPIs based on this metric is not removed and can still be viewed.

- During the upgrade process a message similar to the following is displayed:

warning - Found unsupported KPI "My Category > My User Flow Success Ratio"
with metric "txn-success-ratio"
warning - This KPI cannot be converted and will be deleted

Footnote Legend

Footnote 1: This line requires customization based on your database version and installation path.
Footnote 2: This line requires customization based on your database version and installation path.
Footnote 3: This line requires customization based on your database version and installation path.

4 Deploying the ADF Monitoring Service

This chapter describes the procedure for deploying and configuring the ADF Monitoring Service.

Using the ADF Monitoring Service is optional, the ADF Monitoring Service allows diagnostics information to be collected from tiers not reachable with Network Protocol Analysis (NPA). This information can be consolidated with other ADF information and used to identify causes of End User Experience problems. The resulting information is available in RUEI Reporting, Data Browser and Session Diagnostics.

4.1 Create a RUEI System User

To communicate with RUEI, the ADF Monitoring Service requires a RUEI user with the ADF Monitoring Service permissions. This permission is only available to a RUEI system account. See the Managing Users and Permissions chapter of the User's Guide for information on creating this account and setting the permission.

4.2 Deploy the ADF Monitoring Service Software

To deploy the ADF Monitoring Service into the WebLogic Server environment:

1. Copy the RueiEUMService.war file from the /root/RUEI/121/extra directory of the RUEI distribution zip file to a location accessible to the WebLogic server.

2. Log into the WebLogic Server Administration Console and navigate to the Deployments screen, then click Install to deploy the war file. Install as a library and not as an application.

An alternative to step 2 above is to deploy using the command line:

1. Set the environment variables:

setenv BEA_HOME=Weblogic_home_dir
setenv PATH=JDK_dir/bin:$PATH
setenv DOMAIN_HOME=${BEA_HOME}/user_projects/domains/domain_name
export WARFILE=$DOMAIN_HOME/servers/AdminServer/upload/RueiEUMService.war

where

- Weblogic_home_dir is the location where WebLogic was installed

- JDK_dir is the location where JDK is installed

- domain_name is the name of the WebLogic domain

2. Change directory to the location you used in step one and enter the following commands (enter password when prompted):

. $BEA_HOME/wlserver_10.3/server/bin/setWLSEnv.sh
cp RueiEUMService.war $DOMAIN_HOME/servers/AdminServer/upload/
java weblogic.Deployer -adminurl adminurl -username username -deploy -source $WARFILE -targets wlservername -stage -library

where:

- adminurl is the URL for the WebLogic Administration console

- username is the admin username

- wlservername is the name of the WebLogic Server

4.3 Configure the ADF Application

To configure the ADF application for use with the ADF Monitoring Service you must redeploy it with a custom deployment plan.

4.3.1 Generate a Default Deployment Descriptor

To generate a standard deployment descriptor of an ADF application's EAR, you can use either the web console or the commands below:

1. Set the environment variables:

setenv BEA_HOME=Weblogic_home_dir
setenv PATH=JDK_dir/bin:$PATH

where

- Weblogic_home_dir is the location where WebLogic was installed

- JDK_dir is the location where JDK is installed

2. Enter the following commands:

. $BEA_HOME/wlserver_10.3/server/bin/setWLSEnv.sh
setenv PLANFILE=path_of_app/Appname/deploy/stdplan.xml
setenv EARFILE=path_of_app/Appname/deploy/application_file
java weblogic.PlanGenerator -all -plan $PLANFILE $EARFILE

where:

- path_of_app is the full directory location to the ADF application

- Appname is the name of the ADF application

- application_file is the name of either your application ear or war file

4.3.2 Modify the Deployment Descriptor

Modify the deployment descriptor files as follows:

1. Replace the <variable-definition> section of the stdplan.xml file with the following:

<!-- variables for RUEI eum -->
<variable>
<name>oracle.adf.view.faces.context.ENABLE_ADF_EXECUTION_CONTEXT_
PROVIDER</name>
<value>true</value>
</variable>
<variable>

<name>oracle.sysman.apm.ruei.monitoring.RueiEndUserMonitoringService.rueiUrl</name>
<value>http(s)://app_host:port/ruei/receive.php</value>
</variable>
<variable>
<name>LibraryRef_RueiEUMLibrary</name>
<value>RueiEUMLibrary</value>
</variable>
<!-- variables for RUEI eum -->

where:

- app_host is the hostname for the ADF application

- port is the port for the ADF application

2. Replace the <module-override> section of the WebLogic.xml file with the following:

<!-- RUEI library -->
<variable-assignment>
<name>LibraryRef_RueiEUMLibrary</name>

<xpath>/weblogic-web-app/library-ref/[context-root="null",library-name="RueiEndUserMonitoringService"]/library-name</xpath>
</variable-assignment>
<!-- RUEI library -->

3. Replace the <module-override> section of the web.xml file with the following:

<!-- set RUEI eum variables -->
<variable-assignment>
<name>oracle.adf.view.faces.context.ENABLE_ADF_EXECUTION_CONTEXT_PROVIDER</name>
<xpath>/web-app/context-param/[param-name="oracle.adf.view.faces.context.ENABLE_ADF_EXECUTION_CONTEXT_PROVIDER"]/param-value</xpath>
</variable-assignment>
<variable-assignment>
<name>oracle.sysman.apm.ruei.monitoring.RueiEndUserMonitoringService.bufferSize</name>
<xpath>/web-app/context-param/[param-name="oracle.sysman.apm.ruei.monitoring.RueiEndUserMonitoringService.bufferSize"]/param-value</xpath>
</variable-assignment>
<variable-assignment>
<name>oracle.sysman.apm.ruei.monitoring.RueiEndUserMonitoringService.flushTime</name>
<xpath>/web-app/context-param/[param-name="oracle.sysman.apm.ruei.monitoring.RueiEndUserMonitoringService.flushTime"]/param-value</xpath>
</variable-assignment>
<variable-assignment>
<name>oracle.sysman.apm.ruei.monitoring.RueiEndUserMonitoringService.rueiUrl</name>
<xpath>/web-app/context-param/[param-name="oracle.sysman.apm.ruei.monitoring.RueiEndUserMonitoringService.rueiUrl"]/param-value</xpath>
</variable-assignment>

<!-- set RUEI eum variables -->

Note:
If any of the variables above already exist in the ADF application you can use <operation>replace</operation> to replace those variables with new values.

4.3.3 Create a Wallet

In Section 4.1, "Create a RUEI System User", you created the user credentials for the ADF Monitoring Service. To create a wallet to store these credentials:

1. Set the environment variables:

setenv BEA_HOME=Weblogic_home_dir
setenv PATH=JDK_dir/bin:$PATH

where

- Weblogic_home_dir is the location where WebLogic was installed

- JDK_dir is the location where JDK is installed

2. Start the WebLogic Server console:

. $BEA_HOME/wlserver_10.3/server/bin/setWLSEnv.sh
$BEA_HOME/oracle_common/common/bin/wlst.sh

3. Enter the following WebLogic Server console command:

connect()

When prompted, enter the WebLogic administrator username and password. When prompted for the URL, enter t3://admin_host:admin_port where

- admin_host is the WebLogic hostname

- admin_password is the WebLogic port

4. Enter the following WebLogic Server console commands ( enter password when prompted):

map = "ruei_adf_monitoring_agent"
key = "receiver"
desc = "RUEI Receiver"

createCred(map=map, key=key, user="user", password="password", desc=desc)

where:

- user is the username you created in Section 4.1, "Create a RUEI System User"

- password is the password of the RUEI system user

5. To ensure the user was created, enter the following WebLogic Server console:

listCred(map=map, key=key)

6. If the user is listed, enter the following WebLogic Server console to disconnect:

disconnect()

7. Exit the WebLogic Console using Ctrl-D.

8. Edit the user_projects/domains/domain_name/config/fmwconfig/system-jazn-data.xml file so that it includes:

<grant>
<grantee>
<codesource>
<url>file:${domain.home}/servers/${weblogic.Name}/tmp/_WL_user/RueiEndUserMonitoringService/-</url>
</codesource>
</grantee>
<permissions>
<permission>

<class>oracle.security.jps.service.credstore.CredentialAccessPermission</class>
<name>context=SYSTEM,mapName=ruei_adf_monitoring_agent,keyName=receiver</name>
<actions>read</actions>
</permission>
</permissions>
</grant>

where

- domain_name is the name of the WebLogic domain

4.3.4 Redeploy the ADF Application with the Modified Deployment Descriptor

To redeploy the ADF application, either use the WebLogic Server administration console (Deployments > Update) or use the procedure below.

1. Set the environment variables:

setenv BEA_HOME=Weblogic_home_dir
setenv PATH=JDK_dir/bin:$PATH
. $BEA_HOME/wlserver_10.3/server/bin/setWLSEnv.sh
setenv PLANFILE=deployment_path/stdplan.xml
setenv EARFILE=path_to_YourApplicationFile

where:

- Weblogic_home_dir is the location where WebLogic was installed

- JDK_dir is the location where JDK is installed

- deployment_path is the location of the ADF deployment

- path_to_YourApplicationFile is the location of the ADF ear or war file

2. Enter the following commands (enter password when prompted):

java weblogic.Deployer -adminurl adminurl -username username -deploy -name app_name -source $EARFILE -targets target_server -stage -plan $PLANFILE

where:

- adminurl is the URL for the WebLogic Administration console

- username is the admin username

- app_name is the application deployment name

- target_server is the name of the target WebLogic Server

4.4 Troubleshooting the ADF Monitoring Service

Use the following procedure to troubleshoot the ADF Monitoring Service:

1. Log into your ADF application and interact with it to provoke an HTTP request (The ADF Monitoring Service is only initialized after the first HTTP request).

2. Use a HTTP tool, such as the HTTPHeaders Firefox extension, to make sure that the POST headers include the string oracle.adf.view.rich.monitoring.UserActivityInfo. For example:

...&org.apache.myfaces.trinidad.faces.FORM=f1...&oracle.adf.view.rich.monitoring.UserActivityInfo=%3Cm+xmlns%3D%22http%3A%2F%2Foracle.com...

If the header does not include the text, check the web.xml file and the ADF version used.

3. Check the server logs for library registration log. For example, search the Oracle_Home/Middleware_11.1.2.3.0/user_projects/domains/domain_name/servers/AdminServer/logs/AdminServer.log file for an entry similar to the following:

Registered library Extension-Name: RueiEndUserMonitoringService

If the log files do not contain an entry similar to the above, make sure the library (RueiEUMService.war) is deployed correctly as described in Section 4.2, "Deploy the ADF Monitoring Service Software".

4. Check the server-diagnostics.log file for oracle.sysman.apm.ruei entries. For example, the following log entries in AdminServer-diagnostics.log indicate normal operation:

.[NOTIFICATION] ... Starting RUEI End User Monitoring Service
...[NOTIFICATION] ... Succesfully retrieved information for user eud from the wallet
...[NOTIFICATION] ... Using Basic Authentication
...[NOTIFICATION] ... Set RUEI receiver URL to http://<your ruei host:port>/ruei/receive.php
...[NOTIFICATION] ... RUEI End User Monitoring Service running
...[TRACE]...[SRC_METHOD: logUserActivity] Received useractivity to ruei ecid= 649d46b0ef2a475a:d6e5334:14077999955:-8000-0000000000000259:_adfStreaming
...[TRACE]...[SRC_METHOD: logUserActivity] Received useractivity with requestobject to ruei ecid=weblogic.servlet.internal.RequestEventsFilter$EventsRequestWrapper
...[TRACE]...[SRC_METHOD: process] 9 items for http://<your ruei host:port>/ruei/receive.php
......

If you do not find appropriate log entries, repeat the procedures described in this chapter.

5 Installing and Configuring SSO Authentication Integration

This chapter describes the procedure for installing and configuring the Oracle HTTP server. This is an optional part of the RUEI installation process, and is only required if you intend to use the Oracle Single Sign-On (SSO) service to authenticate RUEI users. Note that the Oracle SSO service must be fully installed and configured before it can be used for RUEI user authentication.

The procedure to configure the Reporter system for Oracle SSO user authentication is described in the Oracle Real User Experience Insight User's Guide. Note that RUEI must be fully installed before it can be configured for Oracle SSO user authentication.

5.1 Turning off the Default Web Server

The Oracle SSO server uses its own web server in order to prevent conflicts with the currently installed web server. Therefore, the currently installed web server needs to be turned off by issuing the following commands:

/sbin/service httpd stop
/sbin/chkconfig --del httpd

Note:
It is recommended that you do not un-install the default Linux Apache web server because this would also un-install the PHP module.

5.2 Reporter System Without Local Database

The procedure described in this section should only be followed if you are installing and configuring the oracle HTTP server for a Reporter that does not a local database. Otherwise, the procedure described in Section 5.3, "Reporter System With Local Database" should be followed.

5.2.1 Creating the Oracle User

This section is only relevant for RUEI installations configured to use a remote database. In this case, the oracle user does not yet exist, and so must be created by issuing the following commands:

/usr/sbin/groupadd oinstall oinstall
/usr/sbin/useradd -g oinstall oracle

5.2.2 Setting up the Oracle HTTP Server Environment

This section is only relevant for RUEI installations configured to a remote database. In this case, the following lines need to be added to the /etc/security/limits. conf file:

oracle soft nofile 16384
oracle hard nofile 65536

5.2.3 Creating the Installation Directory

Issue the following commands to create the Oracle HTTP server installation directory:

mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01/app/oracle

5.3 Reporter System With Local Database

The procedure described in this section should only be followed if you are installing and configuring the oracle HTTP server for a Reporter that is configured with a local database. Otherwise, the procedure described in Section 5.2, "Reporter System Without Local Database" should be followed.

Increase the number of open files limit. Edit the following line in the /etc/security/limits.conf file:

oracle soft nofile 16384

5.4 Installing Oracle HTTP Server

Do the following:

1. Login to the Reporter server as the oracle user, and unzip the Oracle HTTP server zip file. Ensure that your X Window environment is properly set up. In addition, when logging on remotely with SSH, ensure X forwarding is enabled. The installation of Oracle HTTP server needs to be performed as the oracle user (only certain parts of this chapter require root privileges). Issue the following commands:

unzip ofm_webtier_11.1.1.6.0_64_disk1_10f1.zip
cd webtier/Disk1
export ORACLE_BASE=/u01/app/oracle
./runInstaller

2. As the installation script runs, you should accept all default values, except for step 5. Here, you must uncheck the two check boxes Oracle Web Cache and Associate selected components with weblogic domain shown in Figure 5-1.

Figure 5-1 Configure Components Dialog

3. After exiting the installation script, set the following environment variables:

export ORACLE_HOME=$ORACLE_BASE/middleware/oracle_WT1
export ORACLE_INSTANCE=$ORACLE_HOME/instances/instance1

4. Stop the Oracle HTTP server and Oracle Process Manager Notification (OPMN) using the following command:

$ORACLE_INSTANCE/bin/opmnctl stopall

5. Edit the $ORACLE_INSTANCE/config/OPMN/opmn/opmn.xml file to use the httpd.prefork in order so that the PHP module can be loaded. Ensure that the following variables are set in the /etc/ruei.conf configuration file:

<environment>
<variable id="TEMP" value="/tmp"/>
<variable id="TMP" value="/tmp"/>
<variable id="OHSMPM" value="prefork"/>
<variable id="TNS_ADMIN" value="/var/opt/ruei"/>
<variable id="RUEI_DB_TNSNAME" value="uxinsight"/>
<variable id="RUEI_DB_USER" value="uxinsight"/>
<variable id="RUEI_HOME" value="/opt/ruei"/>
<variable id="RUEI_DATA" value="/var/opt/ruei"/>
<variable id="JAVA_HOME" value="/usr/java/jre"/>
</environment>

6. Logon as the root user, and change the permissions for the .apachectl file so that the Oracle HTTP server can run as the Apache user. Issue the following commands:

chown root $ORACLE_HOME/ohs/bin/.apachectl
chmod 6750 $ORACLE_HOME/ohs/bin/.apachectl

7. Add apache to the oinstall group using the following command:

usermod -aG oinstall apache

8. Logon as the oracle user and edit the
$ORACLE_INSTANCE/config/OHS/ohs1/httpd.conf file for the Oracle HTTP server to run as the Apache user. Edit the following lines:

User apache
Group apache

9. Create the $ORACLE_INSTANCE/config/OHS/ohs1/moduleconf/php5.conf file, and edit it to contain the following:

LoadModule php5_module "/usr/lib64/httpd/modules/libphp5.so"
AddHandler php5-script php
AddType    text/html   php

10. Copy the /etc/httpd/conf.d/uxinsight.conf file, and make it available to the Oracle HTTP server using the following command:

cp /etc/httpd/conf.d/uxinsight.conf $ORACLE_INSTANCE/config/OHS/ohs1/moduleconf

11. Start Oracle Process Manager Notification (OPMN) and the Oracle HTTP server using the following command:

$ORACLE_INSTANCE/bin/opmnctl startall

12. Stop the HTTP server using the following command:

$ORACLE_INSTANCE/bin/opmnctl stopproc ias-component=ohs1

13. In order to have RUEI running on the default HTTPS port, edit the $ORACLE_INSTANCE/config/OHS/ohs1/ssl.conf file, and change the line with the Listen directive to the following:

Listen 443

In addition, edit the VirtualHost definition as follows:

<VirtualHost *:443>

14. Comment out the LoadModule settings in the config/OHS/ohs1/moduleconf/plsql.conf and config/OHS/ohs1/mod_wl_ohs.conf files.

15. Create the $ORACLE_INSTANCE/config/OHS/ohs1/moduleconf/mod_osso.conf file:

LoadModule osso_module "${ORACLE_HOME}/ohs/modules/mod_osso.so"

<IfModule osso_module>
OssoConfigFile /u01/app/oracle/product/11.1.1/as_1/instances/instance1/config/OHS/ohs1/osso.conf
OssoIpCheck off
OssoIdleTimeout off
</IfModule>

16. Copy the osso.conf file that you received after registering RUEI with the Oracle SSO server to the $ORACLE_INSTANCE/config/OHS/ohs1 directory. This is described in Section 5.5, "Registering RUEI with the Oracle SSO Server".

17. Start the Oracle HTTP server using the following command:

$ORACLE_INSTANCE/bin/opmnctl startproc ias-component=ohs1

5.5 Registering RUEI with the Oracle SSO Server

In order to create the required osso.conf file, you need to register RUEI with the Oracle SSO server. The procedure to do this differs depending on whether you are using Oracle SSO version 10.1.4 or 11.1, and is described in the following sections.

5.5.1 Registering with Oracle SSO Version 10.1.4

Use the 10.1.4 Oracle Identity Manager registration tool ssoreg.sh to update the registration record in the osso.conf file. Do the following:

1. Go to the Oracle Identity Manager directory:

ORACLE_HOME/sso/bin/ssoreg

2. Run the ssoreg.sh tool with the following parameters and values:

./ssoreg.sh -site_name hostname:4443 \
-config_mod_osso TRUE \
-mod_osso_url hostname:4443 \
-config_file location

where:

- hosthame specifies the full URL of the RUEI Reporter system (for example, https://ruei.us.myshop.com).

- location specifies the location to which the osso.conf file will be written (for example, tmp/osso.conf).

3. Copy the created osso.conf file to the $ORACLE_INSTANCE/config/OHS/ohs1 directory on the RUEI Reporter system.

Further information is available at the following location:

http://docs.oracle.com/cd/E14571_01/core.1111/e10043/osso.htm#autoId89

5.5.2 Registering with Oracle SSO Version 11.1

To register RUEI as a partner application within Oracle SSO version 11.1, do the following:

1. Within Oracle Access Manager console, click the Policy Configuration tab. The screen shown in Figure 5-2 appears.

Figure 5-2 OAM Policy Configuration Screen.

2. Click the New OSSO Agent item. The screen shown in Figure 5-3 appears.

Figure 5-3 Create OSSO Agent Screen

3. Specify the required parameters. When ready, click Apply. The screen shown in Figure 5-4 appears.

Figure 5-4 OSSO Agent Creation Confirmation.

4. Copy the osso.conf file from the indicated location to the $ORACLE_INSTANCE/config/OHS/ohs1 directory on the RUEI Reporter system.

Further information is available from the following location:

http://docs.oracle.com/cd/E23943_01/doc.1111/e15478/agents.htm#BABGIDAB

5.6 Verifying the Oracle HTTP Server Configuration

You can test the Oracle HTTP server for integration with RUEI by directing your browser to https://Reporter/ruei. When you select System, then User management, the Configure SSO connection option should be enabled.

For information about enabling Oracle SSO user authentication within RUEI, see the Oracle Real User Experience Insight User's Guide.

6 Configuring RUEI

This chapter describes the procedure for initially configuring RUEI. This task is performed by the individual within your organization who has been assigned the role of RUEI Super Administrator (this is, the admin user). For more information about roles, see the Oracle Real User Experience User's Guide.

Important

It is strongly recommended that a network engineer within your organization validates collected network traffic after configuring RUEI. The procedure to do this is described in Appendix F, "Verifying Monitored Network Traffic".

6.1 Introduction

In order to get RUEI up and running, you will need to have prepared the server systems for RUEI, and installed the RUEI software. This is described in Chapter 2, "Installing the RUEI Software". After that, you are required to specify the installation type and mail setup (described in Section 6.2, "Performing Initial RUEI Configuration"), and then perform some post-installation configuration (described in Section 6.4, "Performing Post-Installation Configuration"). This is necessary in order to start reporting. It includes deciding how pages and users will be identified, and specifying the scope of monitoring in your network environment. Finally, you will need to define the system's initial users, as described in Section 6.4.6, "Authorizing Initial Users". Note that if you are installing a split-server configuration, you will need to configure each Collector system. This is described in Section 6.3, "Configuring Collector Systems".

Important

The configuration of RUEI should be discussed with someone with a detailed knowledge of your organization's network topology.

6.2 Performing Initial RUEI Configuration

In order for RUEI to start data monitoring and reporting, it must be configured with some information about your network infrastructure. Once completed, user traffic reporting is available. Note that this initial configuration can be changed later, as necessary. It is only intended to provide RUEI with sufficient information to start real-user monitoring and reporting.

To perform the initial RUEI configuration, do the following:

1. Start the Initial setup wizard by pointing your browser at the following URL: https://Reporter/ruei.
where Reporter specifies the host name or IP address of your RUEI installation. The dialog shown in Figure 6-1 appears.

Figure 6-1 Logon Dialog

2. Specify the admin user, and the password defined with the set-admin-password script (defined in Section 2.7.6, "Installation of the Reporter Software"). When ready, click Login. The dialog shown in Figure 6-2 appears.

Figure 6-2 Initial Setup Wizard

Note that the first time a user logs on, they receive a warning that the web server was unable to verify the identify of the site's certificate. Depending on your security policies, you can either choose to accept this certificate permanently, temporarily for this session, or reject the certificate. Alternatively, you can purchase a certificate from a Certificate Authority (CA). You can also create an SSL certificate. More information is available at the following location:

http://httpd.apache.org/docs/2.2/ssl/ssl_faq.html#realcert

3. Click Next to proceed with configuration. The dialog shown in Figure 6-3 appears.

Figure 6-3 Mail Setup Dialog

4. Specify the requested information as explained in Table 6-1.

Table 6-1 E-mail Setup Fields

Field

Description

Return address

Specifies the e-mail address to which failed or problem e-mails are reported. It is strongly recommended that this an address that is regularly checked.

From address

Specifies the address the recipient sees in their mail client.

Reply-to address

Specifies the address that users can click within an e-mail to reply to an e-mail. If this is not specified, the From address setting is used.

Mail size limit

Specifies the maximum message size (in kilobytes) allowed for e-mails. Note that if an e-mail contains reports that exceed this limit, the system will try to split up the reports into individuals e-mails to overcome this limitation. Reports that are too large to be sent individually are not sent, and the user is informed of the problem. The default mail size limit is 5000 Kb.

Reporter URL

Specifies the exact URL required for e-mail recipients to connect to the Reporter system. Typically, this is the same URL used by RUEI users to access the Reporter system.

The e-mail information is used to configure RUEI's interface to your internal network, and will be used for reporting problems. When you have entered the required information, click Next. The dialog shown in Figure 6-4 appears.

Figure 6-4 Settings Overview Dialog

5. Check that the information specified in the settings overview is correct. You can use Back and Next to move between dialogs as necessary. When ready, click Next. The dialog shown in Figure 6-5 appears.

Figure 6-5 Applying Settings Dialog

6. This dialog indicates how far the system has got in applying your specified settings. Typically, this process takes a maximum of 15 minutes. When finished, click Finish to close the dialog.

6.3 Configuring Collector Systems

To register Collectors to a Reporter system, do the following:

1. Install the Collector software on the required systems. This is described in Chapter 2, "Installing the RUEI Software".

2. Register the Collector systems with the Reporter. The procedure to do this is described in the Oracle Real User Experience Insight User's Guide.

6.3.1 Resetting Collector Systems

If for any reason you need to register a Collector system with a different Reporter system than earlier configured, do the following:

1. Logon to the Collector system as the moniforce user, and remove the Collector's currently defined Reporter assignment by issuing the following commands:

su - moniforce
appsensor delete wg

2. Follow the procedure described in the Oracle Real User Experience Insight User's Guide to register the Collector with the required Reporter.

6.4 Performing Post-Installation Configuration

In order to start reporting, the RUEI needs certain information about the monitored network environment. It is important to understand that RUEI is designed to work within a wide range of network environments. Therefore, the configuration choices you make will affect the accuracy and usability of the reported data. It is strongly recommended that you carefully review the settings described in this section.

6.4.1 Specifying the Cookie Technology

Within RUEI, session information is based on cookies. Therefore, RUEI needs to know and understand the cookie technology (or technologies) your organization is using. The procedure to configure this, together with the structure of supported cookie technologies, is described in the Oracle Real User Experience Insight User's Guide.

If cookie information is not available, user tracking is based on visitor IP address. This can lead to unreliable session information. For example, in the case of users behind a proxy server, all users coming from that network would be identified as the same user.

6.4.2 Adding/Uploading HTTPS SSL Keys

Uploading SSL keys to the system is extremely important if most of your HTTP traffic is based on SSL sessions. Without the SSL keys being available to the system, the Collector will not be able to decrypt the SSL session traffic. In these circumstances, further configuration of cookies, user identification, and application pages would make little sense. Ensure that you upload and activate your HTTPS SSL keys as early on as possible in the configuration process. The management of SSL keys is fully described in the Oracle Real User Experience Insight User's Guide.

6.4.3 Specifying How Users are Identified

Within RUEI, user identification is first based on the HTTP Authorization field. After that, it is derived from the supplied GET/POST argument within URLs. Therefore, if you are using arguments within URLs, the item within these used for user identification must be specified in order to provide reliable results. This is fully described in the Oracle Real User Experience Insight User's Guide.

6.4.4 Defining Applications and Page Identification

Page identification within RUEI is based on defined applications. Essentially, an application is a collection of web pages. This is because pages on a website are typically bound to a particular application. For each page that the system detects, it uses the available application definitions to assign a name to it. Note that information about any pages that could not be identified using these definitions is discarded, and, therefore, not available through reports and the data browser. This is fully described in the Oracle Real User Experience User's Guide.

Suites

In addition to generic applications, dedicated support is available for the monitoring of certain Oracle Enterprise architectures (such as Oracle E-Business suite, Siebel, and WebLogic Portal). If you are using any of the currently supported architectures within your monitored environment, it is strongly recommended that you make use of this facility. It not only saves you time in defining your applications, and makes applications within suites more compatible, but also ensures that these architectures are monitored correctly.

6.4.5 Specifying the Scope of Monitoring

Within RUEI, you control the scope of traffic monitoring by specifying which TCP ports the SYSTEM should monitor. Obviously, no information is available for non-monitored ports. In addition, you can restrict monitoring to specific servers and subnets. This is fully described in the Oracle Real User Experience Insight User's Guide.

6.4.6 Authorizing Initial Users

In order for users to start working with RUEI, you will need to authorize the required users. Only one user, admin, is available after installation. The procedure to set the initial admin user password is described in Section 2.7.6, "Installation of the Reporter Software". All other required users must be created and assigned the necessary roles and access permissions through the Reporter GUI. In particular, it is recommended that you create a dedicated Security Officer account to finalize the security-related configuration. User roles, and the creation and management of user accounts are described in the Oracle Real User Experience Insight User's Guide.

Note that user names and passwords are case sensitive. For ease of entry, it is recommended that you do not include any diacritic characters, such as umlauts, within passwords.

6.5 Verifying and Evaluating Your Configuration

To ensure the quality and quantity of data being collected and analyzed by your RUEI system, it is strongly advised that you verify the system's configuration using some core metrics. These are described in the following sections.

6.5.1 Viewing a Traffic Summary

You can open an overview of the monitored network traffic by selecting System, then Status, and then Data processing. This provides you with immediate information about hits, pages, and session processing, as well as the system load. An example is shown in Figure 6-6.

Figure 6-6 Data Processing Dialog

The precise number of percentage of identified sessions, page views, and hits relies heavily on your exact configuration. If you intend to measure all traffic, it is recommended that at least 80% of sessions, page views, and hits are reported as "identified". It is also recommended that you regularly review the reported numbers and percentages to ensure the quality and quantity of reported data.

Important:
After initial configuration of cookies, user identification, and application page structure, the system will take at least 5 - 10 minutes before the Sessions/Hits/Page views tabs are updated with green bars. If, after 20 - 30 minutes after initial configuration, there are no green bars showing on any of the tabs, please review your initial RUEI configuration. If the bars do not indicate any activity at all, please review your system's network card configuration as outlined in Section 1.7, "Server Requirements"

6.5.2 Confirming Data Collection

At this point, RUEI should be collecting data from each of its associated Collectors. You can easily check the status of these Collectors by selecting System, then Status, and then Collector status. This opens the Network data collectors window. This is fully described in the Oracle Real User Experience Insight User's Guide.

It is important to understand that the data being collected by Collector system(s) is offered to the RUEI data processing module for further analysis. If no data is collected, there is no means by which it can be processed.

7 Configuring the Oracle Access Manager

This chapter describes the procedure for configuring the Oracle Access Manager (OAM) for identifying user IDs within OAM-based traffic. The procedure described assumes that you already have a working OAM server. Note that the procedure may need to be modified to reflect the specific configuration of your OAM server.

Be aware that RUEI supports the measuring of traffic from OAM 10g version 10.1.4.x (or higher). OAM 11g is not suported.

7.1 Creating an OAM Access Gate for RUEI

Do the following:

1. Direct your web browser to The Oracle Access Manager server interface. If you are unsure of the required URL, you should contact the OAM system administrator. The page shown in Figure 7-1 appears.

Figure 7-1 OAM Server Interface

2. Click the Access System Console link. The page shown in Figure 7-2 appears.

Figure 7-2 OAM Access Administration

3. Click the Access System Configuration tab. The page shown in Figure 7-3 appears.

Figure 7-3 OAM Access System Configuration Page

4. Click the Add New Access Gate option on the left-hand side of the page. The page shown in Figure 7-4 appears.

Figure 7-4 Add New Access Gate Page

5. Provide the following information:

- Access Gate Name: specify a unique ID for the new Access Gate. For example, ruei.

- Hostname: specify the hostname of the RUEI Reporter system.

- Port: specify the port RUEI should monitor for OAM-based traffic. This should be port 443.

- Access Gate Password: specify the password that should be used to authorize the RUEI Reporter system to access the OAM server.

- Re-Type Access Gate Password: confirm the authorization password.

- Preferred HTTP Host: specify SERVER_NAME.

Note that the remaining fields can be left blank or with default values specified.

When ready, click Save.

6. Click the List Access Servers command button to connect the newly created Access Gate with the required Access Server. Select the required Access Server from the displayed list and, when ready, click Add.
Note that if no Access Server is listed, Click Add and add the new access gate to the default Access Server.

7.1.1 Configuring the OAM_REMOTE_USER Header Variable

To configure the OAM_REMOTE_USER header variable, complete the following:

1. Click the Policy Manager link, as shown at the top of the screen in Figure 7-1, "OAM Server Interface".

2. From the Authorization Rules tab, click Time based access, then click Actions.

3. Under ”Authentication Success”, configure the following header variable:
Type=headervar, Name=OAM_REMOTE_USER, and Return Attribute=cn.

4. Click Save.

The following shows the Access Administration screen.

Figure 7-5 Access Administration

7.2 Downloading and Installing the Access Gate Software

Do the following:

1. Download and install the GCC libraries. These can be obtained from either your operating system vendor or http://gcc.gnu.org. Note that a description of the contents of the Oracle Access Manager 10.1.4 third-party integration disks is available at the following location:

http://www.oracle.com/technetwork/middleware/ias/downloads/10gr3-webgates-integrations-readme-154689.pdf

2. Download the 64-bit OAM Access Server SDK from the following location:

http://download.oracle.com/otn/linux/ias/101401/oam_int_linux_v7_cd3.zip

3. Extract, unzip, and copy the GCC libraries using the following commands:

cat as_linux_x86_gcc_runtime_lib_access_manager_101401.cpio | cpio -idmv
unzip Oracle_Access_Manager10_1_4_0_1_linux_GCClib.zip
cp lib* /usr/local/lib/

7.3 Configuring the Access Gate Software on the RUEI Server

Do the following:

1. Unzip the OAM Access Server SDK distribution set, and run the installer, by issuing the following commands:

unzip oam_int_linux_v7_cd3.zip
./Oracle_Access_Manager10_1_4_2_5_linux64_AccessServerSDK

By default, the OAM Access Server SDK is installed in the /opt/netpoint/AccessServerSDK/ directory.

Note:
The user specified while running the Access Gate SDK installation wizard should be the same as that specified for RUEI_USER in the ruei.conf configuration file (see Table 2-3).

2. Create a trust between RUEI and the Access Server by creating XML files using the configureAccessGate utility. Issue the following commands:

cd  /opt/netpoint/AccessServerSDK/oblix/tools/configureAccessGate
./configureAccessGate -i /opt/netpoint/AccessServerSDK/ -t AccessGate

3. As the utility runs, specify the following information based on the configuration of the Access Gate you created earlier:

Please enter the Mode in which you want the AccessGate to run : 1(Open)
2(Simple) 3(Cert) : 1

Please enter the AccessGate ID : short_name

Please enter the Password for this AccessGate :

Please enter the Access Server ID : accessSrv1

Please enter the Access Server Host Machine Name : fully_qualified_hostname

Please enter the Access Server Port : 6021

Preparing to connect to Access Server.  Please wait.

AccessGate installed Successfully.

Press enter key to continue ...

Where short_name specifies the Access Gate ID, and fully_qualified_hostname is the OAM Access Server system host name.

4. At this point, the RUEI Reporter system is connected to the OAM Access Server. Update the OBACCESS_INSTALL_DIR variable in the /etc/ruei.conf configuration file to reflect the installation path of the Access Server SDK. In the case of the default installation path, the required line would be as follows:

export OBACCESS_INSTALL_DIR=/opt/netpoint/AccessServerSDK/

5. Re-start RUEI processing by selecting System, then Maintenance, then System reset, and select the Restart system processing option. When ready, click Next. When prompted, confirm the restart.

7.4 Configuring the Required Session Traffic Definitions

In order to enable correct tracking of OAM-based sessions, you need to specify the following configuration information within RUEI:

1. Configure all required applications for user identification based on OAM. To do so, click the User ID tab within each required application overview, and then click Add new source. Within the Source type menu, select the "Oracle Access Manager" option. When ready, click Save.

2. Select Configuration, then Applications, and then Session tracking. Ensure that the "Oracle Access Manager" item is included in the list of cookie technologies configured for your RUEI installation. By default, this uses the cookie name ObSSOcookie.

Note:
In order for OAM-based traffic to be correctly reported, the masking of the OAM cookie must be configured as "Plain" within the Cookie masking facility (Select Configuration, then Security, then Masking, and then Cookie masking).

Note that until an OAM request has been processed by the RUEI system Access Gate, the following message is shown when requesting the Access Servers listing for your Access Gate:

Not Responding
AM service status mismatch

8 Installing Processing Engines

This chapter describes the prerequisites and procedure for installing Processing Engines. Note that the use of Processing Engines is only supported for remote Collectors. A combined installation of a Processing Engine and Collector on the same system is not supported.

8.1 Prerequisites

This section describes the steps that should be taken before starting to install the Processing Engine software. Ensure that the Reporter and remote Collector systems are up and running before proceeding with the installation process.

Important:
It may be necessary to increase the maximum number of processes available to the databases within your environment. The procedure to do this is described in Section G.16, "ORA-00020: maximum number of processes (%s) exceeded".

8.1.1 Planning the Software Installation Location

Depending on the installation location of the database and the RUEI software, the necessary disk space needs to be carefully planned. During operating system installation, you will need this information at hand for the disk partitioning phase.

Table 8-1 shows the disk space requirements for the RUEI installation components.

Table 8-1 Required Disk Space Specifications

Partition

Minimum Required Disk Space (GB)

Component

ORACLE_BASE (default /u01/app/oracle)Foot 1

300

Processing Engine Database

RUEI_HOME (default /opt/ruei)

1

Processing Engine

RUEI_DATA (default /var/opt/ruei/)

100

Processing Engine

Footnote 1 This is the example database location used throughout this guide.

Important:
The Processing Engine and database servers require high-performance data storage. RAID-10 or RAID-5 (or equivalent) storage configurations with high-performance disks are strongly recommended.

8.1.2 Operating System Security Configuration

When the system boots for the first time, a post-installation wizard appears, and allows you to finalize the operating system configuration settings. Ensure that:

1. The RUEI firewall rules shown in Table 1-8 are correctly configured.

2. Security Enhanced Linux (SELinux) is disabled. This is necessary for the correct operation of RUEI. Note that changing the SELinux setting requires rebooting the system so that the entire system can be relabeled.

3. For security reasons, it is strongly recommended that you check the Encrypt System check box during operating system installation so that all sensitive data is stored in a secure manner. A passphase is required during booting the system.

8.1.3 Verify NTP Daemon Operation

Ensure that the date and time settings are correctly specified. The use of NTP is strongly recommended, and is required in a split-server deployment. In addition, all time zones specified for Reporter, Collector, and Processing Engine systems must be identical.

Because the NTP daemon is a critical component of RUEI, especially in a split server configuration, it is recommended that you verify that it is activated in at least run level 5 during boot. Use the following commands:

/sbin/chkconfig --list | grep ntpd
ntpd     0:off   1:off   2:off   3:off   4:off   5:off   6:off
/sbin/chkconfig ntpd on
/sbin/chkconfig --list | grep ntpd
ntpd     0:off   1:off   2:on    3:on    4:on    5:on    6:off
/etc/init.d/ntpd start
Starting ntpd:                                     [  OK  ]

Note that if the NTP daemon is not already running, you can start it by issuing the following command:

/etc/init.d/ntpd restart

The following sample output shows when the NTP daemon is synchronized (indicated by an "*").

ntpq -pn
remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*194.171.167.130     .PPS.         1 u 994 1024 377     6.429   0.041   0.093
+80.85.129.25        130.235.20.3  3 u 725 1024 377     4.435   0.673   0.129
+82.94.235.106       135.81.191.59 2 u 678 1024 377     1.709   1.774   0.020
127.127.1.0         .LOCL.       10 l   8   64 377     0.000   0.000   0.001

Important:
In distributed environments, all time zones specified for Reporter, Collector, and Processing Engine systems must be identical.

8.1.4 Installing the RUEI Prerequisites

Note that the procedure described in this section is only required for a Processing Engine system. The required packages are available from the Oracle Linux or RedHat Enterprise Linux distribution sets.

RedHat Enterprise/Oracle Linux 5.x

Issue the following command to install all prerequisites for the Reporter:

rpm -Uhv lm_sensors-2.10.7-*.el5.x86_64.rpm \
net-snmp-5.3.2.2-*.el5.x86_64.rpm \
net-snmp-utils-5.3.2.2-*.el5.x86_64.rpm

RedHat Enterprise/Oracle Linux 6.x

Issue the following command to install all prerequisites for the Reporter:

rpm -Uhv lm_sensors-3.1.1-*.el6.x86_64.rpm \
net-snmp-5.5-*.el6.x86_64.rpm \
net-snmp-utils-5.5-*.el6.x86_64.rpm

Installing All Requirements Using a Yum Repository (Alternative)

As an alternative to manual installation, you can use a Yum repository to install the required RPMs. This requires a working Yum repository. Information about Yum repositories is available at the following location:

http://linux.duke.edu/projects/yum/

Install the necessary Reporter packages using the following command:

yum -y install net-snmp-utils

8.1.5 Oracle Database Software Installation

Download and install Oracle Database 11g Enterprise Edition from the Oracle database home page at the following location:

http://www.oracle.com/technology/software/products/database/index.html

The procedure for installing the Oracle database is fully described in the product documentation. It is strongly recommended that you download and review the appropriate Oracle Database 11g Quick Installation Guide. It is available from the Oracle Database Documentation Library. A summary of this procedure is described in Appendix A, "Installing the Oracle Database Software". Note that the path, user, and group names used in this guide are based on the Oracle database product documentation.

8.2 The RUEI Configuration File

The /etc/ruei.conf file specifies the settings used within your installation. A template of this file is provided in the /root/RUEI/extra directory of the RUEI distribution zip. Note that all components in your RUEI environment (such as the remote database and Collectors) require the same global /etc/ruei.conf configuration file except the value specified for RUEI_DB_TNSNAME_CFG. If you intend to use different names for the configuration and statistics tablespaces make sure that the same tablespace names are used for all components in your RUEI environment.

Within the Processing Engine ruei.conf file, the following two settings must be carefully distinguished:

- RUEI_DB_TNSNAME_CFG must contain the alias to the Reporter database (in this guide referred to as config).

- RUEI_DB_TNSNAME must contain the alias to the Processing Engine database (in this guide referred to as uxinsight).

8.3 Processing Engine Installation

This section describes the procedure for installing the required components for a Processing Engine system. These include the Oracle database Instant Client.

8.3.1 Creating Groups and Users

Create the moniforce group and user. The home directory of moniforce should be set to /var/opt/ruei, with read permissions for group members. Issue the following commands:

/usr/sbin/groupadd moniforce
/usr/sbin/useradd moniforce -g moniforce -d /var/opt/ruei
chmod -R 750 /var/opt/ruei
chown -R moniforce:moniforce /var/opt/ruei

8.3.2 Installing the Oracle Database Instant Client

Install the Oracle database Instant Client and SQLplus extension by issuing the following commands as the root user:

cd /root/RUEI/IC
rpm -Uhv oracle-instantclient11.2-basic-*.rpm
rpm -Uhv oracle-instantclient11.2-sqlplus-*.rpm

8.3.3 Creating the Processing Engine Database Instance

The Processing Engine database can reside either locally (that is, on the Processing Engine server) or on a remote database server. In this section you will create the database instance required for the Processing Engine, and generate the "connection data" required for the Processing Engine to connect to its database instance and the central RUEI database instance. As an alternative for the database setup described in this chapter, you can follow the procedure described in Appendix B, "Generic Database Instance Setup".

Requirements

You will need the following scripts to be present on the system where the database instance (RUEI_DB_INST) will be created:

- ruei-prepare-db.sh: creates the database instance, Oracle wallet, and database connect files. Note that this script will only run on Linux. If you are installing the Oracle database on a different operating system, see Appendix B, "Generic Database Instance Setup" for more information.

- sql_scripts: this directory contains a number of SQL scripts that are called by the ruei-prepare-db.sh script.

- ruei-check.sh: this is a hardware and environment check utility, and is automatically invoked by ruei-prepare-db.sh. The script can also be used as a stand-alone troubleshooting utility. For a complete description of the script, refer to Appendix E, "The ruei-check.sh Script".

The four "connection data" files created during the procedure described in this section are as follows:

- cwallet.sso

- ewallet.p12

- sqlnet.ora

- tnsnames.ora

The RUEI configuration file (/etc/ruei.conf) also needs to be present on the database server and configured as described in Section 8.2, "The RUEI Configuration File".

Procedure

Do the following:

1. Copy the ruei-prepare-db.sh and ruei-check.sh scripts, and the sql_scripts directory to the server on which you intend to run the database instance, and make them executable for the oracle user. These scripts and directory can be found in the RUEI distribution zip (/root/RUEI/121).

2. Review the settings in the /etc/ruei.conf file to match your needs as described in Section 8.2, "The RUEI Configuration File". If you intend to use different names for the configuration and statistics tablespaces make sure that the same tablespace names are used for all components in your RUEI environment.

3. Logon to the database server as the oracle user, and set the ORACLE_HOME environment variable. You need to run the ruei-prepare-db.sh script as the oracle user. This script creates the RUEI_DB_INST database, but only after a number of hardware and software environment checks have been performed. The actual checks performed depend on the system type you are currently installing.
The script prompts you for the RUEI database user and wallet passwords, and the hostname of the database server. This enables the RUEI application to login to the database automatically. The script also prompts you for a default tablespace name to be used for this installation. Ensure that the default tablespace name is the same for all components in your RUEI environment, such as the remote database and Processors. The script also creates the "connection data" files.

Issue the following commands:

chmod +x ruei-prepare-db.sh ruei-check.sh
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1Foot 1

./ruei-prepare-db.sh create

If you run the ruei-prepare-db.sh script for a combined Processing Engine/Database server, all files are placed automatically in the correct locationFoot 2 . In case of a remote database, a separate .tar file is generated, and you will need to perform the extra step 4.

If you ran the above commands on a combined Processing Engine/Database server, you can skip step 4 and proceed to step 5.

4. This step only applies when using a remote Processing Engine database.
In the case of a Processing Engine system using a remote database, you will need to copy the generated /tmp/ruei-database-configuration.tar file in step 3 from the database server to the Processing Engine system. The /tmp/ruei-database-configuration.tar file must be extracted on the Processing Engine server in the directory /var/opt/ruei (RUEI_DATA). The permissions of the files need to be set so that the specified RUEI_USER (moniforce) can use them.

Copy the generated .tar file, which holds connection data files to the Processing Engine system. Logon to the Processing Engine server and extract the .tar file using the following commands:

cd /var/opt/ruei
tar xvf path-to-tar-file/ruei/database-configuration.tar
chown moniforce:moniforce cwallet.sso ewallet.p12 sqlnet.ora tnsnames.ora

5. Because logging of the database can consume a large amount of disk space, it is recommended that you install a clean-up script to avoid the usage of unnecessary disk space. Copy the (example) script to the oracle user directory and activate it via cron using the following commands:

mkdir -p /home/oracle/bin
cp /root/RUEI/extra/ruei-clean.sh /home/oracle/bin
chmod +x /home/oracle/bin/ruei-clean.sh
su - oracle -c 'echo "10 0 * * * /home/oracle/bin/ruei-clean.sh" | crontab'

8.3.4 Installation of the Processing Engine Software

1. The RUEI directory locations are flexible. Therefore, it is necessary to use the exact directory name described as configured in the /etc/ruei.conf file. Create the RUEI application root directory using the following commands:

mkdir -p /opt/ruei
chmod 750 /opt/ruei

Note:
The specified RUEI_HOME and RUEI_DATA directories must have 750 permissions defined for them.

2. Go to the directory that holds the RUEI software, and install the RUEI packages. You can specify reporter or collector to the ruei-install.sh script depending on the required installation:

cd /root/RUEI/121
chmod +x ruei-install.sh
./ruei-install.sh reporter

3. Verify that the RUEI software was correctly installed by issuing the following command:

./ruei-check.sh postinstall

8.4 Configuring Processing Engine Communication

Table 1-8 provides a complete description of all required connections. Figure 8-1 shows a summary of those relevant to Processing Engines.

Figure 8-1 Required Connections

Each Processing Engine requires two database connections: one to the Reporter database, and the other to its own database. In addition, a passwordless SSH connection is required to each Collector system (and any failover Collector systems if applicable).

The Reporter system requires a connection to the Reporter database, and each Processing Engine database. In addition, a connection is required to each Collector system.

8.4.1 Configuring the SSH Connections

A password-less SSH connection must be setup between the Moniforce user from the Reporter system to each Processing Engine, and from every Processing Engine to all Collector systems.

Configuring the Reporter-Processing Engine SSH Connection

1. Logon to the Reporter server as root. Issue the following commands:

su - moniforce
ssh-keygen -P ""

Press Enter to accept the defaults.

2. Logon as root to each of the Processing Engine systems and become the moniforce user by issuing the following command:

su - moniforce

3. Create the .ssh directory (if it does not already exist) for the moniforce user on each Processing Engine system by issuing the following commands:

mkdir ~/.ssh
chmod 700 ~/.ssh

4. Copy the SSH key from the Reporter system to the required location on the Processing Engine system by issuing the following commands:

cd ~/.ssh
ssh root@Reporter cat /var/opt/ruei/.ssh/id_rsa.pub >> authorized_keys

(you will need to specify the Reporter system root password)

chmod 600 authorized_keys

5. Check that it is now possible to execute a remote command (as moniforce user) on the Reporter system without using a password. For example:

- Logon as root on the Reporter server.

- Logon as moniforce user: su - moniforce.

- Execute a remote pwd command: ssh ProcessingEngine pwd.

- Enter yes to the question "Are you sure you want to continue connecting (yes/no)?".

- The command should return /var/opt/ruei.

6. Steps 1, 2, and 3 above must be performed for each Processing Engine system. Steps 4 and 5 must be performed for each Collector system.

Configuring the Processing Engine-Collector SSH Connection

1. Logon to the Processing Engine server as root. Issue the following commands:

su - moniforce
ssh-keygen -P ""

Press Enter to accept the defaults.

2. Logon as root to each of the Collector systems and become the moniforce user by issuing the following command:

su - moniforce

3. Create the .ssh directory (if it does not already exist) for the moniforce user on each Collector system by issuing the following commands:

mkdir ~/.ssh
chmod 700 ~/.ssh

4. Copy the SSH key from the Processing Engine system to the required location on the Collector system by issuing the following commands:

cd ~/.ssh
ssh root@ProcessingEngine cat /var/opt/ruei/.ssh/id_rsa.pub >> authorized_keys

(you will need to specify the Processing Engine system root password)

chmod 600 authorized_keys

5. Check that it is now possible to execute a remote command (as moniforce user) on the Processing Engine system without using a password. For example:

- Logon as root on the Processing Engine server.

- Logon as moniforce user: su - moniforce.

- Execute a remote pwd command: ssh Collector pwd.

- Enter yes to the question "Are you sure you want to continue connecting (yes/no)?".

- The command should return /var/opt/ruei.

6. The above steps must be performed for each Collector system!

8.4.2 Configuring the Database Link Connections

1. Create the database links for each required Processing Engine by logging onto the Reporter system as the moniforce user, and executing the following command:

make-dblink proc1.example.com

The script will show a summary of the database link properties, and prompt you for the Reporter database password, as shown below:

database link  : ux.proc1.example.com
hostname       : proc1.example.com
DB instance    : ux
DB server type : DEDICATED

Manual Creation of Database Links

As an alternative to the above, you can manually create the database links for each required Processing Engine by logging onto the Reporter system as the moniforce user, and executing the following commands:

SQL> create database link
ux.proc1.example.com
connect to
UXINSIGHT
identified by
"password"
using
'(DESCRIPTION =
(ADDRESS = (PROTOCOL = tcp)(HOST = proc1.example.com)(PORT = 1521))
(CONNECT_DATA =
(SID = UX)
)
)'
;

Note that you will need to modify the above example to meet your RUEI environment requirements.

8.5 Registering Processing Engines

Once installed and configured, each Processing Engine must be registered with the Reporter. This is fully described in the Oracle Real User Experience Insight User's Guide.

8.6 Configuring Multiple Processing Engines

When using more than two Processing Engines within your deployment, you need to modify the Collector /etc/ssh/sshd_config file. For each required Collector system, increase the MaxStartups setting from it default value of 10 to 100. When ready, restart each Collector system using the following command:

/etc/init.d/sshd restart

Footnote Legend

Footnote 1: This line requires customization based on your database version and installation path.
Footnote 2: If you do not know the root password, you can select the "remote database" option, and manually extract the connection tar file. This is described in step 4.

9 Configuring a Failover Reporter System

This chapter describes the procedure for configuring a failover Reporter system that will immediately take over processing of network traffic in the event that the primary Reporter system becomes unavailable. Note that the described procedure assumes that the primary Reporter system has been installed, configured, and is fully operational. Note that the installation procedure for a primary Reporter is identical to that of a standalone Reporter. The procedure to configure a failover Collector system is described in Chapter 10, "Configuring a Failover Collector System".

9.1 Introduction

The configuration of a secondary (or failover) Reporter system offers the advantage that it can seamlessly take over processing of monitored traffic in the event that the primary Reporter system becomes unavailable. In this way, a high level of operational reliability is achieved. The configuration of a failover Reporter system is shown in Figure 9-1.

Figure 9-1 Failover Reporter Configuration

At server level, a crossover cable connects the primary and secondary Reporter systems. As long as a regular "heartbeat" continues between the primary and secondary servers, the secondary server will not initiate processing of traffic. However, the secondary server will immediately take over the processing task of the primary server as soon as it detects an alteration in the "heartbeat" of the primary server. This process is referred to as failover.

Note that failback (that is, the process of restoring the RUEI installation to its original state), must be performed manually. The procedure is described in Section 9.5, "Initiating Reporter Failback".

Prerequisites

In order to configure a failover Reporter installation, the following conditions must be met:

- The primary and secondary Reporter systems must be directly connected via a crossover cable. In addition, both systems must also be connected to a local or public network to in order to connect to the remote Collector, Processing Engine, and database systems.

- The database and Collector instances used by the RUEI installation must both be remote.

- The primary and secondary Reporter systems must share the same storage (such as SAN or NFS). In particular, the RUEI_DATA/processor/data and RUEI_DATA/processor/data/sslkeys directories.

9.2 Preparing the Primary Reporter

Make the RUEI_DATA/processor/data and RUEI_DATA/processor/sslkeys directories available on a shared storage location.

1. Stop all processing on the primary Reporter system by issuing the following command as the RUEI_USER user:

project -stop

2. Mount the shared Reporter location on the primary Reporter system. To do so, edit the /etc/fstab file so that it is mounted at boot. For example:

10.6.5.9:/home/nfs /reporter_share nfs rsize=1024,wsize=1024  0 0

3. Move the existing data and sslkey directories to the shared Reporter location. For example:

mv RUEI_DATA/processor/data /reporter_share
mv RUEI_DATA/processor/sslkeys /reporter_share

where reporter_share specifies the shared location for data and SSL keys on the primary and secondary Reporter systems.

9.3 Installing the Secondary Reporter

The installation procedure for a secondary Reporter system is almost identical to that of a standalone Reporter system. Note that Initial Setup Wizard should not be run. Do the following:

1. When starting the installation procedure for the secondary Reporter system, ensure that the /etc/ruei.conf file is identical to that of the primary Reporter system.

2. Install the Linux operating system and RUEI Reporter software on the secondary Reporter system. The procedure to do this is described in Chapter 6, "Configuring RUEI". Specifically:

- Follow the instructions described in Chapter 2, "Installing the RUEI Software" up to and including Section 2.7.4, "Installing the Zend Decoder".

- Copy the following files from the RUEI_DATA directory on the primary Reporter system to the secondary Reporter system: cwallet.sso, ewallet.p12, sqlnet.ora, and tnsnames.ora. You should ensure that the ownerships and permissions of these files are identical on both Reporter systems.

- Follow the instructions described in steps 1-5 in Section 2.7.6, "Installation of the Reporter Software".

- Follow the instructions described in Section 2.8, "Configuring the Network Interface".

- If you performed the instructions described in Section 2.9, "Enabling International Fonts (Optional, but Recommended)" through Section 2.12, "Configuring Automatic Browser Redirection (Optional)" for the primary Reporter system, then you will need to repeat them for the secondary Reporter system.

9.4 Configuring Reporter Failover

Do the following:

1. If you have not already done so, login to the primary Reporter system as the RUEI_USER user, and issue the following command to stop all processing of monitored traffic:

project -stop

2. Copy the .ssh directory of the RUEI_USER user on the primary Reporter system, created while performing the procedure described in Section 2.13, "Configuring Reporter Communication (Split-Server Setup Only)", to the secondary Reporter system. Note that it must be copied to the same location.

3. Ensure that the uid and gid settings of the RUEI_USER user are the same on both the primary and secondary Reporter systems. For example:

id moniforce
uid=501(moniforce) gid=502(moniforce) groups=502(moniforce)

4. Configure the static IP addresses on both Reporter systems used for the crossover cable. This can be done using a utility such as system-config-network.

5. Edit the /etc/fstab file so the RUEI_DATA/processor/data and RUEI_DATA/processor/sslkeys directories are mounted at boot. For example:

10.6.5.9:/home/nfs /reporter_share nfs rsize=1024,wsize=1024  0 0

where reporter_share specifies the shared location for data and SSL keys on the primary and secondary Reporter systems.

6. Move the local data and sslkeys directories for the secondary Reporter system to the shared Reporter location by issuing the following commands:

rm -rf RUEI_DATA/processor/data
rm -rf RUEI_DATA/processor/sslkeys
ln -s /reporter_share/data RUEI_DATA/processor/data
ln -s /reporter_share/sslkeys RUEI_DATA/processor/sslkeys

7. Login to the secondary Reporter system as the RUEI_USER user, and issue the following command:

project -new -fromdb UX

This creates the secondary Reporter's on-disk configuration files using the primary Reporter's database configuration.

8. Edit the /etc/ruei.conf file on both the primary and secondary Reporters to specify the virtual, primary, and standby IP addresses. For example:

export RUEI_REP_FAILOVER_PRIMARY_IP=192.168.56.201
export RUEI_REP_FAILOVER_STANDBY_IP=192.168.56.202
export RUEI_REP_FAILOVER_VIRTUAL_IP=10.11.12.23
export RUEI_REP_FAILOVER_VIRTUAL_DEV=eth0
export RUEI_REP_FAILOVER_VIRTUAL_MASK=255.255.255.0

THE RUEI_REP_FAILOVER_PRIMARY_IP and RUEI_REP_FAILOVER_STANDBY_IP settings should specify the IP addresses of the crossover cable between the two Reporter systems. See Section 2.4.1, "The RUEI Configuration File" for an explanation of these settings. Note that the settings specified on both Reporter systems must be identical except for the RUEI_REP_FAILOVER_VIRTUAL_DEV setting.

9. Issue the following command to restart processing of monitored traffic on the primary Reporter system:

project -start

10. Install the ruei-reporter-failover.sh script on both Reporter systems. For example, in the /usr/local/sbin directory. It is located in the RUEI zip file (see Section 2.3, "Unpacking the RUEI Software").

11. Add the following entry to the root user's crontab file of both the primary and secondary Reporter systems:

* * * * * /usr/local/sbin/ruei-reporter-failover.sh

This causes the secondary Reporter to send a heartbeat signal to the primary Reporter every 60 seconds, and take over processing of RUEI monitored traffic in the event that the Primary Reporter becomes unavailable.

Wait at least 60 seconds.

12. Ensure that all user access to the Reporter GUI is via the specified virtual IP address. This is necessary to ensure automatic failover to the secondary Reporter system in the event that the primary Reporter system becomes unavailable.

13. Check the RUEI_DATA/processor/log/failover.log file on both Reporter systems. These files contain the results of the "ping" commands. Ensure that there are no error messages. For example, about unspecified failover configuration settings.

14. Check the output of the /sbin/ifconfig command on the primary Reporter to ensure that the virtual IP address has been correctly configured. For example:

/sbin/ifconfig
eth0      Link encap:Ethernet  HWaddr 08:00:27:F7:B0:14
inet addr:192.168.56.201  Bcast:192.168.56.255  Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fef7:b014/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:80 errors:0 dropped:0 overruns:0 frame:0
TX packets:311 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:12793 (12.4 KiB)  TX bytes:26268 (25.6 KiB)

eth0:0    Link encap:Ethernet  HWaddr 08:00:27:F7:B0:14
inet addr:10.11.12.23  Bcast:192.168.56.255  Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

15. Unregister all remote Collectors with the primary Reporter, and re-register them using the virtual IP address.

16. Shutdown the primary Reporter system, and verify that the secondary Reporter begins processing monitored traffic. A warning that the primary system is unreachable and that the secondary system is being activated is reported in the Event log. Note that after doing so, you must perform a failback to return your RUEI installation to its original state.

17. Update the Reporter URL (select System, then Maintenance, and then E-mail setup) with the virtual Reporter host name or IP address.

9.5 Initiating Reporter Failback

Failback to the primary Reporter system must be performed manually in order to return your RUEI installation to its original state. Do the following:

1. Load your global RUEI configuration settings on the secondary server using the following command as the root user:

. /etc/ruei.conf

2. Ensure that the heartbeat mechanism between the primary and secondary Reporter systems is functioning correctly. To do so, verify that they can 'ping' each other on the RUEI_REP_FAILOVER_PRIMARY_IP and RUEI_REP_FAILOVER_STANDBY_IP IP addresses.

3. To instigate the fallback, remove the active-failover-server file, and shutdown the virtual interface on the secondary server by issuing the following commands:

rm $RUEI_DATA/processor/data/active-failover-server
ifconfig $RUEI_REP_FAILOVER_VIRTUAL_DEV:0 down

10 Configuring a Failover Collector System

This chapter describes the procedure for configuring a failover remote Collector system that will take over monitoring of network traffic in the event that the primary Collector system becomes unavailable. Note that the described procedure assumes that the primary Collector system has been installed, configured, and is fully operational.

The procedure to configure a failover Reporter system is described in Chapter 9, "Configuring a Failover Reporter System".

SSL and Forms Traffic

Be aware that SSL and Oracle Forms traffic are particularly sensitive to disruptions in the TCP packet stream. This is because they require state information to be maintained for the duration of the connection. Therefore, during a failover or fallback, traffic may be lost.

10.1 Introduction

The configuration of a secondary (or failover) Collector system offers the advantage that it can seamlessly take over monitoring of network traffic in the event that the primary Collector system becomes unavailable. In this way, a high level of operational reliability is achieved. Note that this facility is only available for remote Collectors. The configuration of a failover Collector system is shown in Figure 10-1.

Figure 10-1 Failover Collector Configuration

At server level, a crossover network cable connects the primary and secondary Collector systems.As long as a regular "heartbeat" continues between the primary and secondary servers, the secondary server will not initiate monitoring of the network traffic. However, the secondary server will take over the monitoring task of the primary Collector as soon as it detects a failure in the "heartbeat" of the primary server. This process is referred to as failover. The secondary Collector will take over the primary Collector's virtual IP address, and it is through this that the Reporter system will communicate with it.

Note that failback (that is, the process of restoring the primary Collector to its original state), must be performed manually. The procedure is described in Section 10.4, "Initiating Collector Failback".

Prerequisites

In order to configure a failover Collector installation, the following conditions must be met:

- A secondary TAP or copy port must be inserted at the same location as the primary one within the monitored network.

- The RUEI software version of the primary and secondary Collectors must be identical.

- The primary and secondary Collector systems must be directly connected via a crossover cable. In addition, both systems must also be connected to a local or public network in order to connect to the Reporter system.

- Both the primary and secondary Collector systems must have direct access to the same shared storage on which log files and replay data is written. In particular, the $RUEI_DATA/collector directory must be accessible by both systems.

Important

When configuring a failover Collector system, be aware of the following:

- When failover to the secondary Collector is initiated, the data that is currently being recorded by the primary Collector is lost. Typically, this represents information about traffic for up to a 1-minute period.

- When failover is initiated, state information that needs to be maintained for the duration of the connection for TCP, HTTP, SSL and Oracle Forms-based sessions is lost. Therefore, details of these sessions during failover are not available.

- Because of the above points, some page views are lost. It is possible that these pages contain session logon details. In this case, the session is reported as anonymous. In addition, specific user flow steps can be lost.

10.2 Installing the Secondary Collector

The installation procedure for a secondary Collector system is identical to that of a remote Collector system.

1. Install the Linux operating system and the RUEI Collector software on both Collector systems. The procedure to do so is described in Section 2.1, "Prerequisites".

2. When starting the installation procedure for the secondary Collector system, ensure that the /etc/ruei.conf file is identical to that of the primary Collector system.

10.3 Configuring the Secondary Collector

Do the following:

1. Copy the .ssh directory (created when following the procedure described in Section 2.13, "Configuring Reporter Communication (Split-Server Setup Only)" on the primary Collector to the secondary Collector. Note that it must be copied to the same location.

2. On the primary Collector system, issue the following commands to add the "host keys" for the Collector to the global known_hosts file on the Reporter system:

. /etc/ruei.conf
ifconfig ${RUEI_COL_FAILOVER_VIRTUAL_DEV}:0 $RUEI_COL_FAILOVER_VIRTUAL_IP \
netmask $RUEI_COL_FAILOVER_VIRTUAL_MASK up
sleep 2
arping -c 3 -A -I $RUEI_COL_FAILOVER_VIRTUAL_DEV $RUEI_COL_FAILOVER_VIRTUAL_IP

On the Reporter system, use an arp -a or ping command to check that you can reach the virtual IP address on the primary Collector system.

Then, issue the following command:

ssh-keyscan -t rsa,dsa Collector-virt-ip-address >> /etc/ssh/ssh_known_hosts

As the RUEI_USER user, ensure that the virtual Collector IP address is not specified in the ~/.ssh/known_hosts file.

Attempt to establish an SSH connection as the RUEI_USER user from the Reporter system to the primary Collector system. Note that you should not receive any warning or prompt about the host key, and you should be logged in automatically.

On the primary Collector system, bring down the virtual IP address using the following command:

ifconfig ${RUEI_COL_FAILOVER_VIRTUAL_DEV}:0
$RUEI_COL_FAILOVER_VIRTUAL_IP netmask $RUEI_COL_FAILOVER_VIRTUAL_MASK down

Repeat the above procedure for the secondary Collector system. Upon completion, four keys should be specified in the /etc/ssh/ssh_known_hosts file for the virtual IP address.

3. Ensure that the uid and gid settings of the RUEI_USER user are the same on both the primary and secondary Collector systems. For example:

id moniforce
uid=501(moniforce) gid=502(moniforce) groups=502(moniforce)

Important

If you need to change the UID of the RUEI_USER user on an operational Collector system, you should:

- Issue the following commands as the RUEI_USER user:

appsensor stop wg
sslloadkeys -f

Note that you should enter yes (written in full) when prompted.

- Change the user:group ownership of all files and directories under /var/opt/ruei/collector to the new UID.

- Issue the following command as the root user:

/etc/init.d/crond restart

4. Configure the static IP addresses on both Collector systems used for the crossover cable. This can be done using a utility such as system-config-network.

5. Mount the shared storage on the RUEI_DATA/collector directory, and edit the /etc/fstab file so that it is mounted at boot. For example:

10.6.5.9:/home/nfs /var/opt/ruei/collector/data nfs rsize=1024,wsize=1024  0 0

Important:
Note that if the Collector is already operational before this step, and the $RUEI_DATA/collector directory is not shared, the existing directory content must be copied to the mount point specified above. Security Officers should be aware that this copying process includes server SSL keys.

Note that if the Collector is already operational before this step, and the $RUEI_DATA/collector directory is not shared, the existing directory content must be copied to the mount point specified above. Security Officers should be aware that this copying process includes server SSL keys.

Alternatively, if your shared storage does not provide sufficient bandwidth to keep up with the storage of replay data, you can symlink the REPLAY directories to a local location instead. In this case, only the HTTP log files and logs will be written to the shared disk. However, be aware that if you specify this configuration, replay data recorded before failover is initiated will be lost, and only sessions after the failover are accessible. In addition, these links will be reset to factory defaults and, therefore, the directories do not currently exist in the initial Collector setup.

6. Edit the /etc/ruei.conf file on both the primary and secondary Collector systems to specify the virtual, primary, and standby IP addresses. For example:

RUEI_COL_FAILOVER_PRIMARY_IP=192.168.56.201 # crossover cable primary
RUEI_COL_FAILOVER_STANDBY_IP=192.168.56.202 # crossover cable secondary
RUEI_COL_FAILOVER_VIRTUAL_IP=10.11.12.23    # (virtual) IP to access Collector
RUEI_COL_FAILOVER_VIRTUAL_DEV=eth0
RUEI_COL_FAILOVER_VIRTUAL_MASK=255.255.255.0

The RUEI_COL_FAILOVER_PRIMARY_IP and RUEI_COL_FAILOVER_STANDBY_IP settings should specify the IP addresses of the crossover cable between the two Collector systems. See Section 2.4.1, "The RUEI Configuration File" for an explanation of these settings. Note that the settings specified on both Collector systems must be identical.

7. Ensure that all communication between the Reporter and the Collector is via the specified virtual IP address. This is necessary to ensure automatic failover to the secondary Collector system in the event that the primary Collector system becomes unavailable. Note that this may require you to reconfigure existing Collector systems.

8. Install the ruei-collector-failover.sh script on both Collector systems. For example, in the /usr/local/bin directory. It is located in the RUEI zip file (see Section 2.3, "Unpacking the RUEI Software").

9. Add the following entry to the root user's crontab file of both the primary and secondary Collector systems:

* * * * * /usr/local/bin/ruei-collector-failover.sh

This causes the secondary Collector to send a heartbeat signal to the primary Collector every 60 seconds, and take over processing of RUEI monitored traffic in the event that the Primary Collector becomes unavailable.

Wait at least 60 seconds.

10. Check the output of the /sbin/ifconfig command on the primary Collector to ensure that the virtual IP address has been correctly configured. For example:

$ /sbin/ifconfig
eth0      Link encap:Ethernet  HWaddr 08:00:27:F7:B0:14
inet addr:192.168.56.201  Bcast:192.168.56.255  Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fef7:b014/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:80 errors:0 dropped:0 overruns:0 frame:0
TX packets:311 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:12793 (12.4 KiB)  TX bytes:26268 (25.6 KiB)
eth0:0    Link encap:Ethernet  HWaddr 08:00:27:F7:B0:14
inet addr:10.11.12.23  Bcast:192.168.56.255  Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

11. Unregister the primary remote Collector with the Reporter, and re-register it using the virtual IP address.

12. Shutdown the primary Collector system, and verify that the secondary Collector begins processing monitored traffic. A warning that the primary system is unreachable and that the secondary system is being activated should be reported in the event log. Note that after doing so, you must perform a failback to return your RUEI installation to its original state.

10.4 Initiating Collector Failback

Failback to the primary Collector system must be performed manually in order to return your RUEI installation to its original state. Do the following:

1. On the primary Collector system, issue the following commands:

. /etc/ruei.conf
echo $RUEI_COL_FAILOVER_PRIMARY_IP > \ /var/opt/ruei/collector/active-failover-server

2. On the secondary Collector system, issue the following commands:

. /etc/ruei.conf
ifconfig ${RUEI_COL_FAILOVER_VIRTUAL_DEV}:0 $RUEI_COL_FAILOVER_VIRTUAL_IP \ netmask $RUEI_COL_FAILOVER_VIRTUAL_MASK down

3. On the primary Collector system (with the /etc/ruei.conf file still loaded), issue the following commands:

ifconfig ${RUEI_COL_FAILOVER_VIRTUAL_DEV}:0 $RUEI_COL_FAILOVER_VIRTUAL_IP \
netmask $RUEI_COL_FAILOVER_VIRTUAL_MASK up
sleep 2
arping -c 3 -A -I $RUEI_COL_FAILOVER_VIRTUAL_DEV $RUEI_COL_FAILOVER_VIRTUAL_IP

11 Configuring a Failover Processing Engine System

This chapter describes the procedure for configuring a failover Processing Engine system that will immediately take over processing of network traffic in the event that the primary Processing Engine system becomes unavailable. Note that the described procedure assumes that the primary Processing Engine system has been installed, configured, and is fully operational.

The procedure to configure failover Reporter and Collector systems is described in Section 9, "Configuring a Failover Reporter System" and Section 10, "Configuring a Failover Collector System".

11.1 Introduction

The configuration of a secondary (or failover) Processing Engine system offers the advantage that it can seamlessly take over processing of monitored traffic in the event that the primary Processing Engine system becomes unavailable. In this way, a high level of operational reliability is achieved. The configuration of a failover Processing Engine system is shown in Figure 11-1.

Figure 11-1 Failover Processing Engine Configuration

At server level, a crossover cable connects the primary and secondary Processing Engine systems. As long as a regular "heartbeat" continues between the primary and secondary servers, the secondary server will not initiate processing of traffic. However, the secondary server will immediately take over the processing task of the primary server as soon as it detects an alteration in the "heartbeat" of the primary server. This process is referred to as failover.

Note that failback (that is, the process of restoring the RUEI installation to its original state), must be performed manually. The procedure is described in Section 11.5, "Instigating Processing Engine Failback".

Prerequisites

In order to configure a failover Processing Engine installation, the following conditions must be met:

- The primary and secondary Processing Engine systems must be directly connected via a crossover cable. In addition, both systems must also be connected to a local or public network to in order to connect to the Reporter, remote Collector, and database systems.

- The database and Collector instances used by the RUEI installation must both be remote.

- The primary and secondary Processing Engine systems must share the same storage (such as SAN or NFS). In particular, the RUEI_DATA/processor/data and RUEI_DATA/processor/data/sslkeys directories.

11.2 Preparing the Primary Processing Engine

Make the RUEI_DATA/processor/data and RUEI_DATA/processor/sslkeys directories available on a shared storage location.

1. Stop all processing on the primary Processing Engine system by issuing the following command as the RUEI_USER user:

project -stop

2. Mount the shared Processing Engine location on the primary Processing Engine system. To do so, edit the /etc/fstab file so that it is mounted at boot. For example:

10.6.5.9:/home/nfs /processing_share nfs rsize=1024,wsize=1024  0 0

3. Move the existing data and sslkey directories to the shared Processing Engine location. For example:

mv RUEI_DATA/processor/data /processing_share
mv RUEI_DATA/processor/sslkeys /processing_share

where processing_share specifies the shared location for data and SSL keys on the primary and secondary Processing Engine systems.

11.3 Installing the Secondary Processing Engine

The installation procedure for a secondary Processing Engine system is almost identical to that of a standalone Processing Engine system. Note that Initial Setup Wizard should not be run. Do the following:

1. When starting the installation procedure for the secondary Processing Engine system, ensure that the /etc/ruei.conf file is identical to that of the primary Processing Engine system.

2. Install the Linux operating system and Processing Engine software on the secondary Processing Engine system. The procedure to do this is described in Chapter 2, "Installing the RUEI Software". Specifically:

- Follow the instructions described in Chapter 2, "Installing the RUEI Software" up to and including Section 2.7.4, "Installing the Zend Decoder".

- Copy the following files from the RUEI_DATA directory on the primary Processing Engine system to the secondary Processing Engine system: cwallet.sso, ewallet.p12, sqlnet.ora, and tnsnames.ora. You should ensure that the ownerships and permissions of these files are identical on both Processing Engine systems.

- Follow the instructions described in steps 1-5 in Section 2.7.6, "Installation of the Reporter Software".

- Follow the instructions described in Section 2.8, "Configuring the Network Interface".

- If you performed the instructions described in Section 2.9, "Enabling International Fonts (Optional, but Recommended)" through Section 2.12, "Configuring Automatic Browser Redirection (Optional)" for the primary Processing Engine system, then you will need to repeat them for the secondary Processing Engine system.

11.4 Configuring Processing Engine Failover

Do the following:

1. If you have not already done so, login to the primary Processing Engine system as the RUEI_USER user, and issue the following command to stop all processing of monitored traffic:

project -stop

2. Copy the .ssh directory of the RUEI_USER user on the primary Processing Engine system, created while performing the procedure described in Section 2.13, "Configuring Reporter Communication (Split-Server Setup Only)", to the secondary Processing Engine system. Note that it must be copied to the same location.

3. Ensure that the uid and gid settings of the RUEI_USER user are the same on both the primary and secondary Processing Engine systems. For example:

id moniforce
uid=501(moniforce) gid=502(moniforce) groups=502(moniforce)

4. Configure the static IP addresses on both Processing Engine systems used for the crossover cable. This can be done using a utility such as system-config-network.

5. Edit the /etc/fstab file so the RUEI_DATA/processor/data and RUEI_DATA/processor/sslkeys directories are mounted at boot. For example:

10.6.5.9:/home/nfs /reporter_share nfs rsize=1024,wsize=1024  0 0

where reporter_share specifies the shared location for data and SSL keys on the primary and secondary Processing Engine systems.

6. Move the local data and sslkeys directories for the secondary Processing Engine system to the shared Processing Engine location by issuing the following commands:

rm -rf RUEI_DATA/processor/data
rm -rf RUEI_DATA/processor/sslkeys
ln -s /reporter_share/data RUEI_DATA/processor/data
ln -s /reporter_share/sslkeys RUEI_DATA/processor/sslkeys

7. Login to the secondary Processing Engine system as the RUEI_USER user, and issue the following command:

project -new -fromdb UX

This creates the secondary Processing Engine's on-disk configuration files using the primary Processing Engine's database configuration.

8. Edit the /etc/ruei.conf file on both the primary and secondary Processing Engines to specify the virtual, primary, and standby IP addresses. For example:

export RUEI_REP_FAILOVER_PRIMARY_IP=192.168.56.201
export RUEI_REP_FAILOVER_STANDBY_IP=192.168.56.202
export RUEI_REP_FAILOVER_VIRTUAL_IP=10.11.12.23
export RUEI_REP_FAILOVER_VIRTUAL_DEV=eth0
export RUEI_REP_FAILOVER_VIRTUAL_MASK=255.255.255.0

THE RUEI_REP_FAILOVER_PRIMARY_IP and RUEI_REP_FAILOVER_STANDBY_IP settings should specify the IP addresses of the crossover cable between the two Processing Engine systems. See Section 2.4.1, "The RUEI Configuration File" for an explanation of these settings. Note that the settings specified on both Processing Engine systems must be identical except for the RUEI_REP_FAILOVER_VIRTUAL_DEV setting.

9. Issue the following command to restart processing of monitored traffic on the primary Processing Engine system:

project -start

10. Install the ruei-reporter-failover.sh script on both Processing Engine systems. For example, in the /usr/local/sbin directory. It is located in the RUEI zip file (see Section 2.3, "Unpacking the RUEI Software").

11. Add the following entry to the root user's crontab file of both the primary and secondary Processing Engine systems:

* * * * * /usr/local/sbin/ruei-reporter-failover.sh

This causes the secondary Processing Engine to send a heartbeat signal to the primary Processing Engine every 60 seconds, and take over processing of RUEI monitored traffic in the event that the Primary Processing Engine becomes unavailable.

Wait at least 60 seconds.

12. Ensure that all user access to the Reporter GUI is via the specified virtual IP address. This is necessary to ensure automatic failover to the secondary Processing Engine system in the event that the primary Processing Engine system becomes unavailable.

13. Check the RUEI_DATA/processor/log/failover.log file on both Processing Engine systems. These files contain the results of the "ping" commands. Ensure that there are no error messages. For example, about unspecified failover configuration settings.

14. Check the output of the /sbin/ifconfig command on the primary Processing Engine to ensure that the virtual IP address has been correctly configured. For example:

/sbin/ifconfig
eth0      Link encap:Ethernet  HWaddr 08:00:27:F7:B0:14
inet addr:192.168.56.201  Bcast:192.168.56.255  Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fef7:b014/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:80 errors:0 dropped:0 overruns:0 frame:0
TX packets:311 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:12793 (12.4 KiB)  TX bytes:26268 (25.6 KiB)

eth0:0    Link encap:Ethernet  HWaddr 08:00:27:F7:B0:14
inet addr:10.11.12.23  Bcast:192.168.56.255  Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

15. Shutdown the primary Processing Engine system, and verify that the secondary Processing Engine begins processing monitored traffic. A warning that the primary system is unreachable and that the secondary system is being activated is reported in the Event log. Note that after doing so, you must perform a failback to return your RUEI installation to its original state.

11.5 Instigating Processing Engine Failback

Failback to the primary Processing Engine system must be performed manually in order to return your RUEI installation to its original state. Do the following:

1. Load your global RUEI configuration settings using the following command as the root user:

. /etc/ruei.conf

2. Ensure that the heartbeat mechanism between the primary and secondary Processing Engine systems is functioning correctly. To do so, verify that they can 'ping' each other on the RUEI_REP_FAILOVER_PRIMARY_IP and RUEI_REP_FAILOVER_STANDBY_IP IP addresses.

3. To instigate the fallback, remove the active-failover-server file, and shutdown the virtual interface on the secondary server by issuing the following commands:

rm $RUEI_DATA/processor/data/active-failover-server
ifconfig $RUEI_REP_FAILOVER_VIRTUAL_DEV:0 down

A Installing the Oracle Database Software

This appendix presents a summary of the procedure for installing the Oracle database software. Note that the complete installation procedure is described in the product documentation.

The information in this appendix is based on the Oracle Database 11g for Linux x86-64 Quick Installation Guide. It is recommended that you download and review it. It is available from the Oracle Database Documentation Library at the following location:

http://www.oracle.com/pls/db112/portal.portal_db?selected=11

Note:
While RUEI is supported on Oracle Database releases 11.1.1.0.7 and later, the best performance for RUEI 12.1.0.6 is achieved with Oracle Database 12c Release 1.
If you experience an ORA-12805: Parallel Query Server Died Unexpectedly error (Oracle Database 11.1 and 11.2.0.1 releases), see Section G.2 for a suitable workaround.

A.1 Download the Oracle Database Software

Download Oracle Database 11g Release 2 (11.2.0.1.0) Standard Edition, Standard Edition One, and Enterprise Edition from the Oracle database home page at the following location:

http://www.oracle.com/technology/software/products/database/index.html

A.2 Operating System Prerequisites

Assuming you have a working Yum repository, you can install the required operating system dependencies for the database software with the following command:

yum install gcc gcc-c++ compat-libstdc++-33 glibc-devel libstdc++-devel \
elfutils-libelf-devel glibc-devel libaio-devel sysstat perl-URI \
bitstream-vera-fonts xorg-x11-xinit unixODBC unixODBC-devel xorg-x11-xinit rsync \
ksh

A.3 Creating the Database User Accounts and Groups

1. Create two groups (dba and oinstall) with the following commands:

/usr/sbin/groupadd dba
/usr/sbin/groupadd oinstall

2. Create the oracle user, and specify oinstall as the primary group and dba as the secondary group, with the following command:

/usr/sbin/useradd -g oinstall -G dba oracle

3. Set the oracle user password with the following command:

passwd oracle

A.4 Configuring the Kernel Parameter Settings

1. Modify the /etc/sysctl.conf file to satisfy the Oracle installer's requirements by adding the following lines:

kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
fs.file-max = 6815744

2. Make these changes effective immediately with the following command:

/sbin/sysctl -p

A.5 Setting Shell Limits for the Oracle User

1. To improve the performance of the software, you must increase the shell limits for the oracle user. Add the following lines to the /etc/security/limits.conf file:

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

2. If not already present, add the following lines to the /etc/pam.d/login file:

session required /lib64/security/pam_limits.so
session required pam_limits.so

3. Depending on the oracle user's default shell, you need to make changes to it. For the Bourne, Bash, or Korn shell, add the following lines to the bottom of the /etc/profile file:

if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi

For information about other shells, you should refer to the Oracle Database 11g Release 2 for Linux x86-64 Quick Installation Guide available at the following location:

http://download.oracle.com/docs/cd/B28359_01/install.111/b32285/toc.htm

A.6 Creating the Database Directory

Throughout this guide it is assumed that the directory /u01/app is the root of the Oracle installation. This is specified in the ORACLE_BASE environment variable.

1. Enter the following command to display information about all mounted file systems:

df -k

This command displays information about all the file systems mounted on the system, including:

- The physical device name.

- The total amount, used amount, and available amount of disk space.

- The mount point directory for that file system.

2. Create the necessary subdirectories in the mount point directory that you identified and set the appropriate owner, group, and permissions for them using commands similar to the following:

mkdir -p /u01/app
chown -R oracle:oinstall /u01
chmod -R 775 /u01/app

A.7 Configuring the Oracle User's Environment

1. Logon to the system as the oracle user.

2. Add or edit the umask setting in the ~/.bash_profile file to the following:

umask 022

3. Make the setting active for the current shell by issuing the following command:

. ./.bash_profile

4. Set the ORACLE_BASE environment variable to define the location of the root of the Oracle directory tree:

export ORACLE_BASE=/u01/app/oracle

5. Unzip the Oracle database installation zip file. This creates the directory database. Then, run the graphical installer (note this will not run under user root). Ensure that your X Window environment is properly set up. In addition, when logging on remotely with SSH, ensure X forwarding is enabled. Use the following commands:

cd <location of the zip file>
unzip linux_11gR2_database.zip
./database/runInstaller

6. Use the installation wizard, and specify the values shown in Figure A-1. When ready, click Next.

Figure A-1 Specify Installation Location Dialog

7. Specify the values shown in Figure A-2. When ready, click Next.

Figure A-2 Specify Inventory Directory and Credentials Dialog

Important:
Any warnings or errors reported during database installation (especially any missing prerequisites) must be resolved before proceeding. See Section 2.1.6, "Installing the RUEI Prerequisites" and Appendix G, "Troubleshooting" for information about required components.

If all dependencies are met, you can click Next.

8. When installation is almost complete, you are prompted to run two scripts, orainstRoot.sh and root.sh, as root. This is shown in Figure A-3.

Figure A-3 Configuration Scripts Dialog

Run the two scripts indicated in Figure A-3. They should be run in a terminal window as root. You will receive output similar to the following:

/u01/app/oraInventory/orainstRoot.sh
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.

Changing groupname of /u01/app/oraInventory to oinstall.
The execution of the script is complete.

The second script generates the following output:

/u01/app/oracle/product/11.2.0/dbhome_1
/root.sh
Running Oracle 11g root.sh script...

The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME=  /u01/app/oracle/product/11.2.0/dbhome_1

Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...

Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
Finished product-specific root actions.

On completion of each script, return the dialog shown in Figure A-3, and click OK. In the main installer screen, verify that the message "The installation of Oracle database 11g was successful" appears. Click Exit, and confirm by clicking Yes.

A.8 Creating an Oracle init Script File

1. Logon as the root user.

2. Create an /etc/init.d/oracledb script file to start and stop the Oracle database. An example of this initialization script is available in the RUEI installation zip file (/root/RUEI/extra/oracledb) explained in Chapter 2, "Installing the RUEI Software". Note that you will need to modify the settings for the ORACLE_BASE and ORACLE_HOME environment variables shown above if you selected a different installation directory for the Oracle database.

3. Make the script file executable and use it to start the Oracle database with the following commands:

chmod +x /etc/init.d/oracledb
/sbin/chkconfig --add oracledb
/sbin/service oracledb start

The Oracle database is now installed, and the database listener should be up and running.

B Generic Database Instance Setup

This appendix describes how you can manually set up an Oracle database instance for use by the RUEI Reporter. RUEI supports Oracle database version 11gR1, 11gR2 and 12c Release 1.

Note that the approach taken in this appendix is to describe the requirements for a generic database instance, rather than a detailed procedural description. Therefore, a sound working knowledge of Oracle database administration is required.

Platform Support

While a wide range of platforms are supported for deployment of a remote database, high performance platforms designed for large queries by comparatively few users offer the best deployment solutions.

B.1 Overview

Upon completion, the following parameters and settings should be specified for the new Oracle database instance:

- RUEI_DB_INST: the name of the new database instance (as specified in the /etc/ruei.conf file). See Section 2.4.1, "The RUEI Configuration File" for more information.

- The instance should be based on the Data_Warehouse.dbc template.

- The character set of the instance should be set to AL32UTF8.

- The recyclebin and audit_trail features should be disabled for performance reasons.

- Monitor the redolog file size, and adjust the size if necessary.

Each of these requirements is discussed in more detail in the following sections. Note that you are required to have sysdba authorization.

Location of SQL Scripts

The SQL scripts referred to as alternatives to the procedures described in the rest of this appendix can found in the /root/RUEI/extra/sql_scripts/ directory after extraction of the RUEI distribution zip.

B.2 Creating the Database Instance

The following discussion assumes that the Oracle database instance is created on the command line. However, you are free to use any suitable utility to specify the required parameters. They should be consistent with the following:

dbca -silent -createDatabase -gdbName RUEI_DB_INST -sid RUEI_DB_INST \
-characterSet AL32UTF8 -templateName Data_Warehouse.dbc -databaseType DATA_WAREHOUSING \
-redoLogFileSize 500 -initParams recyclebin=off -initParams audit_trail=none

Alternatively, on Linux platforms, the ruei-prepare-db.sh script can also be run (as the Oracle user) to create the Oracle database instance as follows:

./ruei-prepare-db.sh create_database

In addition to the TSDEFAULT tablespace, two additional tablespaces must be created for the RUEI Reporter system.

B.3 Creating Tablespaces

Before continuing make sure you have chosen names for the default tablespace (named TSDEFAULT below for reference), the configuration tablespace (default is UXCONF) and the statistics tablespace (default is UXSTAT). The latter two names should also be set in the /etc/ruei.conf file using the RUEI_DB_TSCONF and RUEI_DB_TSSTAT variables respectively. Note that the same tablespace names must be used for all components in your RUEI environment, such as the remote database and Processors.

For performance reasons, it is strongly recommended that you use compressed tablespaces. The following command can be used to create the TSDEFAULT tablespace. Note that the default datafiles location is used, and you may want to specify a different location for the datafiles:

create tablespace TSDEFAULT datafile 'uxdefault01.dbf' size 5M reuse autoextend ondefault compress;

The following command line instruction can be used to enable compression on the TSDEFAULT tablespace:

alter tablespace TSDEFAULT default compress;

The size of the required database instance is 500 GB (or larger). The required disk space depends on the specified Reporter data retention policy (select Configuration, then General, then Advanced settings, and then Reporter data retention policy).

For most RUEI deployments, you will require more than a single datafile in the TSDEFAULT tablespace. Note that the default datafiles location is used, and you may want to specify a different location for the datafiles. Use the following command to add additional datafiles:

alter tablespace TSDEFAULT add datafile 'user02.dbf' size 5M autoextend on;

In addition to the TSDEFAULT tablespace, two additional tablespaces must be created for the Reporter and Processing Engine systems:

- RUEI_DB_TSCONF: contains RUEI configuration information. Typically, less than 1 GB in size.

- RUEI_DB_TSSTAT: contains RUEI statistics information used for internal purposes. Typically, only a few GB in size.

Note that the names of these two tablespaces are fixed and not configurable. The required tablespaces can be created using the following commands:

create tablespace RUEI_DB_TSCONF datafile 'uxconf01.dbf' size 5M reuse autoextend on default compress;
create tablespace RUEI_DB_TSSTAT datafile 'uxstat01.dbf' size 5M reuse autoextend on default compress;

Alternatively, instead of using the commands described in this section, the table set up can be performed by running the prepdb_tablespaces.sql SQL script. Note that the script requires three input variables to be set, one for each configurable table space name.

B.4 Rescheduling Oracle Database Maintenance

By default, Oracle database maintenance tasks are schedule to run at 22:00. These can have a significant impact on the overall database performance. Therefore, depending on traffic levels within the monitored environment, you may need to reschedule these maintenance tasks to a period with low traffic/load levels (for example, 03:00). For information on how to reschedule planned maintenance tasks, refer to the Oracle Database Administrator's Guide available at the following location:

http://download.oracle.com/docs/cd/E11882_01/server.112/e17120/toc.htm

The documented procedure can also be performed by running the prepdb_maintenance_schedule.sql SQL script.

B.5 Installing SQL Packages

RUEI requires additional packages to be installed. These can be installed by issuing the following command:

./ruei-prepare-db.sh sql_packages

Alternatively, you can install the packages manually with the ux_dbms_lock.sql and ux_dbms_session.sql scripts in the sql_scripts directory.

B.6 Creating the RUEI Database User

This section explains the creation of the RUEI database user, and the permissions it must be assigned.The RUEI database user is specified in the RUEI_DB_USER setting (in the /etc/ruei.conf file). It receives the minimum required permissions. However, note that the dbms_crypto permission is required for encryption of the SSL private keys that a Collector is using. In addition, because RUEI typically operates in an unattended 7x24 environment, the PASSWORD_LIFE_TIME permission should be set to unlimited.The following examples show how the RUEI database user can be created with the minimum required permissions.

create user RUEI_DB_USER
identified by PASSWORD
default tablespace TSDEFAULT
temporary tablespace TEMP
profile DEFAULT
quota 500G on TSDEFAULT;

alter user RUEI_DB_USER
quota unlimited on RUEI_DB_TSCONF
quota unlimited on RUEI_DB_TSSTAT;

alter profile DEFAULT
limit PASSWORD_LIFE_TIME unlimited;

grant    create session,
create sequence,
create table,
create trigger,
create view,
create synonym,
create database link,
create procedure,
create materialized view,
create type
to RUEI_DB_USER;

grant execute on dbms_crypto to RUEI_DB_USER;
grant execute on ux_dbms_lock to RUEI_DB_USER;
grant execute on ux_dbms_session to RUEI_DB_USER;

Alternatively, instead of using the commands described in this section, the RUEI database user configuration can be performed by running the prepdb_user.sql SQL script. Note that the script requires three input variables to be set, one for each configurable table space name.

B.7 Setting up the Connection Data

After the Oracle database instance has been defined, the connection data needs to be set up. This requires two files, sqlnet.ora and tnsnames.ora, in the RUEI home directory (RUEI_DATA).

The following is an example of the contents of the sqlnet.ora file:

NAMES.DIRECTORY_PATH = (TNSNAMES)
SQLNET.WALLET_OVERRIDE = TRUE
WALLET_LOCATION = (SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/var/opt/ruei)))
DIAG_SIGHANDLER_ENABLED = FALSE

Ensure that the DIRECTORY setting points to the directory for RUEI data files (RUEI_DATA) specified in the /etc/ruei.conf file.

The following is an example of the contents of the tnsnames.ora file:

uxinsight=(DESCRIPTION=
(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1521)))
(CONNECT_DATA=(SERVICE_NAME=ruei)))

In the example above, uxinsight is the database alias (RUEI_DB_TNSNAME) specified in the /etc/ruei.conf file. Ensure that the HOST setting specifies your database. If you specify a host name, ensure that it is also specified in the /etc/hosts setup. However, you can also specify an IP address.

B.8 Setting up the Oracle Wallet

The processing part of RUEI requires non-interactive access to the Oracle database. In order to achieve this, the Oracle autologin wallet is used to store passwords securely.

Use the following command to create the Oracle wallet on the database system:

mkstore -wrl /tmp -create

Note that you are prompted for the wallet password.

After the (empty) wallet has been created, you must add the credentials of RUEI_DB_TNSNAME and RUEI_DB_USER to the Oracle wallet using the following command:

mkstore -wrl /tmp -createCredential RUEI_DB_TNSNAME RUEI_DB_USER

Two wallet files, ewallet.p12 and cwallet.sso, must be moved to the RUEI_DATA directory on the Reporter system. Both files should have the ownership of RUEI_USER and RUEI_GROUP. Note that ewallet.p12 only needs to be readable by RUEI_USER, while cwallet.sso needs to be readable by both RUEI_USER and RUEI_GROUP. On Linux, this can be accomplished by issuing the following commands:

chown RUEI_USER:RUEI_GROUP *wallet*
chmod 600 ewallet.p12
chmod 640 cwallet.sso

If the Oracle database instance has been set up correctly, it should now be possible to enter the database without being prompted for the password. The RUEI_USER on the Reporter system can access the database instance as follows:

sqlplus /@$RUEI_DB_TNSNAME

If this last step fails, you should carefully review the information in this appendix before proceeding with your RUEI deployment.

C Setting up an Alternative Enriched Data Export Database Instance

This appendix describes how you can set up an alternative Oracle database instance for use by the Enriched data export facility. The use of this facility is fully described in the Oracle Real User Experience Insight User's Guide.

Note:
Before proceeding with the configuration of the alternative database, it is recommended that you make a backup of your configuration. Select Configuration, then System, then Maintenance, and then Backup and restore.

C.1 Introduction

By default, when using the Enriched data export facility, the data is exported to the same database instance as used by the Reporter. However, it is strongly recommended that you configure an alternative database instance for enriched data export. This is due to the following reasons:

- The SQL queries used to access the exported data can place a significant performance overhead on the database. Be aware that if large amounts of data need to be handled, complex SQL queries need to be executed, or a number of queries need to be run against the exported data within a particular period, the use of a separate database will provide a significant performance improvement.

- The use of a separate export database instance will minimize the impact on your RUEI deployment, as well as provide for easier management of it. Particularly in the case of database sizing and backup.

If you intend to use an alternative export database, this must be an Oracle database version 11gR1 or 11gR2, and installation of the Oracle database software should have been completed before starting the setup procedure described in the rest of this appendix. Be aware that advanced knowledge of Oracle database administration is assumed.

The setup procedure described in this appendix refers to a number of settings (such as RUEI_DB_TNSNAME_BI). These are explained in Table 2-3.

Migration to an Alternative Enriched Data Export Database

Be aware that when migrating enriched data export from one database to another, the export data currently stored in the previous database is not automatically migrated to the new database. Because the defined data retention policy is no longer enforced on the previous database, any historical data will remain on the previous database. If required, the necessary tables can be manually purged from the previous database.

Accessing the Export Data

Access to the data in the export database is available via SQL. Be aware that the SQL queries used to access exported data can place a significant performance overhead on the export database. Therefore, it is recommended that you carefully review the design of your SQL queries to minimize their overhead. In particular, you should ensure that table columns not required for external analysis are dropped from the returned data. In addition, you should try to minimize the number of SQL queries run during a particular period. In particular, try to avoid querying the same data more than once.

C.2 Setting up the Alternative Database Instance

This section describes the procedure that must be followed in order to setup the database instance on the alternative database server.

C.2.1 Creating the Database Instance

The following discussion assumes that the Oracle database instance is created on the command line. However, you are free to use any suitable utility to specify the required parameters. Do the following:

1. Logon to the alternative database system as the oracle user, and issue the following command:

dbca -silent -createDatabase -gdbName EXPORT_DATABASE_NAME \
-sid EXPORT_DATABASE_NAME -characterSet AL32UTF8 \
-templateName Data_Warehouse.dbc -databaseType DATA_WAREHOUSING \
-redoLogFileSize 500 -initParams recyclebin=off -initParams audit_trail=none

where:

- EXPORT_DATABASE_NAME specifies the literal export database instance name.

- For performance reasons, it is recommended that the recyclebin and audit_trail features are disabled.

- The character set instance should be specified as ALT32UTF8.

C.2.2 Using Compressed Tablespaces

For performance reasons, it is strongly recommended that you use compressed tablespaces. Do the following:

1. Issue the following SQL command as the System Administrator on the alternative database server to enable compression on the USERS tablespace:

alter tablespace USERS default compress;

2. By default, a single 32 GB datafile is created for the USERS tablespace. For most deployments, you will need to add additional table space by using the following SQL command:

alter tablespace USERS add datafile 'user02.dbf' size 5M autoextend on;

Note that in the command shown above, the default datafile location is specified. You are free to specify an alternative location.

C.2.3 Rescheduling Oracle Database Maintenance

By default, Oracle database maintenance tasks are schedule to run at 22:00. These can have a significant impact on the overall database performance. Therefore, depending on traffic levels within the monitored environment, and the scheduled processes reading the export database tables, you may need to reschedule these maintenance tasks to a period with low traffic/load levels (for example, 03:00). Information on how to reschedule planned maintenance tasks is provided in the Oracle Database Administrator's Guide available at following location:

http://docs.oracle.com/cd/E11882_01/server.112/e25494/tasks.htm#ADMIN0235

C.2.4 Creating the RUEI Database User

Access to the alternative database requires the creation of an authorized user. Do the following:

1. Issue the following commands on the alternative database server to create the RUEI database user with the minimum required privileges:

create user RUEI_DB_USER_BI
identified by "password"
default tablespace USERS
temporary tablespace TEMP
profile DEFAULT
quota 50G on USERS;

alter profile DEFAULT
limit PASSWORD_LIFE_TIME unlimited;

grant    create session,
create table
to RUEI_DB_USER_BI;

where:

- RUEI_DB_USER_BI specifies the export database user name.

- password specifies the required password variable.

C.2.5 Setting up DRCP Connection Pooling

For performance reasons, you may want to use a shared pool for all connections to the database. Do the following:

1. Within Oracle Database Resident Connection Pooling (DRCP), use the following SQL command as the sysdba user to enable shared pooling:

exec dbms_connection_pool.start_pool;
exec dbms_connection_pool.configure_pool(inactivity_timeout=>3600, max_think_time=>3600);

C.3 Connecting the RUEI Systems to the Alternative Database Server

This section describes the procedure that must be followed in order for the Reporter and Processing Engine systems to connect to the alternative database server. Note that this procedure must be followed on the Reporter and each Processing Engine system.

C.3.1 Setting up the Connection Data

After the alternative Oracle database instance has been defined, the connection data needs to be set up. This requires two files, sqlnet.ora and tnsnames.ora, in the RUEI data directory (RUEI_DATA) on the Reporter and Processing Engine systems. Do the following:

1. Ensure that the sqlnet.ora file contains the following:

NAMES.DIRECTORY_PATH = (TNSNAMES)
SQLNET.WALLET_OVERRIDE = TRUE
WALLET_LOCATION = (SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=RUEI_DATA)))
DIAG_SIGHANDLER_ENABLED = FALSE

Ensure that the DIRECTORY setting points to the directory for RUEI data (RUEI_DATA) specified in the /etc/ruei.conf file.

2. Edit the tnsnames.ora files on the Reporter and Processing Engine systems. You should add the following:

RUEI_DB_TNSNAME_BI =(DESCRIPTION=
(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=BI_database_server)
(PORT=1521)))
(CONNECT_DATA=(SERVICE_NAME=RUEI_DB_INST_BI)))

where:

- BI_database_server specifies the network address (hostname or IP address) of the alternative Enriched data export database server.

- RUEI_DB_TNSNAME_BI specifies the export database connect string.

- RUEI_DB_INST_BI specifies the export database instance name.

Ensure that the HOST setting specifies your database. If you use a host name, ensure that it is also specified in the /etc/hosts setup. However, you can also specify an IP address.

C.3.2 Setting up the Oracle Wallet

The Reporter and Processing Engines require non-interactive access to the alternative Enriched data export database. In order to achieve this, the Oracle autologin wallet is used to store passwords securely. A wallet should already exist to connect to the Reporter database. Do the following:

1. Use the following command to add the new credentials to the existing wallet files ewallet.p12 and cwallet.sso:

mkstore -wrl RUEI_DATA -createCredential RUEI_DB_TNSNAME_BI RUEI_DB_USER_BI

where:

- RUEI_DB_TNSNAME_BI specifies the export database connect string.

- RUEI_DB_USER_BI specifies the user of the remote database.

Note that you are prompted for the wallet password and the database password for RUEI_DB_USER_BI.

2. Ensure that the permissions for these files are set correctly. Both files should have the ownership of RUEI_USER and RUEI_GROUP. The ewallet.p12 file only needs to be readable by the RUEI_USER, but both files need to be readable by RUEI_GROUP.

3. If the database instance has been set up correctly, it should now be possible to access the export database without being prompted for the password. The RUEI_USER on the Reporter system can access the database instance as follows:

sqlplus /@RUEI_DB_TNSNAME_BI

If this step fails, you should carefully review the procedure described so far before proceeding.

C.3.3 Editing the RUEI Configuration File

1. Edit the /etc/ruei.conf configuration file on the Reporter and each Processing Engine system from which you intend to export enriched data. Use the RUEI_DB_TNSNAME_BI setting to specify the export database connect string. For more information, see Section 2.4.1, "The RUEI Configuration File".

Important:
Other than the modification described above, do not make any other changes to the ruei.conf file.

2. Logout and logon again as the moniforce user.

3. Restart processing on the Reporter system by issuing the following command:

project -restart

D Setting up a Connection to the Enterprise Manager Repository

This appendix describes how you can set up a connection to the Oracle Enterprise Manager Repository. This is necessary when you want KPIs defined for the applications, suites, and services that comprise your business applications to be reported as events in Incident Manager. The use of Incident Manager is described in Oracle Enterprise Manager Cloud Control Administrator's Guide. The use of the business application facility is described in Oracle Enterprise Manager Cloud Control Oracle Fusion Middleware Management Guide.

D.1 Introduction

Oracle Enterprise Manager supports the monitoring of business applications. These represent logical services or applications, and unify the dedicated performance monitoring, diagnostics, and reporting capabilities available through RUEI with that available through Oracle Enterprise Manager. The alerts generated by KPIs defined for the applications, suites, and services that comprise your business applications are reported as events in Incident Manager.

After completing the procedure described here, register the RUEI system in Enterprise Manager using the procedure described in the chapter "Monitoring Business Applications" of the Oracle Enterprise Manager Cloud Control Oracle Fusion Middleware Management Guide.

If you change any setting described in this Appendix, you must restart the system using the RUEI System Reset Wizard:

1. Select System, then Maintenance, and then System reset.

2. Select Reapply latest configuration option and click Next to apply the changes you have made.

D.2 Setting Up a Connection to Oracle Enterprise Manager 12.1.0.6

The required procedure consists of two parts, setting up RUEI to use the mkstore utility and restarting RUEI.

Configure RUEI to use the mkstore utility:

1. Determine the location of the mkstore utility. If an Oracle Database is installed the location is typically $ORACLE_HOME/bin.

2. Edit the /etc/ruei.conf file and add the following line, where mkstore_location is the path determined in step one:

export MKSTORE_BIN=mkstore_location

D.3 Setting Up a Connection to Oracle Enterprise Manager 12.1.0.5

The required procedure consists of three parts: establishing a connection to the Oracle Enterprise Manager repository, and setting up the authentication to this repository, and restarting RUEI. The first two parts are described in the following sections.

D.3.1 Setting Up the Data Connection

Two files, sqlnet.ora and tnsnames.ora, require to be set up in the RUEI data directory (RUEI_DATA) on the Reporter system. Do the following:

1. Ensure that the sqlnet.ora file contains the following:

NAMES.DIRECTORY_PATH = (TNSNAMES)
SQLNET.WALLET_OVERRIDE = TRUE
WALLET_LOCATION = (SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=RUEI_DATA)))
DIAG_SIGHANDLER_ENABLED = FALSE

where RUEI_DATA specifies the RUEI data files directory (see Table 2-3).

2. Edit the tnsnames.ora files on the Reporter and Processing Engine systems. You should add the following:

RUEI_DB_TNSNAME_EM =(DESCRIPTION=
(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=EM_database_server)
(PORT=1521)))
(CONNECT_DATA=(SERVICE_NAME=RUEI_DB_INST_EM)))

where:

- EM_database_server specifies the network address (host name or IP address) of the Enterprise Manager database server.

- RUEI_DB_TNSNAME_EM specifies the Enterprise Manager database connect string. For more information, see Section 2.4.1, "The RUEI Configuration File".

- RUEI_DB_INST_EM specifies the Enterprise Manager database instance name.

Ensure that the HOST setting specifies the Enterprise Manager database. If you use a host name, ensure that it is also specified in the /etc/hosts setup. However, you can also specify an IP address.

D.3.2 Setting Up the Oracle Wallet

The Reporter system requires non-interactive access to the Enterprise Manager database. In order to achieve this, the Oracle autologin wallet is used to store passwords securely. A wallet should already exist to connect to the Reporter database. Do the following:

1. Use the following command to add the new credentials to the existing wallet files ewallet.p12 and cwallet.sso files:

mkstore -wrl RUEI_DATA -createCredential RUEI_DB_TNSNAME_EM RUEI_DB_USER_EM

where:

- RUEI_DB_TNSNAME_EM specifies the Enterprise Manager database connect string.

- RUEI_DB_USER_EM specifies the user of the Enterprise Manager database.

Note that you are prompted for the wallet password and the database password for RUEI_DB_USER_EM.

2. Use the following command to change the permissions of the cwallet.sso wallet file:

chmod 640 cwallet.sso

3. Ensure that the permissions for these files are set correctly. Both files should have the ownership of RUEI_USER and RUEI_GROUP. The ewallet.p12 file only needs to be readable by the RUEI_USER, but both files need to be readable by RUEI_GROUP.

4. If the database connection has been set up correctly, it should now be possible to access the Enterprise Manager database without being prompted for the password. Issue the following command as the RUEI_USER on the Reporter system:

sqlplus /@RUEI_DB_TNSNAME_EM

E The ruei-check.sh Script

This appendix provides a detailed explanation of the checks performed by the ruei-check.sh script. It is strongly recommended that you use this script to verify successful installation, and to troubleshoot any installation issues.

The script's location is explained in Section 2.7.5, "Creating the Reporter Database Instance", and should be run as the root user. When started, the script prompts you to specify which role or roles the system is required to perform. For example:

Please specify which role(s) this system will perform.
Use commas to separate multiple roles. For example, 1,2,4

1 - Reporter
2 - Processing Engine
3 - Collector
4 - Database

Enter role(s): 1,2,3,4

The permitted role combinations are shown in Table E-1.

Table E-1 Permitted System Role Combinations

Roles

Description

1

Reporter only.

2

Processing Engine only.

3

(Remote) Collector only.

4

(Remote) database only.

1,2

Reporter with Processing Engine.

1,2,3

Reporter with Collector and Processing Engine.

1,2,4

Reporter with Processing Engine and database.

1,2,3,4

Reporter with Processing Engine, Collector, and database.

The checks are performed in the order shown in Table E-2, and are divided into three types: pre-installation, system, and post-installation checks. Whether a specific check is performed depends on the selected role(s).

Table E-2 ruei-check.sh Checks

Role

Check

1

2

3

4

Description

System checks

Architecture

•

•

•

•

Must be x86_64.

Operating system

•

•

•

•

Must be Oracle/RedHat Linux 5.x or 6.x.

Memory

•

•

•

•

Must be at least 4 GB.

Recommended 16 GB for Reporter installation.

Recommended 8 GB for a Collector only or remote database installation.

Swap space

•

•

•

•

Must be at least 3/4 of the installed system memoryFoot 1 .

Disk space for RUEI_HOME

•

•

•

The disk space for the specified RUEI_HOME location must be at least 512 MB.

Disk space for RUEI_DATA

•

•

•

The disk space for the specified RUEI_DATA location must be at least 100 GB.

Disk speed on RUEI_DATA

•

•

•

The disk speed of the specified RUEI_DATA location must be at least 40 MB/s (120 MB/s or more is recommended).

SELinux

•

•

•

•

SELinux must be disabled.

Network interfaces

•

Must have at least one interface must be Up without an IP address.

Hostname

•

•

•

•

The system's configured IP address and hostname must be specified in the /etc/hosts file.

DNS

•

•

•

•

The configured DNS server must resolve the system's configured hostname to its IP address.

HTTPD autostart

•

Must be configured to start automatically.

HTTPD up

•

Must be up.

Database autostart

•

Must be configured to start automatically.

SSHD autostart

•

•

•

•

Must be configured to start automatically.

SSHD up

•

•

•

•

Must be up.

SSHD

•

•

•

•

Checks if the SSH is not firewalled.

NTPD autostart

•

•

•

•

Must be configured to start automatically.

NTPD up

•

•

•

•

Must be up.

NTPD

•

•

•

•

Must be synchronized with a time server.

PHP CLI

•

PHP must be available on the command line.

PHP settings

•

session.gc_maxlifetime should be at least 14400.

memory_limit should be at least 96M.

post_max_size should be at least 128M.

upload_max_filesize should be at least 128M.

Zend Optimizer must be available (Linux version 5.x).

Zend Guard Loader must be available (Linux version 6.x).

(These appear as individual checks, and are only performed if the above check is passed).

PHP timezone

•

PHP must return the same timezone as the Reporter operating system. See Section G.15, "ruei-check.sh Script Reports PHP Timezone Error" for additional information.

RSVG

•

The ~apache/.gnome2 directory must exist.

Pre-install checks

Disk space for database data directory

•

Must be 500 GB. (If on the same partition as RUEI_DATA, must be 700 GB).

Disk containing database data directory

•

Should be local. (Remote file systems, such as NFS, are not supported).

Disk speed of database data directory

•

Must be at least 40 MB/s (120 MB/s is recommended).

RUEI_USER user exists

•

•

•

The specified RUEI_USER user must exist.

apache user exists

•

User apache must exist.

User apache in group
RUEI_GROUP

•

User apache must be a member of the specified group RUEI_GROUP.

User apache in group uucp

•

User apache must be a member of the group uucp.

User RUEI_USER in group uucp

•

•

•

The specified RUEI_USER user must be in group uucp.

User root must have umask of 0022

•

•

•

•

User root must have the umask 0022.

User root can write to /etc/http/conf.d

•

User root must be able to write to the /etc/http/conf.d directory.

User root can write to /etc/init.d

•

•

User root must be able to write to the /etc/init.d directory.

User root can write to /etc/ld.so.conf.d

•

User root must be able to write to the /etc/ld.so.conf.d directory.

User root can write to
RUEI_HOME

•

•

•

User root must be able to write to the specified RUEI_HOME directory.

User root can write to RUEI_DATA

•

•

•

User root must be able to write to the specified RUEI_DATA directory.

User root can write to /tmp

•

•

•

•

User root must be able to write to the /tmp directory.

/etc/sysconfig/httpd must call /etc/ruei.conf

•

The /etc/sysconfig/httpd script must call the /etc/ruei.conf configuration file.

RUEI_USER user able to contact database

•

•

The specified RUEI_USER user must be able to connect to the database.

oci8 PHP extension available

•

The oci8 PHP extension must be available.

RUEI_USER user able to contact database via PHP

•

The specified RUEI_USER user must be able to connect to the database via PHP.

RUEI_USER user must have umask 0027

•

•

•

The specified RUEI_USER user must have a umask of 0027.

RUEI_USER user able to read RUEI_HOME

•

•

•

The specified RUEI_USER user must be able to read the specified RUEI_HOME directory.

RUEI_USER user able to write to RUEI_DATA

•

•

•

The specified RUEI_USER user must be able to read the specified RUEI_DATA directory.

Permissions and ownership of RUEI_DATA

•

•

•

The Apache user must be able to read from the specified RUEI_DATA directory.

/etc/ruei.conf syntactically correct

•

•

•

The /etc/ruei.conf configuration file must be a syntactically correct shell script.

User root able to contact database after loading ruei.conf

•

•

The root user must be able to connect to the database after the environment specified in the ruei.conf configuration file has been loaded.

wm_concat available

•

•

The wm_concat database function (used by suites) must be available.

$JAVA_HOME value valid

•

•

The value specified for $JAVA_HOME in the /etc/ruei.conf configuration file must be valid.

Post-install checks

Reporter RPM check

•

The ux_collector, ux-bi-publisher, ux-core, ux-generic, ux-ipdb, ux-gui, ux-wlp, ux-suites-ebs, ux-suites-jde, ux-suites-sbl, ux-suites-fus, ux-suites-psft, ux-suites-flex, and ux-suites-wcs RPMs must be installed and have the same version (for example, 11.1.0).

Processing Engine check

The ux_collector, ux-core, ux-generic, ux-ipdb, ux-wlp, ux-suites-ebs, ux-suites-jde, ux-suites-sbl, ux-suites-fus, ux-suites-psft, ux-suites-flex, and ux-suites-wcs RPMs must be installed and have the same version (for example, 11.1.0).

Collector RPM check

•

The ux-collector RPM must have been installed.

Java shared objects

•

The Java path must have been correctly added to the LD_LIBRARY_PATH (see Section 2.4, "Generic Installation Tasks").

GUI reachable

•

The Reporter GUI must be reachable via the local hostname on the secure interface (note if a self-signed certificate is found, a warning is generated).

Reporter GUI can reach database

•

The Reporter GUI must be able to contact to the database.

Permissions and ownership of Oracle wallet

•

•

The Oracle wallet must be readable by the Apache user.

Permissions and ownership of Oracle wallet

•

The Oracle wallet must be readable by the RUEI_USER user.

Core binaries in path

•

•

The specified RUEI_USER user must be able to call the core binaries without specifying a full name.

Footnote 1 If memory is added to meet the memory requirement, this check may start failing.

Re-running the ruei-check.sh Script

Be aware that the role selection you make when running the script is saved to file. Therefore, if you want to re-run the script and be able to specify a different role or roles for the system, you need to delete the file /tmp/ruei-system-type using the following command:

rm /tmp/ruei-system-type

F Verifying Monitored Network Traffic

This appendix describes how you can use the TCP diagnostic facility to verify that RUEI "sees" all required network traffic. It is strongly recommended that a network engineer within your organization validates collected network traffic after installation and configuration of RUEI.

F.1 Introduction

The TCP diagnostics utility allows you to create 1-minute snapshots of the network traffic seen by a selected Collector. This snapshot can then be used to help determine whether there are gaps in the expected traffic flow. For example, there could be unconfigured port numbers, or an incorrectly specified VLAN ID.

The TCP traffic can be analyzed across client and server IP and MAC address, as well as port number and VLAN ID. Each snapshot's scope in terms of network traffic information is shown in Figure F-1.

Figure F-1 Example Network Topology

F.2 Creating Traffic Snapshots

To create a TCP traffic snapshot, do the following:

1. Within the Configuration facility, click the Show Collector status icon. Alternatively, select System, then Status, and then Collector status. The Network data Collectors window shown in Figure F-2 opens. This is fully explained in the Oracle Real User Experience Insight User's Guide.

Figure F-2 Network Data Collectors

2. Click the required Collector. The System (localhost) item refers to the Collector instance running on the Reporter system. Other Collectors within the network are represented by their IP address.

3. Click the TCP diagnostics tab. A panel similar to the one shown in Example F-0 appears.

Figure F-3 TCP Diagnostics

4. Click the New snapshot icon in the toolbar. The dialog shown in Figure F-4 appears.

Figure F-4 New TCP Traffic Snapshot Dialog

5. Use the Apply filters check box to specify whether the create traffic snapshot should be created to report all traffic seen by the selected Collector, or only that traffic that fits the Collector's currently defined filters (see the Oracle Real User Experience Insight User's Guide for more information). These are shown in the lower part of the dialog. Note that you can also view them by clicking the View snapshot filters icon on the toolbar. When ready, click Create snapshot.

Note:
The maximum number of traffic snapshots across all Collector systems in your RUEI installation is 15. When this maximum is reached, the oldest snapshot is automatically replaced by the newly created snapshot.

6. There is a 1-minute delay while the snapshot is created. Upon completion, an overview of the newly created snapshot's details is presented. An example is shown in Figure F-5.

Figure F-5 TCP Traffic Snapshot Overview

F.3 Analyzing Traffic Information

To analysis a created snapshot, do the following:

1. Select the required snapshot from the snapshot menu, or click it via the TCP diagnostics main panel (shown in Figure F-3). Snapshots created with applied filters are indicated with a tick character in the Filtered column. You can view the applied filters by clicking the tick character.

2. An overview of the selected snapshot (similar to the one shown in Figure F-5) appears. Note that you can click a selectable item to filter on it. For example, the list of reported items should be restricted to those that include a particular server IP address. You can remove a filter by clicking the Remove icon beside it in the filters section of the panel.
Optionally, use the sort menu (shown in Figure F-6) to the right of the snapshot menu to select the primary column used for the displayed items.

Figure F-6 Sort Menu

3. The Status column shown in Figure F-5 indicates whether a possible problem may exist with the TCP traffic monitored during the snapshot. In the event of a fail status being reported, you can mouse over the status icon to see additional information. Possible identified problems are explained in Table F-1.

Table F-1 Identify Problems and Possible Causes

Status

Description

Client/server packet ratio is too high.

The number of client packets compared to server packets seems to be unusually large. This could indicate that the Collector cannot see both directions of traffic due (or is seeing duplicate traffic in one direction), or there is a server-related issue (for example, it is switched off).

Server/client packet ratio is too high.

The number of server packets compared to client packets seems to be usually large. This could indicate that the Collector cannot see both directions of traffic due (or seeing duplicate traffic in one direction), or there is a client-related issue (for example, unacknowledged server packets).

Insufficient number of server and client packets for analysis.

There was insufficient traffic (TCP packets) to perform a reliable client/server ratio analysis. A minimum of 100 packets is required. This may because normal traffic levels to the server are low. Otherwise, it may indicate routing issues with RUEI being unable to see some portions of network traffic.

Server VLAN ID does not match client VLAN ID.

This would normally indicate a routing issue. For example, traffic from the client to the server is being routed via one VLAN, but the traffic back from the server to the client is being routed via another VLAN. Be aware that RUEI can only monitor traffic on one VLAN segment at a time.

G Troubleshooting

This appendix highlights the most common problems encountered when installing RUEI, and offers solutions to locate and correct them. The information in this appendix should be reviewed before contacting Customer Support.

More Information

- Information on Oracle Enterprise Manager is available at the following location:

http://www.oracle.com/us/products/enterprise-manager/index.html

- Detailed technical information is available from My Oracle Support:

https://support.oracle.com

Contacting Customer Support

If you experience problems with the installation or configuration of the RUEI, you can contact Customer Support. However, before doing so, it is strongly recommended that you create a Helpdesk report file of your installation. To do so, select System, then Configuration, and then Helpdesk report. This file contains extended system information that is extremely useful to Customer Support when handling any issues that you report. Please note that this file contains information in a proprietary format. Do not try to modify its contents.

In addition, extended information about internal errors is available by enabling Session debugging. To do so, select the Session debug option from the Help menu. For further information, see the Oracle Real User Experience Insight User's Guide.

G.1 Running the ruei-check.sh Script

It is recommended you use the ruei_check.sh script to troubleshoot installation issues. When first run, the script requires you to specify an installation type (reporter, processor, collector, or database). Be aware this selection is saved to file. Therefore, if you want to run the script and be able to specify a different installation type, you need to delete the file /tmp/ruei-system-type using the following command:

rm /tmp/ruei-system-type

You can specify the parameters shown in Table G-1.

Table G-1 ruei-check.sh Parameters

Parameter

Description

system

Performs basic system checks, as well as a a number of prerequisites checks. These include interfaces that can be monitorable interfaces, that the Oracle database starts correctly, and that the Apache web server, PHP, and Zend optimizer are correctly configured.

preinstall

Checks whether the Oracle database is correctly configured.

postinstall

Checks if the RUEI RPMs have been installed correctly.

all

Performs all the above checks in the indicated sequences.

For example:

cd /root/RUEI/121
./ruei-check.sh all

The use of this script is fully described in Appendix E, "The ruei-check.sh Script".

G.2 ORA-12805: Parallel Query Server Died Unexpectedly

When executing a parallel statement using a partial-partition wise join, where the set of partitions accessed is pruned at runtime to no partitions or partitions without any segments, you may run into an error similar to the following:

ORA-12805: PARALLEL QUERY SERVER DIED UNEXPECTEDLY

This is caused by a known bug in Oracle Database 11.1 and can be addressed by employing the following workaround to make GUI queries not parallel by setting db_gui_dop to 1:

$ execsql config_set_value wi_core db_gui_dop 1

However, Oracle recommends that you upgrade to database version 11.2.0.3 and download and install patch 13582702 available at the following location:

https://support.oracle.com/epmos/faces/ui/patch/PatchDetail.jspx?_afrLoop=33337295036267&patchId=13582702

G.3 The ruei-prepare-db.sh Script Fails

If the ruei-prepare-db.sh script fails, this can be because the database listener has not been started correctly due to a failing DNS look up. To resolve this problem, do the following:

- Ensure the /etc/hosts file includes your host.

- Ensure entries in the /etc/nsswitch.conf file are specified in the required (sequence hosts: files DNS).

Note:
The ruei-prepare-db.sh script can be run with the delete option to remove the current database and install a new one.

G.4 Starting Problems

If the system does not seem to start, or does not listen to the correct ports, do the following:

- Restart each Collector service. To do so, select System, then Maintenance, then Network data collectors, select each attached Collector, and select the Restart option from the menu. This is described in more detail in the Oracle Real User Experience Insight User's Guide.

- Review your network filter definitions. This is described in the Oracle Real User Experience Insight User's Guide. In particular, ensure that no usual network filters have been applied. This is particularly important in the case of VLANs.

- Ensure that RUEI is listening to the correct protocols and ports. This is described in the Oracle Real User Experience Insight User's Guide.

- Verify that the Collector interfaces are up.

Resources and Log Files

If during, or directly after running the Initial setup wizard (described in Section 6.2, "Performing Initial RUEI Configuration"), the system returns an error, there are the following resources and log files available to help you in debugging:

- RUEI_DATA/processor/log/gui_debug.log: a proprietary debug and log file that shows low-level system information. Although it contents may be difficult to read, you can find standard system error messages listed here.

- /var/log/httpd/access_log and /error_log: the Apache daemon access and error log files. If any part of the HTTP or PHP execution of the RUEI user interface is in error, it will show up in these log files. (Note that these are not the log files used by RUEI for HTTP data analysis).

Root-Cause Analysis

Before starting to address specific issues, it is important to understand the basic operation of data collection, data processing, and data reporting. Any root-cause analysis of RUEI problems should take the following:

- Verify data collection. Select System, then Status, and then Collector status. Select a Collector from the displayed list, and verify that the system interfaces are showing traffic activity on TCP, Ethernet, and HTTP level.

- In addition, verify that there are no problems with the SSL data decryption. It is normal that some errors occur (especially shortly after startup). But if SSL traffic is to be decrypted, the error rate can never be 100%.

- Verify data processing. Select System, then Status, then Data processing. A screen similar to the one shown in Figure 6-6 appears. It should indicate some activity.

G.5 Data Collection Problems

If the data collection service is not running, or will not start, do the following:

- Use the TCP diagnostics facility to verify that RUEI "sees" all required network traffic. The use of this tool is described in Appendix F, "Verifying Monitored Network Traffic".

- Ensure the network cards used for data collection are running in promiscuous mode. This can be verified by issuing the command ifconfig ethN (where N is the number of the network interface being used for data collection). It should return an output similar to the following:

ethn      Link encap:Ethernet  HWaddr 00:15:17:3E:26:AF           UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1           RX packets:0 errors:0 dropped:0 overruns:0 frame:0           TX packets:0 errors:0 dropped:0 overruns:0 carrier:0           collisions:0 txqueuelen:1000           RX bytes:0 (0.0 GiB)  TX bytes:0 (0.0 GiB)           Memory:b9120000-b9140000

Note that you may want to repeat the above command to view changes in network traffic while diagnosing network issues.

- If the network interface is not available, make sure the ONBOOT parameter is set to YES.

- Verify there is no IP address assigned to the network interface being used for data collection. If there is a configured IP address, remove it.

Note:
Do not set to 0.0.0.0 or 127.0.0.1. Remove the configured IP address completely.

G.6 Data Processing Problems

If, for any reason, data processing does not start, try to restart it by selecting System, then Maintenance, and then System reset. The System reset wizard appears. Select the Restart system processing option. Note that restarting system processing can take between 5 and 30 minutes.

In general, if no data is being processed, verify your system's configuration as described in Section 6.5, "Verifying and Evaluating Your Configuration". If you do not apply any configuration to the system, no data processing will take place.

If you are using an environment with multiple Collectors, ensure all Collectors are up and running normally. To do so, select System, then Status, and then Collector status. A failing Collector can become a block to further data processing of the system's data.

G.7 E-Mail Problems

Sending E-mails is RUEI functionality that is handled on a system level, together with your Mail Transfer Agent (MTA), such as Sendmail or Postfix. If problems occur when sending E-mails, do the following:

- If mail is sent correctly by RUEI to your MTA, the user interface will report "Message sent successfully" when you attempt to send a daily, weekly, or monthly report manually.

- If mail could not be sent correctly by RUEI to your MTA, verify that the MTA is up and running. Alternatively, analyze the mail settings by selecting System, then Maintenance, and E-mail configuration.

- If the mail was sent successfully, but not delivered to the recipient, analyze the operation of your MTA to further identify the root cause of the mails that are not delivered.

- Refer to the /var/log/maillog file for reported mailing issues.

Common issues with E-mail delivery often involve an incorrectly configured MTA, or an MTA that is not allowed to send E-mail within the Data Center or corporate network.

G.8 SSL Decryption Problems

In order to decrypt SSL traffic, the Collector needs to have the SSL key and certificate available. To enable SSL decryption, you should do the following:

- Upload the SSL key through the appropriate Collector.

- Enable the SSL key by entering the required decryption passphase (when applicable).

The certificate needs to be uploaded to the Collector(s) by selecting Configuration, then Security, and then SSL keys. To check the status of the SSL decryption, select System, then Status, and then Collector status, and select the Collector for which you want SSL decryption analysis. Within the SSL encryption page, note the following:

- Decryption errors will occur if there is no SSL key uploaded.

- The percentage of successful decryption will be a low number shortly after uploading and activating the appropriate SSL keys.

- This percentage should rise in the first minutes and hours after uploading the SSL keys.

RUEI accepts PKCS#12 and PEM/DER encoding of SSL keys and certificates. Basically, this means both the certificate and key should be concatenated into one file. If you have separate key and certificate files, you can create a PKCS#12-compliant file by issuing the following command:

openssl pkcs12 -export -in certificate.cer -inkey key.key -out pkcs12file.p12 -passout pass:yourpassphrase

Where:

- certicate.cer is your CA root certificate file.

- key.key is the server's SSL key file.

- pkcs12file.p12 is the output file name for the PKCS#12-encoded file.

- yourpassphrase is the passphrase you want to use to protect the file from unwanted decryption.

For example, consider the situation where the CA root certificate filename is ca_mydomainroot.cer, the server's SSL key is appsrv12.key, you want the output file to be called uxssl.p12, and want to protect this file with the passphrase thisismysecretpassphrase. The following command is required:

Openssl pkcs12 -export -in ca_mydomainroot.cer -inkey appsrv12.key -out uxssl.p12 -passout pass:thisismysecretpassphrase

G.9 Missing Packages and Fonts Error Messages

It is strongly recommended that you not perform a "minimal" installation of Oracle Linux. If you do so, it can lead to a wide range of reported problems, depending on the components not included in the installation, but required by RUEI.

The most common of these are reported fontconfig error messages in the /var/log/http/error_log file. These can be fixed by installing the following fonts:

- urw-fonts-noarch v2.3

- ghostscript-fonts-noarch v5

- dejavu-lgc-fonts-noarch v2

- liberation-fonts v0.2

- bitmap-fonts v0.3

Depending on your language settings, install all other required fonts.

However, other possible error messages include reported missing packages (such as librsvg2).

When a Yum repository is available, all dependencies available on the Linux 5.x DVD can be installed by issuing following command:

yum -y install gcc gcc-c++ compat-libstdc++-33 glibc-devel libstdc++-devel \
elfutils-libelf-devel glibc-devel libaio-devel sysstat perl-URI net-snmp libpcap \
sendmail-cf httpd php php-pear php-mbstring phpldap librsvg2 xorg-x11-xinit \
net-snmp-utils perl-XML-Twig

For RedHat Enterprise/Oracle Linux 6.x, issue the following command:

yum -y install gcc gcc-c++ compat-libstdc++-33 glibc-devel libstdc++-devel \
elfutils-libelf-devel glibc-devel libaio-devel sysstat perl-URI net-snmp \
libpcap sendmail-cf httpd php php-pear php-mbstring phpldap librsvg2 \
xorg-x11-xinit net-snmp-utils perl-XML-Twig rsync ksh openssl098e wget bc \
bind-utils

However, be aware that additional RPMs shipped with the RUEI installation zip file still need to be installed.

G.10 ORA-xxxxx Errors

If you receive any Oracle database errors, do the following:

- Ensure that the /etc/sysconfig/httpd file contains the following lines:

source /etc/ruei.conf

If you have to add these lines, restart the Apache web server using the following command:

service httpd restart

- Ensure that the ewallet.p12 file is readable by the RUEI_USER specified user. Additionally, the cwallet.sso file should also be readable by the RUEI_GROUP specified group. On Linux/UNIX, this can by accomplished by issuing the following commands:

chmod 600 ewallet.p12
chmod 640 cwallet.sso

- Ensure the same host name is specified in the /var/opt/ruei/tnsnames.ora, /etc/sysconfig/network, and /etc/hosts files.
Note if you make changes to any of these files, you may need to reboot the server.

G.11 Oracle DataBase Not Running

Verify the Oracle database is up and running by changing to the moniforce user and obtaining an SQL*Plus prompt with the following commands:

su - moniforce
sqlplus /@connect-string

where connect-string is either RUEI_DB_TNSNAME or RUEI_DB_TNSNAME_CFG.

You should receive the SQL*Plus command line without being prompted for a password. This indicates that the Oracle wallet authentication was successful.

If necessary, re-start the Oracle database using the following command:

/etc/init.d/oracledb restart

G.12 General (Non-Specific) Problems

If you are experiencing problems with the reporting module, or find its interface unstable, it is recommended that you do the following:

- Clear all content caching within your browser, and re-start your browser.

- Examine the error log. This is described in the Oracle Real User Experience Insight User's Guide.

- Select System, then Status, and verify correct operation of the core components by then selecting Data Collection, Logfile processing, and Data processing. If any of these components are in error, try to resolve them using the advice provided in this appendix.

G.13 Network Interface Not Up

If the network interface you intend to use for data collection is not Up (that is, the ONBOOT=YES parameter was not set), you can bring it immediately using the following command:

ifconfig ethN up

where N represents the necessary network interface.

G.14 OAM-Related Problems

In order to start isolating OAM-related problems, you should do the following:

1. Logon to the Reporter system as the moniforce user.

2. To obtain a sample value of the cookie, issue the following command:

EXAMPLE_VALUE=$(zgrep ObSSOCookie \
$WEBSENSOR_HOME/data/wg_localhost/http/`date +"%Y%m%d"`/*/http-*|\
tail -1 |sed 's,^.*ObSSOCookie=\([^;[:space:]]*\)[;[:space:]].*$,\1,g')

3. To view the obtained sample value, issue the following command:

echo $EXAMPLE_VALUE

You should check that the returned output is not empty and does not contain errors. The following is an example of the possible output:

2bTxIrJxIGg%2FMrntHeRuhI1bADtml%2FNPXMho%2FuXK1S3PmiqdsQy4QAgcq0JiQbLfabIs1FBQc%2Bq1Nadjw7naVCqAyT7ir883GoGkSTX8ODtW7S1HQlbATMahOSYsTn8wshgg%2Fg5vi0d18%2F3Zw6tOdPevrhE0wTCk069p%2FkeIS8ftPBUSe6p9rEKiWBqyptQpUzW4SwfTz89iNxOoNULPkG4I5B%2BVa2ac4pgA4rc%2Bre%2BdFk3Gcm7dyu5XC%2BiQKRznERRE1t7wQb7RF5zjFL8hD6Jl0yquJytYPV3x7ufa%2BWatYE5uIHq3NdUKzuLq0214

4. To specify the obtained value as the OAM cookie, issue the following commands:

cp $WEBSENSOR_INI/../evt/OAM2* $WEBSENSOR_INI
mklookup --match $EXAMPLE_VALUE|GET|/some/url.html '%' '%1[$OAM2UserName]'  %0

Note:
The URL should be a URL protected by OAM.

Reported Errors

If the following error is received:

*ERROR* - obssocookie: could not dlopen()
/opt/netpoint/AccessServerSDK//oblix/lib/libobaccess.so:
/opt/netpoint/AccessServerSDK//oblix/lib/libobaccess.so: cannot open shared
object file: Permission denied

This indicates that the moniforce user does not have the necessary permissions. You should logon to the Reporter system as the moniforce user, and issue the following commands:

find /opt/netpoint/AccessServerSDK -type d -exec chmod o+rx {} \;
find /opt/netpoint/AccessServerSDK -type f -exec chmod o+r {} \;

If the following error is received:

*ERROR* - obssocookie: could not dlopen()
/opt/netpoint/AccessServerSDK//oblix/lib/libobaccess.so:
/opt/netpoint/AccessServerSDK//oblix/lib/libobaccess.so: wrong ELF class:
ELFCLASS32

This indicates that the 32-bit version of the Access Gate SDK was installed instead of the required 64-bit version. The procedure to download and install the required Access Gate SDK is described in Section 7.2, "Downloading and Installing the Access Gate Software".

Note that the Access Gate SDK installation package includes a utility to uninstall the 32-bit version ( _uninstAccessSDK/uninstaller.bin).

If the following error is received:

Server is not authenticated to access the the OAM environment

This indicates that the creation of a trust between RUEI and the access server (described in Section 7.3, "Configuring the Access Gate Software on the RUEI Server") was not successfully performed, and should be repeated.

If the following error is received:

*ERROR* - obssocookie: environment variable OBACCESS_INSTALL_DIR not set

This indicates that the procedure described in Chapter 7, "Configuring the Oracle Access Manager" was not followed.

G.15 ruei-check.sh Script Reports PHP Timezone Error

The following error is reported by the ruei-check.sh script:

Checking if the PHP timezone has been set correctly:   [FAIL]
PHP and OS timezones do not match (os: winter +0000, summer +0100. php:
winter +0100, summer +0200)

This can easily be fixed by setting the TZ environment variable at the bottom of the /etc/ruei.conf file on the Reporter system as follows:

export TZ=Europe/Lisbon

G.16 ORA-00020: maximum number of processes (%s) exceeded

If this error is reported, you will need to increase the maximum number of processes available to the databases within your environment. To increase the maximum number of processes from the default (150) to 300, do the following:

1. Logon as the oracle user to each database within your RUEI deployment.

2. Obtain an SQL*Plus prompt by issuing the following command:

sqlplus / as sysdba

3. Issue the following commands:

SQL> alter system set processes=300 scope=spfile;
System altered.

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.

G.17 rsync Fails When user@ Argument not Specified

Version 3.0.6-4 of the rsync utility distributed as part of RedHat Linux 5.7 is known to contain the bug BZ# 726060. This leads to a failure and error when specifying the source or destination argument of the rsync command without the optional user@ argument.If you encountered this issue, it is recommended that you upload and install the RedHat update 2011:1112-1. It is available from the following location:

http://rhn.redhat.com/errata/RHBA-2011-1112.html

G.18 ORA-00600 Error Reported

The following error is reported when restoring a RUEI backup or deleting certain configuration items (for example, application, user id source, framework exception):

ORA-00600: internal error code, arguments: [kkmmctbf:bad intcoln]

This is caused by a known bug in Oracle database version 11.2.0.3.0. It can be fixed by downloading and installing the patch 13582702 available at the following location:

https://support.oracle.com/epmos/faces/ui/patch/PatchDetail.jspx?_afrLoop=33337295036267&patchId=13582702

G.19 Dropped Segments and Bad Checksums

If the collector is reporting a large number of dropped segments or segments with bad checksums, this could indicate a problem with the network card settings. This is because large segments, also referred to as Jumbo frames, are typically created by the network interface card driver due to an optimization feature called "receive offload". Typically, such segments created by the driver do not have a checksum (blank checksum) or have a random (junk) value as the checksum.

The dropped segments and bad checksums counters can be inspected by selecting System, then Status, then Collector Status, select the collector host, then TCP.

To see if large frames are present on the network card, select Interfaces on the collector status screen. Look at the value of the Largest Encountered Frame field for each interface and compare it with the value of the Configured Max Frame Size field. If the configured size is less than the largest encountered frame, then the collector is dropping these frames as they are too large for its internal capture buffers. In addition, the collector will issue a warning event in the Event Log when it encounters a frame larger than the maximum configured size.

Note that in RUEI 12.1.0.6, the maximum configured frame size has been set to 64KB by default. In addition, checksum validation rules have been relaxed to accept both frames with blank checksums, and large frames with a junk checksum. Therefore, the rest of this section is only applicable if you have reduced the frame size for any reason and are running into drops due to bad checksums.

Background to Receive Offload and Checksum Offload Settings

Some network drivers have provisions to combine multiple physical frames into a single, large frame (of anything up to 64Kb) that is then passed on to the kernel network stack in a single operation. Network card vendors may refer to this as frame coalescing, large receive offload or generic receive offload. The goal is to improve efficiency by reducing the number of interrupts and copy operations from driver to kernel.

In addition to frame coalescing, some network drivers also perform TCP checksum offloading, that is, they perform TCP checksum validations for incoming packets and compute and set the checksums for outgoing packets. The goal is to improve efficiency by offloading these tasks from the kernel software to the network card hardware.

To view the current offload settings of a network interface, use the following command (you may need to do this as the root user):

# ethtool -k eth1
Offload parameters for eth1:
Cannot get device udp large send offload settings: Operation not supported
rx-checksumming: on
tx-checksumming: on
scatter-gather: on
tcp segmentation offload: on
udp fragmentation offload: off
generic segmentation offload: on
generic-receive-offload: on

The actual interpretation of the fields might differ per driver, but typically, generic-receive-offload indicates that the network driver is coalescing frames. In addition, the driver may or may not be filling in checksums for the resulting large frames, this can depend on other offload settings, such as rx-checksumming or tcp-segmentation-offload or simply differ per driver implementation.

Frames for which the checksum was not filled in correctly are dropped because they fail the checksum validations performed by the collector.

Note that checksum validation is only be attempted on frames that are not coalesced, and that have a checksum field which is not blank.

Disable Offloading Settings

To avoid large frame issues, disable the offload settings of the network card in order to stop it from coalescing frames altogether. Disable the generic-receive, tcp-segmentation and generic-segmentation offloads using the following command for each interface that the Collector is monitoring:

# ethtool -K eth1  tso off gso off gro off

Enable Jumbo Frames

If you are still observing Jumbo frames after disabling offloading for all capture interfaces, then you need to increase the maximum frame size of the collector. Go to the Configuration tab, and click on the Security button on the left. Next, click on Jumbo frames in the Security panel in the lower left of the screen. Follow the instruction on screen to set the maximum frame size.

Disable TCP Checksum Validation in Collector

To disable TCP checksum validation on the reporter system, enter the following commands as the RUEI user:

execsql config_set_profile_value System_name config TcpDoChecksum add no

where System_name is the collector profile you want to configure. Replace this with the actual collector profile name.

Disable TCP Checksums Offloading

If the driver is not filling in TCP checksums properly due to checksum offloading, and the collector statistics show checksum errors, disable it via the command:

# ethtool -K eth1 rx off tx off

The driver implementations might differ for different vendors, to the point that some might not even let you change any of these settings. Contact Oracle Support if you are unable to change the settings of your drivers successfully and are still observing packet loss in the collector.

G.20 Errors During Installation on RedHat Enterprise/Oracle Linux 6.x

Section 2.1.6.2, "RedHat Enterprise/Oracle Linux 6.x" of this guide instructs you to issue the following command to install all optional fonts.

rpm -Uhv fonts-*

This command may fail with a message similar to the following:

Transaction Check Error:
file /usr/share/fonts/opensymbol/opens___.ttf conflicts between attempted
installs of openoffice.org-opensymbol-fonts-1:3.2.1-19.6.0.1.el6_2.7.noarch
and libreoffice-opensymbol-fonts-1:4.0.4.2-9.0.1.el6.noarch

To workaround this issue, use the following command to install fonts:

yum install -y *-fonts --exclude=libreoffice*

H Installation Checklist

This appendix provides a checklist of actions that should be complete, and information gathered, before starting to install the RUEI software. These include server and infrastructure readiness and configuration, as well as HTTPS encrypted traffic and alerting issues.

Server Readiness

Base hardware and operating system requirements.

Intel/AMD 64-bit platform (minimum 2 dual-core CPUs).

Network connectivity:

- 10/100 MB NIC for office network connectivity.

- 10/100/1000 MB NIC for data collection connectivity.

Disk space: at least 400 GB (on high-performance RAID-5, RAID-10, or similar).

Memory: at least 16 GB RAM for single server.

OS: Oracle Linux 64-bit or RedHat Enterprise Linux 64-bit 5.x or 6.x.
Oracle Database 11g or 11c Enterprise Edition.

The ruei-check.sh script reports no errors.

The EBS, JD Edwards, FLEXCUBE, and PeopleSoft configuration zip files are available.

Infrastructure Readiness

Ensure easy placement and accessibility of the system.

Prepare rackspace in the Data Center cabinet with power sockets.

The server is accessible through remote ports:

- Port 80/443 for HTTP(S) traffic to the RUEI web server.

- Port 22 for remote management over SSH/SCP.

- Port 25 (E-mail).

- Port 123 (NTP).

- Port 161/162 (SNMP).

- Port 1521 (for remote database setup).

Access to the Data Center on the appropriate day and time is arranged.

Network preparation for TAP/copy port is done and cables available in cabinet.

Server configuration completed (see below).

Main topology with proxies, load balancers, routers, switches, and so on, is known.

Main traffic flows throughout the infrastructure are known.

VLAN topology, VLAD IDs, and IP addresses are known.

The monitoring position for the RUEI server is located as close as possible to the firewall.

The domains, applications, server farm(s), and/or VLANs to be monitored are identified.

Server Configuration

Complete the details below to for reference during server configuration.

Host name and domain name (optional).

Data Center name.

Placement date and time.

Server IP, netmask, and default gateway.

Server type (Collector/Reporter).

NTP server IP and backup.

DNS server IP and backup.

Mail server and sender mail.

Socket 0: collection port to TAP/switch name.

Socket 1: collection port to TAP/switch name.

Socket 2: rescue/maintenance interface.

<reserved>

Socket 3: Office network to switch name.

Socket 4: collection port to TAP/switch name.

Socket 5: collection port to TAP/switch name.

Data Collection Configuration

Once in place, the server will start collecting data. Specify how much data is expected, and the technologies used.

HTTP traffic (in MB, pageviews, or hits per hour).

Base technology for web applications.

Limits on amount of traffic to be captured:

- HTTP and HTTPS ports (if other than 80/443 HTTP/HTTPS).

- VLAN traffic and VLAN IDs (optional).

Cookie technology.

Page-labelling technology.

Blind POST field names (such as passwd).

User identification in URL (if other than login).

Web service domains or networks.

XML/SOAP envelopes (max 10).

Chronos/EUM URL (for EBS and Forms).

HTTPS Enablement

Specify the contact(s) for the required SSL keys to monitor encrypted traffic.

Name:

Name:

Function:

Function:

E-mail:

E-mail:

Phone/Mobile:

Phone/Mobile:

Keys (if not all):

Keys (if not all):

System Health Notifications

The system can trigger and send alerts for various components. Specify the users, notification methods, and details for each component.

Name:

Name:

Function:

Function:

E-mail:

E-mail:

Mobile:

Mobile:

Text message:

Text message:

Alerting via SNMP (Optional)Foot 1

SNMP management server.

SNMP community name.

SNMP version.

Footnote 1 RUEI provides a standard MIB to be imported into the SNMP manager.

I Removing RUEI From Systems

This appendix describes the procedure for uninstalling RUEI from Reporter, Collector, and Processing Engine systems.

Do the following for each Reporter, Collector, and Processing Engine system unless indicated otherwise:

1. Logon to required system as the RUEI_USER user, and clear all crontab entries by issuing the following command:

echo "" | crontab

2. Stop all processing on the Reporter and Processing Engine systems by issuing the following command as the RUEI_USER user:

project -stop

In the case of Collector systems, stop data collection by issuing the following command:

appsensor stop wg

3. Remove the installed RUEI RPMs by issuing the following command as the root user:

rpm -qa | grep ^ux- | xargs rpm -e

If parts of the installed RPMs were removed manually or corrupted, errors might be encountered in the above step. In this case, you should issue the following command:

rpm -qa | grep ^ux- | xargs rpm -e --noscripts

Note that part of the installation may remain after issuing the above command.

4. On the Reporter system, unistall the php-oci8 module, Oracle database Instant client, PHP configuration, and SQLplus extension by issuing the following commands as the root user:

rm /etc/php.d/ruei.ini
rpm -e php-oci8-11gR2
rpm -e oracle-instantclient11.2-sqlplus
rpm -e oracle-instantclient11.2-basic

5. Ensure that all RUEI daemons are deactivated by executing the following commands as the root user:

. /etc/ruei.conf
killall -u $RUEI_USER

6. Remove all RUEI data files by executing the following commands at the root user:

rm -rf $RUEI_HOME
rm -rf $RUEI_DATA

7. Remove each database instance by logging onto the required database server(s) as the oracle user, and executing the following commands:

. /etc/ruei.conf
. oraenv
dbca -silent -deleteDatabase -sourceDB ${RUEI_DB_INST}

Note that when prompted for the Oracle SID, you should specify the same value as that for the RUEI_DB_INST setting in the /etc/ruei.conf file.

8. For Reporter and Collector systems, remove the Java Runtime Environment (JRE) by executing the following commands as the root user:

rm /usr/java/jre1.7.0_09
rm /usr/java/jre

9. On the Reporter system, edit the /etc/sysconfig/httpd file, and remove the following line that loads the RUEI environment:

source /etc/ruei.conf

10. On the Reporter system, restore the original Zend Optimizer configuration file /etc/php.ini by executing the following commands as the root user:

cd /etc/
cp php.ini-zend_optimizer.bak php.ini

Remove the Zend Optimizer installation directory by executing the following command:

rm -rf /usr/local/Zend

Restart the Apache web server using the following command:

/etc/init.d/httpd restart

11. Revert the changes made to user and group settings by executing the following commands as the root user:

. /etc/ruei.conf
userdel $RUEI_USER
groupdel $RUEI_GROUP
usermod -G apache apache

12. Remove the RUEI configuration file /etc/ruei.conf using the following command as the root user:

rm /etc/ruei.conf

13. Note that during the installation procedure, you may have installed several additional RPMs. Which of these can safely be removed depends on the original Linux installation.

14. Be aware that a database installation will remain on each database server. The procedure for uninstalling the Oracle database is fully described in the product documentation.

J Third-Party Licenses

This appendix contains licensing information about certain third-party products included with this release of RUEI. Unless otherwise specifically noted, all licenses herein are provided for notice purposes only.

The sections in this appendix describe the following third-party licenses:

- Apache Software License, Version 2.0

- OpenSSL

- PHP

- Java Runtime Environment

- The MIT License (MIT)

Apache Software License, Version 2.0

Apache License

Version 2.0, January 2004

http://www.apache.org/licenses/

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.

"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.

"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.

"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License.

"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.

"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.

"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).

"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.

"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution."

"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.

2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.

3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.

4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:

- You must give any other recipients of the Work or Derivative Works a copy of this License; and

- You must cause any modified files to carry prominent notices stating that You changed the files; and

- You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and

- If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.

5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.

6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.

7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.

8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.

9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

APPENDIX: How to apply the Apache License to your work.

To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives.

Copyright [yyyy] [name of copyright owner]

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

OpenSSL

This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org).

Copyright © 1998-2011 The OpenSSL Project. All rights reserved. It is distributed under the license available at the following location:

http://www.openssl.org/source/license.html

PHP

Copyright © 1999-2013 The PHP Group. All rights reserved.

This product includes PHP software, freely available from http://php.net/software/. It is distributed under the license available at the following location:

http://creativecommons.org/licenses/by/3.0/legalcode

Java Runtime Environment

ORACLE AMERICA, INC. ("ORACLE"), FOR AND ON BEHALF OF ITSELF AND ITS SUBSIDIARIES AND AFFILIATES UNDER COMMON CONTROL, IS WILLING TO LICENSE THE SOFTWARE TO YOU ONLY UPON THE CONDITION THAT YOU ACCEPT ALL OF THE TERMS CONTAINED IN THIS BINARY CODE LICENSE AGREEMENT AND SUPPLEMENTAL LICENSE TERMS (COLLECTIVELY "AGREEMENT"). PLEASE READ THE AGREEMENT CAREFULLY. BY SELECTING THE "ACCEPT LICENSE AGREEMENT" (OR THE EQUIVALENT) BUTTON AND/OR BY USING THE SOFTWARE YOU ACKNOWLEDGE THAT YOU HAVE READ THE TERMS AND AGREE TO THEM. IF YOU ARE AGREEING TO THESE TERMS ON BEHALF OF A COMPANY OR OTHER LEGAL ENTITY, YOU REPRESENT THAT YOU HAVE THE LEGAL AUTHORITY TO BIND THE LEGAL ENTITY TO THESE TERMS. IF YOU DO NOT HAVE SUCH AUTHORITY, OR IF YOU DO NOT WISH TO BE BOUND BY THE TERMS, THEN SELECT THE "DECLINE LICENSE AGREEMENT" (OR THE EQUIVALENT) BUTTON AND YOU MUST NOT USE THE SOFTWARE ON THIS SITE OR ANY OTHER MEDIA ON WHICH THE SOFTWARE IS CONTAINED.

1. DEFINITIONS. "Software" means the software identified above in binary form that you selected for download, install or use (in the version You selected for download, install or use) from Oracle or its authorized licensees, any other machine readable materials (including, but not limited to, libraries, source files, header files, and data files), any updates or error corrections provided by Oracle, and any user manuals, programming guides and other documentation provided to you by Oracle under this Agreement. "General Purpose Desktop Computers and Servers" means computers, including desktop and laptop computers, or servers, used for general computing functions under end user control (such as but not specifically limited to email, general purpose Internet browsing, and office suite productivity tools). The use of Software in systems and solutions that provide dedicated functionality (other than as mentioned above) or designed for use in embedded or function-specific software applications, for example but not limited to: Software embedded in or bundled with industrial control systems, wireless mobile telephones, wireless handheld devices, netbooks, kiosks, TV/STB, Blu-ray Disc devices, telematics and network control switching equipment, printers and storage management systems, and other related systems are excluded from this definition and not licensed under this Agreement. "Programs" means: (a) Java technology applets and applications intended to run on the Java Platform, Standard Edition platform on Java-enabled General Purpose Desktop Computers and Servers, and (b) JavaFX technology applications intended to run on the JavaFX Runtime on JavaFX-enabled General Purpose Desktop Computers and Servers. ”README File” means the README file for the Software set forth in the Software or otherwise available from Oracle at or through the following URL:

http://www.oracle.com/technetwork/java/javase/documentation/index.html

2. LICENSE TO USE. Subject to the terms and conditions of this Agreement including, but not limited to, the Java Technology Restrictions of the Supplemental License Terms, Oracle grants you a non-exclusive, non-transferable, limited license without license fees to reproduce and use internally the Software complete and unmodified for the sole purpose of running Programs.

3. RESTRICTIONS. Software is copyrighted. Title to Software and all associated intellectual property rights is retained by Oracle and/or its licensors. Unless enforcement is prohibited by applicable law, you may not modify, decompile, or reverse engineer Software. You acknowledge that the Software is developed for general use in a variety of information management applications; it is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use the Software in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle disclaims any express or implied warranty of fitness for such uses. No right, title or interest in or to any trademark, service mark, logo or trade name of Oracle or its licensors is granted under this Agreement. Additional restrictions for developers and/or publishers licenses are set forth in the Supplemental License Terms.

4. DISCLAIMER OF WARRANTY. THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. ORACLE FURTHER DISCLAIMS ALL WARRANTIES, EXPRESS AND IMPLIED, INCLUDING WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.

5. LIMITATION OF LIABILITY. IN NO EVENT SHALL ORACLE BE LIABLE FOR ANY INDIRECT, INCIDENTAL, SPECIAL, PUNITIVE OR CONSEQUENTIAL DAMAGES, OR DAMAGES FOR LOSS OF PROFITS, REVENUE, DATA OR DATA USE, INCURRED BY YOU OR ANY THIRD PARTY, WHETHER IN AN ACTION IN CONTRACT OR TORT, EVEN IF ORACLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. ORACLE'S ENTIRE LIABILITY FOR DAMAGES HEREUNDER SHALL IN NO EVENT EXCEED ONE THOUSAND DOLLARS (U.S. $1,000).

6. TERMINATION. This Agreement is effective until terminated. You may terminate this Agreement at any time by destroying all copies of Software. This Agreement will terminate immediately without notice from Oracle if you fail to comply with any provision of this Agreement. Either party may terminate this Agreement immediately should any Software become, or in either party's opinion be likely to become, the subject of a claim of infringement of any intellectual property right. Upon termination, you must destroy all copies of Software.

7. EXPORT REGULATIONS. You agree that U.S. export control laws and other applicable export and import laws govern your use of the Software, including technical data; additional information can be found on Oracle's Global Trade Compliance web site (http://www.oracle.com/products/export). You agree that neither the Software nor any direct product thereof will be exported, directly, or indirectly, in violation of these laws, or will be used for any purpose prohibited by these laws including, without limitation, nuclear, chemical, or biological weapons proliferation.

8. TRADEMARKS AND LOGOS. You acknowledge and agree as between you and Oracle that Oracle owns the ORACLE and JAVA trademarks and all ORACLE- and JAVA-related trademarks, service marks, logos and other brand designations ("Oracle Marks"), and you agree to comply with the Third Party Usage Guidelines for Oracle Trademarks currently located at http://www.oracle.com/us/legal/third-party-trademarks/index.html. Any use you make of the Oracle Marks inures to Oracle's benefit.

9. U.S. GOVERNMENT LICENSE RIGHTS. If Software is being acquired by or on behalf of the U.S. Government or by a U.S. Government prime contractor or subcontractor (at any tier), then the Government's rights in Software and accompanying documentation shall be only those set forth in this Agreement.

10. GOVERNING LAW. This agreement is governed by the substantive and procedural laws of California. You and Oracle agree to submit to the exclusive jurisdiction of, and venue in, the courts of San Francisco, or Santa Clara counties in California in any dispute arising out of or relating to this agreement.

11. SEVERABILITY. If any provision of this Agreement is held to be unenforceable, this Agreement will remain in effect with the provision omitted, unless omission would frustrate the intent of the parties, in which case this Agreement will immediately terminate.

12. INTEGRATION. This Agreement is the entire agreement between you and Oracle relating to its subject matter. It supersedes all prior or contemporaneous oral or written communications, proposals, representations and warranties and prevails over any conflicting or additional terms of any quote, order, acknowledgment, or other communication between the parties relating to its subject matter during the term of this Agreement. No modification of this Agreement will be binding, unless in writing and signed by an authorized representative of each party.

SUPPLEMENTAL LICENSE TERMS

These Supplemental License Terms add to or modify the terms of the Binary Code License Agreement. Capitalized terms not defined in these Supplemental Terms shall have the same meanings ascribed to them in the Binary Code License Agreement. These Supplemental Terms shall supersede any inconsistent or conflicting terms in the Binary Code License Agreement, or in any license contained within the Software.

A. SOFTWARE INTERNAL USE FOR DEVELOPMENT LICENSE GRANT. Subject to the terms and conditions of this Agreement and restrictions and exceptions set forth in the README File incorporated herein by reference, including, but not limited to the Java Technology Restrictions of these Supplemental Terms, Oracle grants you a non-exclusive, non-transferable, limited license without fees to reproduce internally and use internally the Software complete and unmodified for the purpose of designing, developing, and testing your Programs.

B. LICENSE TO DISTRIBUTE SOFTWARE. Subject to the terms and conditions of this Agreement and restrictions and exceptions set forth in the README File, including, but not limited to the Java Technology Restrictions of these Supplemental Terms, Oracle grants you a non-exclusive, non-transferable, limited license without fees to reproduce and distribute the Software, provided that (i) you distribute the Software complete and unmodified and only bundled as part of, and for the sole purpose of running, your Programs, (ii) the Programs add significant and primary functionality to the Software, (iii) you do not distribute additional software intended to replace any component(s) of the Software, (iv) you do not remove or alter any proprietary legends or notices contained in the Software, (v) you only distribute the Software subject to a license agreement that protects Oracle's interests consistent with the terms contained in this Agreement, and (vi) you agree to defend and indemnify Oracle and its licensors from and against any damages, costs, liabilities, settlement amounts and/or expenses (including attorneys' fees) incurred in connection with any claim, lawsuit or action by any third party that arises or results from the use or distribution of any and all Programs and/or Software. The license set forth in this Section B does not extend to the Software identified in Section D.

C. LICENSE TO DISTRIBUTE REDISTRIBUTABLES. Subject to the terms and conditions of this Agreement and restrictions and exceptions set forth in the README File, including but not limited to the Java Technology Restrictions of these Supplemental Terms, Oracle grants you a non-exclusive, non-transferable, limited license without fees to reproduce and distribute those files specifically identified as redistributable in the README File ("Redistributables") provided that: (i) you distribute the Redistributables complete and unmodified, and only bundled as part of Programs, (ii) the Programs add significant and primary functionality to the Redistributables, (iii) you do not distribute additional software intended to supersede any component(s) of the Redistributables (unless otherwise specified in the applicable README File), (iv) you do not remove or alter any proprietary legends or notices contained in or on the Redistributables, (v) you only distribute the Redistributables pursuant to a license agreement that protects Oracle's interests consistent with the terms contained in the Agreement, (vi) you agree to defend and indemnify Oracle and its licensors from and against any damages, costs, liabilities, settlement amounts and/or expenses (including attorneys' fees) incurred in connection with any claim, lawsuit or action by any third party that arises or results from the use or distribution of any and all Programs and/or Software. The license set forth in this Section C does not extend to the Software identified in Section D.

D. JAVA TECHNOLOGY RESTRICTIONS. You may not create, modify, or change the behavior of, or authorize your licensees to create, modify, or change the behavior of, classes, interfaces, or subpackages that are in any way identified as "java", "javax", "javafx", "sun", ”oracle” or similar convention as specified by Oracle in any naming convention designation. You shall not redistribute the Software listed on Schedule 1.

E. SOURCE CODE. Software may contain source code that, unless expressly licensed for other purposes, is provided solely for reference purposes pursuant to the terms of this Agreement. Source code may not be redistributed unless expressly provided for in this Agreement.

F. THIRD PARTY CODE. Additional copyright notices and license terms applicable to portions of the Software are set forth in the THIRDPARTYLICENSEREADME file set forth in the Software or otherwise available from Oracle at or through the following URL: http://www.oracle.com/technetwork/java/javase/documentation/index.html. In addition to any terms and conditions of any third party opensource/freeware license identified in the THIRDPARTYLICENSEREADME file, the disclaimer of warranty and limitation of liability provisions in paragraphs 4 and 5 of the Binary Code License Agreement shall apply to all Software in this distribution.

G. TERMINATION FOR INFRINGEMENT. Either party may terminate this Agreement immediately should any Software become, or in either party's opinion be likely to become, the subject of a claim of infringement of any intellectual property right.

H. INSTALLATION AND AUTO-UPDATE. The Software's installation and auto-update processes transmit a limited amount of data to Oracle (or its service provider) about those specific processes to help Oracle understand and optimize them. Oracle does not associate the data with personally identifiable information. You can find more information about the data Oracle collects as a result of your Software download at http://www.oracle.com/technetwork/java/javase/documentation/index.html.

For inquiries please contact: Oracle America, Inc., 500 Oracle Parkway, Redwood Shores, California 94065, USA.

License for Archived Java SE Technologies; Last updated 13 March 2012.

The MIT License (MIT)

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Index
A  C  D  E  F  H  I  J  L  M  N  O  P  R  S  T  U  W  X  Z

A

accounts

database, A.3

Security Officer, 6.4.6

Administrator, 6 Apache Web server, 2.7.1

C

checklist, A, E, H

client requirements, 1.10

Collector

checking status, 6.5.2

configuring, 6.3

resetting, 6.3.1

configuration

apache, 2.7.1

browser redirection, 2.12

Collector, 6.3

failover Reporter, 9, 11

file, 2.4.1, 8.2

initial RUEI, 6.2

MTA, 2.10

network interface, 2.8

OAM, 7

OS security, 2.1.4, 8.1.2

PHP, 2.7.1.1

post-installation, 6.2

Reporter communication, 2.13, 8.4

secondary Collector, 10.3

SNMP, 2.11

cookie technology, 6.4.1 cookies, B, B, C, C, F, F copy ports, 1.3.1

D

data retention policies, 1.7.6

database

generic setup, B, B

installation, 2.1.8

Processing Engine, 8.3.3

deployment, 1.7.5

E

Enriched data export, C, C

F

failover

Collector, 10

Processing Engine, 11

Reporter, 9, 11

Forms traffic, 1.3, 1.7.5 full session replay, 1.7.7

H

hardware requirements, 1.7

I

installation

checklist, A, E, H

data collection, 1.1.1

database instant client, 2.7.2, 8.3.2

Java, 2.4.2

Oracle database, 2.1.8, 8.1.5

Oracle database directory, A.6

Oracle HTTP server, 5.4

prerequisities, 2.1, 8.1

Processing Engine, 8.1

remote Collector, 2.5, 2.6

Reporter, 2.7.6, 8.3.4

RUEI software, 2.3

secondary Collector, 10.2

secondary Processing Engine, 11.1

secondary Reporter, 9.3, 11.3

verifying, 2.14

installation checklist, A, E, H Instant Client, 2.7.2, 8.3.2

J

Java, 2.4.2

L

Linux

NTP daemon, 2.1.5, 8.1.3

requirements, 1.8

M

mail setup, 6.2

memory requirements, 1.7.8

MTA configuration, 2.10

multibyte fonts, 2.9

N

network

cards, 1.7

configuration, 2.8

requirements, 1.9

traffic, 6.5.1

verifying traffic, F

NTP daemon, 2.1.5, 8.1.3

O

OAM, 7

Oracle database

init script file, A.8

installation directory, A.6

Instant Client, 2.7.2, 8.3.2

kernel settings, A.4

required packages, 2.1.7, 8.1.4, 8.1.4

shell limits, A.5

user accounts and groups, A.3

user’s environment, A.7

Oracle wallet, B.8, C.3.2

P

pages names, 6.4.4

php-oci8 module, 2.7.3

Processing Engines, 8.1

R

Reporter

configuring communication, 2.13, 8.4

failover system, 9

installation, 2.7, 8.3

upgrading, 3.10, 3.11

requirements

client, 1.10

disk space, 2.1.2, 8.1.1

FSR storage, 1.7.7

hardware, 1.7

memory, 1.7.8

network, 1.9

software, 1.8

rolling back, 3.12 rsvg warnings, 2.7.1.2 RUEI

client requirements, 1.10

configuration file, 2.4.1, 8.2

configuring, 6

confirming data collection, 6.5.2

connection options, 1.3

deployment, 1.7.5

hardware requirements, 1.7

installation checklist, A, E, H

introduction, 1.1

mail setup, 6.2

naming pages, 6.4.4

network requirements, 1.9

obtaining software, 2.2

post-innstallation configuration, 6.4

Processing Engines, 8.1

scope of monitoring, 6.4.5

security, 1.2

software requirements, 1.8

troubleshooting, G

verifying, 6.5

ruei-check.sh script, A, E ruei.conf file, 2.4.1, 8.2

S

security, 1.2

Sendmail MTA, 2.10

SNMP, 2.11

software requirements, 1.8

SSL keys, 1.3, 6.4.2

SSO authentication, 5, 5

T

TAPs, 1.3.2

TCP diagnostics, F

third-party licenses, J

troubleshooting, G

U

upgrade

accelerator packages, 3.10, 3.11

remote Collector, 3.10.2, 3.11.2

Reporter system, 3.10.1, 3.11.1

users

authorizing, 6.4.6

identification, 6.4.3

Oracle database, A.3

Oracle database environment, A.7

W

wizard

initial setup, 6.2

X

XPath support, 3.3

Z

Zend Guard Loader, 2.7.4

Zend Optimizer, 2.7.4

Oracle Legal Notices

Copyright Notice

Copyright © 1994-2015, Oracle and/or its affiliates. All rights reserved.

Trademark Notice

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.

License Restrictions Warranty/Consequential Damages Disclaimer

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

Warranty Disclaimer

The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

Restricted Rights Notice

If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable:

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

Hazardous Applications Notice

This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.

Third-Party Content, Products, and Services Disclaimer

This software or hardware and documentation may provide access to or information on content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services.

Alpha and Beta Draft Documentation Notice

If this document is in preproduction status:

This documentation is in preproduction status and is intended for demonstration and preliminary use only. It may not be specific to the hardware on which you are using the software. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to this documentation and will not be responsible for any loss, costs, or damages incurred due to the use of this documentation.