flexframe agents guide -...

367
FlexFrame ® Version 5.3A / 1.0A FlexFrame Agents Installation and Administration Edition 06.05.14 Document Version 1.4

Upload: others

Post on 30-Apr-2020

17 views

Category:

Documents


0 download

TRANSCRIPT

FlexFrame®

Version 5.3A / 1.0A

FlexFrame Agents Installation and Administration

Edition 06.05.14 Document Version 1.4

Fujitsu Limited

© Copyright Fujitsu Technology Solutions 2013

FlexFrame® and PRIMERGY™ are trademarks or registered trademarks of Fujitsu Limited in Japan

and other countries.

myAMC® is a registered trademark of Atos in Germany and in several other countries.

SAP® and NetWeaver™ are trademarks or registered trademarks of SAP AG in Germany and in

several other countries

Linux® is a registered trademark of Linus Torvalds

SUSE® Linux is a registered trademark of Novell, Inc., in the United States and other countries

Oracle™ and Java™ are trademarks of ORACLE Corporation and/or its affiliates

Intel® and PXE

® are registered trademarks of Intel Corporation in the United States and other coun-

tries

MaxDB® is a registered trademark of MySQL AB, Sweden

MySQL® is a registered trademark of MySQL AB, Sweden

postgreSQL® is a registered trademark of PostgreSQL global development group

NetApp® and the Network Appliance® logo are registered trademarks and Network Appli-

ance™ and Data ONTAP™ are trademarks of NetApp, Inc. in the U.S. and other coun-

tries.

EMC®, CLARiiON

®, Symmetrix

® and Celerra™ are trademarks or registered trademarks of EMC

Corporation in the United States and other countries

VMware®, ESX

®, ESXi, VMware vCenter, VMware vSphere are registered trademarks or trademarks

of VMware, Inc. in the United States and/or other jurisdictions.

Ethernet® is a registered trademark of XEROX, Inc., Digital Equipment Corporation and Intel Corpo-

ration

Windows® and Word

® are registered trademarks of Microsoft Corporation

All other hardware and software names used are trademarks of their respective companies.

All rights, including rights of translation, reproduction by printing, copying or similar methods, in part

or in whole, are reserved.

Offenders will be liable for damages.

All rights, including rights created by patent grant or registration of a utility model or design, are reserved. Delivery subject to availability. Right of technical modification reserved.

3 FlexFrame Agents Guide

5 FlexFrame Agents Guide

Contents

General product information and naming .................................................................... 11

1 Introduction ................................................................................................... 13 1.1 FlexFrame Autonomy ...................................................................................... 14 1.2 Additional Documentation ............................................................................... 14 1.3 Target Group ................................................................................................... 15 1.4 Notational Conventions ................................................................................... 15 1.5 Document History ............................................................................................ 16 1.6 Changes and Enhancements in this Version ................................................... 17 1.7 Related Documents ......................................................................................... 18

2 First Steps ...................................................................................................... 19 2.1 General Information ......................................................................................... 19 2.2 Installation and Startup .................................................................................... 20 2.2.1 The FlexFrame Solution .................................................................................. 20 2.2.2 Installation ....................................................................................................... 21 2.2.3 Configuration ................................................................................................... 33 2.2.4 Starting and Stopping ...................................................................................... 34 2.2.5 FA-Agents in different FlexFrame Versions ..................................................... 35 2.2.6 Configuration of generic .................................................................................. 41 2.3 FA WebInterface ............................................................................................. 43 2.3.1 Function .......................................................................................................... 43 2.3.2 Installation ....................................................................................................... 43 2.3.3 Configuration ................................................................................................... 43 2.3.4 Starting and Stopping ...................................................................................... 43 2.3.5 myAMC.FA WebGui and database ................................................................. 43 2.4 DomainManager .............................................................................................. 46 2.4.1 Database connection ....................................................................................... 46 2.5 Messenger....................................................................................................... 48 2.5.1 Database connection ....................................................................................... 48 2.6 myAMC.FA version management .................................................................... 50 2.6.1 Lifecycle process ............................................................................................. 50 2.6.2 Lifecycle management files ............................................................................. 51 2.7 Usage of Pool-Master ...................................................................................... 57 2.7.1 Create Pool-Master from existing pool ............................................................ 58 2.7.2 Create/Update pool from Pool-Master ............................................................. 58 2.7.3 Usage of ‘fa_MasterPoolMgr.sh’ ..................................................................... 60 2.7.4 Automation of steps during pool creation ........................................................ 60

3 Introduction ................................................................................................... 63 3.1 FlexFrame Autonomy Architecture .................................................................. 63

Contents

FlexFrame Agents Guide 6

3.1.1 FlexFrame Autonomy Visualization and Reporting .......................................... 65 3.1.2 FlexFrame Autonomy virtual server and hypervisor nodes .............................. 66 3.2 Pool Creation and Grouping ............................................................................ 68 3.2.1 Virtual FlexFrame Autonomy Pools ................................................................. 68 3.2.2 Grouping .......................................................................................................... 71 3.2.3 Pool Types (Pool Independent Spare) ............................................................. 71 3.3 Service Classes ............................................................................................... 75 3.3.1 Service Priority ................................................................................................ 75 3.3.2 Service Power Value ....................................................................................... 75 3.3.3 Class Creation Rules ....................................................................................... 76 3.3.4 Testament Types ............................................................................................. 76 3.4 FA Configuration, Work and Log Files ............................................................. 77 3.5 Systems ........................................................................................................... 78 3.5.1 Service Types .................................................................................................. 78 3.6 Generic Services ............................................................................................. 81 3.6.1 Service State Model ........................................................................................ 81 3.6.2 Service Detection Model .................................................................................. 82 3.6.3 Service Reaction Model ................................................................................... 82 3.7 FlexFrame Performance and Accounting Option ............................................ 83 3.7.1 Performance Option ........................................................................................ 84 3.7.2 Accounting Option ........................................................................................... 85 3.7.3 Billing ............................................................................................................... 86 3.8 Parametricable Value Observation and Service Level Profile ......................... 88 3.8.1 Monitoring of file system and directoy utilization .............................................. 88 3.8.2 Performance Profile, Capacity Profile, Accounting Profile ............................... 88 3.9 FlexFrame File System Utilization and File Space Accounting Option ............ 89 3.9.1 File System Detector and Directory Detector ................................................... 92 3.10 Domain Manager for Performance and File System Collections ..................... 93 3.10.1 Data collection ................................................................................................. 93 3.10.2 Data retentiontime and compression ............................................................... 94

4 FlexFrame Autonomy .................................................................................... 95 4.1 FlexFrame Autonomy Reactions ..................................................................... 96 4.1.1 Restart ............................................................................................................. 96 4.1.2 Reboot ............................................................................................................. 96 4.1.3 SwitchOver ...................................................................................................... 96 4.1.4 Maintenance .................................................................................................... 99 4.2 Self-Repair Strategies ..................................................................................... 99 4.2.1 Self-Repair in the Event of a Service Failure ................................................... 99 4.2.2 Self-Repair in the Event of a Node Failure .................................................... 100 4.2.3 Takeover by a Spare Node (TakeOver) ......................................................... 100 4.2.4 Multi Node Failure ......................................................................................... 100 4.3 Escalation with partner service ...................................................................... 102 4.3.1 SCS / ASCS in conjunction with ERS ............................................................ 102 4.3.2 Service with assigned SMD-service .............................................................. 103

Contents

7 FlexFrame Agents Guide

4.4 Takeover Rules ............................................................................................. 105 4.4.1 Overview ....................................................................................................... 105 4.4.2 TakeOver Strategy ........................................................................................ 105 4.4.3 TakeOver Rule .............................................................................................. 106 4.4.4 Spare Nodes from the Adminpool (pool-independent spare node)................ 113 4.5 Management of Performance, File System and Accounting .......................... 121 4.5.1 Performance and Accounting Management .................................................. 121 4.5.2 File System Utilization ................................................................................... 121 4.5.3 Monitoring Cycles .......................................................................................... 121 4.6 Operating Mode ............................................................................................. 122 4.6.1 Event Mode ................................................................................................... 122 4.6.2 Local Reaction Mode ..................................................................................... 122 4.6.3 Central Reaction Mode .................................................................................. 122 4.7 Autonomous Operation of a FlexFrame Infrastructure ................................. 124 4.7.1 FlexFrame Autonomy and Fujitsu FlexFrame Scripts .................................... 124 4.8 FlexFrame Autonomy and User Interactions ................................................. 125 4.8.1 myAMC.FA_Agents: Starting/Stopping/Status .............................................. 126 4.8.2 Starting/Stopping an SAP Instance ............................................................... 128 4.8.3 NoWatch/Watch an SAP Instance ................................................................. 130 4.9 Use cases...................................................................................................... 131 4.9.1 General ......................................................................................................... 131 4.9.2 Semi-autonomous operation ......................................................................... 132 4.9.3 Autonomy for Application Instances .............................................................. 133 4.9.4 Management of Performance, Capacity and Accounting .............................. 135 4.9.5 File System Utilization ................................................................................... 135 4.9.6 High Availability and Autonomy Rules ........................................................... 136 4.10 FA Work and Log Files .................................................................................. 146 4.11 Migration of FA Agent Versions on Pool Level .............................................. 147 4.12 The FA Migration Tool ................................................................................... 151 4.12.1 Pool Mode ..................................................................................................... 151 4.12.2 File Mode....................................................................................................... 151 4.12.3 Usage ............................................................................................................ 152 4.13 Command Line Interface fa_list_services.sh ................................................. 154 4.14 Command Execution at All Nodes of a Pool / ALL_POOLS .......................... 155

5 WebInterface ................................................................................................ 157 5.1 Installation / Configuration ............................................................................. 157 5.1.1 Prerequisites ................................................................................................. 157 5.1.2 Installation ..................................................................................................... 157 5.1.3 Configuration ................................................................................................. 157 5.2 Visualization .................................................................................................. 162 5.2.1 Starting the WebInterface / Access via Web Browser ................................... 162 5.2.2 Login ............................................................................................................. 162 5.2.3 Overview of Elements ................................................................................... 163 5.2.4 Pool / Group Tree .......................................................................................... 164

Contents

FlexFrame Agents Guide 8

5.2.5 Status Display ................................................................................................ 170 5.2.6 Message Display ........................................................................................... 176 5.2.7 Configuration of FlexFrame Autonomy with the Webinterface ....................... 181 5.2.8 Special Signals .............................................................................................. 191 5.3 Interaction ...................................................................................................... 192 5.3.1 Updates ......................................................................................................... 192 5.4 Info and Help ................................................................................................. 194 5.5 FlexFrame Performance and Accounting Plug-in .......................................... 195 5.6 FlexFrame Reporting Plug-in ......................................................................... 195 5.7 Customization of Icons in the FA WebGUI .................................................... 196

6 FlexFrame Autonomy Power Shutdown Concept ..................................... 197 6.1 General .......................................................................................................... 197 6.2 Power Shutdown Architecture ....................................................................... 198 6.3 Basics ............................................................................................................ 199 6.3.1 Powershutdown methods for use with FA generic shutdown facility .............. 199 6.4 Power Shutdown Configuration ..................................................................... 201 6.4.1 Switchover Control Parameters ..................................................................... 202 6.4.2 User, Password and Community ................................................................... 204 6.4.3 Management Blades ...................................................................................... 207 6.4.4 Application Nodes .......................................................................................... 209 6.4.5 Default Shutdown Mode ................................................................................ 214 6.4.6 Management blades with SNMP-community different from default ............... 214 6.5 Possible Errormessages with old Configuration ............................................ 215

7 Parameter Reference ................................................................................... 217 7.1 FA Agents ...................................................................................................... 217 7.1.1 FA Agent Configuration Files ......................................................................... 217 7.2 SNMP Traps .................................................................................................. 218 7.2.1 General .......................................................................................................... 218 7.2.2 Structure ........................................................................................................ 218 7.2.3 Default Parameter File ................................................................................... 220 7.3 Pooling and Grouping .................................................................................... 221 7.3.1 Pooling........................................................................................................... 221 7.3.2 Grouping ........................................................................................................ 221 7.3.3 Default Parameter File ................................................................................... 226 7.4 Service Classes ............................................................................................. 245 7.4.1 Service Priority .............................................................................................. 245 7.4.2 Service Power Value ..................................................................................... 245 7.4.3 Class Creation Rules ..................................................................................... 245 7.4.4 Example......................................................................................................... 245 7.5 FlexFrame Autonomy .................................................................................... 246 7.5.1 General Parameters ...................................................................................... 247 7.5.2 Parameters for the Performance and Accounting Option .............................. 249 7.5.3 Parameters for the File System Utilization ..................................................... 249

Contents

9 FlexFrame Agents Guide

7.5.4 Configuration of the Spaceutil Functionality .................................................. 249 7.5.5 Parameters for the Admin Pool Option .......................................................... 259 7.5.6 Parameters for ServicePing........................................................................... 260 7.5.7 Node-related Parameters .............................................................................. 260 7.5.8 Service-related Parameters ........................................................................... 261 7.5.9 Parameters for the Definition of a Generic Service ....................................... 263 7.5.10 Path Configuration ......................................................................................... 268 7.5.11 Shutdown Configuration ................................................................................ 270 7.5.12 Default Parameter File .................................................................................. 271

<?xml version="1.0" encoding="ISO-8859-1"?> ........................................... 272 7.5.13 FA FrameAgent ............................................................................................. 303 7.5.14 Adjustment of the FA WebGUI ...................................................................... 303 7.5.15 FA Webservices and Hypervisor Monitor configuration ................................. 304 7.6 FA DomainManager ...................................................................................... 305 7.6.1 Common ........................................................................................................ 305 7.6.2 Configuration ................................................................................................. 305

8 BlackBoard .................................................................................................. 311 8.1 General ......................................................................................................... 311 8.2 Implementation .............................................................................................. 311 8.3 Generating BlackBoard Commands .............................................................. 314 8.3.1 WebInterface ................................................................................................. 314 8.3.2 Interactive ...................................................................................................... 315 8.4 Commands .................................................................................................... 315

9 FlexFrame Autonomous Agent Traps ....................................................... 317 9.1 General ......................................................................................................... 317 9.2 Structur of FlexFrame Autonomy Traps ........................................................ 318 9.3 Overview of the FlexFrame Autonomy SNMP Traps ..................................... 321

10 FA Troubleshooting .................................................................................... 337 10.1 General ......................................................................................................... 337 10.2 Incident Diagnosis..................................................................................... 337 10.3 FA Work and Log Files .................................................................................. 341 10.3.1 General ......................................................................................................... 341 10.3.2 Overview, Principal Directories, Files ............................................................ 341 10.3.3 Collecting Diagnostic Information for Support Assistance ............................. 347 10.3.4 Selected Files ................................................................................................ 349 10.3.5 FA Autonomy Diagnostic Tool ....................................................................... 350 10.3.6 Collecting Diagnostic Information for Support Assistance ............................. 351

11 Abbreviations .............................................................................................. 353

Contents

FlexFrame Agents Guide 10

12 Glossary ....................................................................................................... 357

13 Index ............................................................................................................. 363

11 FlexFrame Agents Guide

General product information and naming

This manual describes the functional concepts and the application scenarios of the Flex-

Frame® Agents.

This solution is offered in two characteristics:

the FlexFrame® for SAP

® V5.3A solution

This is the successor of the well-known solution FlexFrame® for SAP

®

which is in the market for years with its latest version V5.2A.

the FlexFrame® Orchestrator V1.0A solution

This is a new approach to offer enhanced functionality and features

(e.g. support of SAP HANA, support of KVM as virtual machine) step by

step and become more and more independent from certain hardware

and software components. These additional new features compared to

the traditional FlexFrame for SAP features are available by special li-

censes only.

This documentation is for both characteristics:

All descriptions regarding FlexFrame Orchestrator have a corresponding notifi-

cation within their chapters.

If there is no notification regarding FlexFrame Orchestrator the described func-

tionality is valid for both characteristics.

The name FlexFrame® is a generic term for both „FlexFrame

® for SAP

®“ (FF4S) and

„FlexFrame® Orchestrator“ (FFO).

The trademark myAMC® is not be used any more. The brand myAMC

® will be replaced

by the brand FlexFrame®, e.g. instead of myAMC Accounting we now speak about Flex-

Frame Accounting.

The abbreviation FA for FlexFrame Autonomy now denotes the FlexFrame Agents

(Application Agents, Control Agents and the Frame Agent). The FA Suite now denotes

the FlexFrame Agents Suite.

These changes have not yet been made in this manual, but will be carried out in the next

edition.

13 FlexFrame Agents Guide

1 Introduction

For many companies, applications such as SAP® today provide the basis for handling all

important business processes. Failure of these components therefore results in consider-

able costs. Nowadays companies must be able to react very rapidly to changing market

and organizational demands, which also means that it must be possible to adapt the

capacity of existing IT resources very quickly to the changing requirements.

The myAMC components for monitoring the availability and utilization of IT systems with

their intelligent automated facility for responding to system failures are the answer to

these demands. FlexFrame® Autonomy complements the powerful monitoring and man-

agement functions of myAMC with functions which permit the autonomous operation of a

distributed applications environment. These functions reduce the number of manual inter-

ventions and make the operation of your business critical applications more efficient.

FlexFrame offers a flexible hardware architecture which can be adapted to altered re-

quirements and, together with management components, permits highly available opera-

tion of this infrastructure. Partial outages are automatically repaired or compensated for.

FlexFrame Autonomy is an integral component of every FlexFrame solution and provides

the functions for implementing operation with considerably reduced operator interventions

through the built-in autonomy functions, right up to a high-availability solution.

This manual describes the functional concepts and the application scenarios for Flex-

Frame Autonomy.

FlexFrame Autonomy for distributed database instances, SAP central instances and SAP

application instances

FlexFrame Autonomy supports SAP, SAPDB and Oracle instances

Status monitoring, restart, reboot or switchover of instances

Introduction

FlexFrame Agents Guide 14

1.1 FlexFrame Autonomy

The Application Management Center myAMC is a solution for monitoring and managing IT

infrastructures. The FlexFrame Autonomy component myAMC.FA substantially extends

the range of functions. In addition to monitoring, this component also provides the option

of implementing automatic restoration of failed services autonomously. These self-repair

mechanisms are not just effective locally for one system, however; they also permit a

failed service to be moved automatically to another resource which, in line with a defined

rule for operation, is suitable for operating the service.

This function permits a considerable reduction in the number of manual interventions by

an administrator. Availability is increased, and the costs for operating a complex applica-

tions environment are reduced.

For this functionality, myAMC.FA uses its agents and management components to detect,

collect and analyze the information. Autonomous functions can be configured for various

tasks and requirements by combining different detectors and manager components and

by defining and selecting the reaction and decision rules. In conjunction with the powerful

myAMC GUI, the entire infrastructure can be presented in a straightforward manner in an

IT cockpit.

1.2 Additional Documentation

Further application options for other myAMC management components are described in

special documents.

Use of the Messenger for editing and forwarding myAMC.FA messages is described in the

documentation “FlexFrame Messenger Concept and Usage". Use of the LogAgent for

forwarding of log-entries is described in the documentation “FlexFrame LogAgent Con-

cept and Usage “.

Introduction

15 FlexFrame Agents Guide

1.3 Target Group

This documentation is intended to support both users of FlexFrame Autonomy and ad-

ministrators who wish to integrate this solution in an enterprise IT management solution.

1.4 Notational Conventions

The following conventions are used in this manual:

Additional information that should be observed.

Warning that must be observed.

fixed font Names of paths, files, commands, and system output.

<fixed font> Names of variables.

fixed font User input in command examples

(if applicable using <> with variables)

Introduction

FlexFrame Agents Guide 16

1.5 Document History

Document Version Changes Date

1.0 FA Agents Version 9.0 2010-08-06

1.1 Update 2010-12-08

1.2 Update 2011-02-11

1.3 Update 2011-04-12

1.4 Update 2011-05-xx

1.5 Update 2011-06-28

1.6 Update 2011-11-04

1.7 Update 2012-04-05

1.8 Update for FF4S 5.2 2012-08-03

1.9 Update for FF4S 5.2 2012-08-24

1.10 Update for FF4S 5.2 2012-09-28

1.11 Update for FF4S 5.2 2012-10-31

1.12 Update for FF4S 5.2A00-018 2013-02-11

1.13 Update for FF4S 5.2A00-018 2013-02-27

1.0 First Edition for FlexFrame Orchestrator 2013-10-11

1.1 Update for FlexFrame Orchestrator 2014-02-28

1.2 Update for FlexFrame Orchestrator 2014-03-20

1.3 Update for FlexFrame Orchestrator 2014-04-16

1.4 Update for FlexFrame Orchestrator 2014-05-06

Introduction

17 FlexFrame Agents Guide

1.6 Changes and Enhancements in this Version

Automation of pool creation with a master-pool configuration

BOBJ 4.1 as new service variant additional to BOBJ 3.2 and BOBJ 4.0

Usage of KVM as additional virtualization platform

SAP HANA as additional monitored SAP service

Configuration of the service priority with the myAMC.FA WebGui

Separate sets of rules for groups within a pool can be configured

Persistent “NoWatch”

EzSetup-parameter for force installation of packages, even if same version al-

ready exists

Introduction

FlexFrame Agents Guide 18

1.7 Related Documents

FlexFrame® – Administration and Operation

FlexFrame® – HW Characteristics Quickguides

FlexFrame® – Installation and Configuration LVM 1.0 Standard Edition

FlexFrame® – Installation Guide for SAP Solutions

FlexFrame® – Installation of a FlexFrame Environment

FlexFrame® – Management Tool

FlexFrame®

– Agents Installation and Administration

FlexFrame®

– Messenger Concept and Usage

FlexFrame®

– LogAgent Concept and Usage

FlexFrame® – Network Design and Configuration Guide

FlexFrame® – Security Guide

FlexFrame® – Technical White Paper

FlexFrame® – Upgrading FlexFrame 5.1A or 5.2A to 5.3A/1.0A

ServerView Documentation

SUSE Linux Enterprise Server Documentation

19 FlexFrame Agents Guide

2 First Steps

2.1 General Information

This chapter describes how you start and stop the FlexFrame Autonomy components. It

also describes how FlexFrame Autonomy is installed and its basic configuration.

FlexFrame Autonomy provides a comprehensive, flexible and scalable solution for setting

up semi-autonomous IT processes. Its functionality falls into these subareas:

FA_AppAgents: FlexFrame Autonomy Application Agents for monitoring, checking and

controlling instances

FA CtrlAgent / FA FrameAgent: FlexFrame Autonomy Control Agent / Frame Agent for

monitoring, checking and controlling Application Nodes with a separate Control

Node.

FA_WebInterface: A component for displaying the active services on a web front-end.

FA_Messenger: A component for receiving and forwarding messages.

FA_LogAgent: A component for controlling logfiles.

FA_DomainManager: A component for performance- accounting- and fileutilisation op-

tion.

FA_Suite: common component for example version management.

To monitor instances, the FA_AppAgent supplies cyclical information on the availability of

an instance in a definable rhythm. For this purpose it is necessary that the FA_AppAgent

is active on every node.

myAMC.FA_Messenger is used to forward information on faults and autonomous reac-

tions to the outside. This messaging component of the myAMC family should be operated

on the Control Node.

First Steps

FlexFrame Agents Guide 20

2.2 Installation and Startup

2.2.1 The FlexFrame Solution

The FlexFrame Autonomy solution was conceived and developed especially for the

“FlexFrame® for SAP

® “ solution from Fujitsu. Consequently the FlexFrame solution with

the components Shared OS, Virtualized SAP Application and NetApp Storage on the

target computers is a prerequisite for the procedure described in the following.

Further details on FlexFrame configurations can be found in the FlexFrame manual “In-

stallation of a FlexFrame Environment“. Use of FlexFrame Autonomy on other Linux

architectures (e.g. standalone systems or for monitoring processes which do not belong

to SAP R/3) is not described in this manual and is not supported.

The following prerequisites are thus particularly important:

Server architecture with IP storage (NetApp Filer) and client, server and storage LANs.

Paths for read-only and read/write Root images.

SAP start scripts from Fujitsu

Operating system SUSE Linux Enterprise Server (SLES)

FA Agents are installed in a directory on the storage system which is reachable and

available to all nodes in accordance with the FlexFrame rules for jointly used programs.

Programs are always accessed and installed via a Control Node.

The FA Agents are installed using RPM packages. Normally the agents are stored in the

directories /opt/myAMC/FA_AppAgent, /opt/myAMC/FA_CtrlAgent and

/opt/local/myAMC/FA_FrameAgent.

The /opt/myAMC directory is located in a FlexFrame environment on the Filer and is

available from every Application Node and Control Node.

Multiple FlexFrame Autonomy versions can be installed simultaneously. Installation, con-

figuration and activation of a version are three separate activities.

Installation, parameterization and configuration of a new version can thus be performed

during ongoing operation. Only when all preparations have been completed is the active

version deactivated and the new version activated.

Deactivation and activation of a version always takes place on a pool-specific basis. In

this way new agent versions can, for example, first be activated in a pool with test sys-

tems.

First Steps

21 FlexFrame Agents Guide

2.2.2 Installation

2.2.2.1 Requirements

In the case of a FlexFrame standard installation, new software components are installed

via one of the Control Nodes. The FlexFrame Autonomy software is contained in the /opt/myAMC resp. /opt/local/myAMC directory. Ensure that all servers (Control

Nodes and Application Nodes) use the same directories. FlexFrame Autonomy is thus

also installed in a tree on a Filer (NFS share).

The NFS file systems used have to support NFS file locking.

control1:/opt/myAMC # mount

filer1_qa:/vol/volFF/FlexFrame/myAMC on /FlexFrame/myAMC type nfs

(rw,nfsvers=3,intr,noac,wsize=32768,rsize=32768,addr=172.16.1.204)

filer1_qa:/vol/volFF/FlexFrame/scripts on /FlexFrame/scripts type nfs

(rw,nfsvers=3,intr,nolock,noac,wsize=32768,rsize=32768,addr=172.16.1.204)

control1:/opt/myAMC # ls -al /opt/myAMC

lrwxrwxrwx 1 root root 16 Dec 2 18:35 /opt/myAMC ->

/FlexFrame/myAMC

2.2.2.2 Installation Packages

The following packages must be installed:

myAMC.FlexFrame Autonomy Suite; the installation package for this is called

myAMC.FA_Suite-<X.Y-Z>.i386.rpm

myAMC.FlexFrame Autonomy Application Agent; the installation package for this is called

myAMC.FA_AppAgent-<X.Y-Z>.i386.rpm

myAMC.FlexFrame Autonomy Control Agent; the installation package for this is called

myAMC.FA_CtrlAgent-<X.Y-Z>.i386.rpm

myAMC.FlexFrame Autonomy Frame Agent; the installation package for this is called

myAMC.FA_FrameAgent-<X.Y-Z>.i386.rpm

myAMC.FlexFrame Autonomy WebInterface; the installation package for this is called

myAMC.FA_WebGui-<X.Y-Z>.i386.rpm

myAMC.FlexFrame Autonomy Messenger; the installation package for this is called

myAMC.FA_Messenger-<X.Y-Z>.i386.rpm

myAMC.FlexFrame Autonomy LogAgent; the installation package for this is called

myAMC.FA_LogAgent-<X.Y-Z>.i386.rpm

First Steps

FlexFrame Agents Guide 22

myAMC.DomainManager (optional, e.g.for the performance and accounting option), The

installation package for this is called

myAMC.FA_DomainManager-X.Y-Z.i386.rpm

where X.Y-Z stands for the version number.

2.2.2.3 rpm-Installation

Standard installation is implemented from a completely writeable (as the user root)

directory tree.

1. Log onto the target computer as root and copy the rpm packages to a tempo-

rary directory.

2. Install the required package with

rpm –ihv --nodeps myAMC.FA_AppAgent-<X.Y-Z>.i386.rpm

After all the required packages have been installed, the start scripts may need to be

copied to the root images of the various node types (Application / Control).

The FA CtrlAgent and FA FrameAgent may run on the Control Node, and only the FA

AppAgent may run on the Application Nodes.

The rpm-installation will be only used for explicit change of single packages. Thereby no

automatic migration steps will be done.

For installation or patch of an existing myAMC.FA Suite in a FlexFrame solution only

EzSetup will be used (see following chapters).

First Steps

23 FlexFrame Agents Guide

2.2.2.4 EzSetup-Installation

2.2.2.4.1 General

The installation or patch of an existing myAMC.FA Suite in a Flexframe solution will be

supported with a backup-script as of FlexFrame V5.2A00-018.

The backup script allows the backup of config and dynamic data from myAMC.FA Mes-

senger stored in database.

The data of Accounting (myAMC.FA_DomainManager) can also be backed up with the

backup script if the component is active in the FlexFrame.

Also the config files of the myAMC.FA_Agents can be saved.

With parameters of the backup script can be selected which data will be saved.

The backup functionality can be used before any config changes to save the actual con-

figuration. But also before every change of the FlexFrame during an update or patch.

The config and dynamic data of myAMC.FA_Messengers and the optional my-

AMC.FA_DomainManager will be exported as XML datafiles.

Before export of the dynamic accounting data from myAMC.FA_DomainManager the size

of the data must be respected.

With the paramater ‚-t‘ the estimated time for the export will be shown.

Bevor using the backup script it must be checked if there is enough space left at storage

for the exported data.

The fa_ezsetup has a new integration with the FlexFrame Installer environment as of

FlexFrame V5.2A00-018.

The new installation mode is described in the FlexFrame manual “Installation of a Flex-

Frame Environment”.

The fa_ezsetup tool supports now the following installation processes.

new FlexFrame installations as of FlexFrame 5.2A00-018

upgrade FlexFrame from FlexFrame < 5.2A to FlexFrame ≥ V5.2A00-018

patch FlexFrame V5.2A to FlexFrame V5.2A00-n with n ≥ 018

The FlexFrame preinstaller and the FlexFrame installer together with fa_ezbackup and

the fa_ezsetup automate the database migration process from mySQL to postgreSQL.

Attention: A patch installation from FlexFrame V5.2A to FlexFrame V5.2A00-n with n ≥

018 needs a manually triggered fa_ezbackup before you can start fa_ezsetup.

Check the fa_ezbackup logfile before you start the fa_ezsetup!

First Steps

FlexFrame Agents Guide 24

2.2.2.4.2 Backup with EzBackup

With EzBackup the config and dynamic data of an existing database, if it is running inside

of FlexFrame, will be saved.

The data will be stored in the following directory:

/opt/myAMC/Backup/[Komponente][VersionString]

Every component will be named with version number and stored in an own subdirectory.

Usage:

./fa_ezbackup.sh -h

Usage: ./fa_ezbackup.sh [ -x ] [ -a | -c | -d ] [ -m | -u ] [ -p |

-y ] [ -h ] [ -o dirname ] [ -l logfile ]

-x execute export

-a export agent config only

-c export database config only

-d export dynamic data only

-m use messenger database

-u use accounting database

-p use postgreSQL

-y use mySQL

-h display this help

-o dirname specify output directory

-l logfile write all logs into this file

First Steps

25 FlexFrame Agents Guide

Example sequence of backup:

1. Change to directory containing the update script

cn1: # cd /media/dvd/FA_Suite/myAMC_FA

2. Run a test without permanent changes:

This option determines which data is involved and the estimated time for the export.

cn1: # ./fa_ezbackup.sh -l /tmp/myAMC_FA.log

If this test did not report errors continue with step #3.

If this test failed you can't continue since the upgrade will fail. Please fix the problem

by help of the mentioned README and start again with step #2.

3. Run the backup.

cn1: # ./fa_ezbackup.sh -l /tmp/myAMC_FA.log -x

4. Check the results.

Check the data in backup-directory: /opt/myAMC/backup

2.2.2.4.3 Standard-Installation with EzSetup

A detailed description of the installation with EzSetup und possible changes and hints can

be found in the readme-file “fa_ezsetup.README.txt”.

1. Change to directory containing the update script:

cn1: # cd /media/dvd/FA_Suite/myAMC_FA

1.1. Make a backup: (Only needed for FlexFrame versions < 5.2A00-018 for database-

migration to PostgreSQL)

Check for errors and estimated time:

cn1: # ./fa_ezbackup.sh

Do the backup:

First Steps

FlexFrame Agents Guide 26

cn1: # ./fa_ezbackup.sh -x

2. Clear the state:

cn1: # ./fa_ezsetup.sh -L /tmp/myAMC_FA.log -S

/tmp/myAMC_FA.state clear

3. Run a test using the -n option of fa_ezsetup.sh:

This option prevents any permanent changes, but simply shows

what would be done.

For destination FlexFrame-version less or equal 5.1:

cn1: # ./fa_ezsetup.sh -L /tmp/myAMC_FA.log -S

/tmp/myAMC_FA.state –o 51 -n -v -A install

For destination FlexFrame-version greater then 5.1:

cn1: # ./fa_ezsetup.sh -L /tmp/myAMC_FA.log -S

/tmp/myAMC_FA.state -n -v -A install

If this test did not report errors continue with step #4.

If this test failed you can't continue since the upgrade will fail.

Please fix the problem by help of the mentioned README and start again

with step #3.

4. Run the actual upgrade:

cn1: # ./fa_ezsetup.sh -L /tmp/myAMC_FA.log -S

/tmp/myAMC_FA.state clear

For destination FlexFrame-version less or equal 5.1:

cn1: # ./fa_ezsetup.sh -L /tmp/myAMC_FA.log -S

/tmp/myAMC_FA.state –o 51 -v -A activate –r

For destination FlexFrame-version greater then 5.1:

cn1: # ./fa_ezsetup.sh -L /tmp/myAMC_FA.log -S

/tmp/myAMC_FA.state -v -A activate –r

5. Check the results:

First Steps

27 FlexFrame Agents Guide

cn1: # ./fa_ezsetup.sh -L /tmp/myAMC_FA.log -S

/tmp/myAMC_FA.state -v status

Statement regarding destination FlexFrame-version (see option '-o' of fa_ezsetup.sh):

Destination FlexFrame-version less or equal 5.1

The file myAMC_FA_Rules.xml in the pool-config will be not overwritten.

The myAMC.FA_DomainManager will be not migrated.

The myAMC.FA_LogAgent will be not migrated.

The myAMC.FA_Suite will be not installed.

Destination FlexFrame-version greater then 5.1

The file myAMC_FA_Rules.xml in the pool-config will be overwritten with the file

from template.

Possibly hold customer specific rules should be saved before and must be taken

over in the customer specific rule-file myAMC_FA_Rules_Custom.xml manually.

Hint for configfiles:

During installation with EzSetup the poolspecifig config-files will be back up, so customer

specific configuration was saved.

The backup of the old version can be found as follows:

/opt/myAMC/vFF/vFF_<POOL>/Migration.<NEWVERSION>.<DATE>/Backup.<OLDVERSION>/config

The migrated files of the new version can be found as follows:

/opt/myAMC/vFF/vFF_<POOL>/Migration.<NEWVERSION>.<DATE>/config

Example:

/opt/myAMC/vFF/vFF_p1/Migration.V90A00K27.2012-08-23/MIGRATION-INSTRUCTIONS.txt

/opt/myAMC/vFF/vFF_p1/Migration.V90A00K27.2012-08-23/Backup.V90A00K26

/opt/myAMC/vFF/vFF_p1/Migration.V90A00K27.2012-08-23/Backup.V90A00K26/.info

/opt/myAMC/vFF/vFF_p1/Migration.V90A00K27.2012-08-23/Backup.V90A00K26/config

TrapTargets.xml

config-specs.xml

myAMC_FA.xml

myAMC_FA_GUI.xml

myAMC_FA_Groups.xml

myAMC_FA_Rules.xml

myAMC_FA_SD_Sec.xml

First Steps

FlexFrame Agents Guide 28

/opt/myAMC/vFF/vFF_p1/Migration.V90A00K27.2012-08-23/.info

/opt/myAMC/vFF/vFF_p1/Migration.V90A00K27.2012-08-23/config

TrapTargets.xml

config-specs.xml

myAMC_FA.xml

myAMC_FA_GUI.xml

myAMC_FA_Groups.xml

myAMC_FA_Rules.xml

myAMC_FA_SD_Sec.xml

2.2.2.4.4 Important for Installation with fa_ezsetup

The installation/upgrade using fa_ezsetup must be performed on the active control node.

2.2.2.4.4.1 For FlexFrame < V 5.2A00-018

For FlexFrame < V5.2A00-018 within an update or patch installation of FlexFrame the

migration of the used database will not be done automatically.

The database creation / updates must be performed manually before using fa_ezsetup.

Necessary databases:

Necessary creation and updates of myAMC.FA_Messenger and my-

AMC.FA_DomainManager database won't be done automatically.

The database creation / updates must be performed before using fa_ezsetup.

This must be done in maintenance mode of an HA-Software.

The myAMC.Messenger / myAMC.FA_DomainManager must be stopped.

Creation of database:

Syntax for mySQL:

mysql -u [user] -p[passwort] < SQL-script.sql

Details:

First Steps

29 FlexFrame Agents Guide

For myAMC.Messenger database:

cd /media/cdrom/FA_Suite/myAMC_FA/Messenger_Scripts/

mysql -u [user] -p[passwort] < CreateAmcMsgmySQL_FF.9.0-03.sql

Always use the newest version of script (example above ‘9.0-03’).

For myAMC.DomainManager database:

cd /opt/myAMC/FA_DomainManager/sql /

mysql -u [user] -p[passwort] < create-amc-MySQL.sql

Update of database:

Syntax for mySQL:

mysql -u [user] -p[passwort] < UpdateAmcMsgmySQL_FF.6.0A12-KXXTo6.0A12-KYY.sql

or

mysql -u [user] -p[passwort] < UpdateAmcMsgmySQL_FF.9.0-XXTo9.0-YY.sql

The Values for ‘XX’ and ‘YY’ must be detected in customer installation.

Value ‘YY’ is from the newest database update script.

For myAMC.Messenger:

cd /media/cdrom/FA_Suite/myAMC_FA/Messenger_Scripts/

For myAMC.DomainManager:

cd /opt/myAMC/FA_DomainManager/sql

Value ‘XX’ is from the installed database version value ‘DBVERSION’.

It can be detected from database like the following example value ‘DBVERSION’:

For myAMC.Messenger: /usr/bin/mysql --user=root --password=passwort --

database=messenger --execute="select * from CNF_CONFIGGLOBAL where

APPLICATION like 0;"

+-------------+-----------------+---------+

| APPLICATION | TYPES | STRINGS |

First Steps

FlexFrame Agents Guide 30

+-------------+-----------------+---------+

| 0 | DBVERSION | 9.0-03 |

| 0 | DBCONTENT | 9.0-03 |

| 0 | POLLEVTMANCYCLE | 5 |

+-------------+-----------------+---------+

Or:

/usr/bin/mysql --user=root --password=passwort --

database=messenger --execute="select STRINGS from CNF_CONFIGGLOBAL

where TYPES='DBVERSION';"

+---------+

| STRINGS |

+---------+

| 9.0-03 |

+---------+

For myAMC.DomainManager: /usr/bin/mysql --user=root --password=passwort --database=amc --

execute="select * from CNF_CONFIGGLOBAL where APPLICATION like 0;"

+-------------+-----------+---------+

| APPLICATION | TYPES | STRINGS |

+-------------+-----------+---------+

| 0 | DBVERSION | 9.0-15 |

| 0 | DBCONTENT | 9.0-15 |

+-------------+-----------+---------+

Or:

/usr/bin/mysql --user=root --password=passwort --database=amc --

execute="select STRINGS from CNF_CONFIGGLOBAL where

TYPES='DBVERSION';"

+---------+

| STRINGS |

+---------+

| 9.0-15 |

+---------+

All scripts between ‘XX’ and ‘YY’ must be executed.

Example for update:

/opt/myAMC/Messenger/Messenger/bin/myAMC.MessengerSrv stop

mysql -u [user] -p[passwort] < UpdateAmcMsgmySQL_FF.6.0A12-K02To6.0A12-K03.sql

mysql -u [user] -p[passwort] < UpdateAmcMsgmySQL_FF.6.0A12-K03To6.0A12-K04.sql

mysql -u [user] -p[passwort] < UpdateAmcMsgmySQL_FF.6.0A12-K06To6.0A12-K07.sql

mysql -u [user] -p[passwort] < UpdateAmcMsgmySQL_FF.6.0A12-K07To8.0-00.sql

mysql -u [user] -p[passwort] < UpdateAmcMsgmySQL_FF.8.0-00To8.0-01.sql

mysql -u [user] -p[passwort] < UpdateAmcMsgmySQL_FF.8.0-01To8.0-02.sql

mysql -u [user] -p[passwort] < UpdateAmcMsgmySQL_FF.8.0-06To9.0-00.sql

First Steps

31 FlexFrame Agents Guide

mysql -u [user] -p[passwort] < UpdateAmcMsgmySQL_FF.9.0-00To9.0-01.sql

mysql -u [user] -p[passwort] < UpdateAmcMsgmySQL_FF.9.0-02To9.0-03.sql

/opt/myAMC/Messenger/Messenger/bin/myAMC.MessengerSrv start

2.2.2.4.4.2 For FlexFrame ≥ 5.2A00-018

With FlexFrame ≥ 5.2A00-018 within an update or patch installation of FlexFrame there

was done a migration of the used database.

This will be done as follows:

With EzBackup the config and dynamic data of an existing database, if it is running inside

of FlexFrame, will be saved.

The data will be stored in the following directory:

/opt/myAMC/Backup/[Komponente][VersionString]

Every component will be named with version number and stored in an own subdirectory.

EzSetup as of FlexFrame V5.2A00-018 has an additional functionality for creation and

initialization of a PostgreSQL database server and to import the data saved with EzBack-

up.

The data for import will be read from the backup directory (last version) and/or from a

template directory. In the template directory as example the trap-rules of my-

AMC.FA_Messenger will be stored as xml file.

2.2.2.4.5 Usage

./fa_ezsetup.sh -h

usage: fa_ezsetup.sh <general options> <command> <command specific args>

fa_ezsetup.sh 1.104

general options:

-h (show this help)

-q (quiet mode)

-v (verbose mode, may be specified multiple times)

-L <file> use specified logfile (implies -l).

If <file> is a directory, the default file name will be appended.

-l log to file and console

-n do not perform permanent changes

-A automatically perform required steps

-R <dir> FA root dir (default: /opt/myAMC)

First Steps

FlexFrame Agents Guide 32

-D <dir> release dir

-P <properties> release property file

-S <statefile> state file

-s do not save state

-C clear state

-o <version> specifies the version. For version 5.1 or older <version>

have to be set to '51'. Otherwise installation fails. (option not given =

default = newest version)

-f force initialisation of databases, discard existing data (messenger

and accounting) -i force installation of packages, even if same version is already

installed

commands:

clear clear installation state

info show info on current environment

status show installation status

check check pre requisites

install install packages to be updated

migrate migrate current settings to new version

autoconfig automatic configuration (if possible)

activate activate new version(s)

version show version of fa_ezsetup.sh

run run commands on application or control nodes

startapps start all myAMC components

This will start all myAMC applications on the control

node

as well as all agents for all pools on the application

nodes

stopapps stop all myAMC components

This will stop all myAMC applications on the control node

as well as all agents for all pools on the application

nodes

restartapps restart all myAMC components

This will restart all myAMC applications on the control

node

as well as all agents for all pools on the application

nodes

run fa_ezsetup.sh help <command> for command specific help

First Steps

33 FlexFrame Agents Guide

2.2.3 Configuration

The FlexFrame Autonomy Agents do in most cases not require any additional configura-

tion for use in productive operation.

The myAMC_FA.xml file is stored when installation takes place. This file already contains

a complete parameter set for the operation of the FA AppAgents and FA CtrlAgents. The

services to be monitored and the reaction scenarios which run in the event of problems

are parameterized in this file. The parameters and their default values are described in

section 7.5. The mode in which the agents are to operate is also configured here.

In the course of the startup, in particular the start times and stop times, the function of the

MonitorAlerts, and the times for a reboot and switchover need to be checked. The Mon-

itorAlerts are a component part of the FlexFrame basic installation.

The MonitorAlertTime must always be at least three times as great as the parameter-

ized CheckCycleTime.

In the startup scenarios, the real start, stop, restart and reboot times must be determined

individually for each service type. If the times specified for start, restart, reboot or switch-

over are not sufficient, this can result in unwanted reaction escalations.

Changes in the parameter file become effective only after the agents have been restart-

ed.

The FA migration tool enables a configuration file of an existing installation to transfer the

data automatically to a new configuration file. Parameters which, for example, were not

present in an older version of the configuration file are then initially automatically set to

their default values.

First Steps

FlexFrame Agents Guide 34

2.2.4 Starting and Stopping

During installation, links to the FA Agents’ start/stop scripts were set in /etc/init.d/.

Run this script without any options so that all available options are displayed, e.g. start or

stop.

Example: Starting the FA AppAgent:

/etc/init.d/myAMC.FA_AppAgent start

/opt/myAMC/FA_AppAgent/myAMC.FA_AppAgent start

Example: Starting the FA CtrlAgent:

/etc/init.d/myAMC.FA_CtrlAgent start

/opt/myAMC/FA_CtrlAgent/myAMC.FA_CtrlAgent start

Example: Starting the FA FrameAgent:

/etc/init.d/myAMC.FA_FrameAgent start

/opt/local/myAMC/FA_FrameAgent/myAMC.FA_FrameAgent start

First Steps

35 FlexFrame Agents Guide

2.2.5 FA-Agents in different FlexFrame Versions

Several changes are necessary depending on which FlexFrame version is used with the

FA-Agents. These changes must be done manually and for each pool. After the configu-

ration changes, the FA-Agents must be restarted.

This can be done with the tool fa_ezmigrate.sh automatically.

It is also possible to do this manually, but it is not recomended.

2.2.5.1 Migration with fa_ezmigrate (recommended)

The migration of the configuration comprises two steps.

Both are supported by the fa_ezmigrate.sh script.

1. Adjust the FA Agent configuration to the current FlexFrame version

cn1: # /opt/myAMC/scripts/fa_ezmigrate.sh srvscripts

2. Reset the FA-Agent Rules to the installed FA Agent version

cn1: # /opt/myAMC/scripts/fa_ezmigrate.sh resetrules

If there are customer specific rules, they must be re-inserted manually after resetting the

rules.

The above commands will execute the migration for every pool and use the FlexFrame

version from /etc/FlexFrame-release.

If you want to migrate not all pools, or you want to migrate to a given FlexFrame version,

you can specify the version or/and the poolname(s) as argument.

For details see the usage of the script (fa_ezmigrate.sh -h):

Usage:

fa_ezmigrate.sh srvscripts [-45n] [<pool> ...]

fa_ezmigrate.sh resetrules [-n] [<pool> ...]

First Steps

FlexFrame Agents Guide 36

arguments for fa_ezmigrate.sh srvscripts:

-4: migrate service scripts for use in FlexFrame version <= 4.2B

-5: migrate service scripts for use in FlexFrame version >= 5.0

default: determine automatically

general arguments

-n process files but don't activate them

-h show usage

-? show usage

if no pools are specified, changes will be applied to all pools.

Description:

"srvscripts" adjusts myAMC_FA.xml to version 4.x (parameter -4) or version 5.x (param-

eter -5).

If the FlexFrame version is not given as argument, it will be read from

/etc/FlexFrame-release.

The original file is kept as backup with the timestamp of the migration.

"resetrules" overwrites the file myAMC_FA_Rules.xml with the version from the configu-

ration template of the propper FA Agent version. The original file is kept as backup with

the timestamp of the migration.

The script returns 0, if all pools could be successfully converted.

The parameter "-n" should be used in both commands, if the file should be migrated or

copied, but not be activated. In this case the file will be written as "my-

AMC_FA(_Rules).xml.temp.<timestamp>". Otherwise the file "my-

AMC_FA(_Rules).xml.<timestamp>" will be used as backup.

2.2.5.2 Installation and migration for central myAMC.FA components

With EzSetup also the central components of myAMC-Suite could be installed, migrate

and activated.

First Steps

37 FlexFrame Agents Guide

• myAMC.FA_DomainManager

• myAMC.FA_Messenger

• myAMC.FA_LogAgent

With the migration the configfiles of the central component will be migrated.

The component myAMC.FA DomainManager and myAMC.FA Messenger use beside

config files also a database to store data. The databases will be also migrated.

First Steps

FlexFrame Agents Guide 38

2.2.5.3 Manual Migration (only for documentation)

2.2.5.3.1 Additional check of files

FA-Agents V9.0 in FlexFrame Version < 5.0A:

The additional check of files for the file ‘/opt/myAMC/scripts/sap/ff_service.sh’ must be

removed, because this file does not exist in a FF < 5.0A.

FA-Agents V9.0 in FlexFrame Version >= 5.0A:

The additional check of files for the files ‘sap*’ must be removed, because these files do

not exist in a FF >= 5.0A. There the new FF-Scripts are used.

The additional check of files for the file ‘/opt/myAMC/scripts/sap/ff_service.sh’ must be

added, because this file is new in FF >= 5.0A.

This can be done with FA-WebGUI (Pool-Configuration: “Additional_Checks”

“File_check”) or manually in file “myAMC_FA.xml“ (see “File_check”).

Example can be found in template:

See file “/opt/myAMC/vFF/Common/.vFF_template/config/myAMC_FA.xml”.

2.2.5.3.2 FF-SAP Start-/Stop-Scripts

New generic scripts for starting and stopping of the SAP-services are available with the

FlexFrame version V5.0A.

The new SAP start- and stopp-scripts was available after installation of FlexFrame 5.0A.

The new FF-SAP-Start-/Stop-interface in the FA-Agents is active after installation of FA-

Agents >= V90A00K07.

Depending on which FlexFrame version is used with the FA-Agents the configuration of

this FF-SAP-Start-/Stop-interface must be changed.

FA-Agents V9.0 in FlexFrame Version < 5.0A:

In this case the following entry must be active:

${ScriptPath}/${ScriptPrefix}${monparam}${ScriptPostfix}

${BYNIDENT} ${SIDENT} ${ACTION}

In this case the following entry must be active for DB2:

First Steps

39 FlexFrame Agents Guide

${ScriptPath}/${ScriptPrefix}db${ScriptPostfix} ${BYNIDENT}

${SIDENT} ${ACTION}

FA-Agents V9.0 in FlexFrame Version >= 5.0A:

In this case the following entry must be active:

${ScriptPath}/ff_service.sh -s ${SIDENT} -t ${monparam}

${BYKEYNIDENT} -a ${ACTION}

In this case the following entry must be active for DB2:

${ScriptPath}/ff_service.sh -s ${SIDENT} -t db ${BYKEYNIDENT} -a

${ACTION}

This can be done with FA-WebGUI (Pool-Configuration: „Autonomy“ „Service Par-

amaters“ „ReactionScript“) or manually in file “myAMC_FA.xml“ (see “Ser-

vice_ReactionScript”).

Example can be found in template:

See file “/opt/myAMC/vFF/Common/.vFF_template/config/myAMC_FA.xml”.

This entry is service-type specific, but there is a default value used if no specific value is

available.

Example from XML-File:

<configentry name="Service_ReactionScript">

<!-- SAP-scripts used before FF V5.0 like sapdb, sapci, sapapp, sapj, sapacc, ...

<value type="String">${ScriptPath}/${ScriptPrefix}${monparam}${ScriptPostfix} ${BYNIDENT}

${SIDENT} ${ACTION}</value>

-->

<!-- SAP-script used from FF V5.0 (ff_service.sh) -->

<value type="String">${ScriptPath}/ff_service.sh -s ${SIDENT} -t ${monparam}

${BYKEYNIDENT} -a ${ACTION}</value>

</configentry>

2.2.5.3.3 Configuration file for generic services

In case of the customer has done no changes in generic services:

The configuration file for generic services “myAMC_FA_Rules.xml” must be copied

manually from the template in the pool configuration.

First Steps

FlexFrame Agents Guide 40

Example:

cp /opt/myAMC/vFF/Common/.vFF_template/config/myAMC_FA_Rules.xml

/opt/myAMC/vFF/vFF_<POOL>/config

In case of the customer has done changes in generic services:

The configuration file for generic services “myAMC_FA_Rules.xml” must be migrated to

the file in the template.

Save the configuration of generic services.

Copy the file from the template to the file in pool-configuration.

Implement the changes from customer to the configfile of generic services.

Example:

cp /opt/myAMC/vFF/vFF_<POOL>config/myAMC_FA_Rules.xml

/opt/myAMC/vFF/vFF_<POOL>/config/myAMC_FA_Rules_CUSTOM.xml

cp /opt/myAMC/vFF/Common/.vFF_template/config/myAMC_FA_Rules.xml

/opt/myAMC/vFF/vFF_<POOL>/config

vi /opt/myAMC/vFF/vFF_<POOL>config/myAMC_FA_Rules.xml

First Steps

41 FlexFrame Agents Guide

2.2.6 Configuration of generic

Generic services can be configured in two different files:

myAMC_FA_Rules.xml: Generic rules general available as best practice which

is central delivered from FlexFrame.

myAMC_FA_Rules_Custom.xml: Customer specific rules.

Therefore the customer specific rules, if used in myAMC_FA.xml, once must be migrated

in an present installation to the custom-rules.

Attention:

The whole pool specific ‚myAMC_FA_Rules.xml‘-files should be saved before call of

EzSetup, if customer specific rules are used.

During migration the ‚myAMC._FA_Rules.xml‘-file will be taken automatically from tem-

plate.

EzSetup assume that customer specific generic rules were transfered to custom-rules-file

before calling.

Case 1: Customer has no changes in generic service configuration:

The configuration of the generic services ‘myAMC_FA_Rules.xml’ must be cop-

ied manually from template in the pool configuration.

Hint: Within installation with EzSetup this will be done automatically.

Example:

cp /opt/myAMC/vFF/Common/.vFF_template/config/myAMC_FA_Rules.xml

/opt/myAMC/vFF/vFF_<POOL>/config

Case 2: Customer has changes in generic service configuration:

The configuration of generic services must be manually migrated:

Save the config of the (old) genreric services (old-‚myAMC_FA_Rules.xml‘).

First Steps

FlexFrame Agents Guide 42

Copy the file from template in the pool-config (new-‚myAMC_FA_Rules.xml‘).

Add / migrate the customer specific changes to the customer specific generic

trules in pool-config (‚myAMC_FA_Rules_Custom.xml‘).

Hint: Also within installation with EzSetup this will must be done manually.

Example:

cp /opt/myAMC/vFF/vFF_<POOL>config/myAMC_FA_Rules.xml

/opt/myAMC/vFF/vFF_<POOL>/config/myAMC_FA_Rules_OLD_with_CustomChanges.xml

cp /opt/myAMC/vFF/Common/.vFF_template/config/myAMC_FA_Rules.xml

/opt/myAMC/vFF/vFF_<POOL>/config

vi /opt/myAMC/vFF/vFF_<POOL>config/myAMC_FA_Rules_Custom.xml

First Steps

43 FlexFrame Agents Guide

2.3 FA WebInterface

2.3.1 Function

The FA WebInterface visualizes all nodes and services which exist in a FlexFrame sys-

tem insofar as these are monitored by an FA AppAgent. The status, availability and mes-

sages of the FA AppAgents and Fa CtrlAgents are displayed.

2.3.2 Installation

The installation package is called myAMC.FA_WebGui-<X.Y-Z>.i386.rpm.

A prerequisite here is that an Apache Tomcat Servlet Container is installed. Currently

Tomcat >= 6.0.x is supported.

2.3.3 Configuration

Further settings can be made in the files /opt/myAMC/config/FA_WebGui.conf

(general settings, paths, cycle tymes, database settings) and /opt/myAMC/config/amc-users.xml (user administration).

Changes require the FA WebInterface to be restarted or reloaded (e.g. via the Tomcat

Service Manager) or Tomcat to be restarted or reloaded.

2.3.4 Starting and Stopping

The WebInterface can always be reached if the Apache Tomcat is running. This can

generally be started using the script /etc/init.d/tomcat6 start.

The WebInterface can then be reached at the following address:

http://<contol_node>:8080/FAwebgui/

The specified port can be changed in the Tomcat configuration file server.xml.

Prerequisites here are Mozilla >= 1.4.1 or Internet Explorer >= 6.0 and the latest Java

plugin / JRE for Oracle or IBM.

2.3.5 myAMC.FA WebGui and database

The web interfaces use a connection to a database for displaying the message and per-

formance data.

First Steps

FlexFrame Agents Guide 44

myAMC.FA Messenger and the myAMC.FA Accounting Option (my-

AMC.FA_DomainManager) use an own database in a database server. The my-

AMC.FA_DomainManager database can be run optionally at a system outside of the

FlexFrame, for not influencing the productive FlexFrame.

Cardinally the myAMC.FA_WebGui can work with different types of database. This de-

pends on the selected database in the connection property.

In FlexFrame version < V5.2A00-018 normally a mySQL database is used.

In FlexFrame ≥ 5.2A00-018 a PostgreSQL database will be used as default.

2.3.5.1 Installation and configuration of a mySQL connection

The database connection will be configured in the following file:

/opt/myAMC/config/connector.properties

Example:

#connector

#Tue Jan 29 16:16:52 CET 2013

jdbc.url.Accounting_Database=jdbc\:mysql\://localhost\:3306/amc?useGmtMillisForDatetimes\=true

connector.type.Accounting_Database={jdbc}jdbc

jdbc.url.Messenger_Database=jdbc\:mysql\:// localhost \:3306/messenger

connector.priority.Accounting_Database=10

jdbc.user.Messenger_Database=myAMC

connector.type.Messenger_Database={jdbc}jdbc

connector.active.Accounting_Database=true

jdbc.password.Accounting_Database=FlexFrame

connector.name.Accounting_Database=Accounting Database

connector.name.Messenger_Database=Messenger Database

jdbc.driver.Messenger_Database=com.mysql.jdbc.Driver

jdbc.driver.Accounting_Database=com.mysql.jdbc.Driver

connector.active.Messenger_Database=true

jdbc.user.Accounting_Database=myAMC

jdbc.password.Messenger_Database=FlexFrame

First Steps

45 FlexFrame Agents Guide

2.3.5.2 Installation and configuration of a PostgreSQL connection

The database connection will be configured in the following file:

/opt/myAMC/config/connector.properties

Example:

#connector

#Thu Jan 31 09:48:31 CET 2013

jdbc.url.Accounting_Database=jdbc\:postgresql\://localhost\:5432/amc

connector.type.Accounting_Database={jdbc}jdbc

jdbc.url.Messenger_Database=jdbc\:postgresql\:// localhost \:5432/messenger

connector.priority.Accounting_Database=10

jdbc.user.Messenger_Database=myAMC

connector.type.Messenger_Database={jdbc}jdbc

connector.active.Accounting_Database=true

jdbc.password.Accounting_Database=FlexFrame

connector.name.Accounting_Database=Accounting Database

connector.name.Messenger_Database=Messenger Database

jdbc.driver.Messenger_Database=org.postgresql.Driver

jdbc.driver.Accounting_Database=org.postgresql.Driver

connector.active.Messenger_Database=true

jdbc.user.Accounting_Database=myAMC

jdbc.password.Messenger_Database=FlexFrame

First Steps

FlexFrame Agents Guide 46

2.4 DomainManager

The DomainManager is installed on the Control Node.

The accounting and performance data collected by the FA AppAgents is automatically

adopted by the ITDW and can be visualized and evaluated with the help of the FA

WebGUI with the Accounting and Performance management plugin.

The DomainManager is configured via the file /opt/myAMC/DomainManager/config/

DomainManager.xml. Pool-specific configuration is also possible. Changes to parame-

ters in the DomainManager configuration are dynamically recognized and adopted.

Alternatively to processing through the DomainManager, the files can also be accessed

by an external DomainManager which runs outside of FlexFrame. In addition to this,

extension of the Tomcat server by means of the myAMC.Fileretriever module is

possible. This is optional and not part of the standard delivery.

2.4.1 Database connection

The DomainManager uses a connection to a database to store the performance data.

In FlexFrame version < V5.2A00-018 normally a mySQL database is used.

In FlexFrame ≥ 5.2A00-018 a PostgreSQL database will be used as default.

The myAMC.FA_DomainManager and its database can be run integrated in FlexFrame

or optionally at a system outside of the FlexFrame, for not influencing the productive

FlexFrame.

First Steps

47 FlexFrame Agents Guide

2.4.1.1 Integrated operation of FlexFrame Accounting option

2.4.1.1.1 mySQL database server connection

The database connection will be configured in the following file:

/root/.odbc.ini

or/and

/etc/odbc.ini

Example:

[AMC_PERF]

Driver = /usr/lib/libmyodbc3.so

SOCKET = /opt/myAMC/mySQLDBs/mysql.sock

Server = localhost

User =

Password =

Database = amc

Port = 3306

2.4.1.2 PostgreSQL database server connection

The database connection will be configured in the following file:

/root/.odbc.ini

or/and

/etc/odbc.ini

Example:

[AMC_PERF]

Driver = /usr/lib/unixODBC/libodbcpsql.so

Database = amc

Servername = localhost

Username = postgres

Password =

Port = 5432

#ksqo = No

ReadOnly = No

RowVersioning = No

ShowSystemTables = No

ShowOidColumn = No

FakeOidIndex = No

ConnSettings =

Debug = 0

CommLog = 0

First Steps

FlexFrame Agents Guide 48

2.5 Messenger

The Messenger will be installed at control node.

For myAMC.FA_Messenger there is an own documentation. Here only the database

connection will be documented.

2.5.1 Database connection

The Messenger uses a connection to a database to store the message data.

In FlexFrame version < V5.2A00-018 normally a mySQL database is used.

In FlexFrame ≥ 5.2A00-018 a PostgreSQL database will be used as default.

2.5.1.1 mySQL database server connection

The database connection will be configured in the following file:

/root/.odbc.ini

or/and

/etc/odbc.ini

Example:

[AMCMSG_V10]

Driver = /usr/lib/libmyodbc3.so

SOCKET = /opt/myAMC/mySQLDBs/mysql.sock

Server = localhost

User =

Password =

Database = messenger

Port = 3306

2.5.1.2 PostgreSQL database server connection

The database connection will be configured in the following file:

/root/.odbc.ini

or/and

/etc/odbc.ini

Example:

[AMCMSG_V10]

Driver = /usr/lib/unixODBC/libodbcpsql.so

Database = messenger

Servername = localhost

Username = postgres

Password =

Port = 5432

First Steps

49 FlexFrame Agents Guide

#ksqo = No

ReadOnly = No

RowVersioning = No

ShowSystemTables = No

ShowOidColumn = No

FakeOidIndex = No

ConnSettings =

Debug = 0

CommLog = 0

First Steps

FlexFrame Agents Guide 50

2.6 myAMC.FA version management

2.6.1 Lifecycle process

The myAMC.FA Suite disposes of an version management component. The version

management component alleviate the lifecycle process of an myAMC.FA installation in

FlexFrame and delivers information about the installed and active versions of the individ-

ual components of the myAMC suite.

The version management was bundled and installed in the rpm myAMC.FA-Suite.

This rpm represent the build version oft the installed myAMC.FA-Suite. So with linux

commands there can be get the info about the installed version of myAMC.FA.

It contains the program ‚versionmanager‘ as a script and resource files with information

for the version management.

For improvement of the lifecycle management there are the following measures:

myAMC.FA-Suite with build version

Versioning of the myAMC.FA config files

Versioning of the myAMC.FA databases

Move of versions for the central myAMC.FA components

Version management for the myAMC.FA-Suite

Update- and migrations-handling for optional myAMC-FA components

The myAMC.FA-Suite consists of different components:

Components, which are running once in a FlexFrame:

myAMC.FA_FrameAgent

myAMC.FA_WebGui

myAMC.FA_Messenger

myAMC.FA_LogAgent

myAMC.FA_DomainManager

Components, which are running once in a pool:

myAMC.FA_CtrlAgent

Components, which are running on every application node:

First Steps

51 FlexFrame Agents Guide

myAMC.FA_AppAgent

The installation and activation of a new myAMC.FA-Suite is divided in 3 phases, to avoid

downtime and to switch back to an older version easily.

Installation of the rpm’s of a suite

Backup of the der existing config files

Migration of the config files if necassary (EzSetup)

Update of the databases (update-scripts)

2.6.2 Lifecycle management files

With the rpm of myAMC.FA-Suite for the version management the following components

will be installed:

Version-Dependency Datei

Version-Component Datei

Versionmanager

o Output des Versionmanagers

The rpm will install these components in the directory ‚/opt/myAMC/VersionInfo’.

2.6.2.1 Version-Dependency file

In this file the dependency to other myAMC.FA components will be found.

The Version-Dependency file shows tabulary the components version and the dependend

component with version information. The file is a csv-file.

First Steps

FlexFrame Agents Guide 52

Example:

If the version or the dependency of a component has changed, this will be added in this

file.

First Steps

53 FlexFrame Agents Guide

2.6.2.2 Version-Components file

The management of myAMC.FA components which belongs to a myAMC.FA-Suite and

there version numbers will be done in the version-components file.

The file is build tabulary as csv-file and can be imported easily in Excel.

File structure of version-componens file.

MYAMCSUITE version und build number if the myAMC.FA-Suite

MYAMCCOMPONENT name of the associated myAMC.FA component

VERSION_KLEVEL version with K-level

POOL_FRAME cebtral or pool specific myAMC.FA component

PARAM_CONFIG version of he associated config files

BASIC_CONFIG version of he associated config files

RULEFILE version of he associated myAMC_FA_Rules.xml

BINARY version for the database (binary)

DBCFG version for the database (config)

DBSTRUCT version for the database (structure)

DBCONTENT version for the database (content)

FF4S_FROM FlexFrame versionen for the myAMC.FA component (from)

FF4S_TO FlexFrame versionen for the myAMC.FA component (to)

There are many of config files in a myAMC.FA-Suite.

The versioning will be done in groups:

Group of base config files: Config files which have only rare changes.

Group of param config files: Config files, which include parameters for the func-

tionality of myAMC.FA. Example: ‚myAMC_FA.xml‘

First Steps

FlexFrame Agents Guide 54

2.6.2.3 Version manager (from FlexFrame V5.2)

2.6.2.3.1 Mission of version manager

The central mission of the version manager, which simplifies the processing and support

of a FlexFrame landscape, is the dynamic detection of all active myAMC.FA-Suite com-

ponents in the different pools of a FlexFrame landscape. There Info will be written to

standard output, or can be redirected into a file.

The version manager (script) will be installed with the myAMC.FA-Suite rpm.

The version manager shows the active myAMC.FA components, the version of my-

AMC.FA config files und the database version.

It determines if optional components of the myAMC.FA-Suite are active.

The info is shown at standard output and can be redirected to a file.

This report can be send to FlexFrame- or myAMC.FA-Support as info about the custom-

ers system.

Usage:

cn1-a:/opt/myAMC/scripts # ./fa_versionsMgr.sh -?

Usage of fa_versionsMgr.sh:

./fa_versionsMgr.sh -h shows this help

./fa_versionsMgr.sh -? shows this help

./fa_versionsMgr.sh [-s separator] [-f outputfile]

default separator is ;

default outputfile is /opt/myAMC/scripts/fa_versionsCustomer.csv and stdout

cn1-a:/opt/myAMC/scripts #

First Steps

55 FlexFrame Agents Guide

2.6.2.3.2 Output of version manager

The output has the following structure:

FRAMEID Frame-ID

FFVERSION FlexFrame-Release

POOL Poolname

COMPONENT myAMC.FA component

VERSION Version and k-level

CNFPARA Version of parameter files

CNFBASIC Version of basic configuration files

RULES Version of myAMC_FA_Rules.xml resp. Logdefini-

tions.xml

CUSTOM_RULES Customer specific Rules active ?

CUSTOMIZED Customer specific changes ?

VERSIONBIN „VersionBin“ from FA_Messenger.vrs resp.

FA_DomainManager.vrs

VERSIONCFG „VersionCfg“ from FA_Messenger.vrs resp.

FA_DomainManager.vrs

VERSIONDBSTRUCT „VersionDbStruct“ from FA_Messenger.vrs resp.

FA_DomainManager.vrs

VERSIONDBCONTENT „VersionDbContent“ from FA_Messenger.vrs resp.

FA_DomainManager.vrs

CHK_CNFPARA Check of „CNFPARA“

CHK_CNFBASIC Check of „CNFBASIC“

CHK_RULES Check of „RULES“

CHK_VERSIONBIN Check of „VERSIONBIN“

CHK_VERSIONCFG Check of „VERSIONCFG“

CHK_VERSIONDBSTRUCT Check of „VERSIONDBSTRUCT“

CHK_VERSIONDBCONTENT Check of „VERSIONDBCONTENT“

CHK_RPM Check of „VERSION“

CHK_SUMMARY overall summary

First Steps

FlexFrame Agents Guide 56

Example: Output of version manager:

fa_versionsCustomer.csv

First Steps

57 FlexFrame Agents Guide

2.7 Usage of Pool-Master

A FlexFrame as a physical unit of servers, storage and network can be logically divided

into separate pools. Each pool has its own set of configuration data and is thus inde-

pendent of any other pool in a FlexFrame. For each pool a number of parameters needed

to configure a FlexFrame individually for each pool.

With the pool master functionality, the configuration data from a pool that has been con-

figured individually for a flex frame system, are copied to a so-called pool master.

When creating a new pool, the configuration data can be used from the pool master to

generate a new pool.

The usage of Pool-Master allows the automation of steps for myAMC.FA after pool crea-

tion.

Therefore a script can be used to create a Pool-Master from an existing pool or to

write/update a pool configuration from Pool-Master.

The script provides the following commands:

Create Pool-Master (directories/files) from existing Pool

Create/Update Pool (directories/files) from Pool-Master

Delete Pool-Master

Important hint:

The Pool-Master contains config files which may differ from version to version, as well as

the info which version of myAMC.FA_App- and myAMC.FA_Ctrl-Agent will be started.

Therefore it is highly recommended after each update/upgrade of FlexFrame or my-

AMC.FA-Suite to update the Pool-Master from an active pool which was migrated during

update/upgrade process.

Poolspecific configuration should be not passed to the Pool-Master, because they will

force needless queries and error messages in the FA-agents.

Example: „Individual Nodes“, „Management-Blades“, „Filer-Check“, …

First Steps

FlexFrame Agents Guide 58

2.7.1 Create Pool-Master from existing pool

Example: Create Pool-Master from Pool1

In this step the config files of pool ‚Pool1‘ will be copied in the Pool-Master directory

(‚/opt/myAMC/vFF/Common/.vFF_Master‘) as well as the necessary directory structures

will be created.

After that, the pool depending config values will be replaced in Pool-Master:

“TrapTargets” of CN will be replaced with placeholders.

File: TrapTargets.xml

“Managementblades” remain (default) or will be deleted (‘-b’).

File: myAMC_FA.xml

“Individual nodes” will be detected from LDAP (default) or will be deleted (‘-i’).

File: myAMC_FA.xml

“Filer-check” The filer name will be replaced with placeholders.

File: myAMC_FA.xml

2.7.2 Create/Update pool from Pool-Master

Example: Deploy Pool_Master to Pool NEU

vFF

opt/myAMC

config

Create Pool-Master from Pool1

Common/.vFF_template/config

vFF_Pool

1

Config

Files

Config

Files

Config

Files

Common/.vFF_Master/config

First Steps

59 FlexFrame Agents Guide

In this step the config files of Pool-Master will be copied to pool ‚NEU‘in the directory

(‚/opt/myAMC/vFF/ vFF_NEU‘)as well as the necessary directory structures will be creat-

ed.

After that, the pool depending config values will be replaced by the pool specific values:

“TrapTargets” of CN will be detected from LDAP.

File: TrapTargets.xml

“Managementblades” remain (default) or will be deleted (‘-b’).

File: myAMC_FA.xml

“Individual nodes” will be detected from LDAP (default) or will be deleted (‘-i’).

File: myAMC_FA.xml

“Filer-check” The filer name will be detected from LDAP.

File: myAMC_FA.xml

vFF

opt/myAMC

config Create Pool NEU from Pool-Master

Common/.vFF_template/config

vFF_Pool1

Config

Files

Config

Files

Config

Files

Common/.vFF_Master/config

config

vFF_NEU

First Steps

FlexFrame Agents Guide 60

2.7.3 Usage of ‘fa_MasterPoolMgr.sh’

Usage:

fa_MasterPoolMgr.sh -h

usage: fa_MasterPoolMgr.sh <args>

fa_MasterPoolMgr.sh -h

fa_MasterPoolMgr.sh -r

fa_MasterPoolMgr.sh -d toMaster|fromMaster -p <poolname> [-b] [-i] [-m writeTrapTar-

gets|modifyTrapTargets]

Description of arguments:

-h (show this help)

-r remove Pool-Master

-d toMaster|fromMaster specify direction (toMaster, fromMaster)

-p <poolname> specify poolname

[-b] Remove the management blade configuration.

(default = Not remove the management blade configuration).

[-i] Remove the 'individual nodes' (Hypervisor-server) configuration.

(default = Get the 'individual nodes' (Hypervisor-server) configura-

tion from LDAP.

[-m writeTrapTargets|modifyTrapTargets] specify the mode for TrapTarges.xml (default=write)

'modifyTrapTargets' requires correct configuration of trap targets in pool before make a Pool-

Master.

Please ensure, that this script will be started at Ctrl-Node.

2.7.4 Automation of steps during pool creation

The script for Pool-Master management can be used for automation of steps during the

pool creation process.

The script ‚fa_MasterPoolMgr.sh‘ can be called during pool creation from „ff_pool_adm.pl

–op add”. Before calling it should be checked whether a Pool-Master exists. If necessary

the Pool-Master could be created from first pool.

The script ‚fa_MasterPoolMgr.sh‘ can also be used for configuration of several pools of

an existing FlexFrame, for deploying the Pool-Master configuration to the existing pools.

Take in mind, that the script only makes automated adaptions for the pool specific values

described above. Other pool specific things must be changed manually.

First Steps

61 FlexFrame Agents Guide

63 FlexFrame Agents Guide

3 Introduction

3.1 FlexFrame Autonomy Architecture

FlexFrame Autonomy is a powerful component for high-availability operation of systems

with distributed instances. A FlexFrame solution consists of storage, application servers

and redundant Contol Nodes. This product has been implemented for this solution com-

prising storage, servers and connectivity. It enables fast and flexible setup of solutions

which offer autonomous functions to simplify and provide flexibility for operating applica-

tions. The figure below shows an overview of the FlexFrame architecture and the associ-

ated FlexFrame Autonomy components:

The benefit of the FlexFrame Autonomy solution lies in the flexibility for integrating new

nodes and instances without changing the configuration.

Components of FlexFrame Autonomy:

FlexFrame Autonomy Application-Agents (FA_AppAgent)

FlexFrame Autonomy Control-Agents (FA_CtrlAgent)

FlexFrame Autonomy Frame-Agents (FA_FrameAgent)

FlexFrame Autonomy WebGui (FA_WebGui)

FlexFrame Autonomy Messenger (FA_Messenger)

mySAP.com®

Application-

server

Database-

server

Storage

Control Nodes

Application Nodes

FA Control Agents

FA Frame Agent (Option)

FA Messenger

FA Domain Manager (Option)

FA Application Agents

FA Config Files

Introduction

FlexFrame Agents Guide 64

FlexFrame Autonomy DomainManager (FA_DomainManager)

FlexFrame Autonomy LogAgent (FA_LogAgent)

The FlexFrame Autonomy copomponents permit highly available, semi-autonomous

operation of distributed applications. In principle the instances can be distributed to any

number of nodes within a FlexFrame solution. The individual services are monitored via

FlexFrame Autonomy Agents. By default, the FA AppAgents currently support SAP cen-

tral instances and SAP application instances, as well as SAPDB and Oracle database

instances.

The FA Frame-Agents are used for monitoring at the control node. The central monitoring

of filesystems requires the FA FrameAgents which are installed at the control nodes.

Introduction

65 FlexFrame Agents Guide

3.1.1 FlexFrame Autonomy Visualization and Reporting

The myAMC.FA WebGui and the myAMC.FA Viewer are the components for the visuali-

zation of the availability and performance data. The myAMC.FA WebGUI is an applet to

be used in a webbrowser. The myAMC.FA Viewer is a stand-alone application, which

can run on any Linux or Windows PC. The two components are necessary because both

concepts add their own advantages. The applet component can be used on every PC

with connection to the myAMC server component without any installation steps, but ap-

plets have some restrictions. An applet can not use the reporting functionality and can not

connect to multiple frames with one applet.

Starting with version 9.0 of the myAMC.FA Suite, myAMC.FA Viewer supports visualiza-

tion of multiple frames.

The visualization architecture is shown in the following picture.

Admin PC

HTTP

DB CI APP

Accounting and

Performance Collets

myAMC.FA WebGui Applet

myAMC.FA Viewer

FA Agents

FlexFrame

myAMC.FA

Messenger DB

Messenger

JDBC

myAMC.FA

Accounting DB

HTTP

LivelistLivelist

FlexFrame ... n

WebserverWebserver

Reports

Multi Frame Technologie

Introduction

FlexFrame Agents Guide 66

3.1.2 FlexFrame Autonomy virtual server and hypervisor

nodes

Since FlexFrame version V5. 0 virtual servers and hypervisor nodes can be visualized in

the myAMC.FA viewer. The existing web service component running in the Tomcat server

periodically collects data of all virtual servers and their hosts.The information is shown in

the system pool “FlexFrame”.

As of FlexFrame V5.3 or FlexFrame Orchestrator V1.0 ESX or KVM can be used as hy-

pervisor.

On the hypervisor the virtual servers ESX-VM and KVM-VM are running.

The representation and visualization is basically identical for both types of hypervisor.

The corresponding overlay icon is depending on type "ESX" or "KVM".

The myAMC.FA CtrlAgent monitors the virtual servers belonging to its pool. If a virtual

server is not available any more, it is switched offwith the shutdown facility for virtual

servers.

If powering down a virtual server fails, there are several cases:

the hypervisor node runs other VMs without problems

Introduction

67 FlexFrame Agents Guide

the hypervisor node does not host any other VMs

other VMS on the hypervisor node also failed.

An hypervisor node may host virtual servers from multiple pools.

As the myAMC.FA CtrlAgent knows only nodes running in its own pool, bust the hypervi-

sor node possibly also operates virtual nodes for other pools, the permission to turn off

the hypervisor nodes from the central hypervisor nodes monitoring service (part of the

myAMC.WebGui server is part of the Tomcat) is requested. If the permission couls be

obtained, the external switchover can be performed as planned. Can the hypervisor node,

for example because other VMs, not be switched off, the external switchover is aborted.

Introduction

FlexFrame Agents Guide 68

3.2 Pool Creation and Grouping

FlexFrame Autonomy Version 2.0 permits pool creation and grouping functions to be

implemented.

3.2.1 Virtual FlexFrame Autonomy Pools

A pool is the assignment of hardware resources to a virtual FlexFrame Autonomy pool.

From the viewpoint of autonomy and of the high-availability functions, an Autonomy pool

is an independent structure. In a standard installation of Version 1, all resources of a

FlexFrame solution are managed in a single pool. Configuration of the pools takes place

directly with the configuration of FlexFrame in the LDAP. The FA AppAgents ascertain

the pool affiliation at startup. Configuration of the FlexFrame agents always relates to one

pool, i.e. there is one directory tree with the parameters and configuration data for each

pool.

In a pool, the FA Agents provide the autonomous functions restart, reboot and switchover

of services and nodes. These reactions no longer relate to all nodes of a FlexFrame solu-

tion, but only to the set of nodes which belong to the same pool.

Pool creation results in virtual FlexFrame Autonomy pools being created, each of which

performs autonomous functions independently of other pools which exist in the same

FlexFrame solution.

A FlexFrame Autonomy pool always consists of one Control Agent and n Application

Agents. Each Control Agent is responsible only for the Application Nodes which belong to

its pool and shares a joint config and data directory with its Application Nodes. For each

pool it is thus possible to parameterize autonomous behavior which is independent of

other pools.

The flexibility and security of a virtual FlexFrame pool is based on two major features

which the FlexFrame Autonomy Agents provide.

A Control Agent for each virtual FlexFrame Autonomy pool

Each Application Agent is provided with a flexible assignment to the pool and thus to the

Control Agent with which it interworks.

The use and interleaving of these two new options with the FlexFrame basic functionality

offers a large number of new options to enhance the flexibility in server farms.

The virtual FlexFrame Autonomy pools provide the option of simple and secure operation

of multiple Autonomy clusters which run in parallel and simultaneously in a distributed IT

infrastructure.

Introduction

69 FlexFrame Agents Guide

A virtual FlexFrame Autonomy pool offers the advantage of complete separation of all

reactions and the associated parameter sets for the start and stop times. FlexFrame

Autonomy can also be completely disabled for a virtual pool (e.g. for service and

maintenance) without affecting any other virtual FlexFrame Autonomy pool which is

running in parallel.

FlexFrame™

Autonomy Pooling / Grouping

Data

Config Logfiles

vFF Pool1

Introduction

FlexFrame Agents Guide 70

A virtual FlexFrame does not share its FlexFrame Autonomous Agents with any other

virtual FlexFrame. In this way, depending on the configuration, the virtual FlexFrame

Autonomy pools could use different binary statuses.

The pool FlexFrame and Adminpool are special pools.

The Adminpool is a pool for spare nodes which are pool independent..

The pool FlexFrame is a system pool established on the control node to collect infor-

mation for the whole frame.

Introduction

71 FlexFrame Agents Guide

3.2.2 Grouping

FlexFrame offers grouping functions for flexible server farming. Grouping enables nodes

and services within a pool to be assigned to different groups. A group is therefore always

a part of a virtual FlexFrame pool.

The configuration information for the groups is stored in the myAMC_FA_Group.xml file.

The entries in this file are taken them over from the LDAP directory. The configuration is

always done via LDAP by specific assignment. The ability of the generic assignment of

theFA Agent is not supported in FlexFrame.

3.2.2.1 Configuration in the LDAP Directory

The group information are stored in the LDAP directory. When the agents are started, the

group information is read directly from the LDAP directory and be stored in an xml file myAMC_FA_Group.xml.

3.2.3 Pool Types (Pool Independent Spare)

Pools can differ in admin pools and productive pools. The FA Agents have different rules

depending on in which pool type the FA CtrlAgents are acitve.

The admin pool in contradiction to the productive pool has the function to provide spare

nodes for productive pools. If a node fails, the FA Agent requires a spare node from

spare pool. Saving spare nodes and provide them pool overlapping for multiple pools

represents the ability of that functionality.

The property of pool-overlapping spare nodes can be activated/deactivated for each pool.

The pool type is needed for the use and control of admin pools.

Pool type

productive pool (default value)

Adminpool

With a further parameter can be controlled after which time period the spare nodes in the

admin pool start cyclic with the check of availability and performance and stop again

automatically.

Both Adminpool and productive pool in principle use the same versions of FA Agents.

The behavior of the agents depends on the configuration.

3.2.3.1 Spare Node from Adminpool

In the actual version of FlexFrame pools on the level of the FA Agents there is no infor-

mation exchange. By the implementation of pool-overlapping spare nodes they can oper-

Introduction

FlexFrame Agents Guide 72

ate in a collective pool. When a pool needs a spare node, it will be requested from the

spare-pool (Adminpool) and add into the pool/group, which need it.

In a standard FlexFrame installation each pool has one FA CtrlAgent. Therefore this FA

CtrlAgent is only concerned for one pool. There is no interaction with FA CtrlAgents of

other pools.

With the attachment of admin pools, which provides spare for other pools, there is an

information chanel in form of a collective directory. In this directory the FA CtrlAgents can

achieve information of the order of the spare nodes.

Analogical to the so far implemented procedure for reboot and switchover, there will be a

pool-overlapping directory, in which all FA CtrlAgents from each pool can read and write.

In this directory each productive pool gets a switchover directory according the today

actual existing pool specific directory for switchover testaments.

Every pool has its own FA CtrlAgent. This agents work focuses after rules. With the im-

plementation of productive and admin pools as pool type parameters the differing rules of

the FA CtrlAgents become activated dependent on which role the FA CtrlAgent is used.

3.2.3.2 Architecture and Sequence - Pool Independent Spare Node

Procedure spare node from spare pool :

DB

SCS

copy Testament

Testament

SCS

SpareAP

Spare

Spare

Spare

Controlnode

Cont Cont Cont Cont

no local candidate

SparePool eintragen

Sparenode

liste

Inite_sparenode

Delete_sparenode

Change_sparenode

Init_Sparegroup

Introduction

73 FlexFrame Agents Guide

In a productive pool a node fails. The productive pool has no available spare node and no

other node applies for the task. That is proved from the FA CtrlAgent by means of the

configured switchover rules.

The check can have the following results:

The failed node or service has low prior and there is no need to make the node/service

available again.

The services on the failed node have high prior, there is a need for a spare node to make

the services available again. If in the pool/group of the failed noted exist no spare node,

that means there is no applicant, then the FA CtrlAgent decides to require a spare node

from the spare pool.

The FA CtrlAgent in the admin pool has an selection rule to identify the spare node to

transfer to the productive pool. For that the FA CtrlAgent manages a dynamic list with all

activated spare nodes and their selection attributes. A node in the adminpool is activeat-

ed as spare node through a successful boot process in the spare group of the adminpool.

The spare node list is not persistend. FA CtrlAgent initalies every cycle time a boot test of

every node in the spare group of the adminpool. Only nodes which can be booted suc-

cessfully in the MaxReboottime remain in the spare pool list.

The FA WebGui visualizes all nodes nodes in the admin pool, to differentiate activated

spare nodes there is an additional overlay icon in the node tree. Nodes without such a

overlay icon in the tree are not useable as pool-overlapping spare nodes in the admin

pool.

3.2.3.3 Competing Access to Spare Nodes

The FA CtrlAgent of a productive pool transmits all requirements which can not be ac-

complished locally to the spare pool. For the present the FA CtrlAgent does not imple-

ment a further preselection.

As long as no specific perimeter exists all pools have priority 1 through default. Thereby

applies first. With heavier failure scenarios etc. demands for spare nodes will come from

many systems simultaneously. If thus all pools have the same priority then applies the

system or the service priority which already can be configurated today.

3.2.3.4 Providing of Spare Nodes in the Adminpool

The installation and configuration of a spare node in an admin pool for the use as pool-

overlapping spare node is described in the FlexFrame Admininistration and Operation

guide. A spare node in the spare pool is only visible and usable if it has been running at

least once and thus enabled the FA Agents to dynamically determine the output data of

the node. The node will be recorded in a list administered by the FA CtrlAgent during the

initialization.

Introduction

FlexFrame Agents Guide 74

Using a parameter the FA Agents are able to cyclicly check and then stopp again the

availability and the output data of the spare nodes through booting.This guarantees the

actuality of the sparenodelist and the belonging outputdata.

This init- or checkrun can be accomplished for all spare nodes of the spare pools through

a script. Depending on the parameter one or all nodes of the spare group will be initia-

lized.

Introduction

75 FlexFrame Agents Guide

3.3 Service Classes

The service classes are required for the prioritized operation of individual services or

systems. A service is defined as an application instance which must be identified unam-

biguously and which can be started and stopped individually, e.g. central instance, appli-

cation instance or database instance (CI, AP DB).

A service class defines the minimum requirements which must be provided when services

are taken over in the event of a switchover.

When multiple nodes fail simultaneously, the spare nodes in the group take into account

the priorities of the services which have failed. First all services with priority 1 are taken

over, and only then all services with a lower priority. It will be possible to extend the at-

tributes of a service in the future, as already shown in the examples (e.g. operating sys-

tem).

A system is a logical unit consisting of multiple service instances which together define a

system. In an SAP system these comprise the database instance, central instance and

application instances.

The following attributes are defined in the service classes:

service-priority

service-powervalue

In the future it will be possible to enhance such a service class by further attributes which,

for example, define the operating system required by a service or the number of CPUs or

the performance requirement of the service.

3.3.1 Service Priority

The highest service priority is 1. Every service is assigned this priority by default, i.e. if no

service classes are defined, all services have the priority 1. The higher the number, the

lower the priority of a service.

Priority 0 has a special status. Setting priority 0 for a service class enables the autono-

mous functions to be disabled for a service.

The service priority is evaluated for all autonomous reactions. If, for example, a service of

a productive system and a service of a test system are running on the same node and the

test system’s service is assigned priority 5, this service is not executed because the pro-

ductive system’s service which is functioning without error has the higher priority of 1.

3.3.2 Service Power Value

The service power value specifies for a service a performance number which defines the

maximum performance (SAPS) required by this service.

Introduction

FlexFrame Agents Guide 76

This value is used for takeover scenarios; the add rule requires the service power value

A failed service with a performance value of 50 can, for example, also be taken over by a

node which still has at least 50 of its maximum performance number free.

3.3.3 Class Creation Rules

A service belongs either to the default class which always exists or it can be assigned

unambiguously to another class by evaluating the aforementioned variables.

3.3.4 Testament Types

The switchover scenarios use testaments to transport the service information to other

nodes. The creation of the testaments can be node-based or service-based. With node-

based testaments, all services of a node always come together to the takeover node.

With service-based testaments the services could be taken by different nodes.

The parameter for the testament type and the takeover rules therefore strongly influence

the possible takeover scenarios.

3.3.4.1 Service-specific Testaments

Service-specific testaments are used for services which require individual takeover sce-

narios.

3.3.4.1.1 Enqueue Service in Case of Replicated Enqueue

The enqueue service with replicated enqueue service has its own service type. This spe-

cial testament is built dynamically if a replicated enqueue service exists. For this service-

specific testament, the service-based takeover rule applies. Only nodes with a replicated

enqueue service can apply.

Introduction

77 FlexFrame Agents Guide

3.4 FA Configuration, Work and Log Files

The figure below provides an overview of the configuration and log files which are gener-

ated by FA components and stored on the common file system. These files also form the

permanent memory which is required, for example, to restore the services needed when

a system is rebooted.

In a standard FlexFrame installation the following directories exist for myAMC.FA. All the

directories and files required for the myAMC.FA software are located here.

directory structure: /opt/myAMC/

and /opt/local/myAMC/

./FAwebgui FA web interface

./vFF/Common/.vFF_template.<version> Template for pool directories

./vFF/Common/.vFF_Master Pool-Master

./vFF/SpareRequest Requests for spares from sparepool

./vFF/vFF_<pool_name> Pool directory

config Pool-specific configuration data

log Log files

log/AppAgt Log files of Application Agents

log/CtrlAgt Log files of Control Agent

log/FrameAgt Log files of Frame Agent

log.common Common log files

data/FA/ FA data directory

data/FA/blackboard Blackboard directory

data/FA/livelist Live list

data/FA/servicelists Service files of all nodes

data/FA/servicelogs Service files of all nodes (history)

data/FA/xmlrepository XML files for the web interface

data/FA/reboot Reboot files for all nodes

data/FA/switchover Switchover files for all nodes

data/FA/performance Performance and accounting files

A detailed description can be found in chapter 10.3.

Introduction

FlexFrame Agents Guide 78

3.5 Systems

A system is based on several services which belong to a logical group. SAP systems are

an example of logical systems. The services of such a system can be distributed in one

pool on several Application Nodes.

The FA_AppAgents identify the services and the system they belong to autonomously

and they identify standard SAP services automatically.

3.5.1 Service Types

The FA_AppAgents are able to identify standard SAP services and the hierarchy in a

logical SAP system. For these services the FA_AppAgents do the autonomous reactions

restart, reboot and switchover.

DB, CI, APP, J, JC, SCS, ASCS, ERS, LC, MDS, MDIS, MDSS, MDS71, XPR, ...

Version 3.0 of the FA Agents can monitor the service types SCS and ASCS with replicat-

ed enqueue service (ERS). The detection of SCS/ASCS with or without replicated

enqueue service is done automatically.

As of FlexFrame version 5.0A and FA Agent version 9.0, the additional service types

MDS, MDIS, MDSS, MDS71, XPR, ... are supported.

As of FlexFrame 5.3 / FFO 1.0 the additional service types BOBJ 4.1 and SAP HANA are

supported.

3.5.1.1 Replicated Enqueue Service ERS

Version 3.0 of the FA Agents can monitor the service types SCS and ASCS with replicat-

ed enqueue service (ERS) scenarios.

For an SCS or ASCS service there is an ERS on which the enqueue table is replicated.

The detection of SCS/ASCS with or without ERS is done automatically.

Details of the reaction rules are described in chapter 4.

3.5.1.2 Solution Manager Diagnostic (SMD)

Version 9.0 of the FA Agents can monitor the Solution Manager Diagnostic (SMD).

As of FlexFrame V5.2A00-018 the myAMC.FA Agents support host based SMD agents of

version 7.3.

SMD 7.3 agents can work as host based and as service based agents. These require the

existence of a FlexFrame version ≥ 5.2A00-018.

In FlexFrame < V5.2A00-018 the SMD 7.3 agent can only be used with project specific

release and a special configuration. Details of the reaction rules are described in chapter

4.

Introduction

79 FlexFrame Agents Guide

3.5.1.3 Live Cache

With version 3.0 of the FA Agents it is possible to integrate the live cache into the stand-

ard autonomy scenarios. The FA Agents offer the standard autonomy functions restart,

reboot and switchover for the live cache.

A speciality of the live cache is the possibility to stop it from the SAP GUI. For this restart

scenario you have to check the restart times of the live cache, otherwise this scenario

cannot be diagnosed (recognized) as a fault of the live cache.

3.5.1.4 BOBJ 3.2 and BOBJ 4.0

The service BOBJ 4.0 can be detected since FlexFrame V5.1A.

The myAMC.FA Agents therefore has in FlexFrame V5.1 an external rule in file my-

AMC_FA_Rule.xml.

Since FlexFrame V5.2A this rule for BOBJ 4.0 is no more in file, it is an internal rule.

At migration from FlexFrame V5.1A to V5.2A the rule file myAMC_FA_Rule.xml must be

replaced with the rule file for FlexFrame V5.2A.

This will be done automatically during installation with EzSetup.

Important hint:

Also if FA-Agents for FlexFrame 5.2 are used in a FlexFrame 5.1 the my-

AMC_FA_Rules.xml may not include an active BOBJ40 rule.

A potential includes rule must be inactive.

Example for active BOBJ40-rule:

<section type="Service" name="SRV_BOE4">

<description> Created: Feb 2012 </description>

<attribute name="Active">1</attribute>

Example for inactive BOBJ40-rule:

<section type="Service" name="SRV_BOE4">

<description> Created: Feb 2012 </description>

<attribute name="Active">0</attribute>

Introduction

FlexFrame Agents Guide 80

3.5.1.5 SAP HANA

The SAP HANA database server needs a lot of memory and might need a very long time

for getting started.

Therefore, the default start-/stop-/restart- monitoring times were significantly increased.

Service_MaxRestartTime = 3100 Sek

Service_MaxStartTime = 2700 Sek

Service_MaxStopTime = 400 Sek

In case of SwitchOver there are different TakeOver strategies (see chapter 4.4.2) without

hardware check.

In case of "pool independent spare" procedure (see chapter 4.4.4) a similar AN was se-

lected according to certain rules (CPU-arch, HBA, 10GBES, SAPs).

In both cases there is no check of the necessary memory expansion. Thus, it is quite

possible that an AN with too little memory takes over the failed services and therefore

SAP HANA may not start.

Hint:

In case of switch over an AN (SwitchOver or pool independent spare) it is not guaranteed

that a node with similar memory expansion takes over the services of the failed node.

There is also the possibility that an AN takes over with too little memory.

Therefore, the user must ensure that a suitably powerful node takes over the services of

the failed node.

This can be done by appropriate grouping of SAP HANA services, or general use of simi-

lar nodes.

Homogeneous hardware with SAP HANA certified node should be used.

Introduction

81 FlexFrame Agents Guide

3.6 Generic Services

Generic services are services which are not integrated into the FA_AppAgents autonomy

rules. With generic services it is now possible to integrate other virtualized services into

the autonomy monitoring and reaction scenarios.

A generic service is a logic application suite consisting of one or more subservices.

For this purpose a generic service is defined through a set of parameters which are used

for its identification and which generate the service states. The description and definition

of a service is arranged in several models:

Service state model

Service detection model

Service reaction model

3.6.1 Service State Model

The autonomy scenarios are based on an defined state model. The standard service

state model uses the following states:

Starting

Running

Restarting

Stopping

Error

Warning

NoWatch (Attribute of a service)

Reboot

SwitchOver

Some states are detected automatically, but for setting other states there is an external

event neccessary. This will be done due to an eventscript, which will be started during

start of the startscript of SAP service. The eventscript will be visible for a defined time (30

sec) in the process list.

The eventscript is called monitor_alert / monitor_info and will be called with pa-

rameters which indicate the service calling for the external state (start, stopp, restart,

watch, nowatch).

The state changes are initiated through events from an event script or through detection.

For a generic service, implementation and integration in the standard start/stop procedure

of the service is necessary. The standard state model knows the following events:

Start

Stop

Restart

Introduction

FlexFrame Agents Guide 82

Error

Watch

Nowatch (Attribute of a service)

3.6.2 Service Detection Model

The service detection model provides the basis for identifying the service and building the

state model. A service detection model needs the parameters for the identification of the

service components. The parameters are the subservice and the processes of the sub-

service. For this there are parameters for hierarchy and process count. There is also a

process filter and exception rules, to avoid ambiguities.

3.6.3 Service Reaction Model

The service reaction model defines the reaction and the connection to the start, stop and

restart scripts. The reaction API has the parameters Script and Parameter:

Script The call reference for the script

Parameter Set of parameters for the script

The FA-AppAgents reaction API provides a set of parameters, which can be used as call

parameters in service-specific scripts:

@{SIDENT}@ Parameter for the (SID, in upper case)

@{sident}@ Parameter for the (SID, in lower case)

@{SRV}@ Parameter for service name (in upper case)

@{srv}@ Service name

@{SRVDISP}@ Display service name (in upper case)

@{srvdisp}@ Display service name

@{NIDENT:2@ Instance number (two-digits)

Introduction

83 FlexFrame Agents Guide

3.7 FlexFrame Performance and Accounting Option

The FA Agents provide optional performance and accounting data. The agents collect

node-, service- and group-based information.

The FlexFrame performance and accounting option requires the activation of additional

services on the Control Node. This service does a performance and accounting calcula-

tion of the raw data.

The FA Agents produce performance and accounting collections in the data directory of

the pool. There are 3 types of collect data

Collections per node with the name pattern Perf_Node~<node_name>.prf.<number>.col

Collections per service group with the name pattern Perf_Group~<node_name>.prf.<number>.col

Collections per service with the name pattern Perf_Service~<SrvType>~<SID>~<ID>.prf.<number>.col

The number and size of the collections produced by the FA Agents can be adjusted. In

the standard adjustment there are in each case 10 collections per service or node in-

stalled. This results in a ring buffer of data automatically reorganized by the agents. For

the sizing it is possible to calculate the required storage size through the number of

nodes and the size of the report cycle.

The parameters of the DomainManager and of the backup routine have to be configured

in a way that the raw data can be safely processed before being overwritten by the FA

Agents.

Introduction

FlexFrame Agents Guide 84

The following graphic shows the architecture of the performance and accounting option.

3.7.1 Performance Option

The performance option measures several performance values. For all measured values

there is a minimum, average, maximum and total value. This data is supplied in absolute

as well as relative form. The performance option enables monitoring and evaluation of the

server and services over a longer period of time. For every node the following data are

available as a minimal, average and maximum value:

load of SAP-, database- or generic services

other services

Machine idle

By using the generic services, the granularity of the performance values will be

increased. The data of the performance and accounting option can be directly visualized

with the FlexFrame FA Web GUI with performance and accounting management plugin.

The granularity of the view and the timespan can be freely defined.

Service Groups

Services are combined to form groups through specific criteria. This enables the group-

aggregated evaluation of the recorded data.The collected data is aggregated per report

cycle and is created for every node. By default the following groups exist:

mySAP.com®

Application-

server

Database-

server

Network

Storage

DB CI APP

FA-Application

Agents

FA- Performance

and Accounting

Service

ITDW

Accounting and

Performance Collets

Introduction

85 FlexFrame Agents Guide

SAP SAP services

DB Database services

IDLE Share (proportion) of the free CPU capacity

OTHER Sum of all processes not belonging to a defined group

It is possible to define further services and assign them to existing or new groups.

3.7.2 Accounting Option

The accounting option is, like the performance option, an optionally activatable part of the

FA Agents. The production of the accounting data is a multistage process determining

accounting data through aggregation and analysis of the recorded raw data.

The accounting data is determined on the basis of SAPS values. SAPS is the measured

size used for the sizing of a server for the SAP operation. SAPS values are only available

within the scope of a defined benchmark with defined SAP transactions.Therefore only

SAPS equivalents can be produced and calculated during the operation. For this purpose

the agents dynamically evaluate information on the SAP version and hardware-workload

data and use this to calculate the SAPS equivalent values.

Important parameters for the accounting are detection and report cycles. The detection

cycle defines the number of measurements within a report cycle. The minimum, maxi-

mum and average values are calculated on the basis of individual measurements for a

report cycle. The detection cycle therefore always corresponds to the detection cycle of

the FA Agents, which is also parametered for the autonomy function.

The following figure shows the ascertainment and calculation of values with regard to the

detection cycle and report cycle.

Time-

stamp

Host 1Backup

Host 7ASCSP22

Host 3

Host 6

Host 5

Host 4

Host 3

Host 2

Host 1

Hostname

xy

SCSP22

JCP22

JP22

APPP22

CIP22

DBP22

SAPS

%

SAPS

abs

Mem

%

Mem

Kb

CPU

%

CPU

ms

ServiceSystem

SID

Time-

stamp

Host 1Backup

Host 7ASCSP22

Host 3

Host 6

Host 5

Host 4

Host 3

Host 2

Host 1

Hostname

xy

SCSP22

JCP22

JP22

APPP22

CIP22

DBP22

SAPS

%

SAPS

abs

Mem

%

Mem

Kb

CPU

%

CPU

ms

ServiceSystem

SID

Min, Max, Avg, Totalper Report-cycle

Introduction

FlexFrame Agents Guide 86

3.7.2.1 Automatic Calculation of SAPS Values

The SAPS calculation is based on the automatic and dynamically determined workload

ability of a node. Based on a variety of technical features such as cache, CPU, hyper-

threating etc. and the possibilities of the operating system to use these, modern servers

can, come to wrong assumptions concerning the workload abilities of a node. In these

cases the automatic valuation can result in defective workload calculations.

If the internal automatic ascertainment of the SAPS value results in defective values, the

manual SAPS calculation can be used.

3.7.2.2 Manual Calculation of SAPS Values

If the maximum workload number of a server could not be correctly determined via the FA

AppAgent the workload number can be individually defined for each node. The workload

values are then calculated using the prepared workload data. In this way the individual

particularities of the workload abilities of a node can be taken into consideration. For this

purpose, however, the workload values for each node have to be entered manually.

3.7.3 Billing

Using another calculation stage, chargeable workload units can be calculated from the

SAPS-based accounting data. For the calculation, a range of parameters enabling differ-

entiated pricing of the workload used can be set.

In the default mode, all systems and services are charged at the same value every time.

With the help of the FlexFrame Control Center accounting plug-ins, the pricing can be

determined through additional configuration settings.

Detection cycle

Default 10 sec

Max

workload

Min

workload

Report-cycle 1 min

SAPs

t

Total work

Server capacity

Introduction

87 FlexFrame Agents Guide

Therefore the following statements are necessary:

Service contract no.

System ID

ServiceID

Date range

Day type, e.g. weekday, holiday, weekend

Time of day, e.g. daytime, nighttime operation.

The billing table enables very differentiated billing of accounting data as far as the service

contract level. By way of system, service time, time of day and time types, different

service contract items with various workload prices can be used.

CPU/ SAPs Values

0,15€

0,20€

0,30€

0,15€

0,25 €

Accounting

Price

Sapsrule

Sapsrule

Sapsrule

Sapsrule

Sapsrule

Service-

levelrule

SC_12345

SC_12345

SC_12345

SC_12345

SC_12345

Service-

Contract

Standard

Standard

Standard

Standard

Standard

Accounting

rule

24:0000:00daily01.01.210001.01.2006DBP23

24:0000:00daily01.01.210001.01.2006otherP23

24:0000:00daily01.01.210001.01.2006allQ22

P22

P22

System

ID

all

all

Service

typ

00:00

00:00

from

Time

24:00

24:00

to

Time

weekend01.01.210001.01.1900

workday01.01.210001.01.1900

UnitdayTypetoDatefromDate

0,15€

0,20€

0,30€

0,15€

0,25 €

Accounting

Price

Sapsrule

Sapsrule

Sapsrule

Sapsrule

Sapsrule

Service-

levelrule

SC_12345

SC_12345

SC_12345

SC_12345

SC_12345

Service-

Contract

Standard

Standard

Standard

Standard

Standard

Accounting

rule

24:0000:00daily01.01.210001.01.2006DBP23

24:0000:00daily01.01.210001.01.2006otherP23

24:0000:00daily01.01.210001.01.2006allQ22

P22

P22

System

ID

all

all

Service

typ

00:00

00:00

from

Time

24:00

24:00

to

Time

weekend01.01.210001.01.1900

workday01.01.210001.01.1900

UnitdayTypetoDatefromDate

Aggregationcycle

AccountingcycleAccountingreport

Introduction

FlexFrame Agents Guide 88

3.8 Parametricable Value Observation and Service Level Profile

The FA suite offers the possibility of generating the production of events e.g. on trans-

gression of a defined limiting value. Parametricable events are directly evaluated and

dispatched by the FA Agents.In contrary profiles are evaluated by the domain manager

during processing of the performance-, capacity- and accounting-collections, generated

on transgression of adjusted levels of belonging events and dispatched as SNMP trap.

3.8.1 Monitoring of file system and directoy utilization

From version 8.0 on the FA Agents are able to generate parametricable events. On those

terms observable objects and their limiting values can be registerd in a file. This function

exists for the observation of file systems. Obervable file systems as well as the limiting

values for size and increase are registered in a regulation file.On transgression of the

limits a belonging event is generated and dispatched.

3.8.2 Performance Profile, Capacity Profile, Accounting Pro-file

Profiles in which limiting values for the CPU consumption and SAPS consumption can be

defined, are defined for the performance data and accounting data of the FA Agents. On

transgression of the limiting values a SNMP trap is generated.The definition of the pro-

files follows with the standard FA configGui.

Performanceprofile

Capacityprofile

Accountingprofile

The profiles can be defined on service level, system level and node level. The user can

individually decide which profiles exist. A profile can apply to all systems, nodes and

services or pool-, system-, service-, group- or node-specific, depending on the hierachical

level of the profile.

The evaluation of the performance, capacity and accounting profiles ensues through the

domain manager.

The domain manager reads the collections in. The addition and condensation to higher

condensation-based or system-based values follows through the aggregation in the do-

mainmanager.

Introduction

89 FlexFrame Agents Guide

3.9 FlexFrame File System Utilization and File Space Accounting Option

This function is available from version 8.0 of the FA Agents on and enables the observa-

tion of file systems and the node- and system- or service-based accounting of the file

spaces which is needed because of defined files or registers. The fill degree of file sys-

tems on local servers and also on storage systems (NAS and SAN) can be supervised

through the file space accounting system. On reaching a specific percentual threshold

this system will generate a report.

The tasks of the file space management are on the one hand the monotoring which ena-

bles the alerting and reacting in due time if not enough file space is at disposal and on the

other hand the processing of the file system data to the accounting and to the evaluation

for the storage capacity planning.

The following graphic shows the architecture of the file system utilization:

The data for file system utilization and file space accounting can be determined with the

FA AppAgents and the FA FrameAgents.The FA FrameAgents are installed on the

Control Node which allows locally personal parameter files for each. The FA AppAgents

have a pool-specific parametrization meaning all FA Agents of one pool will be using the

same parameter file.

The collecting and processing of the data can be done frame-, node- and system- or

service-specific. The parameter sets and rule sets for the file system utilization allow very

granular definition in which cycles and for which file system or file the storage consump-

tion and the increase will be ascertained.

mySAP.com®

Application-

server

Database-

server

Network

Storage

DB

Service

Node

FA-App Agents

FA- Domain

Manager

ITDW

File utilisation Collections

FA-Frame Agent

Vol FF

Vol 0

System

Group

Frame

Group

Introduction

FlexFrame Agents Guide 90

Statistic definition in the ruleset

The observed file systems, registers and files can be staticly defined in the rulest, i.e. the

start of the FA Agents activates the collection of the data and the calculation for every

report cycle.

Dynamic definition in the ruleset

The ascertainment of the file systems, directories and file data can also be achieved in

dependency to systems and/or specific service types. The generation of the file system

utilization data ensues only if the defined system or a specific service type actually runs

on a node. The FA AppAgents ascertain through the dynamic triggering.

The ressource requirements and time requirements for the ascertainment vary depend-

ing on the size and the number of the monitored file systems, directories and the number

of files. To ensure the use of the functionality in very big SAN-based or NAS-based stor-

age infrastructures a convenient and adapted configuration of the rules and cycles for

collecting and processing of the file system data and file data is necessary. For that the

FA Agents offer the configuration of two different cycles for collecting of the data and a

file system detector which ascertains resource savingly only the consumptions on file

system level and does not execute file-based evaluations.

Another aspect is the visibility of the file systems and directories from the view of one or

more Application Nodes. Normally all nodes of a frame or pool use the same file system.

It is recommended to collect this information with the FA_FrameAgent which will be in-

stalled on the Control Node and which is able to execute this task centrally for a whole

frame.

As soon as a file-based or directory-based supervision or accounting is exspected, the

configurated rules have to be fitted to size and number of the storage systems. Otherwise

a successful implementation and use is not possible.

The directory detector and file detector is a dependent detector, i.e. it requieres infor-

mation of the file systems to supervise the values for individually defined directories or

files.

With that the register detector is able to work from the view of the Application Nodes or

from the view of the Control Nodes. If used on the Application Node generic information

from the services can be used to ascertain the directories, i.e. this function is better suited

for the use of the directory monitored. With that the monitored directories can be generi-

cally derived from the service information. Thereby e.q. data directories and log directo-

ries of a data bank can be generically dynamically ascertained.

File systems and directories normally are not in a 1:1 relation to nodes and services. A

file system e.q. may be used by all nodes of a pool, directories on the other hand are only

available in dependency to specific services. The architecture of the FA file utilization

management offers therefore the possibility to specifically ascertain the data on frame,

node or service.

Introduction

91 FlexFrame Agents Guide

The FA Agent takes over the data for every cycle from the detector and compresses the

results to a report cycle. The results are written in a collection file for every report cycle.

The collection files develop service-, node-, pool- and frame-specific.

Service-specific or node-specific information can only be generated by FA AppAgents.

During the collection of the data on the Control Node frame-specific storage data can be

collected.

For the administration of the storage consumption information, collections of variable

type are written:

Exampes:

Perf_FSUtil_Node

The collection develops for every node and contains a record with correspond-

ing timestamp of the report cycle to the report cycle for every file system to be

supervised.

Perf_DirUtil_Service

The collection develops for an SID service and contains a record with corre-

sponding timestamp of the report cycle to the report cycle for every directory or

file to be supervised.

Perf_FSUtil_Frame

The collection develops for every node and contains a record with correspond-

ing timestamp of the report cycle to the report cycle for every file system to be

supervised.

Introduction

FlexFrame Agents Guide 92

3.9.1 File System Detector and Directory Detector

As of version 8.0 FA Agents have two additional detector components for the supervision

of file systems and directories.

1. File system detector

2. Directory detector

The file system detector can supervise file systems or mount points and supplies the

existing and employed capacity of a file system. A file system corresponds to a mount

point in a Linux system.

The directory detector enables the monitoring of individual files or directory. The directory

detector ascertains the absolute quantity.

Absolute storage space z

Total capacity of the file system

Usage of file system and directory

Usage %

The delta to the last cycle kb%delta and additionally as value per second

The resource consumption or the footprint of the directory detector is distinctly higher

then the file system detector consumption. Therefore the directory detector can only be

used for individual directories and should not be configurated for all directories.

Interesting is for instance the supervision of files and directories where significant

increase is possible for example logfiles or database directories.

Variable cycle times can be defined for collecting of the file system data and directory

data:

Perfdata_SpaceUtil_FSCycleTime

specifies how often (in seconds) myAMC.FA checks the file system utilization for

performance data.

Perfdata_SpaceUtil_DirCycleTime

specifies how often (in seconds) myAMC.FA checks the directory utilization for

performance data.

The FA Agent is able to calculate from the raw values the increase rates through consi-

deration of several cycles and to dispatch alerts as soon as these and/or the fill degree of

the file system exceed specific values.

Values for the generation of the file monitoring alerts receives the FA Agent from the configuration file myAMC.FA-Check.xml in which limiting values for every supervised file

system can be configurated.

This function enables for example the supervision of the availability and the capacity of

the voIFF filesystem from FlexFrame.

Introduction

93 FlexFrame Agents Guide

3.10 Domain Manager for Performance and File Sys-tem Collections

3.10.1 Data collection

The domain manager is an independent component of the FA suite. The domain manag-

er cyclically processes the collection files for the performance, capacity, accounting and

file utilization management. The FA domain manager is used on the Control Node.

To that purpose the FA Agents generate so called file system file collections and accoun-

ting collections each in the data directory of a pool. The following types are distinguished:

Collections for every node with the name pattern Perf_Node~<node_name>.prf.<number>.col

Collections for every servicegroup with the name pattern Perf_Group~<node_name>.prf.<number>.col

Collections for every service with the name pattern Perf_Service~<SrvType>~<SID>~<ID>.prf.<number>.col

Collections for the file system supervision Perf_FsUtil_Frame~< frame_name>.prg.<number>.col

Perf_FsUtil_Pool~<pool_name>.prg.<number>.col

Perf_FsUtil_Group~<group_name>.prg.<number>.col

Perf_FsUtil_Node~<node_name>.prg.<number>.col

Perf_FsUtil_System~<SID>.prg.<number>.col

Perf_FsUtil_Service~<SrvType>~<SID>~<ID>.prg.<number>.col

Collections for the directory and file monitoring Perf_DirUtil_Frame~< frame_name>.prg.<number>.col

Perf_DirUtil_Pool~<pool_name>.prg.<number>.col

Perf_DirUtil_Group~<group_name>.prg.<number>.col

Perf_DirUtil_Node~<node_name>.prg.<number>.col

Perf_DirUtil_System~<SID>.prg.<number>.col

Perf_DirUtil_Service~<SrvType>~<SID>~<ID>.prg.<number>.col

Number and size of the collections generated by the FA Agents can be adjusted. The

standard setup enables the generating of 10 collections each per service or node. With

that a ringbuffer of data which can be automatically reorganized by the agents develops.

The for the sizing required storage size can be calculated from the number of the nodes

and the size of the report cycle.

The parameter of the performance manager and the backup routine have to be adjusted

in such a way that the raw data can be securely further processed bevor being super-

scribed again by the agents.

Introduction

FlexFrame Agents Guide 94

3.10.2 Data retentiontime and compression

The domain manager has the task to process new data and write it to the database.

However, the domain manager also monitors the retention time of the individual data in

the database. After expiration of the retention time he automatically deletes older data

sets from the database.

From Flex Frame Flex Frame Orchestrator V5.3 or V1.0 Domain Manager can also com-

press data cyclically. From the minute values, e.g. be used for online monitoring, which

can lead to very large amounts of data very quickly, is cyclically generated a compression

stage (eg hourly values). The amount of data is reduced by a factor of 60. From the min-

imum, maximum and average values based on minutes, the corresponding values are

calculated on an hourly basis. For this compression not the collets, but the data from the

repository are required. The erase cycles and compression cycles can be configured

independently of each other. Prerequisite for a higher compression level is, of course,

that the deletion of the data needed for the compression will be done at a later time.

95 FlexFrame Agents Guide

4 FlexFrame Autonomy

The operation of SAP systems is becoming increasingly complex, the number of compo-

nents required is constantly rising.

Installation, configuration and operation of a distributed SAP installation consequently

involve considerable administrative effort. The demands on the systems change rapidly,

and it must be possible to expand an existing configuration of replace failed components

both quickly and flexibly.

Through the use of Autonomy Agents, FlexFrame enables the number of operator inter-

ventions to be reduced and availability to be increased. This chapter describes the appli-

cation scenarios for the FlexFrame Autonomy functions.

Installation and startup of the agents is described in chapter 2.

To permit active operation of a FlexFrame Autonomy installation, the FlexFrame Autono-

my Agents must run on the Application Nodes and a Control Agent on the active Control

Node.

Use of the Messenger component is optional and is required only for displaying and for-

warding events of the FA Agents and for integration into Enterprise Event Management

Systems.

The FlexFrame Autonomy Application Agent is used to monitor SAP central instances,

SAP application instances and database instances. In the event of a problem, so-called

self-repair mechanisms are used for these services. Execution of these self-repair mech-

anisms can be triggered locally or centrally. For each service/node these mechanisms

can be divided into the following categories:

Monitoring of a service

Restarting of a service if it was down

Rebooting of a node if a service could not be started again after one or more re-

starts

Switchover (automatic change) to another node if the reboot could not be per-

formed or was not successful

Detecting of START, STOP and maintenance situations

Control functions for displaying activities and statuses, sending mails and SMSs,

configurable in conjunction with time, contact and problem situation

Performance, capacity and accounting management

File system monitoring

FlexFrame Autonomy

FlexFrame Agents Guide 96

4.1 FlexFrame Autonomy Reactions

FlexFrame Autonomy detects problems and decides autonomously on the reactions to be

implemented after evaluating rules which can be controlled via parameters. FlexFrame

Autonomy knows the following basic reactions:

Restart

Reboot

SwitchOver (internal / external)

These basic reactions, combined with pool creation, grouping, the service classes, and

the service priorities result in a large number of reaction scenarios.

4.1.1 Restart

The FA AppAgent restarts a service if a required subservice is down or no longer avai-

lable. In this case it checks whether the service is available again after the restart on the

basis of a configurable time interval. The restart is not performed if any service which

runs on the node has already triggered a reboot. Furthermore, failure of multiple sub-

services of a service leads to a restart within the configured time interval only until service

availability has been restored.

The number of restart attempts for restoring service availability can be configured. If the

number of parameterized restart attempts is 0, failure of the service results directly in a

reboot attempt. If the number of reboots permitted for the nodes is 0, a switchover is

initiated.

The restart reactions are not affected by pool creation, grouping or service classification.

4.1.2 Reboot

A node is rebooted if an monitored service has failed and could not be made available

again after the configured number of restart attempts, or if no restarts are allowed.

The autonomous reaction also evaluates the service priority of the service which is dis-

turbed. If multiple services are running simultaneously on the nodes, it will be checked

whether services with higher priority are still running. If this is the case, the reboot is not

performed.

4.1.3 SwitchOver

A SwitchOver always leads to all the monitored services of a node being moved to an-

other server node.

The decision to move to another node can be taken locally by the FlexFrame Autonomy

Agent ( internal SwitchOver), or by the Control Agent on one of the Control Nodes (exter-

nal SwitchOver).

FlexFrame Autonomy

97 FlexFrame Agents Guide

4.1.3.1 General Rules

Takeover in the event of a node failure is implemented using what is termed an applicant

rule. The applicant rule states that each spare node may apply to take over the services

of a failed node.

Pool creation, grouping and service classes permit new switchover scenarios which can

satisfy different availability requirements depending on the parameterization.

This results in the following scenarios:

Pool-dependent switchover

Group-dependent switchover

Service-prioritized switchover

The failure of a node is only reacted to within a virtual FlexFrame pool.

Groups can be defined within a virtual FlexFrame pool. The applicant rule states that a

node only issues an application when a node in its own group fails.

The granularity of the reaction to a system failure can be further refined by prioritizing

individual services.

The applicant rule states that in the event of simultaneous failure of multiple services, the

application is first issued for the switchover file (testament) of the service with the higher

priority. Only if all higher-priority services have been taken over by another node and free

spare nodes exist do these apply for the switchover files of lower-priority services which

still need to be taken over.

When services with priority 0 fail, no applications are made by spare nodes. This pre-

vents spare nodes being used up by the failure of unimportant test systems.

The parameter file also contains a “minimum priority” parameter. This parameter provides

a very simple way to define, for example, that spare nodes only apply to take over the

services of a node if none of the failed services has a lower priority than that entered

there.

In conjunction with the basic rule “by default all services have priority 1“, a lower priority

can be configured for individual services, thus providing a simple way to prevent valuable

spare nodes being used up by the failure of test systems.

4.1.3.2 Internal SwitchOver

In the case of an internal SwitchOver the Application Agent recognizes that a service is

down and cannot (or depending on the configuration may not) be restored using a restart

or reboot. The FlexFrame Autonomy Agent then initiates an internal SwitchOver.

The autonomous reaction also evaluates the service priority of the service which is dis-

turbed. If multiple services are running simultaneously on the nodes, it will be checked

whether services with higher priority are still running. If this is the case, the internal

SwitchOver is not performed.

FlexFrame Autonomy

FlexFrame Agents Guide 98

The actual takeover by another node begins with the transfer message. Only spare nodes

can apply and take over these services. The node which takes over control starts the

required services. If, after the maximum switchover time, the FA AppAgent on the system

that is to take over control is not able to start the services, it reports this by means of an

SNMP trap. The switchover is aborted and must be processed further by the administra-

tor.

4.1.3.3 External SwitchOver

In contrast to the internal SwitchOver, the external SwitchOver is detected and initiated

by the Control Agent on a Control Node. This is required if the system is showing no sign

of life or can no longer be reached in the network. Reachability is tested using Ping or

SSH tests. The user decides whether to perform only Ping, only SSH or both kinds of

test. Additionally the Ping requests may be configured for client LAN, server LAN, and/or

storage LAN interfaces.

The takeover is performed in the same way as for the internal SwitchOver.

In order to enable user-specific actions before or after a node was powered down, the

CtrlAgent calls hook scripts, which may be customized by the user. The scripts are pro-

vided with the return code of the previously executed action.

Pre-PowerOff hook script: Called with return code 0 as argument, as there was no previ-

ously executed action.

Post-PowerOff hook: Called with the return code of the Pre-PowerOff hook script (if it

failed, i.e. the return code was != 0) or with the return code of the power off script.

If the configuration value IgnorePoffHookResult is set to true, the return codes of

the hook scripts are ignored. If set to false, they are used as hints on how to proceed in

case of errors: if the Pre-PowerOff hook script returns a value != 0, power off will not be

performed, if the Pre-PowerOff hook script returns a value != 0, the switchover will not

proceed. This enables the user to customize the external switch over and power off pro-

cesses based on additional information or rules or to perform additional actions, e.g.

mounting SAN devices.

FlexFrame Autonomy

99 FlexFrame Agents Guide

4.1.4 Maintenance

The autonomous functions and reactions of the FA Agents can be disabled for individual

services by calling a maintenance script. This is always required when application in-

stances are to be started and stopped without autonomous reactions.

For FlexFrame Version >= V5.0A:

A service is set to nowatch using the following scripts on the relevant Application Node:

ff_service.sh -s <SID> -t <SERVICETYPY -a nowatch

ff_service.sh -s ml5 -t db -a nowatch

...

A service is reincluded in monitoring using the following scripts on the relevant Applica-

tion Node:

ff_service.sh -s <SID> -t <SERVICETYPY -a watch

ff_service.sh -s ml5 -t db -a watch

...

4.2 Self-Repair Strategies

In terms of the strategy for restoring a failed service, a distinction must be made between

the following failures:

Service failure

Node failure

A detailed description of the procedure for the subsequent autonomous reaction was

provided in the preceding chapter.

4.2.1 Self-Repair in the Event of a Service Failure

If a service failure occurs, this is detected by the myAMC.FA_AppAgent and an attempt

is made to make the service available again using the following autonomous reactions

and their escalations:

Restart of the service

Reboot of the node

SwitchOver (internal)

FlexFrame Autonomy

FlexFrame Agents Guide 100

Implementation and the number of the above-mentioned autonomous reactions and the

escalations can be affected by the configuration.

4.2.2 Self-Repair in the Event of a Node Failure

If a node failure occurs, this is detected by the myAMC.FA_CtrlAgent and an attempt is

made to make the service available again using the following autonomous reactions:

SwitchOver (external)

4.2.3 Takeover by a Spare Node (TakeOver)

The standard rule in the FlexFrame concept for taking over the services of a failed node

is to have them taken over by a spare node.

Every Application Node in a standard FlexFrame installation on which an FA AppAgent is

running and none of the monitored services exists is automatically a spare node.

If a switchover is started as a result of a node failure or escalation of a service failure, all

spare nodes apply to take over the services. The quickest node in the application proce-

dure is chosen and takes over the tasks.

4.2.4 Multi Node Failure

4.2.4.1 Common

The simultaneous failure of multiple systems or nodes is called “Multi Node Failure“. This

indicates a different kind of failure than a single node or system failure, where the cause

is usually more complex. As of version V30A10, the FA Agents offer support for the au-

tomatic detection of Multi Node Failures with different reactions and additional alarms.

This allows the recognition of failure states, which require the attention and decision of an

administrator. Several new parameters allow the modification of the usual behaviour, like

delaying or skipping reactions. Additionally a set of new alarms triggered by user-

configurable indicators inform the administrator in case of of a multi node failure, so he

may take apprioriate actions. The configuration of these indicators can be performed per

pool.

There are two different Multi Node Failure scenarios:

1. Simultaneous failure of multiple nodes, systems or services, e.g. due to a power

outage in a blade cabinet, which shows an affect within a short period of time

(e.g. one minute)

2. Failure of several nodes, systems or services, within a specific timerange, which

is bigger than the one specified above (e.g. one hour)

These scenarios are called “ShortTime Failure” and “LongTime Failure”.

FlexFrame Autonomy

101 FlexFrame Agents Guide

The CtrlAgent keeps a list of all failures, with each entry containing node name and

timestamp. If the number of entries within a scenario-specific timerange exceeds the limit,

the CtrlAgent assumes a Multi Node Failure.

4.2.4.2 Case 1: ShortTime Failure

Simultaneous failure of multiple nodes, systems or services, e.g. due to a power outage

in a blade cabinet, which shows an affect within a short period of time (e.g. one minute).

MultiNodeFailure_ShortTime_FailureCount

Specifies the number of failures within a certain time range, which leads to a Multi

Node Failure state.

MultiNodeFailure_ShortTime_FailureTime

Specifies the time range (in seconds) to be used for failure aggregation.

MultiNodeFailure_ShortTime_ReactionDelay

Specifies a delay time (in seconds) before the CtrlAgent reacts on failures.

MultiNodeFailure_ShortTime_ReactionAction (for future use)

Specifies a reaction different from the normal modus of operation.

In case of a Short Time Multi Node Failure the CtrlAgent sends an emergency alarm.

Additionally the usual autonomous reactions can be delayed or skipped (by setting

MultiNodeFailure_ShortTime_ReactionDelay to a very big value).

4.2.4.3 Case 2: LongTime Failure

Failure of several nodes, systems or services, within a specific timerange, which is bigger

than the one specified above (e.g. one hour).

MultiNodeFailure_LongTime_FailureCount

Specifies the number of failures within a certain time range, which leads to a Multi

Node Failure state.

MultiNodeFailure_LongTime_FailureTime

Specifies the time range (in seconds) to be used for failure aggregation.

MultiNodeFailure_LongTime_ReactionDelay

Specifies a delay time (in seconds) before the CtrlAgent reacts on failures.

MultiNodeFailure_LongTime_ReactionAction (for future use)

Specifies a reaction different from the normal modus of operation.

In case of a Long Time Multi Node Failure the CtrlAgent sends an emergency alarm.

Additionally the usual autonomous reactions can be delayed or skipped (by setting

MultiNodeFailure_LongTime_ReactionDelay to a very big value).

FlexFrame Autonomy

FlexFrame Agents Guide 102

4.3 Escalation with partner service

There are special rules for some service types which have a partner-service.

There are differences if the partners run at the same or at another node as well as the

behavior at escalation and SwitchOver.

There are special rules for the following service-types:

• SCS / ASCS in conjunction with ERS

• Service with assigned SMD-service

4.3.1 SCS / ASCS in conjunction with ERS

For an SCS or ASCS service there is a replicated enqueue service (ERS) on which the

enqueue table is replicated.

The FA-Agent has to check is the replication was active.

Therefore the status of replication will be detected with the script (‚my-

AMC.DetTestEnsmon.sh‘).

Possible results:

# no replication service configured

ENSMON_RESULT="replication is disabled in server"

# replication service configured, but no replica running

#ENSMON_RESULT="replication is enabled in server"

# replication service configured, replica running

#ENSMON_RESULT="replication is enabled in server\nReplication is

active"

Only if the replication ist enabled and acrive, there is a special rule as VIP-service for

SCS/ASCS.

Up to now it was usual run the SCS / ASCS and the ERS at different nodes, so in cause

of failure there are special scenarios for TakeOver.

By now it is allowed to run SCS/ASCS and ERS at the same node.

These involved adapted rules for escalation.

4.3.1.1 SCS/ASCS with partner ERS at various nodes

Aim:

FlexFrame Autonomy

103 FlexFrame Agents Guide

If the SCS/ASCS fails, this service must be restarted on that node where the associated

ERS is running.

The SCS/ASCS takes over the enqueue table in shared memory and stops the ERS.

Once the ERS is stopped, the testament is published and, with the autonomy scenarios

for internal SwitchOver, the ERS gets a new node and starts up. So if the SCS/ASCS

fails again, there is another ERS for a new takeover scenario.

For switchover of SCS/ASCS there was written a service based VIP-testament, which

contains only the SCS/ASCS and may only take over from the node running the associ-

ated ERS.

For switchover of ERS there was written a service based testament, which contains only

the ERS. For this TakeOver the normal takeover rules being valid.

Sequence of steps:

Node A Node B Node C

SCS/ASCS

running

ERS

running

SCS/ASCS

fail

SCS/ASCS

VIP-Testament

TakeOver

ERS

Switch

ERS-

Testament

TakeOver

These behavior with the VIP-testament will be done if configured both „Node_SwitchOverTyp=node“ and „Node_SwitchOverTyp=service“.

This scenario works with one or more replicated enqueue services in one system.

4.3.1.2 SCS/ASCS with partner ERS at same node

If SCS/ASCS and associated ERS are running at the same node, there is no shared

memory at another node which can be taken over.

Therefore the SCS/ASCS and ERS will be written in a common SwitchOver-file and will

be taken over to the same node.

These common switch of the partner services will be done if configured both

„Node_SwitchOverTyp=node“ and „Node_SwitchOverTyp=service“.

4.3.2 Service with assigned SMD-service

Service based SMD:

FlexFrame Autonomy

FlexFrame Agents Guide 104

If a service has an assigned SMD running at the same node, in case of failure the ser-

vices should be switch to the same node.

Therefore the service and the assigned SMD will be written in a common SwitchOver-file

and will be taken over to the same node.

These common switch of the partner services will be done if configured both

„Node_SwitchOverTyp=node“ and „Node_SwitchOverTyp=service“.

Host based SMD:

If the SMD is host based there is no fix mapping to the service.

If a host based SMD is the only running service at a node, the myAMC.FA will be recog-

nized the node as spare node.

During the myAMC.FA reactions Restart and Reboot the SMD will be handled as every

other service.

FlexFrame Autonomy

105 FlexFrame Agents Guide

4.4 Takeover Rules

4.4.1 Overview

Rule based high availability for nodes and services is performed by evaluating rule sets,

which control the take over of services from a failed node. They consist of qualification

rules, take over strategy and take over rules.

The qualification rules specifies, which nodes may apply for the services of a failed node.

The take over strategy defines the conflict resolution mode to be used, when more than

one node applies for a node testament.

The take over rules controls the actual take over, i.e. service start order and possibly

service displacement or replacement.

The parameters for this TakeOver rules always apply to the entire pool (Up Flexframe

V5.2).

From FlexFrame V5.3 or FlexFrame Orchestrator V1.0 these rules can be defined differ-

ently in each group of a pool.

In the default case, there is a set of rules that applies to the entire pool. In addition,

group-specific rule sets can be configured for one or more groups. For all groups for

which there is no separate set of rules, the default rule applies.

4.4.2 TakeOver Strategy

4.4.2.1 Overview

The qualification rules specifies, which nodes may apply for the services of a failed node.

When performing a switchover, all nodes may apply for take over of the failed node’s

services by taking part in an auction. As long as the auction lasts, all nodes, which

match the requirements as specified in the failed node’s testament may apply. When it is

finished, the take over strategy is used to decide which node won the auction.

4.4.2.2 FirstFit

FirstFit specifies that the first node, which applied for a testament, is the winner. This

is the default strategy.

4.4.2.3 LowPrioFit

As of version V30A10, the FA Agents provide a new strategy: LowPrioFit. The applica-

tion node containing the services with the lowest priority wins the auction. It therefore has

the best chance to replace or displace some running services in order to take over the

failed services.

FlexFrame Autonomy

FlexFrame Agents Guide 106

By definition a spare node is considered to have the lowest priority, so it will win an auc-

tion over a node with running services. A node with only services of priority 0 will win over

a node with services of priority 1 and higher and so on.

This strategy can be used as an alternative to FirstFit. This changes only the behaviour of

the new take over rules: add rule, replace rule and substitution rule. If only the spare

node rule is used, the behaviour is the same as with the FirstFit strategy, because all

spare nodes have the same priority and the first one wins the auction.

4.4.3 TakeOver Rule

4.4.3.1 Overview

In version 3 and higher, the FA Agents offer the option of configuring various takeover

rules. It is now possible to replace or supplement the previously available spare node rule

with further alternatives.

Generally it is possible to differentiate between a static takeover rule and a dynamic

takeover rule.

These takeover rules can be applied not only for nodes but also for service-based testa-

ments. With node-based testaments it is evaluated in each case on the basis of the high-

est priority in the testament or the highest priority of a current service on an Application

Node.

4.4.3.2 Takeover Rules

The takeover rule is referred to as static if one of the possible takeover rules is param-

eterized. The spare node rule available until version 3 is a static takeover rule.

With version 3.0 of the agents the following static parameterized takeover rules will be

available:

Spare node rule

Add rule

Replace rule

Substitution rule

Dynamic

These rules allow very granular reaction to the breakdown of Application Nodes and

services. It is no longer necessary to always keep spare nodes on hand in case of a

breakdown of services for high availability.This function can now also be performed by

Application Nodes which already possess services.

4.4.3.2.1 Takeover through Spare Nodes (TakeOver)

The takeover by way of a spare node is the standard rule in the FlexFrame concept for

taking over the services of the defective node.

FlexFrame Autonomy

107 FlexFrame Agents Guide

Every Application Node in a standard FlexFrame installation on which the FA AppAgent

runs and on which none of the controlled services exist, is automatically a spare node.

If, through the breakdown of a node or the escalation of a service disturbance, switchover

occurs, all spare nodes apply for the takeover of the services. The quickest node in the

application procedure receives the job and will take over those services. The application

takes place at group level.

In a default configuration, the spare node rule always applies.

4.4.3.2.2 Add Rule

With this rule all spare nodes of a group can apply but so too can all nodes which still

have sufficient workload reserves. The add rule only uses a node if the priority of the

services in the testament is equal to or higher than the priority already running on the

node. This prevents a high-priority node from taking over lower-priority services.

With add –rule only the nodes which possess services with lower or equal priority

apply (from pool, group).

If (OWN_prio_max >= SWO_prio_max ) apply

In addition to the already running services, the services that have been taken over are

started.

Thus the add rule is employed if running services are supposed to be stopped by the

takeover rule. This normally gives rise to a performance disadvantage after the taking

over of the services for the services taken over as well as the services already running on

the Application Node.

The add rule expects for the services a configured maximum SAPS value reserved for a

service. The node only applies if its SAPS workload suffices for the operation of the al-

ready running services and the services taken over.

4.4.3.2.3 Replace Rule

This rule enables all spare nodes of a group to apply, but also all other nodes on which

services with lower priority run. The replace rule only uses a node if the priority of the

services in the testament is higher than the priority of the services already running.

If ( OWN_prio_max > SWO_prio_max ) apply

Attention: Prio 1 is the highest priority: numbers > 1 decrease in priority.

Services which are already running are displaced. The adopted services are started.

A displaced service is transferred via the internal SwitchOver.

The other nodes of the group apply according to the application procedure and the ser-

vices can again be made available for other nodes, provided that lower-priority nodes still

exist within the group.

FlexFrame Autonomy

FlexFrame Agents Guide 108

This rule defines which services may be stopped within the context of a takeover scenario

so that higher-priority services can be adopted and can possibly be made available on

another node.

4.4.3.2.4 Substitution Rule

This rule enables all spare nodes of a group to apply, but also all other nodes on which

lower-priority services run.

With the substitution rule, only nodes (from pool, group) possessing services with a lower

priority than the high priority of the switchover file apply.

If ( OWN_prio_max > SWO_prio_max ) apply

Attention: Prio 1 is the highest priority numbers > 1 decrease in priority

Services which are already running are stopped according to the rules of the stop hierar-

chy. The adopted services are started.

FlexFrame Autonomy

109 FlexFrame Agents Guide

4.4.3.3 Dynamic TakeOver Rules

4.4.3.3.1 Overview

In the static mode only one of the possible takeover rules can count. With the parameter dynamic as static takeover rule the decision which rule ist used is made dynamicaliy,

depending on the priorities of the services on the Application Nodes and the highest prior-

ity of the defective services. For this purpose, the priorities table exists in the parameter

file, which is only used in the case of a static rule dynamically parameterized.

The dynamic takeover rule allows disjunct as well as overlapping priority domains be-

tween the spare node rule and one of the other static takeover rules. For the takeover rules add rule, replace rule and substitution rule, the priority domains must defi-

nitely belong to a rule. If a priority domain is defective then the first fitting is used.

The dynamic takeover rules are best understood from the view of a service on one of the

Application Nodes.

The add rule replace rule and the substitution rule can be seen from the view of a running

service on an Application Node as escalation stages which, within the context of a takeo-

ver scenario, increasingly handicap it unless it can avoid impairment through a higher

priority.

As soon as a testament is published for takeover, all application nodes of the group

check if they can improve their status (services with higher priority). An Application Node

applies if, on successful application, an improvement to its service priority status is possi-

ble.

The successful applicant determines the taking over dynamically according to the para-

meterized takeover rule. The rule results from the evaluation of the dynamic takeover

table and the highest priority of the running services.

From this view, naturally the spare node has a special role, as it has no services it could

handicap. It has the function of protecting its resources for special challenges. The pa-

rameters registered for the spare node result in principle in another evaluation. The pa-

rameters determine the priority domains in which the spare node may apply.The priority

domain for which a spare node is responsible can overlap with the priority domains of the

other rules. A spare node now no longer applies for defective services, as was the case

with simple spare node rules, but only for services in the priority domain. This prevents

spare nodes from beingwasted on operating defective lower priority services.

The rules are called dynamic takeover rules if, depending on the highest service priority

that an application server already has, it is dynamically decided according to which rule

an Application Node takes part in the application procedure on breakdown of other Appli-

cation Nodes or services .The decision as to which rule is applied depends on the ser-

vices running on an Application Node at that time.

The dynamic takeover rules are supposed to ensure that a node is always available for

the highest priority services. Lower priority services can be operated in parallel. On

FlexFrame Autonomy

FlexFrame Agents Guide 110

breakdown of higher priority systems, those (the lower priority services) are displaced or

replaced.

The dynamic rules also have the function of reserving valuable spare nodes for high

priority services. This allows the use of different workloads and priorities in a FlexFrame

pool service. In case of hardware breakdowns very different disturbance scenarios, it is

now possible to use the remaining hardware optimally.

The application itself does not change. Of all the Application Nodes that applied, the one

which registered first wins.This is determined by the configuration parameter qualification

rule first fit.

The rules to be applied are parametered through a table with the following structure:

Spare node rule Prio >= 1 < 2

Add rule Prio > = 2 < 4

Replace rule Prio >= 4 < 6

Substitution rule Prio >= 6

The interpretation of this table depends on the dynamic evaluation implemented by an

Application Node for itself. An Application Node without services is a spare node. A spare

node applies only for node or service testaments with a service belonging to a priority

domain defined for spare nodes. This rule enables the reservation of spare nodes for high

priority services, without them being lost through lower priority services. This is shown by

the example with the following parametering for the spare node rule in the dynamic

takeover table.

Spare node rule Prio >= 1 < = 2

The spare nodes only apply for defective services which have a priority of 1 or 2. This

rule allows the restriction of the use of spare nodes on high-priority services.

Spare node rule Prio >=1 <= 2 exclusive

The additional attribute exclusive prevents Application Nodes which already possess

services from applying for services with the priority 1 or 2.

For Application Nodes which are not spare nodes, the rule for application is a bit more

complex. Here, two different dynamic influencing factors are at work: the highest priority

of a service in a testament for which it is possible to apply, and the highest priority of a

service already running on the Application Node.

For the application rule, the principle applies that an Application Node does not apply for

new services if this would cause already-running services with equal or higher priority to

be handicapped.

Example of a dynamic takeover rule:

FlexFrame Autonomy

111 FlexFrame Agents Guide

Individual dynamic switchover rules per pool

1

1

2

2

Spare

3

4

Pool n

Group 1

Group 2

Sparenode >=1 < 2

Add rule >= 2 < 3

Replace rule >= 3 < 4

Substitute rule >= 4

Testament

Prio 2

5000 SAPs

2

2

3

4

Candidate with add rule

Candidate with repluce rule

Candidate with substitution rule

Group specific application process

FlexFrame Autonomy

FlexFrame Agents Guide 112

4.4.3.3.2 Dynamic Example

In the Dynamic rule the highest priority of services in the switchover file and the highest

priority of the services at the own node will be used for further decision criteria.

For this, there is a further configuration:

Testament High Prio

TakeOver rule (min) (max)

SpareNode 1 4

Own High Prio

(min) (max)

Add 3 4

Replace 5 6

Substitute 8 20

Additionally there is the setting Dyn_Spare_exclusive, which means that the priority

range for SpareNode is exclusively reserved for the spare nodes.

The table above means the following:

High Prio in testament == 1 to 4:

Dyn_Spare_exclusive = true: Only spare nodes may apply.

Dyn_Spare_exclusive = false: All nodes may apply.

High-Prio in testament > 4:

Spare nodes may not apply.

All nodes with Own High Prio 3-4, 5-6, and 8-20 may apply.

All nodes with Own High Prio 1, 2, 7, and >20 may not apply.

Own High-Prio == 3 or 4: The TakeOver rule Add will be used.

Own High-Prio == 5 or 6: The TakeOver rule Replace will be used.

Own High-Prio == 7 to 20: The TakeOver rule Substitute will be used.

FlexFrame Autonomy

113 FlexFrame Agents Guide

4.4.4 Spare Nodes from the Adminpool (pool-independent spare node)

As of version V8.0 the agents on spare nodes can be requested from another pool. The

CtrlAgent of a pool monitors the takeover of failed nodes and services. Are no applicants

for failed nodes available can the CtrlAgent request spare nodes from the admin pool if it

is configured

A CtrlAgent is able to recognize through evaluation of its own pool name and the config-

urated parameter, which ruleset is needed for its operation

The following configuration parameters are used:

CtrlAgentRole

Defines the role of the CtrlAgent

Normal Normal function of this CtrlAgent

(don't work with a caretaker of the spare pool). WorkWithSparePool CtrlAgent work with a caretaker of the spare pool

SparePoolName

Name of the spare pool

<name> Name of the spare pool

NONE No spare pool available

SpareGroup

Name of the spare node group

<name> Name of the spare group

NONE No spare group available

The following parameters for the pool-overlapping spare node are also required:

SpareRequestMoveTimeout

Timeout in seconds for move a node from spare pool to work pool.

SpareNodePowercycleTime

Time in minutes how often the spare nodes in caretaker will be powered ON and

OFF. Values <= 1 (60sec) are not allowed and switched of this functionality.

SpareRequestMoveNodeMaxRetry

Max retries to call move-node script in case of error (LDAP-locks).

SpareRequestMoveNodeRetryDelay

Delay-Time (in seconds) between retries the call of move-node sript.

4.4.4.1 Productive Pool

Productive pools are all those pools whose poolname does not correspond with the con-

figurated spare pool name.

FlexFrame Autonomy

FlexFrame Agents Guide 114

4.4.4.2 SparePool (Adminpool)

4.4.4.2.1 General

The spare pool is the pool whose pool name corresponds to the configurated spare pool

name.

An adminpool is a special pool whose nodes are not used actively. A special group inside

an adminpool is the group SpareGroup. The spare group holds all nodes which are

available as spare nodes for other nodes.

4.4.4.2.2 Ascertainment of the Node Information

The spare nodes are normally turned off and are only cyclically turned on and off by the

CtrlAgents. The cycle time is defined through a parameter.

Initially the spare nodes have to be configurated manually and be available for at least

one detection cycle in the pool. With that the spare nodes with their capacity data are

automatically recorded and registered in a spare node list.

The cyclic turn on of the spare nodes actualizes the list every time. Nodes which can´t be

reached or started during that are then not in the list anymore.

4.4.4.3 Sparenode Selection Rule

To replaice a spare node of the productive pool with a spare node of the admin pool the

CtrlAgent selects a suitable node with a configurateable ruleset. The node which fits the

best with the failed node is selected.

The following attributes are considered for the selection of a failed node:

Attribute Meaning Examples

CPU-HT States

(if hyperthreading is active)

-1: not ascertainable

0: no hyperthreading

1: hyperthreading active

0

CPU-arch Processor architecture i686 sun4us

CPU-cnt-core Number of CPU cores 1

CPU-cnt-phys Number of CPU bases 1

CPU-cnt-siblings Number of CPU cores per

base

1

CPU-frequency(MHz) CPU tact frequncy 2993

FlexFrame Autonomy

115 FlexFrame Agents Guide

Attribute Meaning Examples

OS-typ Operating system Linux SunOS

OS-version Version of the operating sys-

tem

SUSE LINUX Enter-

prise Server 9 (i586),

VERSION = 9,

PATCHLEVEL = 3

5.8

cache-size(kB) Size of the CPU caches (in

KB)

1024

hasHba States, if the node has a HBA

(host adapter for SAN) (true

or false)

false

hbaType Typ of the HBA (host adapter

for SAN)

none unknown

is10GbES States, if the node has a 10

GBit/s Ethernet interface (true

or false)

false

location Position of the node deposited

in LDAP

default

mem-total(MB) Main storagesize (in MB) 1001

saps Specified SAPS value of the

node

1042

node-product-name CPU term Intel(R) Pentium(R)

4 CPU 3.00GHz

FJSV,

GPUZC-M

node-vendor CPU producer GenuineIntel Sun_Micros

ystems

The concrete values of the attributes of the spare nodes are determined from the LDAP

and direct dynamically from each node by the FA Agents of the admin pool. Some

attributes (hasHba, hbaType, is10GbES and location) are determined from the

LDAP.

4.4.4.3.1 Configuration

The selection rules are defined in the config directory of the admin pool in the file my-

AMC_FA_SelectionRules.xml. They are organised in rule sets. Per inquiry only one

rule set is used: firstly the control agent searches a rule set with the name of the inquiring

pool. If such a ruleset does not exist, the default rule set is used.

FlexFrame Autonomy

FlexFrame Agents Guide 116

A rule set contains a lot of selection rules which have to be checked from the CtrlAgent

for every possible substitute node. As a result every candidate has a weight function. The

candidate with the highest weight function is transfered as a substitute node to the inquir-

ing pool.

Example of the rule file:

<?xml version="1.0" encoding="iso-8859-1"?>

<rules xmlns="myAMC/SelectRules/1.0" defaultSet="default">

<ruleset schema="default">

<select attribute="OS-typ" match="equal" required="true">

<select attribute="CPU-arch" match="equal"/>

</select>

<select attribute="hasHba" match="equalOrMore"/>

<select attribute="hasHba" match="more"

required="false" weight="0">

<select attribute="location" match="equal"/>

<select attribute="hbaType" match="equal" weight="2"/>

</select>

<select attribute="is10GbES" match="equalOrMore"/>

<select attribute="saps" match="range" weight="1"

lowerBound="20" upperBound="50" required="false">

<!-- even more weight for better range match -->

<select attribute="saps" match="range" weight="2"

lowerBound="10" upperBound="20" required="false"/>

<select attribute="saps" match="range" weight="5"

lowerBound="5" upperBound="5" required="false"/>

<select attribute="saps" match="range" weight="10"

lowerBound="1" upperBound="1" required="false"/>

</select>

</ruleset>

<ruleset schema="Pool1">

<!-- ... -->

</ruleset>

<ruleset schema="Pool2">

<!-- ... -->

</ruleset>

</rules>

4.4.4.3.2 Rule evaluation

A single selection rule compares an attribute of the reference node (the failed node) with

that of a substitute candidate. The comparison can ensue through different operators.If a

rule applies the substitute candidate receives a certain amount of points. A score is de-

FlexFrame Autonomy

117 FlexFrame Agents Guide

termined for the substitute candidate through evaluation of all rules of the ruleset. With

this score the most suitabel node is selected: the node with the highest score “wins”.

The following table describes the possible comparison operators:

equal Check of equality of an attribute. If both values are numbers a numeric

comparison is implemented; otherwise a textual comparison is imple-

mented.

more If the value of the candidate is more than the reverence value the rule

applies. If both values are numbers a numeric comparison is imple-

mented, otherwise a textual comparison is implemented. With boolean

status values (true, false) true in relation to false means “more”.

less If the value of the candidate is less than the reverence value the rule

applies. If both values are numbers a numeric comparison is imple-

mented, otherwise a textual comparison is implemented. With boolean

status values (true, false) false in relation to true means “less”.

equalOrMore If the value of the candidate is more or equal than or to the reverence

value the rule applies. If both values are numbers a numeric compari-

son is implemented, otherwise a textual comparison is implemented.

With boolean status values (true, false) true in relation to false means

“more”

equalOrLess If the value of the candidate is less or equal than or to the reverence

value the rule applies.I If both values are numbers a numeric compari-

son is implemented, otherwise a textual comparison is implemented.

With boolean status values (true, false) false in relation to true means

“less”.

range Checks if the value of the candidate in relation to the reverence value is

situated inside a certain area. The area limits aregiven as percentual

deviation with the help of the parameters “upperBound” and “lower-

Bound”. Differs the value of the candidate maximally over the given

limits from the reverence value the rule applies.

This comparison operator is only convenient with numeric attributes

e.g. the SAPS value (attribute “saps”)

The selection rules can be staggered hierachically. Subordinate rules are only evaluated

if the higher rule applies.

Example:

Rule 1

Rule 1.1

Rule 1.1

FlexFrame Autonomy

FlexFrame Agents Guide 118

Rule 1.2.1

Rule 2

Rule 3

Rule 3.1

Every selection rule has its own weight function (parameter weight). If a rule applies its

weight function is added to the score of the selected candidate. Its possible to distribute

negative weight functions if an attribute rather serves to prevent a selection.

If the parameter weight is not given, the weight function is, depending on its hierachy

level, automatically put to the following value:

1.Level: weight=5

2.Level: weight=3

And all further Levels: weight=1

A rule can be marked as necessary (parameter required) i.e. a candidate is seen as

not fitting if a necessary rule is not fulfilled. If the parameter required is not given rules

on the first hierachy level are automatically considered necessary and all others as opio-

nal i.e. if they are not fulfilled the candidate can still be selectet if the score is sufficient.

4.4.4.3.3 Test of the Selection Rules

A simple test of the selection rules can be exeuted with fa_selectionRuleTest.sh

(in the directory /opt/myAMC/FA_AppAgent). The script evaluates matching candidates

to a reference node and issues the most fitting candidate.

fa_selectionRuleTest.sh

{-n|--source-node} <nodename>

{-p|--source-pool} <poolname>

{-P|--source-livelist} <file>

{-t|--target-pool} <poolname>

{-T|--target-livelist} <file>

[{-f|--rule-file} <file>] [{-r|--rule-set} <name>]

[{-B|--pools-basedir} <directory>]

[{-l|--log-level} <level number>] [{-o|--print}]

[{-a|--trace}] [{-c|--candidates}] [{-w|--weight}]

{-n|--source-node} <nodename>

Name of source node (mandatory)

{-p|--source-pool} <poolname>

Name of source pool (required if source-livelist is not set)

{-P|--source-livelist} <file>

Name of source input file (required if source-pool is not set)

FlexFrame Autonomy

119 FlexFrame Agents Guide

{-t|--target-pool} <poolname>

Name of target pool (required if target-livelist is not set)

{-T|--target-livelist} <file>

Name of target input file (required if target-pool is not set)

{-f/--rule-file} <file>

Name of the rule file to use (optional)

Default: myAMC_FA_SelectionRules.xml in the target pool

{-r/--rule-set} <name>

Name of rule set to evaluate (optional)

Default: ruleset as specified in rule file

{-B/--pools-basedir} <directory>

Base directory for pools (optional)

Default: /opt/myAMC/vFF

{-l/--log-level <level number>}

Log level (optional)

Default: 5

-v|--verbose

Increase log level (optional)

-o|--print

Print node lists (optional)

-a|--trace

Trace selection rule evaluation (optional)

-c|--candidates

Print replacement candidates (optional)

-w|--weight

Print results including their weight (optional)

The tool determines the data of the reference node ( given with -n) from the accompany-

ing pool (-p)and searchs the fitting candidate in another pool (-t), the admin pool.

If additional options –a, -c and –w are given the results of all individual evaluations are

given. With this the correct parametricaton can be checked.

Example with several nodes:

cn1 # fa_selectionRuleTest.sh -a -w -c -n sno2bx1 -p pool2 -t adminpool

node "sno2bx3" does not match

sno2bx1 [36]

sno2bx2 [36]

Example with tracing:

FlexFrame Autonomy

FlexFrame Agents Guide 120

cn1 # fa_selectionRuleTest.sh -a -w -c -n sno1apl5p1 -p pool1 -t adminpool

evaluating node sno1apl5p1

object : attribute OS-typ matched and added weight 5

matched 'SunOS' against 'SunOS' using operator 'equal'

object : attribute CPU-arch matched and added weight 3

matched 'sun4u' against 'sun4u' using operator 'equal'

object : attribute hasHba matched and added weight 5

matched 'false' against 'false' using operator 'equalOrMore'

object : optional attribute hasHba did not match

matched 'false' against 'false' using operator 'more'

object : attribute is10GbES matched and added weight 5

matched 'true' against 'true' using operator 'equalOrMore'

object : attribute node-powervalue matched and added weight 1

matched '7705' against '7705' using operator 'range'

object : attribute node-powervalue matched and added weight 2

matched '7705' against '7705' using operator 'range'

object : attribute node-powervalue matched and added weight 5

matched '7705' against '7705' using operator 'range'

object : attribute node-powervalue matched and added weight 10

matched '7705' against '7705' using operator 'range'

node "sno1apl5p1" matches with weight 36

evaluating node sno1pw1

object : attribute OS-typ matched and added weight 5

matched 'SunOS' against 'SunOS' using operator 'equal'

object : optional attribute CPU-arch did not match

matched 'sun4u' against 'sun4us' using operator 'equal'

object : attribute hasHba matched and added weight 5

matched 'false' against 'false' using operator 'equalOrMore'

object : optional attribute hasHba did not match

matched 'false' against 'false' using operator 'more'

object : attribute is10GbES did not match

matched 'true' against 'false' using operator 'equalOrMore'

node "sno1pw1" does not match

sno1apl5p1 [36]

FlexFrame Autonomy

121 FlexFrame Agents Guide

4.5 Management of Performance, File System and Accounting

FA AppAgents and FA FrameAgents have the possibility of collecting performance data

and file system data and generate cyclical defined value tuple with them. The result tuple

are frame-, pool-, group-, node-, system- and service-specific. The result of every cycle is

stored in a collection file. Collection files are temporary data containers for the storing of

the data. A collection file enables the storing of data from several report cycles.

The collection files themselves are organised in a ring buffer which enables the ascer-

tainment of the number and size of the collection files in a sizing process.

4.5.1 Performance and Accounting Management

The performance- and accounting management is already prepared in the standard con-

figuration. The performance and accounting functions are therefore in form of colletfiles

directly at disposal in supportcases as long as the necessary licence has been acquired.

The domain manager is necessary for the further processing and storing of the raw data

in the data bank.

4.5.2 File System Utilization

FA AppAgents and FA FrameAgents are able to determine the data for the file system

utilization. A parameter file defines, which file systems and directories are monitored.

The file system monitoring as well as the writing of the corresponding collections is direct-

ly activated by entry of file systems or directories which have to be monitored in the pool

specific configuration file myAMC_FA_Checks.xml.

4.5.3 Monitoring Cycles

For the collection of file system data and directory data variable cycle times can be de-

fined:

Perfdata_SpaceUtil_FSCycleTime

specifies how often (in seconds) myAMC.FA checks the file system utilization for per-

formance data.

Perfdata_SpaceUtil_DirCycleTime

specifies how often (in seconds) myAMC.FA checks the directory utilization for per-

formance data.

FlexFrame Autonomy

FlexFrame Agents Guide 122

4.6 Operating Mode

FlexFrame Autonomy has various operating modes. The operating modes enable the FA

Agents to be used for simple monitoring tasks with automatic alarms, through to semi or

fully autonomous operation of a service.

Particularly in the startup and learning phases, this flexible configurability permits succes-

sive replacement of manual interventions by autonomous reactions.

The following operating modes are provided to implement the reactions:

Event mode

Local reaction mode

Central reaction mode

The operating modes can be defined at service level. This enables the degree of auton-

omous functions to be configured on an individual basis in accordance with the priority

and importance of a service. Parameterization of these modes takes place using the

parameters

Service_MaxRestartNumber

Node_MaxRebootNumber

Node_MaxSwitchOverNumber

4.6.1 Event Mode

No autonomous functions are performed in event mode. The events are just reported to

an event console in the form of messages. The administrator can then decide whether

the reactions proposed by the Autonomy Agents are appropriate and then execute these

manually. This mode is particularly recommended in the introductory phase. For this

purpose the parameter variables for the number of permissible restarts, reboots and

switchovers is set to 0.

4.6.2 Local Reaction Mode

Local reaction mode is the standard operating mode for a FlexFrame installation.

The reactions for restart, reboot and switchover are activated for all services in the my-

AMC.FA.xml parameter file, and at the same time the number of reaction attempts for a

reaction type is defined.

4.6.3 Central Reaction Mode

In central reaction mode the reactions are not initiated by the FA AppAgents. Here each

of the local parameter variables for restart, reboot and switchover is set to 0. The reac-

tions are initiated from a central position.

FlexFrame Autonomy

123 FlexFrame Agents Guide

A option is that the reactions are created externally on the basis of the traps sent and

forwarded to the FA AppAgents via the BlackBoard.

FlexFrame Autonomy

FlexFrame Agents Guide 124

4.7 Autonomous Operation of a FlexFrame Infrastructure

In every application environment the user needs an option for starting and stopping new

application instances. This will be done with the Fujitsu FlexFrame scripts.

4.7.1 FlexFrame Autonomy and Fujitsu FlexFrame Scripts

The reactions and user interactions take place by direct use of the Fujitsu FlexFrame

scripts.

The Fujitsu FlexFrame scripts are responsible for starting and stopping the SAP instanc-

es. They permit the SAP instances to be visualized and also supply the information re-

quired for the Autonomous Agents to detect the user interactions.

FlexFrame Autonomy

125 FlexFrame Agents Guide

4.8 FlexFrame Autonomy and User Interactions

The autonomous reactions and the user interactions influence the status of FlexFrame-

Autonomy. Status changes and user interactions are logged in the log files and, if so

configured, also sent as traps.

Status creation begins with starting up the agents and the evaluation of the parameteriza-

tion information.

When the FA AppAgents are started up they read the parameterization file and subse-

quently know their job and operating mode. The FA Agents send a startup trap when they

start up.

Service instances that are already running are automatically recognized and managed.

The most important commands, reactions and their events in the various startup situa-

tions of the FA Agent are described in the following.

Restart, no services running:

The FA AppAgent sends only a node startup alert but no alerts for services

which do not exist.

Restart of the FA AppAgent when services are running:

The agent reports its own restart and availability and the various SAP services

which are running.

After reboot:

The agent reports its own startup and availability and the successful startup of

each individual service.

After switchover:

The agent that takes over control starts the services described in the testament

and send events corresponding to these.

FlexFrame Autonomy

FlexFrame Agents Guide 126

4.8.1 myAMC.FA_Agents: Starting/Stopping/Status

4.8.1.1 Starting the myAMC.FA_Agents Manually

When the myAMC.FA_Agents are started a Agent start trap is sent.

An FA AppAgent can be started manually using the following command:

/etc/init.d/myAMC.FA_AppAgent start

/opt/myAMC/FA_AppAgent/myAMC.FA_AppAgent start

An FA CtrlAgent can be started manually using the following command:

/etc/init.d/myAMC.FA_CtrlAgent start

/opt/myAMC/FA_CtrlAgent/myAMC.FA_CtrlAgent start

or

/opt/myAMC/FA_CtrlAgent/myAMC.FA_CtrlAgent start <pool_name>

/opt/myAMC/FA_CtrlAgent/myAMC.FA_CtrlAgent start Cust_1

An FA FrameAgent can be started manually using the following command:

/etc/init.d/myAMC.FA_FrameAgent start

/opt/local/myAMC/FA_FameAgent/myAMC.FA_FrameAgent start

4.8.1.2 Stopping the myAMC.FA Agents Manually

When the myAMC.FA_Agents are stoped a Agent stop trap is sent.

An FA AppAgent can be stopped manually using the following command:

/etc/init.d/myAMC.FA_AppAgent stop

/opt/myAMC/FA_AppAgent/myAMC.FA_AppAgent stop

An FA CtrlAgent can be stopped manually using the following command:

/etc/init.d/myAMC.FA_CtrlAgent stop

/opt/myAMC/FA_CtrlAgent/myAMC.FA_CtrlAgent stop

or

/opt/myAMC/FA_CtrlAgent/myAMC.FA_CtrlAgent stop <pool_name>

/opt/myAMC/FA_CtrlAgent/myAMC.FA_CtrlAgent stop Cust_1

An FA FrameAgent can be stopped manually using the following command:

/etc/init.d/myAMC.FA_FrameAgent stop

/opt/local/myAMC/FA_FrameAgent/myAMC.FA_FrameAgent stop

FlexFrame Autonomy

127 FlexFrame Agents Guide

4.8.1.3 Status of the myAMC.FA_Agents

The status of the FA AppAgents can be inquired using the following command:

/etc/init.d/myAMC.FA_AppAgent status

/opt/myAMC/FA_AppAgent/myAMC.FA_AppAgent status

The status of the FA CrtlAgents can be inquired using the following command:

/etc/init.d/myAMC.FA_CtrlAgent status

/opt/myAMC/FA_CtrlAgent/myAMC.FA_CtrlAgent status

or

/opt/myAMC/FA_CtrlAgent/myAMC.FA_CtrlAgent status <pool_name>

/opt/myAMC/FA_CtrlAgent/myAMC.FA_CtrlAgent status Cust_1

The status of the FA FrameAgents can be inquired using the following command:

/etc/init.d/myAMC.FA_FrameAgent status

/opt/local/myAMC/FA_FrameAgent/myAMC.FA_FrameAgent status

FlexFrame Autonomy

FlexFrame Agents Guide 128

4.8.2 Starting/Stopping an SAP Instance

4.8.2.1 Starting an SAP Instance

A further SAP instance of the type DB, CI, APP, J, JC, SCS, ASCS, LC, ERS, … can be

started at any time. Use of the FlexFrame start scripts in a version which has been re-

leased for the FA Agents is mandatory.

An instance which is to be monitored via the Autonomy Agents is started using the follow-

ing script calls on the Application Node:

For FlexFrame Version >= V5.0A:

ff_service.sh -s <SID> -t <SERVICETYPY -a start

ff_service.sh -s ml5 -t db -a start

...

The startup of an instance is documented by the agents using the following traps:

ServiceIsStarting trap,

ServiceIsStarted trap,

or

ErrorStartingService trap

FlexFrame Autonomy

129 FlexFrame Agents Guide

4.8.2.2 Stopping an SAP Instance

An active SAP instance of the type DB, CI, APP, J, JC, SCS, ASCS, LC, ERS, … can be

stopped at any time. Use of the FlexFrame stop scripts in a version which has been re-

leased for the myAMC.FA Agents is mandatory.

Service instances which are stopped while the myAMC.FA_AppAgent is running are

detected by the agent and acknowledged with corresponding SNMP traps. In this case

the FA Agent can use mechanisms integrated into the FlexFrame solution to distinguish

between an instance being intentionally stopped and a service or instance crashing.

For FlexFrame Version >= V5.0A:

ff_service.sh -s <SID> -t <SERVICETYP> -a stop

ff_service.sh -s ml5 -t db -a stop

...

The following traps are sent:

ServiceIsStopping trap,

ServiceHasStopped trap,

or

ErrorStoppingService trap

FlexFrame Autonomy

FlexFrame Agents Guide 130

4.8.3 NoWatch/Watch an SAP Instance

The "nowatch" of a service is now persistent. Therefore, the "nowatch" is no more a ser-

vice-state, but an attribute of a servive.

The persistent "NoWatch" is stored in the following file:

/opt/myAMC/vFF/vFF_<POOLNAME>/data/FA/reboot/Persist_FA_Info.txt

If this file will be deleted, the persistent information will be lost and the services which

was before in file will be monitored.

That the "NoWatch" is stored as persistent information, a AppAgent must be running at

AN.

4.8.3.1 NoWatch an SAP Instance

An instance which is to be monitored via the Autonomy Agents is “NoWatch” using the

following script calls on the Application Node:

For FlexFrame Version >= V5.0A:

ff_service.sh -s <SID> -t <SERVICETYPY -a nowatch

ff_service.sh -s ml5 -t db -a nowatch

...

4.8.3.2 Watch an SAP Instance

An instance which is to be monitored via the Autonomy Agents is “Watch” using the fol-

lowing script calls on the Application Node:

For FlexFrame Version >= V5.0A:

ff_service.sh -s <SID> -t <SERVICETYP> -a watch

ff_service.sh -s ml5 -t db -a watch

...

FlexFrame Autonomy

131 FlexFrame Agents Guide

4.9 Use cases

4.9.1 General

The FlexFrame Autonomy solution offers various configuration and application options.

Application and Control Agents share the tasks for implementing autonomy in a Flex-

Frame solution.

The tasks of the Control and Application Nodes vary according to their configuration.

Some typical autonomy scenarios for the most important applications are presented in

the following:

Passive monitoring of your instances (notification mode); no reactions take place

(event mode).

Control of the instances’ availability using active FlexFrame Autonomy Applica-

tion Agents (local reaction mode); the reactions are triggered by the FA Ap-

pAgent.

Control of the instances’ availability using passive FlexFrame Autonomy Applica-

tion Agents and active High-Autonomy Control Agents (central reaction mode);

the reactions are triggered by the FA CtrlAgent.

The settings for notifications and reactions can be configured independently.

FlexFrame Autonomy

FlexFrame Agents Guide 132

4.9.2 Semi-autonomous operation

In certain situations it may make sense only to use notification functions of myAMC.FA

and initially to dispense with active intervention in the system. This scenario is practical,

for example, for using a central position to monitor various systems and analyze failure

frequencies.

4.9.2.1 Monitoring of Application Instances

In order to monitor application instances, an FA AppAgent must run on every agent which

is equipped with detectors for the application instance to be monitored and has been

configured for this. The monitoring and reaction can be configured individually for each

application instance.

The service-specific parameters are set in the configuration section of the services. A

configuration for the event mode can achieved by the following settings in the Configsection Services Default section:

Service_SendTraps : true

Service_EnableMonitoring : true

Node_MaxRebootNumber : 0

Node_MaxSwitchOverNumber : 0

Service_MaxRestartNumber : 0

Servcice_TrapSendDelayTime : 0 or greater

With this configuration no reactions take place for any service type. However, event mes-

sages are sent if services are not available or have failed.

The parameters can, for example, be set on a service-specific basis for the semi-

autonomous operation of services.

In the Configsection Services APP section:

Service_SendTraps : true

Service_EnableMonitoring : true

Node_MaxRebootNumber : 0

Node_MaxSwitchOverNumber : 0

Service_MaxRestartNumber : 3

Service_MaxRestartTime : 120

With these setttings for the APP service, up to three restart attempts are made to render

an application service available again after it has failed. No reactions are implemented for

the other service types CI and DB. However, event messages are sent if services are not

available or have failed.

FlexFrame Autonomy

133 FlexFrame Agents Guide

4.9.3 Autonomy for Application Instances

To permit autonomous operation of applications, FlexFrame Autonomy provides the op-

tion of monitoring instances and reacting actively to the failure of a service. The type of

reaction depends on the configuration set.

The following parameters can be used for this purpose in the parameter file:

Service_SendTraps : true

Service_EnableMonitoring : true

Node_MaxRebootNumber : 2

Node_MaxSwitchOverNumber : 1

Service_MaxRestartNumber : 3

Service_TrapSendDelayTime : 0 or greater

Service_ReactionDelayTime : 0 or greater

MaxRebootTime : 120

4.9.3.1 Restart

Restarting a service is the first option Autonomy Agents have of reacting to a service

failure.

For this purpose a Service_MaxRestartNumber greater than 0 is specified and also

the Service_MaxRestartTime. The Service_MaxRestartTime is evaluated by the

FA AppAgent.

Service_MaxRestartNumber : 10

Service_MaxRest artTime : 240

The time by which the service must be available again is the Service_MaxRestartTime of this service.

A maximum of Service_MaxRestartNumber attempts are made to restore availability

through this reaction; escalation to the next escalation level then follows.

FlexFrame Autonomy

FlexFrame Agents Guide 134

4.9.3.2 Reboot

Rebooting a node is a further option for an Autonomy Agent to react and the next escala-

tion level after a restart.

For this purpose a Node_MaxRebootNumber greater than 0 is specified and also the

Node_MaxRebootTime. The Node_MaxRebootTime here is evaluated by both the FA

AppAgent and the FA CtrlAgent. After the Node_MaxRebootTime has elapsed the Con-

trol Agent uses the Node_CheckAvailabilty command to check the availability of the

system. If the RebootNumber is set to two or three, this value is increased by the corre-

sponding factor.

Node_MaxRebootNumber : 2

MaxRebootTime : 120

The time by which a server and all its services must be available again is calculated by adding the Node_MaxRebootTime and the greatest Node_MaxRestartTime of all

services to be started on this server.

A maximum of Service_MaxRestartNumber attempts are made to restore availability

through this reaction; escalation to the next escalation level then follows.

4.9.3.3 Switchover

A distinction is made between the internal and external SwitchOvers.

4.9.3.3.1 Switchover intern

The internal SwitchOver of all a node’s services is a further reaction option for the Auto-

nomy Agent and the next escalation level after a reboot. An internal SwitchOver is initiat-

ed by a failed node which actively wishes to transfer its services. This is therefore a fur-

ther reaction option for the Autonomy Agent and the next escalation level after a reboot.

For this purpose a Node_MaxSwitchOverNumber greater than 0 is specified.

Node_MaxSwitchOverNumber : 1

The time by which a server and all its services must be available again is calculated by

adding the Service_MaxRestartTime of all services to be started on this server.

4.9.3.3.2 Switchover extern

An external SwitchOver is initiated by a FA CtrlAgent which determines that an Applica-

tion Node is no longer working.

FlexFrame Autonomy

135 FlexFrame Agents Guide

4.9.4 Management of Performance, Capacity and Account-ing

The mangement of performance, capacity and accounting of the FA Autonomy is an

optional function. The use of this component requires a standard installation for the FA

Agents and additionally the installation of the FA Domainmanager. The function has to be

activated in the configfile of the FA Agents.

Depending on the demands for mangement of performance, capacity and accounting the

report cycle and the size of the ringbuffer for the each performance collection type has to

be defined. Additionally the FA Domainmanager has to be installed and started on the

active Control Nnode. The FA Agents supply the performance data nodes and capacity

data nodes service and SAP system specific as is standard without having to use individ-

ual configurations.

The following example describes the default configuration. The default configuration sup-

plies the performance data nodes and capacity data nodes system specific and service

specific. Also the following groups are already predefined.

The groups supply a node specific view of the portions on the whole output consumption

of a node.

SAP

NONSAP

FA

Idle

4.9.5 File System Utilization

The management for the supervision of the fill state and the increase of file systems can

be activated through simple activation in the FA config file. The data for the file system

expenditure can be supplied by the FA AppAgents or the FA FrameAgents.

The activation of the filesystem expenditure activates the default configuration. The de-

fault configuration supplies throught the FA FrameAgent the supervision of the voIFF and

dispatches an alert if this is filled more than 90% or the increase rate inside a report cyle

is more than 5%.

The ascertainment of the fill state of a file system and its increase rate can be ascer-

tained with relativly minor time expense and footprint.

FlexFrame Autonomy

FlexFrame Agents Guide 136

4.9.6 High Availability and Autonomy Rules

The myAMC.FA suite can be configured through a set of parameters for different high

availability and autonomy situations. In the following examples the interaction and the

different reaction scenarios of some parameters is shown.

The examples also show how the interplay of the parameters in special high availablity

situations an emergency event is triggered and how the service priority and the service

capacity requirements influence the availability in a failure scenario.

Possible application scenario:

In a data center, there are one or more spare nodes within a pool. In case of failure of an

application server spare nodes take over the services that are running on the failed appli-

cation server.

Simultaneous failure multiple servers, only the number of application nodes can be made

available again on a Sparenode as there are free spare nodes within the pool, where are

the failures. If more than two nodes have failed within 5 minutes, then is this to be report-

ed over an emergency event. If more than 4 nodes have failed within 2 days, then this

should also be reported over an emergency event to a central console.

In general, the rules for each pool can be parameterized by the other pools within a Flex

Frame installation independently.

The following parameters will be used:

Node_SwitchOverTyp: service or node (default = node):

Depending on the setting of this Paramter node or service based SwitchOver-Files

will be written.

EscalationType: Service or Node (default = Node):

Depending on the setting of this Paramter the escalation will be done for all services

on a node (restart reboot switchover), or the escalation will be done for a single

service (restart swtchover (single service)).

TakeOverStrategy: FirstFit or LowPrioFit (default = FirstFit):

Depending on the setting of this Paramters wins in a failure scenario, the server has

become the first candidate for the switchover file of the failed node or the server that

had the lowest priority of its services.

Pool independet spare (default = no pool independent spare):

If no spare nodes are available, in failure scenarios in a pool, so there is the possibil-

ity to define a Spare Pool. Then, when applying no Sparenode in the pool for a

switchover file, then tries to get a Sparenode from the spare pool.

FlexFrame Autonomy

137 FlexFrame Agents Guide

Parameter must be set in Pool and Sparepool: CtrlAgentRole: WorkWithSparePool (default = Normal)

SparePoolName: <Name of SparePool> (default = NONE)

SpareGroupName: <Name of SpareGroup> (default = NONE)

TakeOverRule (default = SpareNode):

This parameter determines the type of the adoption of a switchover file.

possible settings: SpareNode: Only a spare node will Start the services from taken SwitchOver-File.

add (Add, addition): Additional start the services from taken SwitchOver-File.

replace (move): Running services will be stopped and a SwitchOver-File will be

written therefore, Start the services from taken SwitchOver-File. substitute (displacement): Running services will be stopped, start the services

from taken SwitchOver-File.

dynamic: Cause of prios there will be done one of the TakeOver-rules SpareNode,

add, replace, substitute, or none.

For dynamic rule the following parameters are important: Dyn_Spare_min, Dyn_Spare_max; Prio-range

Dyn_Add_min, Dyn_Add_max; Prio- range

Dyn_Replace_min, Dyn_Replace_max; Prio- range

Dyn_Substitute_min, Dyn_Substitute_max; Prio-Bereich

Dyn_Spare_exclusive: Switch for „exclusive for spare“

Vip Services: VIP Services are services for which there is a special takeover scenario

outside of the standard. That is, for example, the ERS (enque Replica service).

The High Availability Rules can be divided into static and dynamic rules.

FlexFrame Autonomy

FlexFrame Agents Guide 138

4.9.6.1 High Availability: Static Rules

In the Static Rules that apply generally to any failure in the affected pool. The basic rules

Sparenode-rule, Replace rule, add-rule-rule and substitution of the static rules.

Example: On an application server to run multiple Appliaktionsservices.

Sparenode-rule:

P01 with ci (priority 2) and the associated database db P01 (priority 1) fails. In the pool

there is no spare nodes. Thus, there is no high availability for the canceled services be-

cause there is no free node for the acquisition of the failed service.

Replace-rule:

P01 with ci (priority 2) and the associated database db P01 (priority 1) fails. Each applica-

tion node in the same pool with lower service priorities applying for the acquisition of the

switchover file. Own services with worse priority (ie 3 and greater) are stopped and then

published as the switchover file.

4.9.6.2 High Availability: Dynamic Rules

Upon failure of Services, Dynamic Rule allows a differentiated use of available spare

nodes and free capacity on application nodes which are not yet fully utilized, or run on

those with lower priority services.

For this use the parameterization of service priority and a service associated capacity

(power value) is important. When not only the spare node rule is used, but one of the

other rules, individual prioritization of services is necessary.

FlexFrame Autonomy

139 FlexFrame Agents Guide

4.9.6.3 High Availability: Examples

In the following examples we have a production system with P01 3 instances and a quali-

ty assurance system with 3 instances and a development system. The production system

has the highest priority, then comes the quality assurance system and the development

system with the lowest priority. The services are operated in a flexible frame with a pool,

which consists of 12 application nodes.

The application node Node_10, Node_11 and Node_12 are spare nodes, since no ser-

vices running on that node.

4.9.6.3.1 Example 1 (SpareNode)

System ID

Servicetyp Prio Power value

Applikation node

Pool Group Scenario Node- capacity

P01 DB 1 6000 Node_01 Pool_1 Default t 10000

P01 CI 1 3000 Node_02 Pool_1 Default t 10000

P01 App 3 2000 Node_03 Pool_1 Default t 10000

Q01 DB 10 3000 Node_04 Pool_1 Default 10000

Q01 CI 10 1000 Node_05 Pool_1 Default 10000

Q01 App 30 1000 Node_06 Pool_1 Default 10000

E01 DB 20 500 Node_07 Pool_1 Default 10000

E01 CI 20 500 Node_08 Pool_1 Default 10000

E01 App 40 500 Node_09 Pool_1 Default 10000

Node_10 Pool_1 Default 10000

Node_11 Pool_1 Default 10000

Node_12 Pool_1 Default

Default parameter settings:

Parameter Value Value Options

Node_TakeOverRule SpareNode SpareNode,Addrule,Displacement, Supplementation, dynamic

Noed_SwitchOverTyp Node Node, Service

Take_OverStrategy FirstFit FirstFit, LowPrioFit

The failure of the 3 node with the productive instances of the SAP system P01 is as-

sumed in this scenario of the 3 spare nodes.

FlexFrame Autonomy

FlexFrame Agents Guide 140

FlexFrame Autonomy

141 FlexFrame Agents Guide

4.9.6.3.2 Example 2 (SpareNode)

System ID

Service- typ

Prio Power value

Applikation node

Pool Group Scenario Node- capacity

P01 DB 1 6000 Node_01 Pool_1 Default t+60 10000

P01 CI 1 3000 Node_02 Pool_1 Default 10000

P01 App 3 2000 Node_03 Pool_1 Default 10000

Q01 DB 10 3000 Node_04 Pool_1 Default 10000

Q01 CI 10 1000 Node_05 Pool_1 Default 10000

Q01 App 10 1000 Node_06 Pool_1 Default 10000

E01 DB 10 500 Node_07 Pool_1 Default t 10000

E01 CI 10 500 Node_08 Pool_1 Default t 10000

E01 App 10 500 Node_09 Pool_1 Default t 10000

Node_10 Pool_1 Default 10000

Node_11 Pool_1 Default 10000

Node_12 Pool_1 Default 10000

Default parameter settings:

Parameter Value Value Options

Node_TakeOverRule SpareNode SpareNode,Addrule,Displacement, Supplementation, dynamic

Noed_SwitchOverTyp Node Node, Service

Take_OverStrategy FirstFit FirstFit, LowPrioFit

In this scenario at time t the 3 nodes from the development system fails. The at time t

existing 3 spare nodes take over these services and they are available again. Cause of

the consumption of the existing spare capacity, there is at time t+x no high availability for

the failure of an productive services of the P01 system.

FlexFrame Autonomy

FlexFrame Agents Guide 142

4.9.6.3.3 Example 3 (dynamic)

System ID

Service- typ

Prio Power value

Applikation node

Pool Group Scenario Node- capacity

P01 DB 1 6000 Node_01 Pool_1 Default 10000

P01 CI 1 3000 Node_02 Pool_1 Default 10000

P01 App 3 2000 Node_03 Pool_1 Default 10000

Q01 DB 10 3000 Node_04 Pool_1 Default 10000

Q01 CI 10 1000 Node_05 Pool_1 Default 10000

Q01 App 10 1000 Node_06 Pool_1 Default 10000

E01 DB 10 500 Node_07 Pool_1 Default 10000

E01 CI 10 500 Node_08 Pool_1 Default 10000

E01 App 10 500 Node_09 Pool_1 Default 10000

Node_10 Pool_1 Default 10000

Node_11 Pool_1 Default 10000

Node_12 Pool_1 Default 10000

Default parameter settings:

Parameter Value Value Options

Node_TakeOverRule dynamic SpareNode,Addrule,Displacement, Supplementation, dynamic

Noed_SwitchOverTyp Node Node, Service

Take_OverStrategy FirstFit FirstFit, LowPrioFit

Additional parameters that are needed along with the dynamic Node_TakeOverRule:

Paramater Value

Dyn_Spare_min 1

Dyn_Spare_max 2

Dyn_Add_min 3

Dyn_Add_max 30

Dyn_Replace_min 100

Dyn_Replace_max 100

Dyn_Substitute_min 200

FlexFrame Autonomy

143 FlexFrame Agents Guide

Dyn_Substitute_max 200

Dyn_Spare_exclusive true

By using the Node_TakeOverRule in dynamic mode, the spare nodes for the productive

system is protected because the spare nodes are used with these parameters only for

services with priority <= 2.

Upon failure of the Q or E systems, these are added by other systems. With add–rule

only the nodes which possess services with lower or equal priority apply (from pool,

group).

In our example the node with P instances would not accept any services from Q and E

systems and therefore do not affect their performance.

The example also shows that the failure of the node node_3, with the productive applica-

tion instance of the P01 system, is not the high availability of this service through the use

of an idea node, but by the add rule. I.e. this app instance would run after a failure sce-

nario on one node with other services.

Note:

If new SAP services added to a pool, these have default values first.

The priority assigned to a service and the power value can be clearly visualized with the

myAMC.FA ConfigGui, and be changed as needed directly in this view.

FlexFrame Autonomy

FlexFrame Agents Guide 144

4.9.6.3.4 Example 4 (sercive specific reaction)

Failure scenarios ERS service

The enqueue replication service has a special role in a high-availability scenarios.

The ERS belongs to an SCS or ASCS service only and assumes the failure of the asso-

ciated SCS or ASCS its task and thus becomes the new SCS / ASCS. Thus, in a second

failure of the SCS / ASCS another ERS instance is available it must be started on another

server. Therefore, this ERS is made available again by switchover to another node.

In the following example the ERS will be available at the spare node Node_11, but in

dynamic mode it my also be available will add- or other rule.

System ID

Service- typ

Prio Power value

Applikation node

Pool Group Scenario Node- capacity

P01 DB 1 6000 Node_01 Pool_1 Default 10000

P01 SCS 1 3000 Node_02 Pool_1 Default t 10000

P01 App 3 2000 Node_03 Pool_1 Default 10000

P01 ERS 3 2000 Node_03 Pool_1 Default t+1 10000

Q01 DB 10 3000 Node_04 Pool_1 Default 10000

Q01 CI 10 1000 Node_05 Pool_1 Default 10000

Q01 App 10 1000 Node_06 Pool_1 Default 10000

E01 DB 10 500 Node_07 Pool_1 Default 10000

E01 CI 10 500 Node_08 Pool_1 Default 10000

E01 App 10 500 Node_09 Pool_1 Default 10000

Node_10 Pool_1 Default 10000

Node_11 Pool_1 Default 10000

Node_12 Pool_1 Default 10000

FlexFrame Autonomy

145 FlexFrame Agents Guide

4.9.6.3.5 Example 5 (group based rules)

The rules for the autonomy and high availability (Sparenode, Add, Replace and Dynamic

Rule) usually always apply to the entire pool.

If this high availability rules are defined at the group level, the response for the same

service type can be very different depending on which group the service is running on.

Defining rules on group level which together with the dynamic rule a plurality of different

reaction scenarios for failure.

FlexFrame Autonomy

FlexFrame Agents Guide 146

4.10 FA Work and Log Files

The functions of the FA Agents are documented in various files. These files may not be

changed manually as this can impair error free operation of the FA Agents or result in

errored reactions.

These files are created dynamically during ongoing operation. Deleting these files leads

to a status in which the Autonomous Agents reorganize themselves, and from this point

they reevaluate the situation from the current viewpoint without any previous knowledge.

Base directory: /opt/myAMC/

Base directory: /opt/local/myAMC/

A detailed description can be found in chapter 3.4 resp. 10.3.

FlexFrame Autonomy

147 FlexFrame Agents Guide

4.11 Migration of FA Agent Versions on Pool Level

The FlexFrame Autonomy Agents offer a whole raft of strategies and functionalities for

installing and activating patches and new release versions for a wide range of security,

test and release scenarios.

The administrator can use the update and activation functionality provided by the agents

in line with his/her requirements. The following basic functions are available:

A Reading and observing update, patch and release notes

B Installation of a new FA Agent version parallel to an operating FA Agent version. All

data and configuration information for the operating FA Agent version are retained.

C Taking over of the configuration data for the new FA Agent version using the FA

migration tool

D Pool-by-pool configuration/parameterization and activation of the new FA Agent

version

E Testing of a new FA Agent version, e.g. in a separate test pool, if required by deac-

tivating the autonomous reactions for test operation

The following activities are required to install or update a FlexFrame Autonomy Agent

patch or a newer release version.

1. Reading of the update, patch and release notes and observation of any required

modifications and special features, in particular in the event of simultaneous updating

of FlexFrame and operating system versions and patches.

2. Installation of a patch or a new release version (FA CtrlAgent and FA AppAgent).

FlexFrame Autonomy

FlexFrame Agents Guide 148

3. Parameterization/configuration, possibly using the FA migration tool.

3.1. Copying the parameters from the active agent version to the migration configu-

ration directory using the FA migration tool. Normally the following call is suffi-

cient to do this:

/opt/myAMC/FA_CtrlAgent/MGRTool.sh --target-release=<release>

--migrate-pool=<pool> --backup

This following call migrates the configuration of the pool1 pool to the version

V20K23 for the associated FA Agents.

/opt/myAMC/FA_CtrlAgent/MGRTool.sh --target-release=V20K23

--migrate-pool=pool1 --backup

Starting pool migration

pool: pool1

source release: V20K22

target release: V20K23

migration dir: /opt/myAMC//vFF/vFF_pool1/Migration.V20K23.2005-05-10

migration succeeded

see file /opt/myAMC/vFF//vFF_pool1/Migration.V20K23.2005-05-10/

MIGRATION-INSTRUCTIONS.txt

for details and installation instructions.

The modified files are written into a subdirectory and no current files are modi-

fied. In addition, the migration directory contains a backup of all current files. All

new/modified parameters are listed in the MIGRATION-INSTRUCTIONS.txt

file.

3.2. Testing, parameterizing and configuring the parameters taken over in the TrapTargets.xml, myAMC_FA_Groups.xml, myAMC_FA_Rules.xml,

myAMC_FA.xml, myAMC_FA_GUI.xml and myAMC_FA_SD_Sec.xml files.

3.3. Testing any new parameters and, if necessary, modifying the default values en-

tered.

3.4. Parameterizing and configuring of FlexFrame/operating system version de-

pendencies if the FlexFrame basis is updated at the same time.

3.5. Check the modifications made by the migration tool, according to the file

MIGRATION-INSTRUCTIONS.txt in result directory of migration.

FlexFrame Autonomy

149 FlexFrame Agents Guide

4. Pool-specific deactivation of the active FA Agent..

4.1. Stopping the FA CtrlAgent for the pool whose agents are to be updated.

/etc/init.d/myAMC.FA_CtrlAgent stop <pool>

4.2. Stopping the FA AppAgents on all nodes of the pool whose agents are to be

updated.

/etc/init.d/myAMC.FA_AppAgent stop

5. Pool-specific activation of the new FA Agents.

5.1. Modifying the active agent version in the .info file in the associated pool di-

rectory. To do this the pool.release.current entry must be adapted ac-

cordingly. The syntax is VxxKyy. This syntax is mandatory.

control1:/ # cat /opt/myAMC/vFF/vFF_pool1/.info

# Version V20K17

pool.release.base=V20K17

pool.release.current=V20K23

This pool will use the FA Agents of the versions V20K23.

Alternately this file can be transferred from the migrated configuration to the

configuration directory:

cd /opt/myAMC/vFF/vFF_pool1

cp ./Migration.<version>.<date>/.info .

5.2. Transferring the migrated configuration to the configuration directory.

cd /opt/myAMC/vFF/vFF_pool1

cp ./Migration.<version>.<date>/config/* ./config

5.3. Starting the FA AppAgents on all Application Nodes of the updated pool.

/etc/init.d/myAMC.FA_AppAgent start

5.4. Starting the FA CtrlAgent.

/etc/init.d/myAMC.FA_CtrlAgent start pool1

FlexFrame Autonomy

FlexFrame Agents Guide 150

6. Checking the new active FA Agent version.

6.1. Checking the agent processes.

Output for the example of the pool pool1:

control1:/ # /etc/init.d/myAMC.FA_CtrlAgent status pool1

Status of myAMC.FA_CtrlAgent ( myAMC_FA_CtrlAgent ) in vFF='pool1' at

host 'control1' ...

root 17608 1 0 13:41 pts/5 00:00:00 ./myAMC_FA_CtrlAgent

vFF=pool1 -lf=/opt/myAMC/vFF/vFF_pool1/log/CtrlAgt/

root 17610 17608 1 13:41 pts/5 00:00:00 ./myAMC_FA_CtrlAgent

vFF=pool1 -lf=/opt/myAMC/vFF/vFF_pool1/log/CtrlAgt/

root 17664 17610 0 13:42 pts/5 00:00:00 ./myAMC_FA_CtrlAgent

vFF=pool1 -lf=/opt/myAMC/vFF/vFF_pool1/log/CtrlAgt/

root 17665 17664 0 13:42 pts/5 00:00:00 ./myAMC_FA_CtrlAgent

vFF=pool1 -lf=/opt/myAMC/vFF/vFF_pool1/log/CtrlAgt/

root 17668 17664 0 13:42 pts/5 00:00:00 ./myAMC_FA_CtrlAgent

vFF=pool1 -lf=/opt/myAMC/vFF/vFF_pool1/log/CtrlAgt/

control1:/ #control1:/ # echo $?

0

6.2. Checking agent messages at startup.

control1:/ # /etc/init.d/myAMC.FA_CtrlAgent start pool1

Found vFF='pool1'.

Checking the files for vFF='pool1'...

Starting myAMC.FA_CtrlAgent ( myAMC_FA_CtrlAgent ) Version ( V20K23 ) in

vFF='pool1' at host 'control1' ...

6.3. Diagnosis and checking that the shown data is correct

6.4. Performing FlexFrame Autonomy tests (restart, reboot, etc.).

Steps 1, 2 and 3 can take place while FlexFrame Autonomy is active. The FA Autonomy

functions are not available only for a brief period between deactivation of the active agent

version and activation of the new agent version.

Note that only version-compatible FA CtrlAgents, FA AppAgents and FlexFrame versions

can be used. Compatibility of the agent versions with various FlexFrame versions results

in dependencies which must be taken into account.

FlexFrame Autonomy

151 FlexFrame Agents Guide

4.12 The FA Migration Tool

The FA migration tool is used to migrate configurations of a selected pool to and from a

particular FA Agent version. The FA migration tool also enables you to merge configura-

tion files.

4.12.1 Pool Mode

Pool mode generates a migrated configuration in the subdirectory Migration.<version>_<timestamp>, including the backup of the current files. To

enable the migrated configuration to be used it must be copied into the relevant configu-

ration directory of the pool concerned.

Required / useful parameters:

-p/--migrate-pool=<pool>

-r/--target-release=<release>

-b/--backup

[-V/]--verbose]

[-d/--pools-basedir=<dir>] (optional)

[-c/--clean] optional

[-s/--source-release=<release>] (optional)

Example:

MGRTool.sh --migrate-pool=<pool> --target-release=<release> --backup

4.12.2 File Mode

File mode merges two files which are in myAMC config format. The two files are defined with the parameters merge-file and template.

File mode can only be used on files which are in myAMC config format (e.g. my-

AMC_FA.xml). The myAMC_Pools.xml and myAMC_FA_Groups.xml files are not in

this format. These files can therefore not be migrated using file mode, but only in pool

mode.

Required / useful parameters:

-m/--merge-file=<file>

-t/--template=<template>

-o/--out-file=<file>

[-V/--verbose]

[-c/--clean] (optional)

FlexFrame Autonomy

FlexFrame Agents Guide 152

Example:

MGRTool.sh –-merge-file=File1.xml --template=File1-default.xml

--out-file=File-out.xml

4.12.3 Usage

Usage:

/opt/myAMC/FA_CtrlAgent/MGRTool.sh --help

myAMC_FA_MGR_Tool 1.0 (May 4 2005)

usage:

-m/--merge-file=<file> ...

-p/--migrate-pool=<pool> ...

-l/--list-releases

-h/--help print help

-v/--version print version info

command line reference:

-m/--merge-file=<file> merge this file with a template

-t/--template=<template> template to be used for merging

-o/--out-file=<file> write merged output to this file. (use '-' for std

output)

-p/--migrate-pool=<pool> migrate specified pool

-s/--source-release=<release> migrate from specified release [optional, deter-

mined automatically]

-r/--target-release=<release> migrate to specified release

-b/--backup create backup of all files

-d/--pools-basedir=<dir> base dir of all pools (default: /opt/myAMC/vFF)

-l/--list-releases list all available releases

misc options:

-c/--clean remove unnecessary files and config settings

-V/--verbose be verbose

-lf/--logfile <file> write to this log file

-lp/--logpath <path> create log file in this directory

FlexFrame Autonomy

153 FlexFrame Agents Guide

Explanation of the Parameters of the FA Migration Tool

-m/--merge-file=<file> Merges the specified file with the template

-t/--template=<template> Specifies the template to be used for the

merge

-o/--out-file=<file> Write merged results into the specified file

(use '-' for standard output)

-p/--migrate-pool=<pool> Specifies the pool to be migrated

-s/--source-release=<release> Migrates from specified release (parameter

is optional). If parameter is not specified, the

version of the pool to be converted is used.

-r/--target-release=<release> Migration to the specified release

-b/--backup Generates a backup of all files

-d/--pools-basedir=<dir> Basic directory of the pools (default: /opt/myAMC/vFF)

-l/--list-releases Lists all available (installed) releases

-c/--clean Removes unnecessary files and configura-

tion settings

-V/--verbose Detailed output during migration

-lf/--logfile <file> Writes log messages to the specified log file

-lp/--logpath <path> Generates the log file in the specified direc-

tory

-h/--help Prints usage, as shown above

FlexFrame Autonomy

FlexFrame Agents Guide 154

4.13 Command Line Interface fa_list_services.sh

The command line interface is used to list the states of all FlexFrame services.

Usage:

/opt/myAMC/scripts/fa_list_services.sh -h

usage: ./fa_list_services.sh [-ivcCH] [<pool> ...]

-i: show inactive services

-v: verbose mode

-c force use of colors for state information

-C suppress colors for state information

-H suppress headers

-h show usage

-? show usage

if no pools are specified, services of all pools will be shown.

Example:

/opt/myAMC/scripts # ./fa_list_services.sh -C p1

Pool Group Hostname SID Type Id State

p1 Trauben pw250a OEC db RUNNING

p1 g1 rx600a OEP db RUNNING

FlexFrame Autonomy

155 FlexFrame Agents Guide

4.14 Command Execution at All Nodes of a Pool / ALL_POOLS

For execution of a command at all nodes of a pool you can use the script allnodes:

Usage:

cn2:/opt/myAMC/scripts # ./allnodes

allnodes <pool> "<command>"

.

allnodes ALL_POOLS "<command>"

allnodes ALLPOOLS "<command>"

allnodes ALL "<command>"

cn2:/opt/myAMC/scripts #

Example:

cn2:/opt/myAMC/scripts # ./allnodes FCK date

Pool: FCK

node pw250c:

Tue Jun 27 10:28:21 CEST 2006

node pw250d:

Tue Jun 27 10:28:21 CEST 2006

node pw650a:

Tue Jun 27 10:28:21 CEST 2006

node blade4:

Tue Jun 27 10:28:21 CEST 2006

node rx300a:

Tue Jun 27 10:28:21 CEST 2006

node rx300b:

Tue Jun 27 10:28:22 CEST 2006

cn2:/opt/myAMC/scripts #

157 FlexFrame Agents Guide

5 WebInterface

The FA WebGui visualizes all nodes and services present in a FlexFrame system insofar

as they are monitored by an FA AppAgent. The display shows the status, availablity and

messages of the Application and Control Agents.

5.1 Installation / Configuration

5.1.1 Prerequisites

On the Control Node an Apache-Tomcat Servlet Container must be installed. Currently

Tomcat >= 5.5.x is supported. Additionally a Oracle Java JRE or SDK >= 1.6.0 must be

installed.

Prerequisites for the clients are FireFox >= 3.0 or Internet Explorer >= 6.0 and the Oracle

Java plugin >= 1.6.0.

5.1.2 Installation

The installation package is called myAMC.FA_WebGui-<X.Y-Z>.i386.rpm.

Install the relevant package on the Control Node with

rpm –i myAMC.FA_WebGui-<X.Y-Z>.i386.rpm

The files are installed under /opt/myAMC/FA_WebGui.

5.1.3 Configuration

5.1.3.1 Web Server

Provided no paths have been changed in the FA configuration, the configuration runs out

of the box.

Changes to the web server require Tomcat to be restarted or reloaded.

5.1.3.2 Login IDs

Login IDs are stored in the file /opt/myAMC/config/amc-users.xml. User names

and passwords can be entered simply here. No administration of rights is provided in the

current version; each user has the same rights and sees all pools, groups and systems.

WebInterface

FlexFrame Agents Guide 158

The file’s as-supplied status is as follows:

<?xml version="1.0"?>

<users>

<user name="admin" password="FlexFrame" role="admin, user"/>

<user name="myAMC" password="FlexFrame" role="user"/>

<user name="ByD" password="FSC" role="user"/>

</users>

Each user is assigned an entry in the following format:

<user name="admin" password="FlexFrame" role="admin, user"/>

The name field contains the user name and the id field the password. The remaining

fields must be taken over as they have been defined.

The default values for user and password are:

User: myAMC

PW: FlexFrame

The configuration file is an XML file whose format must be valid, otherwise no

user can log in. You can check this by opening the file in Internet Explorer, for

example. If the file is displayed without an error message, it is also accepted by

the WebGui.

If changes are made, the FA WebGui must be restarted or reloaded (e.g. using the

Tomcat Service Manager) or Tomcat must be restarted or reloaded.

5.1.3.3 Link to the Accounting and Messenger Databases

The FA WebInterface enables messages of the Application and Control Agents to be

displayed. These are sent from the Agents to the myAMC.Messenger, which filters them,

automatically triggers reactions as required, and writes them into a database.

Additionally the FA WebGui supports showing performance graphs and accounting data,

which is read from the accounting database.

The database access parameters must be specified in the configuration file

/opt/myAMC/config/connector.properties. If changes are made, the FA

WebGui must be restarted or reloaded (e.g. using the Tomcat Service Manager) or

Tomcat must be restarted or reloaded.

Configuration of the connector properties see chapter 2.3.5.

WebInterface

159 FlexFrame Agents Guide

5.1.3.4 LDAP Options

The graphical user interface provides structural information of pools, nodes and services

even if they are not running. They are gained by accessing the information stored in the

system-wide LDAP database.

LDAP access is preconfigured for standard installations and works out of the box. In

order to allow fine-grained control, the following options can be specified in the configura-

tion file /opt/myAMC/config/FA_WebGui.conf. If changes are made, the FA WebIn-

terface must be restarted or reloaded (e.g. using the Tomcat Service Manager) or Tomcat

must be restarted or reloaded.

The table below includes all LDAP-specific configuration settings, their default values and

a description.

LDAP database Default value and description

ldap.config.file /etc/openldap/ldap.conf

Specifies the name of the system-wide LDAP config file,

which contains parameters for all services requiring LDAP

access, e.g. automount, etc. This file will be read in order to

get the necessary settings.

ldap.username <empty>

User name for LDAP access. This parameter may contain

the BindDN (equivalent of user name).

ldap.password <empty>

Password for LDAP access.

ldap.update-cycletime 3600

Specifies how often (in seconds) structural information is

updated.

ldap.enabled true

Specifies whether LDAP access is enabled (true, false)

5.1.3.5 GUI Options

The graphical user interface provides some options which can be set using applet pa-

rameters. These permit the window size to be changed, automatic login, and the activa-

tion of the context menus.

Settings are changed using applet parameters in the

/opt/myAMC/FA_WebGui/index.html file.

Autlogin and activation of the context menus are implemented using applet parameters,

which are set as follows:

///////////////////////////////////////////////////

WebInterface

FlexFrame Agents Guide 160

// user changable paramaters

// set to 'yes' to enable context menues

allowContextMenues:'no',

// change to enable auto-login

//user: 'MYUSER',

//password: 'MYPASSWD',

///////////////////////////////////////////////////

Parameter Possible values and description

allowContextMenues yes or true and no or false (no = default)

Specifies whether context menus (and thus actions) are per-

mitted.

user User name for Autologin; must be uncommented to be used

password Password for Autologin; must be uncommented to be used

5.1.3.6 Other Settings

Further settings can be made in the file /opt/myAMC/config/FA_WebGui.conf. If

changes are made, the FA WebInterface must be restarted or reloaded (e.g. using the

Tomcat Service Manager) or Tomcat must be restarted or reloaded.

BlackBoard settings Default value and description

The BlackBoard is an interface for transferring commands

to the Application and Control Agents (see chapter 8).

blackboard.toolpath /opt/myAMC/FA_CtrlAgent

Path containing the BlackBoard command line tool.

blackboard.toolfile BBTool.sh

Name of the BlackBoard command line tool. This is nor-

mally a shell script which starts the correct program in

accordance with the operating system .

blackboard.path /opt/myAMC/vFF/

Path for the BlackBoard file (without pool name!)

blackboard.file data/FA/blackboard/blackboard.txt

Name of the BlackBoard file (without pool name!)

blackboard.md5key myAMC.FA_BBTool

MD5 key which is used for saving.

WebInterface

161 FlexFrame Agents Guide

Paths and file names Default value and description

path.flexframe.data /opt/myAMC/vFF

Location of the data directories (pools)

path.flexframe.config /opt/myAMC/config

Configuration directory

file.amc-roles amc-users.xml

Name of the file (in the above-mentioned configuration

directory) which contains the user definitions.

Hypervisor Monitor Default value and description

builder.enabled.vmhost true

Specifies whether Hypervisor monitoring service is ena-

bled (true or commented) or disabled.

builder.update-

cycletime.vmhost

60

Cycle time (in seconds) for Hypervisor monitor service

Reading out the FA data Default value and description

pools.update-cycletime 3

Specifies how often the data of all pools is to be read out

(in seconds).

WebInterface

FlexFrame Agents Guide 162

5.2 Visualization

5.2.1 Starting the WebInterface / Access via Web Browser

The WebInterface is always reachable when the Apache Tomcat is running. The Apache

Tomcat will be started by the script /etc/init.d/ff_jakarta-tomcat start.

The WebInterface can be reached at the following URL:

http://<control_node>:8080/FAwebgui/

The port specified can be changed in the Tomcat configuration files server.xml.

5.2.2 Login

The user name and password must be entered in the login mask to permit authentication.

You can use the WebInterface only with a valid combination of user name and password

(for details on configuring users see section 5.1.3.2).

WebInterface

163 FlexFrame Agents Guide

5.2.3 Overview of Elements

The WebInterface provides a clearly structured display of all the elements in a FlexFrame

system. The left-hand side shows pools, groups and nodes in a tree structure. The main

panel provides and overview of the status of all instances and displays messages from

the various agents. The panels at the lower edge show all the nodes and systems and

their current statuses.

WebInterface

FlexFrame Agents Guide 164

5.2.4 Pool / Group Tree

5.2.4.1 Overview

The pool and group tree shows all elements of a FlexFrame system in a hierarchical

structure. Each pool has, child elements, groups, which in turn are used as containers for

systems, nodes or instances.

5.2.4.2 Status

The status of an element is indicated by its color.

The colors have the following meanings:

Red Critical

Yellow Warning

Green Normal, everything OK.

White Not active or no further information

Black Not active or shut down

Blue Managed Spare Node in Adminpool

Color inheritance takes place according to the worst-case principle. Here an element

displays the worst value for its own status or for the status of its child elements.

5.2.4.3 Selecting an Element

When an element is selected, the associated instances, nodes and systems are dis-

played in the panels on the right-hand side:

When a pool is selected, the instance view shows all instances which are running on

nodes of this pool, the node panel shows all nodes belonging to the selected pool,

and the system panel shows all systems which have instances on nodes of this pool.

When a group is selected, the instance view shows all instances which are running on

nodes of this group, the node panel shows all nodes belonging to the selected

group, and the system panel shows all systems which have instances on nodes of

this group.

When an Application Node is selected, the instance view shows all instances which are

running on this node, the node panel shows the selected node and the system panel

shows all systems which have instances on this node.

When a system is selected, the instance view shows all instances belonging to this sys-

tem, the node panel shows the nodes on which the associated instances are run-

ning, and the system panel shows the selected system.

When an instance is selected, the instance view shows the selected instance, the node

panel shows the node on which the instance is running, and the system panel shows

the system to which the instance belongs.

WebInterface

165 FlexFrame Agents Guide

5.2.4.4 Different Tree Presentations

The tree view offers different presentations for displaying the various elements.

The Nodes tree displays the pool, group and node elements.

Example 1 Example 2

The nodes displayed in black are not currently running, the ones in white are

running, but are not currently hosting services, i.e. they are spare nodes.

Virtual nodes will be marked with a “V”.

Spare noes will be marked with a “S”.

WebInterface

FlexFrame Agents Guide 166

The system pool “FlexFrame” shows Hypervisor, virtual machines and their state.

The state is Hypervisor-specific and does not show FlexFrame or SAP service state.

The type of Hypervisor (VMware/ESX or KVM) will be shown als overlay icon.

State: RUNNING as soon as VM is started/powered-on on Hypervisor level.

State is not related to ping-response or FA_AppAgent state

WebInterface

167 FlexFrame Agents Guide

The Systems tree displays the pool, system and service elements.

The All tree displays all elements, from pool to service.

WebInterface

FlexFrame Agents Guide 168

5.2.4.5 Visualization of host systems and virtual servers

As of version 9.0 the myAMC.FA WebGUI displays the hypervisor of virtual servers.

For each hypervisor the running virtual machines are shown. Virtual servers are marked

with an overlay icon “V”.

Hypervisor are shown together with the running virtual servers across the pools in the

pesudo pool "FlexFrame".

The running virtual servers of a hypervisor server can be in different FlexFrame groups

as well as in different pools.

In addition, the virtual server can be seen as any physical application nodes in their re-

spective pool.

5.2.4.5.1 Virtual server

A virtual machine is marked with an overlay icon „V“ in the tree and the node panel.

5.2.4.5.2 Hypervisor

A hypervisor is a physical server, running on the virtual node in a virtualized environment.

With FlexFrame 5.3 or FlexFrame Ochestrator V1.0 ESX and KVM hypervisors are sup-

ported.

Each Frame has a pool “FlexFrame”, which is a special system pool for information about

the whole frame. The data of the pool FlexFrame is located on the control node and not

on the storage system. The pool “FlexFrame” contains a group ”Hypervisor Nodes”, which

shows all physical servers (Hypervisor) with the currently existing virtual machines.

The shown state in pool FlexFrame is the state seen from Hypervisor / interface to Hy-

pervisor. A running VM means that from the perspective of Hypervisor the virtual machine

is started. VM state RUNNING is shown even if the operating system and application

software is not completely active.

The state of the VM with operating system and application software as seen from my-

AMC.FA-Agents is visible in normal pool. So the state of the same VM might be different

between pool FlexFrame and normal pool.

WebInterface

169 FlexFrame Agents Guide

The following illustration shows the pool “FlexFrame” with Hypervisor and virtual servers

and the pool “pool3” with physical, virtual and sparenodes.

WebInterface

FlexFrame Agents Guide 170

5.2.5 Status Display

5.2.5.1 Node Panel

The node panel displays all nodes on which instances belonging to the currently selected

element are running. Each node is shown with its name, icon and status, the node status

corresponding to the worst instance status.

In the node panel virtual servers are marked with an overlay icon “V”.

Nodes whose shutdown facility may not be configured right or is unknown will be shown

with a red triangle in node and tree-panel (from FlexFrame V5.2).

The order of the elements in the panel can be changed by pressing the right button and

choosing the sort order.

Example: Sorting by colours, i.e. critical nodes with problems can be recognized directly,

even if many nodes are visible in the panel.

If you leave the mouse cursor over a node icon, a tool tip is displayed specifying the

name, group and pool.

Example 1 Example 2

WebInterface

171 FlexFrame Agents Guide

5.2.5.2 System Panel

The system panel displays all systems of the instances belonging to the current-

ly selected element. Each system is shown with its name, icon and status, the

system status corresponding to the worst instance status.

The order of the elements in the panel can be changed by pressing the right button and

choosing thesort order.

WebInterface

FlexFrame Agents Guide 172

5.2.5.3 Instance Panel

The instance panel displays all instances belonging to the currently selected element in a

list view containing the following fields:

Severity

Current instance status: red = critical, yellow = warning, green = everything OK,

white = no information or not active.

Pool

Name of the pool incorporating the node on which the instance runs.

Group

Name of the group incorporating the node on which the instance runs.

System

Name of the system to which the instance belongs.

ID Instance number.

Service

Generic instance name.

Type

Type of instance: database (DB), central instance (CI), application instance (APP)

Priority

Priority of the instance (see section 3.3.1)

Node

Node on which the instance is running

State

Current status of the instance

WebInterface

173 FlexFrame Agents Guide

The fields in the list can be arranged in any order by left-clicking on the column header.

Clicking on it again reverses the sort order, and a third click cancels the sort again. An

arrow appears next to the header which specifies the current sort order and sort direction.

If sorting is to take place according to several columns, you click on the first column

(twice if required, depending on whether sorting is to take place in ascending or descend-

ing order). You select all other columns with CTRL + mouse click. The lower the sort

priority of a column becomes, the smaller the arrows next to the column header become.

In order, for example, to sort by pool and within a pool by group, you first click on Pool,

hold down the CTRL key, and then click on Group.

With activate or not avcicate the button the view changes or changes not the selection in the tree at the left side.

WebInterface

FlexFrame Agents Guide 174

5.2.5.4 Assigning States to Colors

As described above, color inheritance takes place according to the worst-case principle.

Here an element displays the worst value for its own status or for the status of its child

elements.

The states are assigned to the color display as follows:

White:

inactive or no

further information

Green:

normal,

everything ok

Yellow:

warning

Red:

critical

Black:

critical

Blue:

Info

Node states

RUNNING

SWITCH_INT

SWITCH_EXT

PowerOff

DOWN

Managed Spare

Node in Ad-

minpool

Service states

SHUTDOWN

DOWN

WATCH

UNKNOWN

NULL

RUNNING

STOPPING

STARTING

REBOOT

RESTART

RESTARTING

REBOOT

REBOOTING

RBGET

SWITCH

SWITCHOVER

SWGET

ERROR

The keywords for the states are accepted in either upper or lower case.

WebInterface

175 FlexFrame Agents Guide

Additional of the colored visualization there are overlay icons with the following sense:

ESX Hypervisor

KVM Hypervisor

Virtual node

Spare node

Virtual spare node

Shutdown facility detect that shutdown for this node should not work (shutdown

is invalid)

NoWatch attribute of a service

These overlay icons will be shown in tree and in node panel.

WebInterface

FlexFrame Agents Guide 176

5.2.6 Message Display

The message display provides an overview of all messages which come from the Appli-

cation and Control Agents of the FlexFrame system. The messages are prefiltered in

accordance with the element currently selected in the tree. If the highest element with the name FlexFrame is selected, all messages are displayed. If a specific node is selected,

only messages of this node are displayed.

Scrolling to reg right shown additional informative columns:

WebInterface

177 FlexFrame Agents Guide

5.2.6.1 Fields

The following fields are available in the message panel:

Severity

Message severity: red = critical, yellow = warning, green = everything OK, white = no

information or not active

Timestamp

Message timestamp

Pool

Pool name

Group

Group name

System

System name

Id

Instance number

Type

Type of service affected (DB, APP, CI, …)

Node

Node name

ShortMessage

Abbreviated message

Category

Category

Info

Service-Type of service affected (SRV_DB, SRV_APP, SRV_CI, …)

MessageId

Unique message ID

Application

Application which sent the message

LongMessage

Detailed message

WebInterface

FlexFrame Agents Guide 178

5.2.6.2 Navigation

The navigation bar enables you to navigate through all messages:

The number of messages found within the selected time range will be shown below the

messages. The example above shows, that there are 493 messages in the specified time

range.

With the message view will be closed.

Witch switch on the button the selection from the tree-panel will be adopted to the

message view. Then only the messages will be shown, which will be correlate to the

selection in tree-panel.

auto refresh automatically looks for new messages during each update cycle. With the

drop-down-menue right from “auto refresh” the refresh cycle can be adjusted.

The fields “From” and “to” specify the currently selected timerange. They can be changed

as well by manually entering a valid date. Start and end time are synchronized, i.e. the

timerange will always be the one specified below.

The buttons and can be used to scroll within the messages.

fast-forwards toward the most recent messages. The button updates the mes-

sages in the current time range. If the update will take to much time, it can be interrupted

with .

The time span specifies the amount of time by which the displayed timerange will be

adjusted into past or future, when the buttons and or next to the start and

end date are used.

A manual refresh with is necessary after the first time the message view has been

opened, and whenever start date, end date, or the time span has been changed.

Pushing a drop-down menue will be shown, where ‚page-size‘ and ‚cache‘ could be

adjusted. Using cache the message view must not be load all data from database for a

refresh. The amount of data loaded from database during refresh and will be hold in

cache, depends from ‚page size‘ and the desired timerange. If timerange is smaller as

page-size. It may be that more than one page size will be loaded, because the message

view will use page.size with special rules. If the page-size is smaller as the timerange,

there will be loaded as many page-sizes that the whole timerange is filled.

WebInterface

179 FlexFrame Agents Guide

With the cache will be cleared.

WebInterface

FlexFrame Agents Guide 180

5.2.6.3 Sorting

The message window allows sorting of the currently displayed messages.

The fields in the list can be arranged in any order by left-clicking on the column header.

Clicking on it again reverses the sort order, and a third click cancels sorting. An arrow

next to the header specifies the current sort order and direction.

If sorting is to take place according to several columns, click on the first column (twice if

required, depending on whether sorting is to take place in ascending or descending or-

der). Additional columns can be selected with CTRL + mouse click. The size of the arrow

next to the column header increases and decreases with sort priority.

In order, for example, to sort by group and within a group by nodes, click on “Group”, hold

down the CTRL key, and then click on “Node”.

By default messages are displayed in descending chronological order, i.e. new messages

are shown at the top.

WebInterface

181 FlexFrame Agents Guide

5.2.7 Configuration of FlexFrame Autonomy with the Webin-terface

The FlexFrame Autonomy Agents can be configured using the web interface.

The myAMC.FA WebGui is a display option for the visualization of Flexframe infrastruc-

ture and the services running on it. The configuration with this frontend is not possible in

the standard fashion. Reason for this is that in normal operation important configuration

settings can not be changed by an operator error. An administrator can enable the con-

figuration dialogs by following change.

In order to use the configuration editor, the context menus must be enabled. This can be

achieved by setting the option allowContextMenues in the file

/opt/myAMC/FA_WebGui/index.html to yes.

Caution: Turning on the context menu to make from the pure observation GUI (sta-

tus-and event-monitor) a limited ADMIN GUI.

The configuration editor can be started by right-clicking on a pool element and selecting Edit configuration from the context menu.

The normal way to configure the myAMC.FA Suite is the myAMC.FA ConfigGui. Calling

this configuration Gui should be allowed only to authorized persons.

The following descriptions and screenshots show a matter of principle, but not the whole

configuration menus.

WebInterface

FlexFrame Agents Guide 182

Each parameter offers a detailed description, when the mouse pointer is positioned over

the parameter name:

The values can be modified using the input fields, changes are indicated by a an icon:

All parameters are validated, whenever a change occurs. Validation failures are indicated

by an icon, and offer a detailed error description as a tooltip:

Parameter lists can be extended using the add button, unnecessary entries can be

removed using the remove button. When a new entry is created, an input dialog asks for

a name, which uniquely identifies this entry. The suggested name is composed of a

template name and the current date:

Some additional elements can be used to control the configuration process:

Save: Stores the modified values in the config files.

Revert: Reverts all changes.

Close: Closes the configuration dialog.

WebInterface

183 FlexFrame Agents Guide

5.2.7.1 Configuration of priorities and powervalue

The high availability and autonomy rules also depend on the priorities and the configured

power requirements of a service. This parameter priority or power value to a service are

stored in the pool-specific myAMC_FA_Group.xml file.

From FlexFrame V5.3 or FlexFrame Orchestrator V1.0 there is a graphical dialog with

which these parameters can be edited in myAMC.FA ConfigGui.

An understanding of the configuration of a service associated priority value and the power

is very important because the behavior is controlled depending upon failure.

It is called in the main menu in the View menu-> Priosettings.

The configuration of the rules for priorities and power values is pool-specific. Unless a

pool is selected in the tree, a grid appears empty priorities. The DataGrid for priority con-

figuration has its own menu bar with its own menu button.

WebInterface

FlexFrame Agents Guide 184

The buttons shown in the image above from left to right have the following meaning:

Priorities display and close the dialog

Changing the display depending on the position in the tree

Save button to save the changes.

InsertBefore A new rule is inserted before the selected rule

Insert After: A new rule by selecting the rule is placed.

Edit: A selected rule can be edited

Delete: You can delete a selected rule

Filters for display of associated services

Fine filter for selective display of services for the selected rule

Once you select a pool, the stored rules appear. Rules are shown in a different color than

the services that are derived from this rule, their priority or power value.

The picture shows the rules concerning the currently selected tree pool "default".

WebInterface

185 FlexFrame Agents Guide

All parameters are arranged hierarchically. I.e. the rule tree is processed from top to

bottom. A service derives from its priority rule from the first hit. In the rules table is there-

fore always, and that should not be changed, as the last rule *. * Rule, which applies to

each service and defines the default priority and the default power value for a service. Is

not this a general rule, the internal default values are set for a service matched with any

rule entry.

The default values are 998 for the priority and 100000 for the Power value. If you want a

service of a particular SAP system has to be another priority is always to insert this rule

before the general rule.

By using the filter button, the currently existing services may be displayed. The services

are always displayed immediately after the rule has matched in the determination of ser-

vice priority and power value.

The display of the rules along with the to the Related Services is shown in the next pic-

ture. Together with the button 'follow selction' can be controlled so that only the services

for a group within a pool are displayed for clarity.

Insert a new rule.:

The configuration of a new rule can be made in the filtered or unfiltered display. Before

creating a new rule, the new rule must be considered where in the rules table must be

inserted. Accordingly, there is a menu button to insert a new rule before or after a select-

ed rule or to edit the selected rule.

WebInterface

FlexFrame Agents Guide 186

The definition of such a rule is shown below:

Group: Defines the group of the pool in which the rule should apply. No entry or *

is called the rule is applied Across group within the pool.

SID: System ID to apply for a rule. No entry or * means that the rule applies to

all systems.

Service Type: The service type.

ServiceID Instancenummer a service.

The individual Attritbute generally be linked via "AND" in the evaluation. So a service is

assigned the priorities defined in the rule and power values if its attributes Group, SID,

service type, service ID match on the rule.

Evaluation is carried out hierarchically from top to bottom. The position of a rule in the

rule tree therefore has significant influence on which rule is applied to a service at run

time. For a more specific rule is applied before a general rule, this rule must be in the

table above.

The following figure shows the dialog to add a new rule. This dialog is identical in princi-

ple for 'insertBefore', 'insertAfter' and 'edit'.

So that new rules can be added to the control hierarchy at the right places, there are two

menu buttons 'insert before' and 'after insert'. Therefore it is necessary that a control is

selected.

WebInterface

187 FlexFrame Agents Guide

Furthermore, there is still the option to edit an existing rule. A new or modified rule is

initially only in the memory of myAMC.FA ConfigGuis only on the save button, the rule

change is stored in the associated file.

Activation of a rule change:

Note: A modified rule is active after a restart of the myAMC.FA agents.

The display of the Services always displays the current values of the services as they

currently are, according to the live list file.

In the rule table, a service usually is indicating he will belong to from rule activation.

The user can therefore see the possible effects of a rule change right on the screen.

Display the rule table with and without services:

This can be set via the filter button. The filter button controls whether only the rules or the

rules derived from the service are shown.

The line filter always applies only to the selected line. The button for the row filter is only

visible when switched filter function.

WebInterface

FlexFrame Agents Guide 188

5.2.7.2 Configuration of highavailability

The high availability and autonomy rules depend on the parameters for the control of high

availability. These parameters are configured at the pool level.

As of version V5.3 FlexFrame, in addition to the default set of parameters that applies to

the entire pool, a separate set of rules for a group within a pool can be configured.

The group-specific ruleset contains only the important SwitchOver- and TakeOver- pa-

rameter, which controls the highavailability.

The image shows the dialog for configuring the parameter settings for the Takeover

Rules.

In addition to the default configuration that applies to all groups of a pool, a rule set that

deviates can be configured for a group within a pool.

WebInterface

189 FlexFrame Agents Guide

The configuration dialog is shown in the following image.

To add a neu group specific configuration please press „Add“.

Then the following dialog will appear:

Here you must enter the name of the group for which the new rule should apply:

WebInterface

FlexFrame Agents Guide 190

After pressing "OK" the new group appears in the list and can be customized:

WebInterface

191 FlexFrame Agents Guide

5.2.8 Special Signals

5.2.8.1 Overview

The pool and group tree shows all elements of a FlexFrame system in a hierarchical

structure. Each pool has, as child elements, groups, which in turn are used as containers

for systems, nodes or instances. In addition to the standard visualization of the elements

their some signaling feature for special functions or situtations.

5.2.8.2 Spare Nodes in a Spare Pool

The visualization of spare node in an admin pool uses additional signals to differentiate

between active and inacitive spare nodes. The status of an element is indicated by its

color.

A spare node in the SparePool/SpareGroup is white or black because the node is un-

known and down. To use a spare node from the spare pool in an other pool the spare

node has to be activated. In addition to the standard signaling an activated spare node in

a spare pool has an overlay icon. Spare nodes in the admin pool without overlay icon are

not activated.

WebInterface

FlexFrame Agents Guide 192

5.3 Interaction

5.3.1 Updates

The WebInterface regularly updates all the displayed elements, states and messages.

5.3.1.1 Update Interval

The interval between two updates can be set using the context menu of the button,

which can be reached using the right mouse button:

An update interval of between three seconds and two hours can be selected.

5.3.1.2 Manual Update

You can initiate a manual update outside the update cycle using the button.

WebInterface

193 FlexFrame Agents Guide

5.3.1.3 Reinitialization

If you wish to reinitialize and update the entire interface, you can do this using the Rei-

nitialize option in thecontext menu of the button.

5.3.1.4 Pause Mode (No Update)

If you wish to disable the update for a while (pause mode), you can do this using the

Enable Update option in thecontext menu of the button.

WebInterface

FlexFrame Agents Guide 194

5.4 Info and Help

The button enables you to access the information and help dialogs.

Message History

The Message History displays the last messages of the WebInterface.

Status

Results of Commands like “Start Service…” etc.

WebInterface

195 FlexFrame Agents Guide

5.5 FlexFrame Performance and Accounting Plug-in

The FlexFrame Autonomous Management Center contains, as optional components,

plug-ins for the views of the performance and accounting data.

The plug-in consists of a graphical display in which the performance or accounting values

are shown in the form of graphs. The temporal view domain can be freely chosen and is

only limited through the data timespans stored in the Repository.

The GUI uses a powerful cache algorithm to optimize the display, which minimizes the

waste of resources and optimizes the response time for the data request. The cache

works through page size and number of pages, meaning that, according to the efficiency

of the front-end system used, the default parameters can be temporarily altered to adjust

the signal performance to individual demands.

Pagesize

Pagecount

These two parameters influence the size of the display cache and the quantity of data to

be transferred at the request of the GUI to its server.

The cache algorithm erases old pages only after obtaining the page count. Then the

pages not used for the longest time are erased.

The performance plug-in shows the CPU and memory values for a chosen service, in

each case in individual graphs. Every graph shows minimum, average and maximum

values.

The displayed timespan can be shifted using the two arrows at the top of the plug-in.

5.6 FlexFrame Reporting Plug-in

The FlexFrame Reporting plug-in contains the production, export and print of reports from

the FlexFrame Autonomous Management Center. This plug-in is only available in the

standalone variant of the management center; display within a web browser is not possi-

ble.

The plug-in shows a selection of available reports. New predefined or user-specified

reports can simply be filed in the report directory and are immediately applicable.

All reports have a standardized parameter interface. A new report can easily be derived

from one of the existing reports.

WebInterface

FlexFrame Agents Guide 196

5.7 Customization of Icons in the FA WebGUI

The FA WebGUI uses icons to represent company and product information as well as

nodes and systems. As of version 8.0 of the FA WebGUI, these icons can be changed by

the user.

User-defined icons can be deposited in directory /opt/myAMC/FA_WebGui/icons. The

file /opt/myAMC/FA_WebGui/FlexFrameViewer.properties contains names of

heading, logo, node, and system icons as well as the window title and can be customized

as necessary.

The information stored in this directory (logos and icons) are loaded each time the FA

WebGUI, and then stored locally for the duration of the use of the FA WebGUI. I.e. the

start of the FA WebGUI will ever slow down on the number of individualized icons and

logos, due to the additional load times slightly.

The behavior and display of the FA WebGUI remain unchanged if the directory for the

logos and icons contains no additional logos and icons. The directory and the standard

logos and icons are already components of the distributed FA WebGUI versions. The

exact procedure is described in section 7.5.14.

197 FlexFrame Agents Guide

6 FlexFrame Autonomy Power Shut-down Concept

6.1 General

The FlexFrame Autonomy power shutdown function is designed to provide a simple,

easy-to-configure method for implementing secure shutdown of various hardware plat-

forms.

For this pupose the FlexFrame Autonomy Control Agents use the generic interface with a

set of predefined shutdown methods.

A new parameter defines the check sequence to find the appropriate shutdown method

for a server.

For external SwitchOver of application instances, FlexFrame Autonomy requires a secure

option for shutting-down nodes simply and securely.

The FlexFrame Autonomy Agents ascertain this lack of configuration information at

runtime and then generate the configuration information required for the agents.

FA_Blade

FA_IPMI

FA_VM

FA_HV

FA_Generic

Reserved

FlexFrame Autonomy Power Shutdown Concept

FlexFrame Agents Guide 198

6.2 Power Shutdown Architecture

The figure below provides an overview of the components involved and how these inter-

work in a FlexFrame environment.

The FlexFrame Autonomy Control Agent runs on the active Control Node. The FlexFrame

Autonomy Application Agents provide the Control Agent with information on the computer

type and further information which is required for generic detection of shutdown infor-

mation, insofar as this is technically possible and the information is unambiguous and can

be ascertained securely. Information which cannot be ascertained generically must be

entered manually in the Powershutdown section of the myAMC_FA.xml file.

vFF Pool ...n

Data

Config Logfiles

vFF Pool2

FlexFrame Autonomy Power Shutdown Concept

199 FlexFrame Agents Guide

6.3 Basics

6.3.1 Powershutdown methods for use with FA generic

shutdown facility

As of FlexFrame version 4.2B, the generic myAMC.FA Powershutdown facility uses

wrapper scripts to integrate server specific shutdown tools.

The standard path for the myAMC.FA shutdown wrapper scripts is:

/opt/myAMC/scripts/PowerMng/<type>_wrapper.sh

6.3.1.1 Power Shutdown for Blade Systems

Power shutdown for the Blade systems is implemented via the wrapper script blade_wrapper.sh. In order to shutdown a compute blade, the IP addresses, SNMP

communities and password (usually the same as the SNMP community) of the Manage-

ment Blade must be configured.

The hosting blade chassis, MAC addresses and slot numbers of compute blades are

determined automatically.

The wrapper script is: blade_wrapper.sh

6.3.1.2 Power Shutdown for PRIMERGY Systems

By default power shutdown for the PRIMERGY systems in FlexFrame is performed via

the IPMI interface using the Linux IPMI tool. Necessary configuration settings are user

name and password, if they are different from the default user name and password.

The wrapper scipt is: ipmi_wrapper.sh

FlexFrame Autonomy Power Shutdown Concept

FlexFrame Agents Guide 200

6.3.1.3 Power Shutdown for virtual VM Server

Power shutdown for virtual servers is performed via the VM shutdown script.

The wrapper scripts are: vm_vm_wrapper.sh and vm_hv_wrapper.sh

6.3.1.4 Power Shutdown for other Server (e.g. PrimeQuest PQ2800

Power shutdown for other servers like PrimeQuest PQ2800 is performed via the generic

shutdown script.

The wrapper script is: generic_wrapper.sh

6.3.1.5 Power Shutdown for Host systems of Virtual Servers

The usage of virtual servers on a host system (ESX server) requires the configuration of

the shutdown interface of the host system. The host system can be a blade system or a

rack server, therefore there are different shutdown parameter.

The shutdown parameter of the host systems have to be configured manually, since the

myAMC.FA-App agents cannot provide information about these hostsytems.

The following values must be known for the hostsystem (ESX server):

Hostname: hostname of the host system

If the hostsystem is a bladesystem, additional information is necessary:

MAC address: mac address of the host system

The requirement is that the authentication defaults and the authentication settings (SNMP

community, user name, password) and the management blade are configured correctly.

FlexFrame Autonomy Power Shutdown Concept

201 FlexFrame Agents Guide

6.4 Power Shutdown Configuration

The following sections describe the configuration of the power shutdown. This can also

be done in the myAMC Webinterface.

See Pool-Konfiguration „Shutdown Settings“

For general information about usage and configuring with the myAMC Webinterface

please see section 5.

FlexFrame Autonomy Power Shutdown Concept

FlexFrame Agents Guide 202

6.4.1 Switchover Control Parameters

The normal lapse on breakdown of a node requires the disconnecting of this node to

avoid a disturbance caused by the existence of duplicate services. If it is not possible to

disconnect the node, the move breaks up with a failure notice. The services concerned

are not restarted.

With the help of the parameter IgnoreShutdownFailure, this failure can be influenced

in that, if a shutdown fault occurs, for example because a shutdown parameter was not

configured for a node, the relevant node is separated from the network.

If a node is separated from the network, the network must be reactivated manually. For

this, the following command must be executed on the Control Node before the defective

node is restarted:

ff_sw_ports.pl --op up --name <hostname>

If the network interfaces of the node are not reactivated, it’s not possible to start the node.

See Pool-Konfiguration „Shutdown Settings“ „Shutdown Parameters “.

Description:

FlexFrame Autonomy Power Shutdown Concept

203 FlexFrame Agents Guide

• Default ShutdownMode

Default mode for Shutdown (leave-off / cycle).

• Cycletime

Cycletime (ms) of Shutdown-Facility.

• Execution timeout

Timeout (ms) for the Shutdown-Agents.

• Poweroff try count

Maximum number of PowerOff attempts.

• Renew config cycletime when invalid

Cycletime (ms) to renew invalid Shutdown-configuration.

• Renew config cycletime when valid

Cycletime (ms) to renew valid Shutdown-configuration.

• Resend trap if shutdown valitity is valid

Resend time (s) of the traps for valid Shutdown-configuration.

• Resend trap if shutdown valitity is invalid

Resend time (s) of the traps for invalid Shutdown-configuration.

• SNMP timeout

Timeout (ms) for SNMP-Requests.

• SNMP try count

Number of attempts for SNNMP requests.

• Ignore Shutdown failure

Specifies if a shutdown error should be igoriert.

• PrePoffHookPath

Path to PrePoffHook-Script.

• PostPoffHookPath

Path to PostPoffHook-Script.

• Ignore PrePoffHook failure

Specifies if a PrePoffHook error should be igoriert.

• VMHostPoffCheckPath

Path to VMHostPoffCheck-Script.

• VMHostPoffCheck timeout

Timeout (s) of VMHostPoffCheck-Script.

FlexFrame Autonomy Power Shutdown Concept

FlexFrame Agents Guide 204

6.4.2 User, Password and Community

To use agent power shutdown, user, password and community must be defined in the

configuration of the FA Agent. This configuration is specified in the pool-specific configu-

ration file.

The entries for user and password must be the same as those configured for IPMI (rack

server).

The entries for the community must be the same as those configured in the Management

Blade (blade server).

Further information on the configuration of user, password and community in the Applica-

tion Nodes can be found in the ‘Hardware Characteristics Quickguides for the rack serv-

ers resp. management blades’.

The configuration of default user, password and community can be found in the file my-

AMC_FA_SD_Sec.xml at config section Security_default.

In addition, individual Application Nodes can be defined with other values for user, pass-

word and community. To permit this, a corresponding configuration section must be de-

fined for the Application Node.

See Pool-Konfiguration „Shutdown Settings“ „Authentification Defaults“.

Description:

• SNMP Community

Default SNMP community for SNMP requests.

• User name

Default user name used for Shutdown.

• Password

Default password used for Shutdown.

FlexFrame Autonomy Power Shutdown Concept

205 FlexFrame Agents Guide

See Pool-Konfiguration „Shutdown Settings“ „Authentification Settings“.

Description:

With "Add", a new list item is added.

With "Remove", the selected list entry will be removed.

• Name

Name of ths list entry.

• Hostname

Hostname of the host for this ‘Authentication Settings’.

• SNMP Community

SNMP community for SNMP requests.

• User name

User name used for Shutdown.

• Password

Password used for Shutdown.

FlexFrame Autonomy Power Shutdown Concept

FlexFrame Agents Guide 206

Example file myAMC_FA_SD_Sec.xml:

<!-- DEFAULT entry -->

<configsection name="Security_default">

<configentry name="Default_User">

<value type="String">OEM</value>

</configentry>

<configentry name="Default_Passwort">

<value type="String">password/value>

</configentry>

<configentry name="Default_Community">

<value type="String">public</value>

</configentry>

</configsection>

<!-- first entry -->

<configsection name="Sec_pq28">

<configentry name="Sec_Hostname">

<value type="String">pq28</value>

</configentry>

<configentry name="Sec_User">

<value type="String">Administrator</value>

</configentry>

<configentry name="Sec_Passwort">

<value type="String">passwort</value>

</configentry>

<configentry name="Sec_Community">

<value type="String">public</value>

</configentry>

</configsection>

<!-- second entry -->

<configsection name="Sec_rx600s6">

<configentry name="Sec_Hostname">

<value type="String">rx600s6</value>

</configentry>

<configentry name="Sec_User">

<value type="String">OEM</value>

</configentry>

<configentry name="Sec_Passwort">

<value type="String">password</value>

</configentry>

<configentry name="Sec_Community">

<value type="String">public</value>

</configentry>

</configsection>

FlexFrame Autonomy Power Shutdown Concept

207 FlexFrame Agents Guide

6.4.3 Management Blades

As the Management Blades cannot be detected by the FA CtrlAgent automatically, they

must be configured. This is done in the Managementblades configuration section of the

myAMC_FA.xml configuration file. Further the SNMP community should be configured.

The example below illustrates the configuration of the Management Blade BX900-

control. The name of the configuration section (Mgmt_Blade_1) is arbitrary. A condi-

tion is that this configuration section must be contained within the Managementblades

configuration section. Further Management Blades can be entered using the relevant

configuration sections (see the otherMgmtBlade example).

See Pool-Konfiguration „Shutdown Settings“ „Management blades“.

Description:

With "Add", a new list item is added.

With "Remove", the selected list entry will be removed.

• Name

Name of ths list entry.

• Hostname

Hostname (-co interface) of the management blade of the blade-chassis.

Example from File myAMC_FA.xml:

FlexFrame Autonomy Power Shutdown Concept

FlexFrame Agents Guide 208

<configsection name="Managementblades">

<!-- Here the 'Hostname's of the management-blades must be configured. -->

<!-- first entry -->

<configsection name="MgmtBl_bx900">

<configentry name="Hostname">

<value type="String">bx900-co</value>

</configentry>

</configsection>

<!-- second entry -->

<configsection name="MgmtBl_bx600">

<configentry name="Hostname">

<value type="String">bx600-co</value>

</configentry>

</configsection>

</configsection>

FlexFrame Autonomy Power Shutdown Concept

209 FlexFrame Agents Guide

6.4.4 Application Nodes

Normally the shutdown procedures for all Application Nodes are determined automatical-

ly. However, it may be necessary to configure individual systems for power management

yourself. To permit this, the values required must be entered in the pool-specific configu-

ration file.

See Pool-Konfiguration „Shutdown Settings“ „Individual Nodes“.

Description:

With "Add", a new list item is added.

With "Remove", the selected list entry will be removed.

• Name

Name of ths list entry.

• Hostname

Hostname of the host with indifidual settings.

• IP Address

IP address of the host.

• MAC Address

MAC address of the host.

No ‘:’, to mac’s separated by blank (aabbcc112233 aabbcc112233)

• Machine

Machine (empty).

• Port

Port (empty).

• ShutdownMode

Mode for Shutdown (leave-off / cycle).

• Shutdown typ

Type of Shutdown (FA_BLADE, FA_IPMI, FA_GENERIC, …).

FlexFrame Autonomy Power Shutdown Concept

FlexFrame Agents Guide 210

• Hardware type

Hardware type (LINUX, UNKNOWN).

• Console

Console (empty).

Which values must be specified for which power shutdown type is shown in the table

below.

In this table there are some shutdown types resp. server types which are not supported in

the actual FlexFrame Release. For compatibility, they are included in FA-Agents and will

be documented here.

Yes Must be specified.

No Can be left empty. configentry is mandatory, however!

Default (Def) Is read from the Security_default or

Default_ShutdownMode configuration section if it is empty. If a value

is entered, it overrides the default value.

Table see next page:

(for the up-to-date types of server models see FlexFrame Support-Matrix)

FlexFrame Autonomy Power Shutdown Concept

211 FlexFrame Agents Guide

Linux Linux Linux Linux ESX ESX

Value BLADE IPMI VM BLADE IPMI

Server

type

BX600

BX900

RX300Sn

RX600Sn

PQ2800B ESXVM

BX600

BX900

RX300Sn

RX600Sn

Host

name Yes Yes Yes Yes Yes Yes

Shutdown

type FA_BLADE FA_IPMI FA_GENERIC FA_VM FA_BLADE FA_IPMI

MAC

address Yes No No No Yes No

Manage-

ment

Blade IP

No No No No No No

Hardware No No No No No No

Shutdown

mode Yes/Def. Yes/Def. Yes/Def.

Yes/Def

. Yes/Def. Yes/Def.

IP ad-

dress

(Control

LAN)

No No No No No No

Console No No No No No No

Machine No No No No No No

Port No No No No No No

SNMP

communi-

ty

Yes/Def. No No Yes/Def

. Yes/Def. No

User No Yes/Def. Yes/Def. Yes/Def

. Yes/Def. Yes/Def.

Password No Yes/Def. Yes/Def. Yes/Def

. Yes/Def. Yes/Def.

FlexFrame Autonomy Power Shutdown Concept

FlexFrame Agents Guide 212

6.4.4.1 Configuration of Hypervisor

The shutdown methods are usually found out automatically for all application nodes. On

the Application Nodes there is running an FA-App agent, which determines some values

required for shutdown facility (e.g. MAC-Addr of a blade).

Hint:

MAC address (2 macs separated by blank) Format: aabbcc112233 aabbcc112233

No AppAgent runs on an Hypervisor and the automatic determination of some values

can’t be done.

For this reason the Hypervisor must be configured manually.

Prerequisite for the configuration is, that the "Authentication Defauls" and "Authentication

setting" (SNMP-Community, user, PW) as well as the "management blades" are config-

ured correctly.

The configuration of the Hypervisor will be done in the pool configuration.

See Pool-Konfiguration „Shutdown Settings“ „Individual Nodes“.

FlexFrame Autonomy Power Shutdown Concept

213 FlexFrame Agents Guide

6.4.4.2 Example for configuration of a node from file myAMC_FA.xml

<!-- 2. entry -->

<configsection name="ddc1esx1">

<configentry name="Hostname">

<value type="String">ddc1esx1</value>

</configentry>

<configentry name="ShutdownTyp">

<value type="String">FA_BLADE</value>

</configentry>

<configentry name="MacAddress">

<value type="String">0016363fcc08 0016363fcc0a</value>

</configentry>

<configentry name="Hardware">

<value type="String">LINUX</value>

</configentry>

<configentry name="ShutdownMode">

<value type="String">leave-off</value>

</configentry>

<configentry name="IP_Address">

<value type="String"></value>

</configentry>

<configentry name="Slot">

<value type="String"></value>

</configentry>

<configentry name="MgmtBladeIp">

<value type="String"></value>

</configentry>

<configentry name="Console">

<value type="String"></value>

</configentry>

<configentry name="Machine">

<value type="String"></value>

</configentry>

<configentry name="Port">

<value type="UnsignedInteger"></value>

</configentry>

</configsection>

FlexFrame Autonomy Power Shutdown Concept

FlexFrame Agents Guide 214

6.4.5 Default Shutdown Mode

A default shutdown mode is defined for the power shutdown. This can be changed by the

configuration entry ShutdownMode.

The possible values are cycle or leave-off.

See Pool-Konfiguration „Shutdown Settings“ „Shutdown Parameters“.--> “De-

fault Shutdown mode”.

You are advised not to change the default shutdown mode so as to guarantee that Appli-

cation Nodes are shut down securely.

<configentry name="Default_ShutdownMode">

<value type="String">leave-off</value>

</configentry>

6.4.6 Management blades with SNMP-community different from default

For management bades with a SNMP community different from default the authentica-

tionn settings ‚comunity‘, ‚user‘, ‚pasword‘ must be explicitly configured at „Authentica-

tion Settings“.

This is independent from the discosure of the management blade in menu „Management

Blades“.

FlexFrame Autonomy Power Shutdown Concept

215 FlexFrame Agents Guide

6.5 Possible Errormessages with old Configuration

The shutdown methods which are not supported in FF5.1A are removed from configura-

tion.

When running with old config you can ignore hourly messages in

/opt/local/myAMC/vFF/vFF_<pool>/log/CtrlAgt/log_user_cn1.log like:

2012-02-27 07:48:16; 1330325296; KEY_CRITICAL ; cn1-a; LogEx-

tern(); LogEx-Severity = '13' ==> log_key = '1', Fkt = 'CSHUT-

Down::WriteIpmiCfg', text = 'file /etc/opt/SMAW/SMAWsf/SA_ipmi.cfg

can not been opened for writing'.

These messages may be ignored and have no effect to the functionality.

If the customer wants to remove the old shutdown methods from existing pools there may

be changes in the pool specific configuration as follows:

To obtain the changes for existing pools in GUI, the file 'config-specs.xml' must

be copied from template-config to pool-config.

See in template:

/opt/myAMC/vFF/Common/.vFF_template.V90A00K21/config/config-specs.xml

The whole configsection ‘ <configsection name="Shutdown_Facility">’ in file

myAMC_FA.xml may be changed to that from template.

See in template:

/opt/myAMC/vFF/Common/.vFF_template.V90A00K21/config/myAMC_FA.xml

part ‘ <configsection name="Shutdown_Facility">’.

The Versionstring in path of template („V90A00K21“) is only an example. Just use the

newest version.

217 FlexFrame Agents Guide

7 Parameter Reference

7.1 FA Agents

Operation of the FA Agents does not necessarily require individual parameterization.

After installation executable parameter files are available. For productive use, the values

must have been tested and, if necessary, adjusted to the requirements and the start,

stop, ping and restart times called for in the customer system for the services monitored

in myAMC.FA.

The monitoring of additional services which are not included in the standard rules is per-

formed in the rule file myAMC.FA_Rules.xml.

The default parameters of the FA Agents are set such that, when the performance and

accounting option is activated, no changes to the parameter settings are necessary.

7.1.1 FA Agent Configuration Files

The configuration of FlexFrame Autonomy is stored in several configuration files that can be found in /opt/myAMC/vFF/vFF_<poolname>/config. The files are in XML format.

TrapTargets.xml

Trap targets (pool-specific). The recipients of SNMP trap messages can be defined.

myAMC_FA.xml

FA Autonomy (pool-specific). Settings for autonomous reactions.

myAMC_FA_Checks.xml

Configuration of SpaceUtil-functionality..

myAMC_FA_Groups.xml

Groups (pool-specific). The group memberships are configured.

It is used as LDAP cache.

myAMC_FA_Hosts.xml

Hosts (pool-specific). The host configuration is configured.

Generated from script ‚fa_createHostFileFromLDAP.sh’.

It is used as LDAP cache.

myAMC_FA_Rules.xml

Generic service configuration

myAMC_FA_SD_Sec.xml

FA Shutdown Security (pool-specific). Settings for the Power-Shutdown.

myAMC_FA_SelectionRules.xml

Definition of the „SelectionRules“ for „Pool independent spare node“.

Parameter Reference

FlexFrame Agents Guide 218

For most configuration files, there is an additional default file named

<filename>-default.xml which contains the as-supplied status is available after

installation. The myAMC_FA_default.xml file is an exact copy of myAMC_FA.xml in its

original state.

7.2 SNMP Traps

7.2.1 General

The TrapTargets.xml file contains all the information which is needed to send SNMP

traps. Two parameters are required for each target:

Host name or IP address

SNMP community

The community corresponds roughly to a password. Mostly the default value public

suffices. For FlexFrame at least the two Control Nodes have to be set as trap targets.

7.2.2 Structure

The file is in XML format and has the following structure:

<?xml version="1.0" encoding="ISO-8859-1"?>

<configuration>

<configsection name="SnmpConnector">

<configsection name="TrapSender">

<configsection name="TrapTargets">

<!-- List of trap targets. For each host/community combination

to send traps to a config section containing the two config

entries Host and Community has to exist -->

<!-- first trap target -->

<configsection name="control1">

<!—- host name of ip address or name of host to send SNMP trap to -->

<configentry name="Host">

<value type="String">control1</value>

</configentry>

<!-- community string to use for a SNMP trap -->

<configentry name="Community">

<value type="String">public</value>

</configentry>

</configsection>

</configsection>

</configsection>

</configsection>

Parameter Reference

219 FlexFrame Agents Guide

</configuration>

The name or IP address of the node which is to receive the traps is specified as the value of the parameter Host (<configentry name="Host">), the SNMP community as the

value of the parameter Community (<configentry name="Community">).

A trap can be sent to any number of targets. If further targets are to be defined, the en-

closing ConfigSection must be copied, renamed and adapted accordingly.

Example:

[header, see above]

<!-- first trap target -->

<configsection name="control1">

<!-- host name of ip address or name of host to send SNMP trap to -->

<configentry name="Host">

<value type="String">control1</value>

</configentry>

<!-- community string to use for a SNMP trap -->

<configentry name="Community">

<value type="String">public</value>

</configentry>

</configsection>

<!-- second trap target -->

<configsection name="control2">

<!-- host name of ip address or name of host to send SNMP trap to -->

<configentry name="Host">

<value type="String">control2</value>

</configentry>

<!-- community string to use for a SNMP trap -->

<configentry name="Community">

<value type="String">public</value>

</configentry>

</configsection>

<!-- next trap target goes here -->

[footer, see above]

Parameter Reference

FlexFrame Agents Guide 220

7.2.3 Default Parameter File

<?xml version="1.0" encoding="ISO-8859-1"?>

<configuration>

<configsection name="SnmpConnector">

<configsection name="TrapSender">

<configsection name="TrapTargets">

<!-- List of trap targets. For each host/community combination

to send traps to a config section containing the two config

entries Host and Community has to exist -->

<!-- first trap target -->

<configsection name="control1">

<!-- host name of ip address or name of host to send SNMP trap to -->

<configentry name="Host">

<value type="String">control1</value>

</configentry>

<!-- community string to use for a SNMP trap -->

<configentry name="Community">

<value type="String">public</value>

</configentry>

</configsection>

<!-- second trap target -->

<configsection name="control2">

<!-- host name of ip address or name of host to send SNMP trap to -->

<configentry name="Host">

<value type="String">control2</value>

</configentry>

<!-- community string to use for a SNMP trap -->

<configentry name="Community">

<value type="String">public</value>

</configentry>

</configsection>

<!-- next trap target goes here -->

</configsection>

</configsection>

</configsection>

</configuration>

Parameter Reference

221 FlexFrame Agents Guide

7.3 Pooling and Grouping

7.3.1 Pooling

Pool creation means the flexible assignment of Application Nodes to a pool. The Flex-

Frame Autonomy Agents take over the pool information from the FlexFrame configuration

in the LDAP.

When an Application Node is restarted, a start script for the FA Agents is called. This

start script determines the pool to which this Application Node belongs and starts the

FA_AppAgent accordingly.

7.3.2 Grouping

FlexFrame offers grouping functions for flexible server farming. Grouping enables nodes

and services within a pool to be assigned to different groups. A group is therefore always

a part of a virtual FlexFrame pool.

FlexFrame Autonomy grouping is a function which is configured via LDAP. Individual

parameterization is not required for the Autonomy Agents.

The Groups configuration will be read from LDAP during start of FA-Agents and be stored

in the myAMC_FA_Groups.xml file. It is used as LDAP cache.

An absolute group configuration can be implemented in this file, as in the LDAP configu-

ration. However, generic parameterization is also possible as an alternative. This can

also be used if absolute grouping is not to be used via the LDAP.

7.3.2.1 LDAP Grouping

LDAP grouping is performed in conjunction with the general configuration of the nodes in

the LDAP directory. Here the FlexFrame Autonomy Agents take over the group infor-

mation from the LDAP directory at startup, as they do the pool information. Individual

group configuration in the myAMC_FA_Groups.xml file is thus no longer required.

7.3.2.1.1 Manual Group Assignment

The group assignment is entered manually in the configuration file.

7.3.2.1.2 Example

<gr:group schema="default" name="GR_All">

<gr:description></gr:description>

<match category="${node-hostname}">

<value>vade*</value>

<value>yod*</value>

<value>blade_a*</value>

<value>blade_b*</value>

Parameter Reference

FlexFrame Agents Guide 222

<value>server*</value>

</match>

</gr:group>

<gr:group schema="default_OS" name="GR_Solaris">

<gr:description></gr:description>

<match category="${node-hostname}">

<value>vade*</value>

<value>blade_sol*</value>

<value>server*</value>

</match>

</gr:group>

7.3.2.2 Generic Grouping

Generic group creation is implemented on the basis of generic information which the

Application Agents can obtain automatically. For generic group creation it makes sense to

use the host names, the IP addresses or the operating system employed.

The group name is also created generically. For this purpose each schema is assigned a

group naming rule which combines a fixed component with a variable component.

The following base values are available for creating the generic rules:

Operating system (os)

Network (network)

Number of CPUs (cpu)

The following generic group creation rules result:

Group definition by operating system, network and number of CPUs schema="os_network_cpu"

name="AutoGroup_${OS-typ}_${CPU-cnt}cpu_${ip-adr:netmask=/24}"

Group definition by operating system and number of CPUs schema="os_cpu"

name="AutoGroup_${OS-typ}_${CPU-cnt}cpu"

Group definition by operating system and network schema="os_network"

name="AutoGroup_${OS-typ}_${ip-adr:netmask=/24}"

Group definition by network and number of CPUs schema="network_cpu"

name="AutoGroup_${CPU-cnt}cpu_${ip-adr:netmask=/24}"

Group definition by operating system schema="os"

name="AutoGroup_${OS-typ}"

Parameter Reference

223 FlexFrame Agents Guide

Group definition by network schema="network"

name="AutoGroup_${ip-adr:netmask=/24}"

Group definition by number of CPUs schema="cpu"

name="AutoGroup_${CPU-cnt}cpu"

The parameters are combined via a group schema. The parameters for multiple group

schemas can thus be stored in one myAMC_FA_Groups.xml file. A schema is activated

in myAMC_FA.xml.

7.3.2.2.1 Logical operation

The following logical operations are possible:

OR (through multiple value lines within a match condition)

<match category="${node-hostname}">

<value>vade*</value>

<value>yod*</value>

<value>blade_a*</value>

<value>blade_b*</value>

<value>server*</value>

</match>

AND (through multiple match conditions within a group definition)

<match category="${node-powervalue}">

<value>1000</value>

</match>

<match category="${node-hostname}">

<value>blade_a*</value>

<value>blade_b*</value>

<value>server*</value>

</match>

7.3.2.2.2 Wildcards

The following wildcards can be used:

* “*“ is equivalent to any number of arbitrary characters.

? “?“is equivalent to one arbitrary character.

7.3.2.2.3 Min / Max values

For numeric variables, the following syntax can be used to inquire value ranges:

syntax="min" (in this case a variable is used as a minimum)

Parameter Reference

FlexFrame Agents Guide 224

<match category="${CPU-cnt}" syntax="min">

<value>4</value>

</match>

syntax="max" (in this case a variable is used as a maximum)

<match category="${ip-adr}" syntax="max">

<value>192.168.10.21</value>

</match>

7.3.2.2.4 Masking with IP addresses

With IP addresses, a type of masking similar to the netmask can be used in order to se-

lect network segments:

${ip-adr:netmask=/24} (in this case only the first 24 bits of the IP address are tak-

en into account)

<match category="${ip-adr:netmask=/24}">

<value>192.168.10.0</value>

</match>

7.3.2.2.5 Example

<!-- auto groups -->

<!—

DO NOT EDIT !!!

If you need your own group definition, please use the section

before !!!

-->

<gr:group schema="os_network_cpu" name="AutoGroup_${OS-typ}_

${CPU-cnt}cpu_${ip-adr:netmask=/24}">

<gr:description>Group defined by number of CPUs, network and

operating system</gr:description>

</gr:group>

<gr:group schema="os_cpu" name="AutoGroup_${OS-typ}_${CPU-cnt}cpu">

<gr:description>Group defined by number of CPUs and operating

system</gr:description>

</gr:group>

<gr:group schema="os_network" name="AutoGroup_${OS-typ}_

${ip-adr:netmask=/24}">

<gr:description>Group defined by number of CPUs and

network</gr:description>

</gr:group>

<gr:group schema="network_cpu" name="AutoGroup_${CPU-cnt}cpu_

${ip-adr:netmask=/24}">

<gr:description>Group defined by number of CPUs</gr:description>

Parameter Reference

225 FlexFrame Agents Guide

</gr:group>

<gr:group schema="os" name="AutoGroup_${OS-typ}">

<gr:description>Group defined by operating system</gr:description>

</gr:group>

<gr:group schema="network" name="AutoGroup_${ip-adr:netmask=/24}">

<gr:description>Group defined by network</gr:description>

</gr:group>

<gr:group schema="cpu" name="AutoGroup_${CPU-cnt}cpu">

<gr:description>Group defined by number of CPUs</gr:description>

</gr:group>

Parameter Reference

FlexFrame Agents Guide 226

7.3.3 Default Parameter File

Hint:

As default there is a "service-powervalue" of 100000 for some services (DBORA,

DBSAP, DB2, CI, JC, J, LC, APP, and unknown Service-Types) for safety.

A DB (and services-types above) should not be added with add-rule to a node with other

services, cause it may have too much load.

This may be changed for customer needs.

<?xml version="1.0" encoding="ISO-8859-1"?>

<!-- @@@MYAMC.VERSION@@@ 9.0-23 -->

<defs:definitions

xmlns:defs="myAMC/Definitions/1.0"

xmlns:gr="myAMC/Groups/1.0"

xmlns:attr="myAMC/Attribute/1.0">

<gr:services>

<!--

"service schema" is specified in myAMC_FA.xml

allowed categories:

"system-id" ("P46", "O20", ...)

"service-type" ("SRV_DBORA", "SRV_SAPSYBASE",

"SRV_DBSAP", "SRV_DB2", "SRV_APP", "SRV_CI",

"SRV_SCS", "SRV_ASCS", "SRV_JC",

"SRV_J", "SRV_LC",

"SRV_ERS", SRV_MDS, SRV_MDIS, SRV_MDSS,

SRV_MDS71, SRV_MDIS71, SRV_MDSS71,

"SRV_XPR", ...)

"service-id" ("00", ...)

...

The lowest Service-priority you may use is '9999' (As default a

SpareNode has a prio of '10000').

-->

<!-- Anfang: ServiceSchema default_trivial -->

<gr:service schema="default_trivial" name="Default">

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="1"/>

<attr:attribute name="service-powervalue" value="2201"/>

</gr:service>

<!-- Ende: ServiceSchema default_trivial -->

<!-- Anfang: ServiceSchema default -->

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_DBORA</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="2"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

Parameter Reference

227 FlexFrame Agents Guide

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_SAPSYBASE</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="2"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_DBSAP</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="2"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_DB2</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="2"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_SCS</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="3"/>

<attr:attribute name="service-powervalue" value="0"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_ASCS</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="3"/>

<attr:attribute name="service-powervalue" value="0"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_CI</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="4"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_JC</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="5"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

Parameter Reference

FlexFrame Agents Guide 228

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_J</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="6"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_LC</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="6"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_APP</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="7"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_ERS</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="8"/>

<attr:attribute name="service-powervalue" value="0"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_MDS71</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="9"/>

<attr:attribute name="service-powervalue" value="0"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_MDIS71</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="9"/>

<attr:attribute name="service-powervalue" value="0"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_MDSS71</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="9"/>

<attr:attribute name="service-powervalue" value="0"/>

Parameter Reference

229 FlexFrame Agents Guide

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_XPR</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="9"/>

<attr:attribute name="service-powervalue" value="0"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_CMS</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="2"/>

<attr:attribute name="service-powervalue" value="0"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_TRX</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="10"/>

<attr:attribute name="service-powervalue" value="0"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_BOE4</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="2"/>

<attr:attribute name="service-powervalue" value="0"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_BOE_SRV</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="2"/>

<attr:attribute name="service-powervalue" value="0"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_SMD</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="8"/>

<attr:attribute name="service-powervalue" value="0"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_PAI</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="4"/>

Parameter Reference

FlexFrame Agents Guide 230

<attr:attribute name="service-powervalue" value="0"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_VMWARE</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="2"/>

<attr:attribute name="service-powervalue" value="0"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_ORACLE_RAC_CRS</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="2"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_ORACLE_RAC_DB</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="2"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_CTM</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="2"/>

<attr:attribute name="service-powervalue" value="0"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_WEBDISP</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="9"/>

<attr:attribute name="service-powervalue" value="0"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_SMD73</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="8"/>

<attr:attribute name="service-powervalue" value="0"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>SRV_HANA</value>

</match>

<!-- attributes for selected services -->

Parameter Reference

231 FlexFrame Agents Guide

<attr:attribute name="service-priority" value="2"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>*</value>

</match>

<match category="${system-id}">

<value>*</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="998"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<!-- Ende: ServiceSchema default -->

<!-- Anfang: ServiceSchema Example_service_type -->

<gr:service schema="Example_service_type" name="Service_${service-

type}">

<match category="${service-type}">

<value>SRV_DBORA</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="1"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_service_type" name="Service_${service-

type}">

<match category="${service-type}">

<value>SRV_CI</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="3"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_service_type" name="Service_${service-

type}">

<match category="${service-type}">

<value>SRV_APP</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="6"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<!--

...

-->

<gr:service schema="Example_service_type" name="other">

<match category="${service-type}">

<value>*</value>

</match>

<match category="${system-id}">

<value>*</value>

</match>

Parameter Reference

FlexFrame Agents Guide 232

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="998"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<!-- Ende: ServiceSchema Example_service_type -->

<!-- Anfang: ServiceSchema static -->

<gr:service schema="Example_static" name="ProdDB">

<gr:description></gr:description>

<match category="${system-id}">

<value>P*</value>

</match>

<match category="${service-type}">

<value>SRV_DBORA</value>

<value>SRV_SAPSYBASE</value>

<value>SRV_DBSAP</value>

<value>SRV_DB2</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="1"/>

<attr:attribute name="service-powervalue" value="1000"/>

</gr:service>

<!-- Ende: ServiceSchema static -->

<!-- Anfang: ServiceSchema Example_Customer -->

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_APP</value>

</match>

<match category="${system-id}">

<value>PRE</value>

</match>

<match category="${service-id}">

<value>24</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="37"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_APP</value>

</match>

<match category="${system-id}">

<value>PRE</value>

</match>

<match category="${service-id}">

<value>26</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="37"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

Parameter Reference

233 FlexFrame Agents Guide

<value>SRV_DB*</value>

</match>

<match category="${system-id}">

<value>PPI</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="12"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_CI</value>

</match>

<match category="${system-id}">

<value>PPI</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="14"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_SCS</value>

</match>

<match category="${system-id}">

<value>PPI</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="13"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_APP</value>

</match>

<match category="${system-id}">

<value>PRE</value>

</match>

<match category="${service-id}">

<value>27</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="37"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_DB*</value>

</match>

<match category="${system-id}">

<value>PBW</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="12"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

Parameter Reference

FlexFrame Agents Guide 234

<match category="${service-type}">

<value>SRV_CI</value>

</match>

<match category="${system-id}">

<value>PBW</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="14"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_SCS</value>

</match>

<match category="${system-id}">

<value>PBW</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="13"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_DB*</value>

</match>

<match category="${system-id}">

<value>PRE</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="12"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_CI</value>

</match>

<match category="${system-id}">

<value>PRE</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="14"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_DB*</value>

</match>

<match category="${system-id}">

<value>P10</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="22"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_CI</value>

Parameter Reference

235 FlexFrame Agents Guide

</match>

<match category="${system-id}">

<value>P10</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="24"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_DB*</value>

</match>

<match category="${system-id}">

<value>PSM</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="52"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_CI</value>

</match>

<match category="${system-id}">

<value>PSM</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="54"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_SCS</value>

</match>

<match category="${system-id}">

<value>PSM</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="53"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_APP</value>

</match>

<match category="${system-id}">

<value>PBW</value>

</match>

<match category="${service-id}">

<value>28</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="47"/>

<attr:attribute name="service-powervalue" value="100000"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

Parameter Reference

FlexFrame Agents Guide 236

<value>SRV_DB*</value>

</match>

<match category="${system-id}">

<value>QRE</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="102"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_CI</value>

</match>

<match category="${system-id}">

<value>QRE</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="104"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_DB*</value>

</match>

<match category="${system-id}">

<value>TRE</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="102"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_CI</value>

</match>

<match category="${system-id}">

<value>TRE</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="104"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_DB*</value>

</match>

<match category="${system-id}">

<value>Q10</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="102"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_CI</value>

</match>

Parameter Reference

237 FlexFrame Agents Guide

<match category="${system-id}">

<value>Q10</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="104"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_DB*</value>

</match>

<match category="${system-id}">

<value>T10</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="102"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_CI</value>

</match>

<match category="${system-id}">

<value>T10</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="104"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_DB*</value>

</match>

<match category="${system-id}">

<value>QBW</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="102"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_CI</value>

</match>

<match category="${system-id}">

<value>QBW</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="104"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_SCS</value>

</match>

<match category="${system-id}">

<value>QBW</value>

Parameter Reference

FlexFrame Agents Guide 238

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="103"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_DB*</value>

</match>

<match category="${system-id}">

<value>TBW</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="102"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_CI</value>

</match>

<match category="${system-id}">

<value>TBW</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="104"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_SCS</value>

</match>

<match category="${system-id}">

<value>TBW</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="103"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_DB*</value>

</match>

<match category="${system-id}">

<value>QPI</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="102"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_CI</value>

</match>

<match category="${system-id}">

<value>QPI</value>

</match>

<!-- attributes for selected services -->

Parameter Reference

239 FlexFrame Agents Guide

<attr:attribute name="service-priority" value="104"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_SCS</value>

</match>

<match category="${system-id}">

<value>QPI</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="103"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_DB*</value>

</match>

<match category="${system-id}">

<value>TPI</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="102"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_CI</value>

</match>

<match category="${system-id}">

<value>TPI</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="104"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>SRV_SCS</value>

</match>

<match category="${system-id}">

<value>TPI</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="103"/>

<attr:attribute name="service-powervalue" value="100"/>

</gr:service>

<gr:service schema="Example_Customer" name="Example_Customer">

<match category="${service-type}">

<value>*</value>

</match>

<match category="${system-id}">

<value>*</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="998"/>

<attr:attribute name="service-powervalue" value="100000"/>

Parameter Reference

FlexFrame Agents Guide 240

</gr:service>

<!-- Ende: ServiceSchema Example_Customer -->

</gr:services>

<!-- ********************************************************** -->

<!-- ********************************************************** -->

<!-- ********************************************************** -->

<gr:groups>

<!--

"group schema" is specified in myAMC_FA.xml

allowed categories:

"hostname" ("vader", ...)

"ip-adr" ("192.168.1.47", ...)

"OS-typ" ("SunOS", ...)

"OS-version" ("5.8", "SuSE SLES-8

(i386); VERSION = 8.1", ...)

"OS-bits" (for future use)

"CPU-arch" ("sun4u", ...)

"CPU-cnt-siblings" ("2")

(min-, max-)

"CPU-cnt-core" ("2")

(min-, max-)

"CPU-cnt-phys" ("2")

(min-, max-)

"CPU-frequency(MHz)" ("333")

(min-, max-)

"cache-size(kB)" ("2048") (min-,

max-)

"mem-total(MB)" ("1024")

(min-, max-)

"node-hostname" ("vader", ...)

"node-product-name" ("SUNW,Ultra-5_10", ...)

"node-vendor" ("Sun_Microsystems", ...)

"node-powervalue" ("1000")

(min-, max-)

-->

<!-- ********************************************************** -->

<!-- ********************************************************** -->

<!--

-->

<gr:group schema="default" name="GR_All">

<gr:description></gr:description>

<match category="${node-hostname}">

<value>vade*</value>

<value>yod*</value>

<value>blade_a*</value>

<value>blade_b*</value>

<value>server*</value>

</match>

</gr:group>

<gr:group schema="default_LDAP" name="LD_Solaris_8">

Parameter Reference

241 FlexFrame Agents Guide

<gr:description></gr:description>

<match category="${OS-version}">

<value>5.8</value>

</match>

</gr:group>

<gr:group schema="default_LDAP" name="LD_SLES_8">

<gr:description></gr:description>

<match category="${OS-version}">

<value>SuSE SLES-8*</value>

</match>

</gr:group>

<gr:group schema="default_LDAP" name="LD_Solaris_9">

<gr:description></gr:description>

<match category="${OS-version}">

<value>5.9</value>

</match>

</gr:group>

<gr:group schema="default_LDAP" name="LD_SLES_9">

<gr:description></gr:description>

<match category="${OS-version}">

<value>*SUSE LINUX Enterprise Server 9*</value>

</match>

</gr:group>

<gr:group schema="default_OS" name="Solaris_8">

<gr:description></gr:description>

<match category="${OS-version}">

<value>5.8</value>

</match>

</gr:group>

<gr:group schema="default_OS" name="SLES_8">

<gr:description></gr:description>

<match category="${OS-version}">

<value>SuSE SLES-8*</value>

</match>

</gr:group>

<gr:group schema="default_OS" name="Solaris_9">

<gr:description></gr:description>

<match category="${OS-version}">

<value>5.9</value>

</match>

</gr:group>

<gr:group schema="default_OS" name="SLES_9">

<gr:description></gr:description>

<match category="${OS-version}">

<value>*SUSE LINUX Enterprise Server 9*</value>

</match>

</gr:group>

<gr:group schema="BSP_OStyp_1" name="BSP_GR_default_${OS-typ}">

<gr:description></gr:description>

<match category="${OS-typ}">

Parameter Reference

FlexFrame Agents Guide 242

<value>${OS-typ}</value>

</match>

<match category="${CPU-cnt-phys}" syntax="min">

<value>0</value>

</match>

<match category="${mem-total(MB)}" syntax="min">

<value>20</value>

</match>

<match category="${ip-adr:netmask=/24}">

<value>158.92.4.0</value>

</match>

<match category="${node-powervalue}" syntax="min">

<value>0</value>

</match>

<match category="${node-hostname}">

<value>vade*</value>

<value>blade_a*</value>

<value>blade_b*</value>

<value>server*</value>

</match>

</gr:group>

<gr:group schema="BSP_static_1" name="BSP_MyCompany_${OS-typ}">

<gr:description></gr:description>

<match category="${OS-typ}">

<value>${OS-typ}</value>

</match>

<match category="${CPU-cnt-phys}" syntax="min">

<value>4</value>

</match>

<match category="${mem-total(MB)}" syntax="min">

<value>4000</value>

</match>

<match category="${ip-adr:netmask=/24}">

<value>192.168.10.0</value>

</match>

<match category="${node-powervalue}">

<value>1000</value>

</match>

<match category="${node-hostname}">

<value>blade_a*</value>

<value>blade_b*</value>

<value>server*</value>

</match>

</gr:group>

<gr:group schema="BSP_static_2" name="BSP_MyCompany">

<gr:description></gr:description>

<match category="${CPU-cnt-phys}" syntax="max">

<value>2</value>

</match>

<match category="${ip-adr:netmask=/24}">

<value>192.168.10.0</value>

</match>

<match category="${node-powervalue}">

<value>1000</value>

</match>

<match category="${node-hostname}">

Parameter Reference

243 FlexFrame Agents Guide

<value>blade_a*</value>

<value>blade_b*</value>

<value>server*</value>

</match>

</gr:group>

<gr:group schema="BSP_static_3" name="BSP_3">

<gr:description></gr:description>

<match category="${ip-adr}" syntax="min">

<value>192.168.10.17</value>

</match>

<match category="${ip-adr}" syntax="max">

<value>192.168.10.21</value>

</match>

<match category="${node-powervalue}">

<value>1000</value>

</match>

<match category="${node-hostname}">

<value>vad*</value>

<value>blade_a*</value>

<value>blade_b*</value>

<value>server*</value>

</match>

</gr:group>

<!-- ********************************************************** -->

<!-- ********************************************************** -->

<!-- auto groups -->

<!--

DO NOT EDIT !!!

If you need your own group definition, please use the

section befor !!!

-->

<gr:group schema="os_network_cpu" name="AutoGroup_${OS-typ}_${CPU-

cnt-phys}cpu_${ip-adr:netmask=/24}">

<gr:description>Group defined by number of CPUs, network and

operating system</gr:description>

</gr:group>

<gr:group schema="os_cpu" name="AutoGroup_${OS-typ}_${CPU-cnt-

phys}cpu">

<gr:description>Group defined by number of CPUs and

operating system</gr:description>

</gr:group>

<gr:group schema="os_network" name="AutoGroup_${OS-typ}_${ip-

adr:netmask=/24}">

<gr:description>Group defined by number of CPUs and

network</gr:description>

</gr:group>

<gr:group schema="network_cpu" name="AutoGroup_${CPU-cnt-

phys}cpu_${ip-adr:netmask=/24}">

<gr:description>Group defined by number of

CPUs</gr:description>

</gr:group>

Parameter Reference

FlexFrame Agents Guide 244

<gr:group schema="os" name="AutoGroup_${OS-typ}">

<gr:description>Group defined by operating

system</gr:description>

</gr:group>

<gr:group schema="network" name="AutoGroup_${ip-adr:netmask=/24}">

<gr:description>Group defined by network</gr:description>

</gr:group>

<gr:group schema="cpu" name="AutoGroup_${CPU-cnt-phys}cpu">

<gr:description>Group defined by number of

CPUs</gr:description>

</gr:group>

<!-- ********************************************************** -->

</gr:groups>

</defs:definitions>

Parameter Reference

245 FlexFrame Agents Guide

7.4 Service Classes

The service classes are defined and parameterized in the group configuration file (my-

AMC_FA_Groups.xml) of a virtual FlexFrame pool.

A sevice class is defined by the following variables:

"system-id" ("P46", "O20", ...)

"service-type" ("db", "app", "ci", ...)

"service-id" ("00", ...)

The attributes service-priority and service-powervalue are defined in accord-

ance with these variables.

In the future it will be possible to extend such a service class by further attributes which,

for example, define the operating system required by a service or the number of

CPUs/performance requirement of the service.

7.4.1 Service Priority

The highest service priority is 1. Every service is assigned this priority by default, i.e. if no

service classes are defined, all services have the priority 1. The higher the number, the

lower the priority of a service.

Priority 0 has a special status. Setting priority 0 for a service class enables the autono-

mous functions to be disabled for a service.

The service priority is evaluated for all autonomous reactions. If, for example, a service of

a productive system and a service of a test system are running on the same node and the

test system’s service is assigned priority 5, this service is not executed because the pro-

ductive system’s service which is functioning without error has the higher priority of 1.

7.4.2 Service Power Value

The service power value specifies for a service a performance number which defines the

maximum performance (SAPS) required by this service. This is provided for future en-

hancements in the field of “load distribution and load transfer“.

A failed service with a performance value of 50 can, for example, also be taken over by a

node which still has at least 50 of its maximum performance number free.

7.4.3 Class Creation Rules

A service belongs either to the default class which always exists or it can be assigned

unambiguously to another class by evaluating the aforementioned variables.

7.4.4 Example

<gr:services>

Parameter Reference

FlexFrame Agents Guide 246

<!—

"service schema" is specified in myAMC_FA.xml

allowed categories:

"system-id" ("P46", "O20", ...)

"service-type" ("db", "app", "ci", ...)

"service-id" ("00", ...)

...

-->

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>DB</value>

<value>db</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="2"/>

<attr:attribute name="service-powervalue" value="2202"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>CI</value>

<value>ci</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="3"/>

<attr:attribute name="service-powervalue" value="2203"/>

</gr:service>

<gr:service schema="default" name="Default">

<match category="${service-type}">

<value>APP</value>

<value>app</value>

</match>

<!-- attributes for selected services -->

<attr:attribute name="service-priority" value="4"/>

<attr:attribute name="service-powervalue" value="2204"/>

</gr:service>

... ...

7.5 FlexFrame Autonomy

The base parameterization is always required.

The parameterization is organized hierarchically, i.e. information can be configured iden-

tically for all services or specifically for individual services.

myAMC_FA.xml

The information to be configured relates to the following components:

Parameter Reference

247 FlexFrame Agents Guide

General parameters

Parameters for the Performance and Accounting option

Node-related parameters

Service-related parameters

Path configurations

7.5.1 General Parameters

CheckCycleTime

Defines the cycles in which the detector modules supply results and the rule modules

evaluate the status derived from these. The parameter value may not be less than

the minimum processing time which the detector modules, rule modules and reaction

modules require to process a cycle. The default value in the as-supplied status is 10

seconds. The parameter value must also always be at least 1/3 of the lifetime of the

MonitorAlerts. In the FlexFrame standard installation the lifetime of the MonitorAlerts

is 30 seconds.

LivelistWriterTime

Defines the intervals at which the FA Agents must generate a Livelist. It is specified

in seconds.

ControlAgentTime

Specifies how often the Control Agent checks the Livelists of the Application Agents.

The parameter should thus be about the same as the LiveListWriterTime.

MaxHeartbeatTime

Specifies the maximum time which may elapse between two Livelist entries of an

Application Agent before the Control Agent intervenes. The MaxHeartbeatTime

must therefore always be greater than the ControlAgentTime and the Livelist-

WriterTime. In practice the factor of 3 between LivelistWriterTime and

MaxHeartbeatTime has proved practical.

MaxRebootTime

Specifies the maximum time which may elapse between two Livelist entries of an

Application Agent before the Control Agent intervenes if the latter is rebooting.

MaxFailedReachNumber

Specifies how often the Control Agent attempts to reach a node after the MaxHeart-

beatTime has been exceeded before an external SwitchOver is initiated.

MaxAgeSwitchOverFile

This parameter specifies the max age (in seconds) of SwitchOver-File.

If the age of a SwitchOver-file exceeds this value, the SwitchOver-file is ignored.

Node_SwitchOverTyp

Specifies the mode according to which the testaments are created: node-based or

service-based. The following keywords are currently valid for this parameter:

service

Parameter Reference

FlexFrame Agents Guide 248

node

TakeOverStrategy

Defines how the application to take over services of defective nodes occurs and how

the winner is determined.

Allowed values are:

FirstFit

The first application node, which makes a entry to the switchover file, is

the winner and is allowed to take over the services.

LowPrioFit

The application node with the worst priority wins and is allowed to take

over the services. The priority of the application node will be taken from

the service with the highest priority on this application node.

Node_TakeOverRule

Defines which takeover rule is to be used. The following values are possible:

SpareNode

Substitution (add rule)

Displacement (replace rule)

Supplementation (supplementation)

Dynamic

Dyn_Spare_min

Dyn_Spare_max

Dyn_Add_min

Dyn_Add_max

Dyn_Replace_min

Dyn_Replace_max

Dyn_Substitute_mi

Dyn_Substitute_max

Dyn_Spare_exclusive

Defines the range of takeover rule “dynamic”.

CtrlAgent_WriteOnlyChanges

Controls the writing of output files.

The following values are possible:

false: files will be written every cycle (default) .

true: files will be written only if there was changes.

With this parameter load can be reduced on control node at great installations

and on the Storagesystem since changes are only written persistently at rele-

Parameter Reference

249 FlexFrame Agents Guide

vant changes. The net load to the myAMC.FA WebGUI and the load the the

server part of the myAMC.FA WebGUI is also reduced.

7.5.2 Parameters for the Performance and Accounting Op-tion

FA Agent:

PerfdataReportCycleTime (myAMC_FA.xml)

The report cycle specifies the cycle of creating a performance and accounting value,

which is written to the collet.

max_colletcount_performance_files (myAMC_FA_AppAgent_spec.xml)

Number of collet generations that are stored before being rewritten.

max_filesize_performance_files (myAMC_FA_AppAgent_spec.xml)

Maximum size of the performance files. This parameter serves to limit the size of the

files.

collet_switch_start_performance_files (myAMC_FA_AppAgent_spec.xml)

Defines the date and time when new collet files are written.

Eexample: 2006-01-01 00:00:00

collet_switch_cycle_performance_files (myAMC_FA_AppAgent_spec.xml)

Cycle time when new collets are written. Example: 3600

By combining collet_switch_start_performance_files and

collet_switch_cycle_performance_files, it is possible to specify that, starting at

0:00, new collets are written every 3600 seconds, i.e. every hour.

It is also possible to implement different cycle times.

7.5.3 Parameters for the File System Utilization

Perfdata_FSUtil_ReportCycleTime

Specifies the report cycle time for FsUtil checks.

FSUtilScriptFilePath

Specifies the path to the FsUtil scripts.

Script file names are myAMC.DetGetDirData.sh, myAMC.DetGetFSData.sh.

Performance files Perf_FsUtil~<hostname>.prf.

Line-Identifier in this file is FSUTIL.

7.5.4 Configuration of the Spaceutil Functionality

The monitored directories and file systems will be pool specific configured in the configu-ration file myAMC_FA_Checks.xml in the directory

Parameter Reference

FlexFrame Agents Guide 250

/opt/myAMC/vFF/vFF_<poolname>/config. The configuration consists of tem-

plates, depending on the actual conditions to be activated.

7.5.4.1 General structure

The configuration file for monitoring the filesystem utilization or the directory utilization

use a common structure. and a specific structure. For every Filesystem or directory to

monitor you have to define an entry in theConfigSection like “TrapTargets with the follow-

ing ConfigEntries :

Active

Indicates whether this entry is currently active or not. In case of inactive the complete

entry is ignored.

Name

Symbolic display name

The symbolic name can be freely assigned with a maximum lenth of 50 characters

and no special characters.

Group

Group name for logical grouping, that allows group based aggregation. The group

name can be freely assigned with a maximum length of 50 characters and no special

characters.

ContextObject

Reference object. Possible values are Frame, Pool, Group, Node, System, or

Service.

FrameActivationPattern

Wildcard pattern for frame-specifig activation

PoolActivationPattern

Wildcard patern for pool specific activation.

GroupActivationPattern

Wildcard Pattern for group specific activation.

NodeActivationPattern

Wildcard pattern for node specific activation

SystemActivationPattern

Wildcard pattern for system specific activation

ServiceTypeActivationPattern

Wildcard pattern for service specitifc activation

InstNumActivationPattern

Wildcard pattern for instance specific activation

The values in the reference object define the aggregation type of the data.

Parameter Reference

251 FlexFrame Agents Guide

7.5.4.2 File System Utilization

In addition to the common values there are some attributes to define the parameters for

file system utilization.

Configuration set to monitor a file system (ConfigSection, like TrapTargets)

/myAMC.FA/FilesystemUtilization.

(ConfigEntries):

FilesystemNamePattern

Wildcard pattern to identify the file system.

If this value is missing or empty, this pattern is always true. This parameter can be definied with placeholder like $(name).

MountPointPattern

Wildcard pattern to select certain files using mount points.

If this value is missing or empty this value is always true. This parameter can be de-

finied with placeholder like $(name).

MaxUtilization

Thresholding (maximum utilization in percent) to trigger utilization events. The value

0 disables this threshold monitoring.

MaxGrowthRate

Threshold for maximum growth rate in percent per second. to trigger a trap as re-

sponse to large growth rates. The value 0 disables this threshold

7.5.4.3 Directory Utilization

Every directory to monitor need a config entry with following values (ConfigSection,

like TrapTargets) bellow the key /myAMC.FA/DirectoryUtilization.

In addition to the standard values (ConfigEntries) :

Paths

Absolute path of the directory being monitored.

This parameter can include placeholder in the form $(name).

7.5.4.4 Activation of Configration Entries

The directory and file system monitoring is based on a reference object. A reference object can be of the type Frame, Pool, Group, Node, System or Service.

The activation depends on the entry in the config files and dynamic values from the

agent.

Parameter name Activation depends on Example

Parameter Reference

FlexFrame Agents Guide 252

Parameter name Activation depends on Example

AgentTypeActivationPattern Agent type

(“myAMC.AppAgent”,

“myAMC.FrameAgent”)

*Agent*

FrameActivationPattern Frame name

(allways local)

Local

PoolActivationPattern Pool name MyPool*

GroupActivationPattern Group name GR_Lin*

NodeActivationPattern Node name bx*

SystemActivationPattern SID P*

ServiceTypeActivationPattern Service type, possible

values: SRV_DBORA,

RV_DB2, SRV_DBSAP,

SRV_CI, SRV_APP,

SRV_J, SRV_JC,

SRV_SCS, SRV_ERS,

SRV_ASCS

SRV_DB*

InstNumActivationPattern Instance number

to definie a special in-

stance

02

For every config entry the FA AppAgent or FA FrameAgent checks together with the

dynamical information Framename, Poolname, Groupname, Nodename, Servicename if

there is a match with a config entry. So managed and monitored sets of objects are

dynamicly defined.

Reference objects Frame, Pool, Group, Node

Frame, pool, group or node specific rules to monitor file system utilization.

Reference object: Service.

The Service type ist the activator for a rule, for example monitor only spezial files if

their is an db service on the node.

Reference object System

The system name is activator for a rule

Examples:

AppAgent

Active Services: dbo46 (ora), dbp52 (sapdb), app02p52, cip55

Reference object: Group

Active: false

The entry is ignored because active is false.

Parameter Reference

253 FlexFrame Agents Guide

AppAgent

Active Services: dbo46 (ora), dbp52 (sapdb), app02p52, cip55

Reference object: Pool

Active: true

ServiceTypeActivationPattern: SRV_DBORA

other ActivationPatterns: empty or „*“

The FA AppAgent activates a rule for the defined, but only for DB services.

AppAgent Active Services: dbo46 (ora), dbp52 (sapdb), app02p52, cip55

Reference objekt: System

Active: true

SystemActivationPattern: P*

other ActivationPatterns: empty or „*“

The FA AppAgent activates a rule for SAP SIDs which match with P*.

FrameAgent Active Pools: Cust_1, pool2, Cust_3

Reference objekt: Pool

Active: true

FrameActivationPattern: A00*

PoolActivationPattern: Cust_*

other ActivationPatterns: empty or „*“

The FA FrameAgent activate a monitoring rule for the pools Cust_1 and Cust_3,

but only if the name of the frames correlates with the FrameActivationPattern

7.5.4.5 Replaceing of Placeholders

The configuration section allows for some parameters the use of placeholders. The

placeholders a resolved from the FA AppAgent or FA FrameAgent. If a placeholder is not

resolved, an empty string is used.

The following placeholder are available:

${framename} (currently always Local)

Example: Local, A00001

${poolname}

Example: Cust_3, pool1

${groupname}

Example: GR_Linux

${nodename} Example: tombx2, sno1aplp2

${systemname}

Example: P46, ABC

Parameter Reference

FlexFrame Agents Guide 254

${servicetype}

Example: SRV_APP, SRV_CI, SRV_DBORA, SRV_DBSAP, SRV_SCS, ...

${servicedisplaytype} Example: app, ci, db, scs, ...

${instnum}

The instance number will only be dissolved if it is valid (>=0). The number is always used

as double digit.

Example: 7 07

-1 “”

42 42

7.5.4.6 Wildcard Patterns

Wildcard patterns allow comparison wtih variable texts. Unknown elements can be se-

lected by the wildcard “*” and “?”.

“*” stands for an unlimited quantity of any character that may be present or not.

“?” stands for a single character

Example:

*.doc

matches with abc.doc, .doc and aabbccdd.doc , but not with abcdoc,

abc.doc2 or abc.xdoc

app??O46

matches with app1O46, app02O46, appO46 but not with app123O46, ciO46 or

ap02O46

app??P*

matches with app1P52, app02P5, appPPP but not with app123O46, app1O52, or

ap02O46

Parameter Reference

255 FlexFrame Agents Guide

7.5.4.7 Configuration File myAMC_FA_Checks.xml

<?xml version="1.0" encoding="ISO-8859-1"?>

<!-- @@@MYAMC.VERSION@@@ 9.0-23 -->

<configuration>

<configsection name="myAMC.FA">

<configsection name="Additional_Checks">

<!-- SpaceUtil: DirectoryUtilization -->

<!-- ############################### -->

<configsection name="DirectoryUtilization">

<!-- Pool specific directory -->

<configsection name="FAPoolData">

<configentry name="Active">

<value

type="Boolean">false</value>

</configentry>

<!-- identification -->

<configentry name="Name">

<value

type="String">fapooldata</value>

</configentry>

<configentry name="Group">

<value

type="String">fapooldata</value>

</configentry>

<configentry name="ContextObject">

<value type="String">Pool</value>

</configentry>

<!-- activation -->

<configentry

name="AgentTypeActivationPattern">

<value

type="String">*Agent*</value>

</configentry>

<configentry

name="FrameActivationPattern">

<value type="String">*</value>

</configentry>

<configentry name="PoolActivationPattern">

<value type="String">*</value>

</configentry>

<configentry

name="GroupActivationPattern">

<value type="String">*</value>

</configentry>

<configentry name="NodeActivationPattern">

<value type="String">*</value>

</configentry>

<configentry

name="SystemActivationPattern">

<value type="String">*</value>

</configentry>

<configentry

name="ServiceTypeActivationPattern">

<value type="String">*</value>

</configentry>

<configentry

name="InstNumActivationPattern">

Parameter Reference

FlexFrame Agents Guide 256

<value type="String">*</value>

</configentry>

<!-- paths to check -->

<configentry name="Paths">

<value

type="String">/opt/myAMC/vFF/vFF_${poolname}/data</value>

</configentry>

</configsection>

<!-- Service specific directory -->

<configsection name="OracleDB">

<configentry name="Active">

<value

type="Boolean">false</value>

</configentry>

<!-- identification -->

<configentry name="Name">

<value

type="String">oradata</value>

</configentry>

<configentry name="Group">

<value

type="String">database</value>

</configentry>

<configentry name="ContextObject">

<value

type="String">Service</value>

</configentry>

<!-- activation -->

<configentry

name="AgentTypeActivationPattern">

<value

type="String">*AppAgent*</value>

</configentry>

<configentry

name="FrameActivationPattern">

<value type="String">*</value>

</configentry>

<configentry name="PoolActivationPattern">

<value type="String">*</value>

</configentry>

<configentry

name="GroupActivationPattern">

<value type="String">*</value>

</configentry>

<configentry name="NodeActivationPattern">

<value type="String">*</value>

</configentry>

<configentry

name="SystemActivationPattern">

<value type="String">*</value>

</configentry>

<configentry

name="ServiceTypeActivationPattern">

<value

type="String">SRV_DBORA</value>

</configentry>

<configentry

name="InstNumActivationPattern">

<value type="String">*</value>

</configentry>

<!-- paths to check -->

Parameter Reference

257 FlexFrame Agents Guide

<configentry name="Paths">

<value

type="String">/oracle/${systemname}/sapdata*</value>

</configentry>

</configsection>

</configsection>

<!-- SpaceUtil: FilesystemUtilization -->

<!-- ################################ -->

<configsection name="FilesystemUtilization">

<!-- Frame specific filesystem -->

<configsection name="volFF">

<configentry name="Active">

<value type="Boolean">true</value>

</configentry>

<!-- identification -->

<configentry name="Name">

<value type="String">volFF</value>

</configentry>

<configentry name="Group">

<value

type="String">storage</value>

</configentry>

<configentry name="ContextObject">

<value type="String">Frame</value>

</configentry>

<!-- activation -->

<configentry

name="AgentTypeActivationPattern">

<value

type="String">*FrameAgent*</value>

</configentry>

<configentry

name="FrameActivationPattern">

<value type="String">*</value>

</configentry>

<configentry name="PoolActivationPattern">

<value type="String">*</value>

</configentry>

<configentry

name="GroupActivationPattern">

<value type="String">*</value>

</configentry>

<configentry name="NodeActivationPattern">

<value type="String">*</value>

</configentry>

<configentry

name="SystemActivationPattern">

<value type="String">*</value>

</configentry>

<configentry

name="ServiceTypeActivationPattern">

<value type="String">*</value>

</configentry>

<configentry

name="InstNumActivationPattern">

<value type="String">*</value>

Parameter Reference

FlexFrame Agents Guide 258

</configentry>

<!-- filesystem information -->

<configentry name="FilesystemNamePattern">

<value

type="String">*:/*volFF*</value>

</configentry>

<configentry name="MountPointPattern">

<value type="String">*</value>

</configentry>

<!-- threshold values -->

<configentry name="MaxUtilization">

<value type="Float">90.0</value>

</configentry>

<configentry name="MaxGrowthRate">

<value type="Float">5.0</value>

</configentry>

</configsection>

</configsection>

</configsection>

</configsection>

</configuration>

Parameter Reference

259 FlexFrame Agents Guide

7.5.5 Parameters for the Admin Pool Option

CtrlAgentRole

Allowed values are:

Normal Normal function of this CtrlAgent (don't work with a

caretaker of the admin pool).

WorkWithSparePool CtrlAgent work with a caretaker of the admin pool.

SparePoolName

Specifies the name of spare pool.

Allowed values are:

mySparePoolName Name of admin pool is mySparePoolName.

NONE No Admin Pool available.

If the own pool name is identical to the name of the admin pool, CtrlAgent of this pool

is the admin pool caretaker.

SpareGroupName

Specifies the name of the group in the admin pool.

Allowed values are:

mySpareGroupName Name of the group in admin pool is mySpareGroupName.

NONE No group in admin pool available.

SpareNodeRequestPath

Specifies the path for spare node requests.

MaxAgeResponseFile

Specifies the max age (in seconds) of response file (used by the AppAgent).

SpareRequestMoveTimeout

Timeout (in seconds) for moving an Application Node from the admin pool to work

pool (fa_move_node.sh -> ff_an_adm.pl).

SpareRequestMoveNodeMaxRetry

Max retries to call move-node script in case of error (LDAP-locks).

SpareRequestMoveNodeRetryDelay

Delay-Time (in seconds) between retries the call of move-node sript.

SpareNodePowercycleTime

Cycle time (in minutes) how often the spare node in spare-pool will be switches ON

and OFF.

Values <= 1 are forbidden and switch off this functionality.

SelectionRuleConfigFile

Path name and file name of the config file for he selection of the spare nodes from

the admin pool.

Parameter Reference

FlexFrame Agents Guide 260

7.5.6 Parameters for ServicePing

ServicePingScriptFilePath

This parameter specifies the path of the ServicePing scripts. The script names are

ServicePingDb.sh, ServicePingDef.sh and ServicePingErs.sh.

ServicePing_is_active

This parameter switches on and off ServicePing functionality respectively.

To switch on ServicePing functionality, this parameter must be set to true and also

the return code of the ServicePing scripts must be changed. The return code is 99 by

default and means unknown.

CheckCycle_of_ServicePing

This parameter defines the check cycle (in seconds) of the ServicePing functionality.

7.5.7 Node-related Parameters

Node_MaxRebootNumber

Specifies how many consecutive reboots may be performed to restore a service. If 3

is specified, the Application Agent attempts to make the system available again with

up to three reboots. Here you must bear in mind that a reboot is also unsuccsessful if the system could not be restored within the MaxRebootTime set. In the event of re-

boot problems, the MaxRebootTime parameter must therefore also always be

checked and compared with the reboot time actually needed.

Node_MaxSwitchOverNumber

Specifies how many consecutive switchovers may be performed to restore a service.

Node_SwitchOverServiceStartDelayTime

After an internal SwitchOver this parameter defines how long will be waited until the

services to be taken over are started on the node that is taking over control. This val-

ue is needed since, depending on the switches used, the virtual IP addresses cannot

be released directly owing to the devices’ internal caching. This delay time must

therefore be greater than the devices’ caching time otherwise the service startup on

the node which is taking over control will fail.

Node_SendTrapsAllowed

Releases or blocks the sending of node traps.

Node_RebootCommand

Specifies which command is executed when the Application Agent initiates a reboot.

Normally this is a shutdown with a subsequent reboot.

Node_ShutdownCommand

Specifies which command is executed when the Application Agent initiates a switch-

over. Normally this is a shutdown without a subsequent reboot.

Parameter Reference

261 FlexFrame Agents Guide

Node_PowerDownCommand

Specifies which command is executed by the Control Agent before an external

SwitchOver is initiated. In this way it is ensured that the services on the node being

switched over are really stopped and can be taken over without any problem by other

nodes. The Control Agent waits at most for the period specified with the

ShutdownFac_Shut_Exec_Timeout parameter before it continues with the

switchover.

Node_CheckAvailabilityCommand

Specifies which command is executed by the Control Agent to check the availability

of a node. A return value of 0 is interpreted as a positive result, every other return

value as negative. The Control Agent waits at most for the period of 5 seconds. If the

command has not been executed completely by then, it is assumed that the test is

negative, i.e. the node is no longer available, resulting in an external SwitchOver.

Node_RemoteExecutionCommand

Specifies which command the Control Agent puts ahead of a command to be execut-

ed on another node. This is used, for example, to start or stop a service remotely on

an Application Node. Usually ssh is used here.

SwitchOver_ext_Unavailability_check

Specifies which unavailability check will be performed before external SwitchOver.

Possible values are:

PING_and_SSH ping and ssh must fail for Poff (default)

PING_or_SSH ping or ssh must fail for Poff

PING_only ping only must fail for Poff

SSH_only ssh only must fail for Poff

SwitchOver_ext_Unavailability_check_PING

Specifies which ping unavailability check will be performed before external Switch-

Over. Possible values are: 1 ping the normal host name (blade2) (default)

2 ping the server LAN host name (blade2-se)

4 ping the storage LAN host name (blade2-st)

3 ping normal and server LAN

5 ping normal and storage LAN

6 ping server-lan and storage LAN

7 ping normal and server LAN and storage LAN

7.5.8 Service-related Parameters

The following parameters can be set individually for each service type or for multiple

services simultaneously. This is also a result of the hierarchical structure of the parameter

file. In the parameter file there is also an option for configuring the values for the DB, CI

and APP services individually. The value of the default service is used for any value

which is not service-specific.

Parameter Reference

FlexFrame Agents Guide 262

Service_EnableMonitoring

Service_SendTraps

Service_MaxRestartNumber

Service_TrapSendDelayTime

Service_ReactionDelayTime

Service_MaxStartTime

Service_MaxStopTime

Service_PingVirtualServiceInterface

Service_ReactionScript

The dynamic behavior of the AppAgents and CtrlAgents depends very much on the val-

ues in the configuration file and the physical conditions. You must therefore check very

carefully that the relation between certain values is secure and application-oriented.

Service_EnableMonitoring

Defines whether monitoring is enabled or disabled for the service type in question.

Service_SendTraps

Releases or blocks the sending of service traps.

Service_MaxRestartNumber

Defines how many attempts are made to restart a failed service. This value can be

configured individually for each service type. The value is typically in the range 1 to

10. The value 0 means that no attempt is made to restart a failed service. If reboots

are permitted on the node, failure of a service leads directly to a reboot.

Service_TrapSendDelayTime

Defines the send delay time for the service traps.

Service_ReactionDelayTime

Interworks directly with CheckCycleTime. It can be set individually for each service

type. This time defines how long the triggering of a reaction is delayed after a failure

has been detected.

Examples:

CheckCycleTime = 10 sec; ServiceReactionDelayTime = 30 sec

In this example a failed service is detected in a cycle. However, the reaction only

takes place after 30 seconds. The failure must therefore have been identified as a

failure over at least three detection cycles. This allows you to prevent a detection er-

ror resulting in an incorrect reaction.

Parameter Reference

263 FlexFrame Agents Guide

CheckCycleTime = 10 sec; ServiceReactionDelayTime = 0 sec

In this example the required reaction takes place immediately in the cycle in which

the problem was detected.

Service_MaxRestartTime

Defines the maximum time which may be required for a service type in the event of a

restart. If this time is exceeded, a second or nth attempt is made in accordance with Service_MaxRestartNumber. Thus if too short a time is selected for the service

to be monitored and the hardware used, i.e. the service requires longer to restart

than permitted by Service_MaxRestartTime, a problem situation is triggered in-

correctly.

Service_MaxStartTime

Defines how long a service may take to start up. If this time is exceeded, the Agent

interprets the service as not started and initiates further reactions.

Service_MaxStopTime

Defines how long a service may take to stop. If this time is exceeded, the Agent in-

terprets the service as not stopped and initiates appropriate reactions.

Service_PingVirtualServiceInterface

Defines whether the associated virtual FlexFrame service interface is pinged to de-

termine the availability of a service. If it is set to 0 the virtual LAN interfaces of the cli-

ent and server network are not queried. Interface availability then has no influence on

the status change of a service. Switching off this parameter causes a defined wait

time (which is parameter Node_SwitchOverServiceStartDelayTime) before

starting services in a takeover (switchover).

Service_ReactionScript

Defines the interace to the FF-SAP-Start-/Stop-Scripts.

<!-- SAP-scripts used before FF V5.0A like sapdb, sapci, sapapp, sapj,

sapacc, ... -->

<value

type="String">${ScriptPath}/${ScriptPrefix}${monparam}${ScriptPostfix}

${BYNIDENT} ${SIDENT} ${ACTION}</value>

<!-- SAP-script used from FF V5.0A (ff_service.sh) -->

<value type="String">${ScriptPath}/ff_service.sh -s ${SIDENT} -t

${monparam} ${BYKEYNIDENT} -a ${ACTION}</value>

7.5.9 Parameters for the Definition of a Generic Service

By default, the FA Agents can supervise a defined quantity of services, depending on the

version. For these services, the rules for the detection and the rules for the autonomous

reaction are fixed components of the FA Agents. Generic services are services which are

not considered in the standard scope of the FA Agents but which will also be considered

within the context of supervision and of the autonomous reaction.

Parameter Reference

FlexFrame Agents Guide 264

This section describes the parameters that are used to enable monitoring by the FA

Agents as well as the autonomous reactions.

In the parameter file myAMC_FA_Rules.xml, the necessary information for the detection

of the service is registered. Most of the parameters are optional, meaning they are not

normally needed for monitoring. In the following the mandatory parameters are indicated

by an asteriks (*). The optional parameters are set with default values if not used.

The parameter file for the definition of generic services is organized in two main parts: the

parametering of the detection and of the reactions which are required for a service.

For the configuration of a generic service, this generic service must be described in the

detection section.The reaction is then defined in the second section.

Therefore, ideally, in each case one of the templates in the detection and reaction block

is copied. This must then be individualized with the specific parameters in the appropiate

places. The referencing between the detection and reaction blocks occurs via the defined

service name.

Attention: The templates are set to ‘not active’. Therefore, in principle, the individualiza-tion of the parameter Active must be changed to 1.

Furthermore, the standard service parameters (see section above) must be defined such

that they are also valid for built-in services. If service-specified parameters are not set,

the default values will be used.

Service_EnableMonitoring

Service_SendTraps

Service_MaxRestartNumber

Service_TrapSendDelayTime

Service_ReactionDelayTime

Service_MaxStartTime

Service_MaxStopTime

7.5.9.1 Parametering of the Service Detection

The parameter set for the detection consists of a header which defines the service as a

whole. A service itself can consist of one or more subservices. For every subservice a

separate subservice parameter block must be created.

7.5.9.1.1 Parameters of the service header

*Name

Unique symbolic servicename inside the rulefile. The maximum string length is 50

Parameter Reference

265 FlexFrame Agents Guide

characters. It does not have to be identical with the technical service name. The ser-

vice name is the reference to the reaction.

Description

Used for documentation purposes only.

*Displayname

The display name is used by the FlexFrame ControlCenter. If it is not defined, the

symbolic name is used, but it should be defined. It should be as short as possible be-

cause this service name will be displayed in the FlexFrame ControlCenter (limited

space available).

Active

Activates (1) or deactivates (0) the parameter block.

MonitorParam

Defines the required parameters that produce a state-altering event during starting or

stopping of a service. The event script is called MonitorFlag and is doing nothing.

It remains in the pro-cess list for a defined timeperiod (normally 30 seconds).To at-tach the MonitorFlag to a service, the following call syntax is prescribed:

MonitorFlag <RefSrv> <State> <InstNo> <SID>

RefSrv

This is a reference to a service and is defined under MonitorParam.

State

start, stop, restart, watch or nowatch

InstNo

A positive instance number; this information is optional

SID

The system id. This information is optional

Orderprio

When there are several services, the order priority defines within a system the order

in which they will be started. Stopping will be done in the reverse order.

PowerValue

Workload demands of a service in SAPS.

ServicePrio

Priority of the service to be defined.

*Group

Accounting group name for the performance and accounting management. A new

group can be defined for a service or its values appear in an existing group.

Parameter Reference

FlexFrame Agents Guide 266

For example, SAP: If the backup server should be monitored and its workload con-

sumption should appear in the group SAP, then it should be configured to the group

SAP.

7.5.9.1.2 Subservice parametering

A service consists of a minimum of one or more subservices. For every subservice the

following parameters must be defined:

Subservice

Subservice name

Symbolic name for the subservice. This parameter is optional.

Display name

This parameter is for example used as service name in failure traps or error messag-

es.

Active

Active (1) or inactive (0). The default is active.

7.5.9.1.3 Subservice detector parametering

For every subservice one or more detectors can be activated. In version 3.0 of the FA

Agents, only detectors of the type process exist. In future versions more detectors will be

added. A detector requires the following parameters:

Detector

Detector type

Process

Active

Switches the rule on or off

ProcessName

The process name to be detected

CountMin

Minimum number of required processes of this type

CountMax

Maximum number of required processes of this type

HierachyMin

Minimum process hierachy of the subservices

Parameter Reference

267 FlexFrame Agents Guide

Severity

Determined Severity (warning or critical) if the affiliated subservice has a fault.

7.5.9.2 Parametering of the Service Reactions

The second big block to be defined is the reactions required for a service. For this the

commands for starting, stopping and restarting the services must be defined.

The reaction parameter block for a service also has the service name, meaning the same

name. In a reaction the determining of a program or script to be called occurs in the case

of each start, stop or restart of the services.

The first command specifies the start call, the second the stop call and the third the re-

start call.

Each command is composed of the attributes script and parameter. script defines

the called program or script. If a parameter is omitted, no parameter is used.

Parameter Reference

FlexFrame Agents Guide 268

7.5.10 Path Configuration

The path configuration is used to define the directories in which the myAMC.FA compo-

nents store their various work files. A FlexFrame Autonomy solution stores a range of

information, such as files with display information for the WebInterface and logging infor-

mation to be used for support when this is required, in various files.

To ensure performance and clarity are retained even in larger configurations, we

recommend that you do not modify these settings! If the suggested path configura-

tion is changed, though, make sure that clatiy is still retained and no problems

arise with regard to performance and accessibility.

LiveListLogFilePath

This parameter specifies the directory in which the Livelist is stored.

LiveListXmlFilePath

This parameter specifies the directory in which the XML representation of the Livelist

is stored. This file is required by the FA WebInterface. The parameter should contain

the same path as ServicesXmlFilePath.

ServicesXmlFilePath

This parameter specifies the directory in which the XML representation of the ser-

vices list is stored. These files are required by the FA WebInterface. The parameter

should contain the same path as LiveListXmlFilePath.

ServicesListFilePath

This parameter specifies the directory in which the services list files are stored.

ServicesLogFilePath

This parameter specifies the directory in which the services log files are stored.

RebootListFilePath

This parameter specifies the directory in which the reboot files are stored. These files

contain a list of all services which must be restored after a reboot.

SwitchOverListFilePath

This parameter specifies the directory in which the switchover files are stored. These

files contain a list of all services which must be restored on another node after a

switchover.

PerformanceFilePath

This parameter specifies the directory in which the performance files are stored.

These files contain measured values for performance data.

FSUtilScriptFilePath

Specifies the path to the FsUtil-scripts.

Script-file names are 'myAMC.DetGetDirData.sh', 'myAMC.DetGetFSData.sh'.

Performance files 'Perf_FsUtil~<hostname>.prf'.

Line-Identifier in this file is 'FSUTIL'.

Parameter Reference

269 FlexFrame Agents Guide

SAPScriptFilePath

This parameter specifies the directory in which the start and stop scripts for the SAP

services (sapdb, sapci, sapapp, etc.) can be found. The default path

(/opt/myAMC/scripts/sap) is normally a symbolic link to the actual script directo-

ry.

ControlFilePath

This parameter specifies the directory in which the control files (<service

type><service id><service sid>_host) generated by the start/stop scripts

are contained.

BlackboardFilePath

This parameter specifies the directory in which the BlackBoard file can be found.

Commands can be entered in it which are executed by the FA_AppAgents.

GroupConfigFile

This parameter specifies the file in which the group affiliation is configured.

PrePoffHookPath

This parameter specifies the script, which is execute before powering off a node. If

IgnorePoffHookResult = true, the return code will be ignored, otherwise the

node will be powered off only if this script returns 0.

PostPoffHookPath

This parameter specifies the script, which is execute after powering off a node and

before performing a SwitchOver. If IgnorePoffHookResult = true, the return

code will be ignored, otherwise the SwitchOver will be performed only if this script re-

turns 0.

ServicePingScriptFilePath

This parameter specifies the path of the serviceping scripts. The names of the called

scripts are 'ServicePingDb.sh', 'ServicePingDef.sh' and 'ServicePingErs.sh'.

Parameter Reference

FlexFrame Agents Guide 270

7.5.11 Shutdown Configuration

The shutdown feature is described in detail in section 6.4.

IgnoreShutdownFailure

The parameter IgnoreShutdownFailure defines whether, after a failed shut-

down/powerdown, the network interfaces of the relevant node are to be deactivated,

which would ensure that all services running on this node are shut down and the ser-

vices can be switched over to an other Application Node.

Shut_DiagTrapRepeat_valid

Time in seconds to resend the „shutdown validity is valid“ – trap.

(‚0‘ == no resend)

Shut_DiagTrapRepeat_invalid

Time in seconds to resend the „shutdown validity is invalid“ – trap.

(‚0‘ == no resend)

Parameter Reference

271 FlexFrame Agents Guide

7.5.12 Default Parameter File

Parameter Reference

FlexFrame Agents Guide 272

<?xml version="1.0" encoding="ISO-8859-1"?>

<!-- @@@MYAMC.VERSION@@@ 9.0-23 -->

<configuration>

<configsection name="myAMC.FA">

<!-- *** timing parameters *** -->

<!-- specifies how often (in seconds) myAMC.FA checks process states.

This value should not exceed a third of the time interval specified

in the script monitor-alert (which is part of the FlexFrame installation).

The default value for this parameter is 10 seconds (Note: 'monitor_alert'

is 30).

-->

<configentry name="CheckCycleTime">

<value type="UnsignedInteger">10</value>

</configentry>

<!-- Specifies how often (in seconds) myAMC.FA checks the BlackBoard.

This value should be >= 'CheckCycleTime'.

A value of '0' disables the reading.

-->

<configentry name="BlackBoardCheckCycleTime">

<value type="UnsignedInteger">30</value>

</configentry>

<!-- Specifies how often (in seconds) myAMC.FA checks the persistent FA-Info

file.

This value should be >= 'CheckCycleTime'.

A value of '0' disables the reading.

-->

<configentry name="PersistFAInfoCheckCycleTime">

<value type="UnsignedInteger">30</value>

</configentry>

<!-- specifies how often (in seconds) myAMC.FA writes live list entries

This value should not exceed a third of the time interval specified by the

parameter MaxHeartbeatTime.

-->

<configentry name="LivelistWriterTime">

<value type="UnsignedInteger">10</value>

</configentry>

<!-- specifies the dT (in sec) for reading in past in case of a CtrlAgent

switch.

For activation set this value for example to 600 sec.

If this value is '0' this feature is switched off.

-->

<configentry name="LivelistRead_dT">

<value type="UnsignedInteger">0</value>

</configentry>

<!-- specifies how often (in seconds) myAMC.FA tries a service ping.

This value should be >= 60 sec because of performance consumption.

-->

<configentry name="CheckCycle_of_ServicePing">

<value type="UnsignedInteger">60</value>

</configentry>

<!-- specifies whether ServicePing is active or not. -->

<configentry name="ServicePing_is_active">

<value type="Boolean">false</value>

</configentry>

<!-- specifies whether CtrlAgent writes only to files if there was changes.

'true': Output files will be written if there was changes.

'false': Output files will be written every cycle.

-->

<configentry name="CtrlAgent_WriteOnlyChanges">

<value type="Boolean">false</value>

</configentry>

Parameter Reference

273 FlexFrame Agents Guide

<!-- Enable the usage of virtual cold standby sparenodes.

'true': Virtual cold standby sparenodes are used before pool

independent spare.

'false': Virtual cold standby sparenodes are not used before pool

independent spare.

-->

<configentry name="VirtualColdStandbySpareNode_use">

<value type="Boolean">false</value>

</configentry>

<!-- Specify the role of CtrlAgent.

Allowed values are:

= 'Normal': Normal function of this Ctrl-Agent. (don't

work with a caretaker of the 'SparePool').

= 'WorkWithSparePool': Ctrl-Agent work with a caretaker of the

'SparePool'.

-->

<configentry name="CtrlAgentRole">

<!--

<value type="String">WorkWithSparePool</value>

-->

<value type="String">Normal</value>

</configentry>

<!-- Specify the name of 'SparePool'.

Allowed values are:

= '*': Name of the 'SparePool'.

= 'NONE': No 'SparePool' available.

-->

<configentry name="SparePoolName">

<value type="String">NONE</value>

</configentry>

<!-- Specify the name of 'SpareGroup'.

Allowed values are:

= '*': Name of the 'SpareGroup'.

= 'NONE': No 'SpareGroup' available.

-->

<configentry name="SpareGroupName">

<value type="String">SpareGrp</value>

</configentry>

<!-- Values for 'fa_move_node.sh' calls 'ff_an_adm.pl -op move ...' -->

<!-- Timeout (in seconds) for move a node from SparePool to work pool. -->

<configentry name="SpareRequestMoveTimeout">

<value type="UnsignedInteger">900</value>

</configentry>

<!-- Max retries to call move-node script in case of error (LDAP-locks). -->

<configentry name="SpareRequestMoveNodeMaxRetry">

<value type="UnsignedInteger">10</value>

</configentry>

<!-- Delay-Time (in seconds) between retries the call of move-node sript. -->

<configentry name="SpareRequestMoveNodeRetryDelay">

<value type="UnsignedInteger">30</value>

</configentry>

<!-- Time (in minutes) how often the spare nodes in caretaker will be powered

ON and OFF.

Values <= 1 (60sec) are not allowed and switched of this functionality.

-->

<configentry name="SpareNodePowercycleTime">

<value type="UnsignedInteger">1440</value>

</configentry>

<!-- Timeout (in seconds) for NASCheck_Script.

-->

<configentry name="SRDF_NAS_FH_NASCheck_Timeout">

Parameter Reference

FlexFrame Agents Guide 274

<value type="UnsignedInteger">1800</value>

</configentry>

<!-- Maximal repair time of a SRDF-NAS failure.

Used in 'manual' and 'automatic' case.

If a potential storage problem persits, a new check will be done

after exceeding this time.

-->

<configentry name="SRDF_NAS_FH_MaxSRDF_RepairTime">

<value type="UnsignedInteger">1800</value>

</configentry>

<!-- Specify the trigger for the SRDF-NAS-Check.

Allowed values are:

= 'NO_Check':

NO SRDF-NAS-Check will be done.

= 'RequestMA_only':

'Request per Monitor-Alert' only triggers the SRDF-NAS-Check.

= 'MountFail_only':

'Mount-Failed' only triggers the SRDF-NAS-Check.

= 'FilerFail_only':

'Filer-Failed' only triggers the SRDF-NAS-Check.

= 'MountFail_and_RequestMA': 'Mount-

Failed' and 'Request per Monitor-Alert' triggers the SRDF-NAS-Check.

= 'MountFail_or_RequestMA':

'Mount-Failed' or 'Request per Monitor-Alert' triggers the SRDF-NAS-Check.

= 'FilerFail_and_RequestMA': 'Filer-

Failed' and 'Request per Monitor-Alert' triggers the SRDF-NAS-Check.

= 'FilerFail_or_RequestMA':

'Filer-Failed' or 'Request per Monitor-Alert' triggers the SRDF-NAS-Check.

= 'MountFail_and_FilerFail': 'Mount-

Failed' and 'Filer-Failed' triggers the SRDF-NAS-Check.

= 'MountFail_or_FilerFail':

'Mount-Failed' or 'Filer-Failed' triggers the SRDF-NAS-Check.

= 'FilerFail_and_MountFail_and_RequestMA': 'Filer-Failed' and

'Mount-Failed' and 'Request per Monitor-Alert' triggers the SRDF-NAS-Check.

= 'FilerFail_or_MountFail_or_RequestMA': 'Filer-Failed' or

'Mount-Failed' or 'Request per Monitor-Alert' triggers the SRDF-NAS-Check.

-->

<configentry name="SRDF_NAS_FH_CheckTrigger">

<!--

<value type="String">NO_Check</value>

<value type="String">RequestMA_only</value>

<value type="String">MountFail_only</value>

<value type="String">FilerFail_only</value>

<value type="String">MountFail_and_RequestMA</value>

<value type="String">MountFail_or_RequestMA</value>

<value type="String">FilerFail_and_RequestMA</value>

<value type="String">FilerFail_or_RequestMA</value>

<value type="String">MountFail_and_FilerFail</value>

<value type="String">MountFail_or_FilerFail</value>

<value type="String">FilerFail_and_MountFail_and_RequestMA</value>

<value type="String">FilerFail_or_MountFail_or_RequestMA</value>

-->

<value type="String">NO_Check</value>

</configentry>

<!-- Specify the SRDF NAS failure reaction.

Allowed values are:

= 'manual': Manual SRDF switchover. Administrator must do it.

= 'automatic': Automatic SRDF switchover.

-->

<configentry name="SRDF_NAS_FH_Reaction">

<!--

<value type="String">manual</value>

<value type="String">automatic</value>

-->

<value type="String">manual</value>

</configentry>

<!-- specifies how often (in seconds) myAMC.FA looks for new live list

Parameter Reference

275 FlexFrame Agents Guide

entries.

This value should not exceed a third of the time interval specified by the

parameter MaxHeartbeatTime.

-->

<configentry name="ControlAgentTime">

<value type="UnsignedInteger">10</value>

</configentry>

<!-- Maximum time (in seconds) between two application agent heartbeat

messages in live list -->

<configentry name="MaxHeartbeatTime">

<value type="UnsignedInteger">90</value>

</configentry>

<!-- Parameters for 'MultiNodeFailure_ShortTime' -->

<!-- Number of nodes failed for detection of 'MultiNodeFailure_ShortTime'. -->

<configentry name="MultiNodeFailure_ShortTime_FailureCount">

<value type="UnsignedInteger">4</value>

</configentry>

<!-- Timeframe for detection of 'MultiNodeFailure_ShortTime'. -->

<configentry name="MultiNodeFailure_ShortTime_FailureTime">

<value type="UnsignedInteger">120</value>

</configentry>

<!-- Maximum time (in seconds) witch is added as delay (to 'MaxHeartbeatTime')

in case of 'MultiNodeFailure_ShortTime'. -->

<configentry name="MultiNodeFailure_ShortTime_ReactionDelay">

<value type="UnsignedInteger">0</value>

</configentry>

<!-- Specify which reaction in case of 'MultiNodeFailure_ShortTime'

Allowed values are:

= 'None': No special reaction jet (will be used for future use).

-->

<configentry name="MultiNodeFailure_ShortTime_ReactionAction">

<!--

<value type="String">ffu</value>

-->

<value type="String">None</value>

</configentry>

<!-- Parameters for 'MultiNodeFailure_LongTime' -->

<!-- Number of nodes failed for detection of 'MultiNodeFailure_LongTime'. -->

<configentry name="MultiNodeFailure_LongTime_FailureCount">

<value type="UnsignedInteger">10</value>

</configentry>

<!-- Timeframe for detection of 'MultiNodeFailure_LongTime'. -->

<configentry name="MultiNodeFailure_LongTime_FailureTime">

<value type="UnsignedInteger">86400</value>

</configentry>

<!-- Maximum time (in seconds) witch is added as delay (to 'MaxHeartbeatTime')

in case of 'MultiNodeFailure_LongTime'. -->

<configentry name="MultiNodeFailure_LongTime_ReactionDelay">

<value type="UnsignedInteger">0</value>

</configentry>

<!-- Specify which reaction in case of 'MultiNodeFailure_LongTime'

Allowed values are:

= 'None': No special reaction jet (will be used for future use).

-->

<configentry name="MultiNodeFailure_LongTime_ReactionAction">

<!--

<value type="String">ffu</value>

-->

<value type="String">None</value>

</configentry>

<!-- Parameters for 'MultiNodeFailure_Heartbeat'. Used for initiate a SRDF-

NAS-Check. -->

<!-- Number of nodes failed for detection of 'MultiNodeFailure_Heartbeat'. -->

<configentry name="MultiNodeFailure_Heartbeat_FailureCount">

<value type="UnsignedInteger">4</value>

</configentry>

<!-- Timeframe for detection of 'MultiNodeFailure_Heartbeat'. -->

<configentry name="MultiNodeFailure_Heartbeat_FailureTime">

<value type="UnsignedInteger">600</value>

Parameter Reference

FlexFrame Agents Guide 276

</configentry>

<!-- Maximum time (in seconds) witch is added as delay (to 'MaxHeartbeatTime')

in case of 'MultiNodeFailure_Heartbeat'. -->

<configentry name="MultiNodeFailure_Heartbeat_ReactionDelay">

<value type="UnsignedInteger">0</value>

</configentry>

<!-- Specify which reaction in case of 'MultiNodeFailure_Heartbeat'

Allowed values are:

= 'None': No special reaction jet (will be used for future use).

-->

<configentry name="MultiNodeFailure_Heartbeat_ReactionAction">

<!--

<value type="String">ffu</value>

-->

<value type="String">None</value>

</configentry>

<!-- Maximum time (in seconds) a machine takes to reboot -->

<configentry name="MaxRebootTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- Maximum time (in seconds) a machine takes to reboot (special for windoes)

-->

<configentry name="MaxUpTime_for_Reboot_detection">

<value type="UnsignedInteger">900</value>

</configentry>

<!-- Maximum number of failed reach attempts -->

<configentry name="MaxFailedReachNumber">

<value type="UnsignedInteger">1</value>

</configentry>

<!-- Specify which unavailability check will be done before external

SwitchOver

Allowed values are:

= 'PING_and_SSH': 'ping' and 'ssh' must fail for Poff (= default)

= 'PING_or_SSH': 'ping' or 'ssh' must fail for Poff

= 'PING_only': 'ping' only must fail for Poff

= 'SSH_only': 'ssh' only must fail for Poff

-->

<configentry name="SwitchOver_ext_Unavailability_check">

<!--

<value type="String">PING_and_SSH</value>

<value type="String">PING_or_SSH</value>

<value type="String">PING_only</value>

<value type="String">SSH_only</value>

-->

<value type="String">PING_and_SSH</value>

</configentry>

<!-- Specify which PING unavailability check will be done before external

SwitchOver

Allowed values are:

= '1': 'ping' the normal hostname ('blade2')

= '2': 'ping' the server-lan hostname ('blade2-se')

= '4': 'ping' the storage-lan hostname ('blade2-st')

= '3': 'ping' normal and server-lan

= '5': 'ping' normal and storage-lan

= '6': 'ping' server-lan and storage-lan

= '7': 'ping' normal and server-lan and storage-lan

-->

<configentry name="SwitchOver_ext_Unavailability_check_PING">

<value type="UnsignedInteger">1</value>

</configentry>

<!-- specifies how often (in seconds) myAMC.FA writes performance data.

This value should be a multiple of 'CheckCycleTime'.

The default value for this parameter is 60 seconds.

-->

Parameter Reference

277 FlexFrame Agents Guide

<configentry name="PerfdataReportCycleTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies how often (in seconds) myAMC.FA checks the filesystem

utilization for performance data.

This value should be a multiple of 'CheckCycleTime'.

-->

<configentry name="Perfdata_SpaceUtil_FSCycleTime">

<value type="UnsignedInteger">1800</value>

</configentry>

<!-- specifies how often (in seconds) myAMC.FA checks the directory

utilization for performance data.

This value should be a multiple of 'CheckCycleTime'.

-->

<configentry name="Perfdata_SpaceUtil_DirCycleTime">

<value type="UnsignedInteger">3600</value>

</configentry>

<!-- specifies the max age (in seconds) of SwitchOver file.

If the age of a SwitchOver file exceeds this value, it is markes as 'too

old' and will be ignored.

-->

<configentry name="MaxAgeSwitchOverFile">

<value type="UnsignedInteger">240</value>

</configentry>

<!-- specifies the max age (in seconds) of Response file.

If the age of a Response file exceeds this value, it will be ignored.

-->

<configentry name="MaxAgeResponseFile">

<value type="UnsignedInteger">1200</value>

</configentry>

<!-- specifies the communication method(s) of FA -->

<!-- Allowed values are:

= 'File-based':

Use file livelist.log for communication.

= 'MPI-based':

Use message pasing interface MPI_AL for communication.

= 'MPI-fallback-File':

Use message pasing interface MPI_AL for communication and as fallback

the file based communication.

-->

<configentry name="ComMethod_LiveList">

<value type="String">File-based</value>

<!--

<value type="String">File-based</value>

<value type="String">MPI-based</value>

<value type="String">MPI-fallback-File</value>

-->

</configentry>

<!-- *** node parameters *** -->

<configsection name="Node">

<!-- specifies the minimal service prio for take over a SwitchOver-

file -->

<!--

<configentry name="Node_MinServicePrio">

<value type="UnsignedInteger">1</value>

</configentry>

-->

<!-- specifies the 'service schema' with controls 'priority' and

'load' -->

<!-- See file 'myAMC_FA_Groups.xml'

-->

Parameter Reference

FlexFrame Agents Guide 278

<configentry name="Node_ServiceSchema">

<value type="String">default</value>

</configentry>

<!-- specifies the 'group schema' with controls grouping.

-->

<!-- See file 'myAMC_FA_Groups.xml'

-->

<configentry name="Node_GroupSchema">

<value type="String">default_LDAP</value>

</configentry>

<!-- specifies the interface used for start/stop/restart SAP-services

-->

<configentry name="Node_SAP_Interface">

<value type="String">SAPscripts</value>

<!--

<value type="String">ACC</value>

-->

<!--

<value type="String">SAPscripts, ACC</value>

-->

</configentry>

<!-- specifies the replace strings for generation of full specified

script file path (DO NOT CHANGE) -->

<configentry name="Node_SAP_Interface_ReplaceSTR_ScriptPath">

<value type="String">${ScriptPath}</value>

</configentry>

<configentry name="Node_SAP_Interface_ReplaceSTR_ScriptPrefix">

<value type="String">${ScriptPrefix}</value>

</configentry>

<configentry name="Node_SAP_Interface_ReplaceSTR_ScriptPostfix">

<value type="String">${ScriptPostfix}</value>

</configentry>

<!-- specifies the replace string for

'Node_SAP_Interface_ReplaceSTR_ScriptPrefix' -->

<configentry name="Node_SAP_Interface_ScriptPrefix_SAP">

<value type="String">sap</value>

</configentry>

<configentry name="Node_SAP_Interface_ScriptPrefix_ACC">

<value type="String">acc</value>

</configentry>

<!-- specifies the replace string for

'Node_SAP_Interface_ReplaceSTR_ScriptPostfix' -->

<configentry name="Node_SAP_Interface_ScriptPostfix_SAP">

<value type="String"></value>

</configentry>

<configentry name="Node_SAP_Interface_ScriptPostfix_ACC">

<value type="String"></value>

</configentry>

<!-- specifies whether SwitchOver is service based or node based -->

<!-- Allowed values are 'service' and 'node' -->

<configentry name="Node_SwitchOverTyp">

<!--

<value type="String">service</value>

-->

<value type="String">node</value>

</configentry>

<!-- specifies the rule to take over a SwitchOver-file -->

<!-- Allowed values are:

= 'SpareNode':

Only a spare node will Start the services from taken

SwitchOver-File.

= 'add' (Hinzufuegen, Ergaenzung):

Additional start the services from taken SwitchOver-File.

= 'replace' (Verschieben):

Running services will be stopped and a SwitchOver-File will

be written therefore,

Start the services from taken SwitchOver-File.

= 'substitute' (Ersetzung):

Parameter Reference

279 FlexFrame Agents Guide

Running services will be stopped,

Start the services from taken SwitchOver-File.

= 'dynamic':

Cause of prios there will be done one of the TakeOver-rules

'SpareNode', 'add', 'replace', 'substitute', or none.

-->

<configentry name="Node_TakeOverRule">

<!--

<value type="String">add</value>

<value type="String">replace</value>

<value type="String">substitute</value>

<value type="String">dynamic</value>

-->

<value type="String">SpareNode</value>

</configentry>

<!-- specifies the ranges for take over rule 'dynamic'.

For 'Dyn_Spare_*' it is the high prio of SwitchOver-file.

For others it is the high prio of own node.

The lowest Service-priority you may use is '9999' (As

default a SpareNode has a prio of '10000').

-->

<!-- 'Spare': -->

<configentry name="Dyn_Spare_min"> <value

type="UnsignedInteger">1</value> </configentry>

<configentry name="Dyn_Spare_max"> <value

type="UnsignedInteger">4</value> </configentry>

<!-- 'Add' (Hinzufuegen, Ergaenzen): -->

<configentry name="Dyn_Add_min"> <value

type="UnsignedInteger">3</value> </configentry>

<configentry name="Dyn_Add_max"> <value

type="UnsignedInteger">4</value> </configentry>

<!-- 'Replace' (Verschieben): -->

<configentry name="Dyn_Replace_min"> <value

type="UnsignedInteger">5</value> </configentry>

<configentry name="Dyn_Replace_max"> <value

type="UnsignedInteger">6</value> </configentry>

<!-- 'Substitute' (Ersetzen): -->

<configentry name="Dyn_Substitute_min"> <value

type="UnsignedInteger">7</value> </configentry>

<configentry name="Dyn_Substitute_max"> <value

type="UnsignedInteger">20</value> </configentry>

<!-- specifies whether the min- max- range of spare node is

exclusive for spare nodes or not. -->

<configentry name="Dyn_Spare_exclusive">

<value type="Boolean">true</value>

</configentry>

<!-- specifies the escalation type -->

<!-- Allowed values are:

= 'Node':

Node-escalation: "Restart" => "Reboot" =>

"SwitchOver"

The escalation will be done for all services on a

node.

= 'Service':

Service-escalation: "Restart" =>

"SwitchOver"(single service)

The escalation will be done for a single service.

-->

<configentry name="EscalationType">

<!--

<value type="String">Service</value>

-->

<value type="String">Node</value>

</configentry>

Parameter Reference

FlexFrame Agents Guide 280

<!-- specifies the TakeOver strategy -->

<!-- Allowed values are:

= 'FirstFit':

The first node, who applies for TakeOver, wins

and gets the SwitchOver-File.

= 'LowPrioFit':

The node with the minimal prio, wins and gets the

SwitchOver-File.

The lowest Service-priority you may use is '9999'

(As default a SpareNode has a prio of '10000').

-->

<configentry name="TakeOverStrategy">

<value type="String">FirstFit</value>

<!--

<value type="String">FirstFit</value>

<value type="String">LowPrioFit</value>

-->

</configentry>

<!-- specifies the maximum number of reboots -->

<configentry name="Node_MaxRebootNumber">

<value type="UnsignedInteger">0</value>

</configentry>

<!-- specifies the maximum number of switch overs -->

<configentry name="Node_MaxSwitchOverNumber">

<value type="UnsignedInteger">1</value>

</configentry>

<!-- if Service_PingVirtualServiceInterface is set to true,

this value specifies the time window, in which a node tries

to take over a service.

if Service_PingVirtualServiceInterface is set to false,

the service will be started after this time interval to

ensure, that is is actually down.

-->

<configentry name="Node_SwitchOverServiceStartDelayTime">

<value type="UnsignedInteger">120</value>

</configentry>

<!-- specifies whether traps are allowed -->

<configentry name="Node_SendTrapsAllowed">

<value type="Boolean">true</value>

</configentry>

<!-- specifies the command to be executed apon reboot -->

<configentry name="Node_RebootCommand">

<value

type="String">/opt/myAMC/scripts/ShutDown_Node/shutdown_node.sh reboot</value>

</configentry>

<!-- specifies the command to be executed apon shutdown -->

<configentry name="Node_ShutdownCommand">

<value

type="String">/opt/myAMC/scripts/ShutDown_Node/shutdown_node.sh shutdown</value>

</configentry>

<!-- specifies the command to be executed to power down a node before

another node is allowed to take over its services. The

variable

${node-name} can be used to specifiy the name of the node

the actual

command should be executed on. The actual command will

be appended to this command -->

<configentry name="Node_PowerDownCommand">

<!--

<value type="String">/bin/true</value>

-->

<value type="String">/bin/su - root -c

"/opt/myAMC/scripts/PowerMng/powerOnOff.sh ${node-name} down"</value>

Parameter Reference

281 FlexFrame Agents Guide

</configentry>

<!-- specifies the command to be executed to in order to

determine whether a node is still available -->

<configentry name="Node_CheckAvailabilityCommand">

<value type="String">/usr/bin/ssh -q ${node-name}

/bin/uname -a</value>

</configentry>

<!-- specifies the command to be used when a command is to be

executed on another node. The variable ${node-name} can

be used to specifiy the name of the node the actual

command should be executed on. The actual command will

be appended to this command -->

<configentry name="Node_RemoteExecutionCommand">

<value type="String">/usr/bin/ssh -q root@${node-name}

</value>

</configentry>

</configsection>

<!-- *** service parameters *** -->

<configsection name="Services">

<configsection name="Default">

<!-- specifies whether to monitor a service -->

<configentry name="Service_EnableMonitoring">

<value type="Boolean">true</value>

</configentry>

<!-- specifies whether traps are allowed -->

<configentry name="Service_SendTraps">

<value type="Boolean">true</value>

</configentry>

<!-- specifies the maximum number of restarts -->

<configentry name="Service_MaxRestartNumber">

<value type="UnsignedInteger">3</value>

</configentry>

<!-- specifies how long (in seconds) to delay a trap in

case of an error -->

<configentry name="Service_TrapSendDelayTime">

<value type="UnsignedInteger">15</value>

</configentry>

<!-- specifies how long (in seconds) to delay a reaction in

case of an error

This value should be at least three times as

high as the time interval

specified in CheckCycleTime.

-->

<configentry name="Service_ReactionDelayTime">

<value type="UnsignedInteger">45</value>

</configentry>

<!-- specifies maximum service restart time (in seconds) --

>

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time (in seconds) -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time (in seconds) -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies whether to ping virtual service interface

in order to detect whether a service is up and

running. -->

<configentry name="Service_PingVirtualServiceInterface">

<value type="Boolean">true</value>

</configentry>

<!-- specifies name and parameter of reaction script. -->

Parameter Reference

FlexFrame Agents Guide 282

<configentry name="Service_ReactionScript">

<!-- SAP-scripts used before FF V5.0 like sapdb,

sapci, sapapp, sapj, sapacc, ...

<value

type="String">${ScriptPath}/${ScriptPrefix}${monparam}${ScriptPostfix} ${BYNIDENT} ${SIDENT}

${ACTION}</value>

-->

<!-- SAP-script used from FF V5.0 (ff_service.sh)

-->

<value type="String">${ScriptPath}/ff_service.sh

-s ${SIDENT} -t ${monparam} ${BYKEYNIDENT} -a ${ACTION}</value>

</configentry>

</configsection>

<configsection name="SRV_ORACLE_RAC_CRS">

<!-- specifies the maximum number of restarts -->

<configentry name="Service_MaxRestartNumber">

<value type="UnsignedInteger">100000000</value>

</configentry>

<configentry name="Service_ReactionDelayTime">

<value type="UnsignedInteger">100000000</value>

</configentry>

<!-- specifies maximum service restart time (in seconds) --

>

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">100000000</value>

</configentry>

<!-- specifies maximum service start time (in seconds) -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">100000000</value>

</configentry>

<!-- specifies maximum service stop time (in seconds) -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">100000000</value>

</configentry>

</configsection>

<configsection name="SRV_ORACLE_RAC_DB">

<!-- specifies the maximum number of restarts -->

<configentry name="Service_MaxRestartNumber">

<value type="UnsignedInteger">100000000</value>

</configentry>

<configentry name="Service_ReactionDelayTime">

<value type="UnsignedInteger">100000000</value>

</configentry>

<!-- specifies maximum service restart time (in seconds) --

>

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">100000000</value>

</configentry>

<!-- specifies maximum service start time (in seconds) -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">100000000</value>

</configentry>

<!-- specifies maximum service stop time (in seconds) -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">100000000</value>

</configentry>

</configsection>

<!-- *** timing parameters for DB services *** -->

<configsection name="SRV_DBORA">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

Parameter Reference

283 FlexFrame Agents Guide

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for DB services *** -->

<configsection name="SRV_DBSAP">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for DB services *** -->

<configsection name="SRV_DB2">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies name and parameter of reaction script. -->

<configentry name="Service_ReactionScript">

<!-- SAP-scripts used before FF V5.0 like sapdb,

sapci, sapapp, sapj, sapacc, ...

<value

type="String">${ScriptPath}/${ScriptPrefix}db${ScriptPostfix} ${BYNIDENT} ${SIDENT}

${ACTION}</value>

-->

<!-- SAP-script used from FF V5.0 (ff_service.sh)

-->

<value type="String">${ScriptPath}/ff_service.sh

-s ${SIDENT} -t db ${BYKEYNIDENT} -a ${ACTION}</value>

</configentry>

</configsection>

<!-- *** timing parameters for SMD73 services *** -->

<configsection name="SRV_SMD73">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies name and parameter of reaction script. -->

<configentry name="Service_ReactionScript">

<!-- SAP-script used for SMD73 (ff_smd_agent.sh)

-->

<value

type="String">${ScriptPath}/ff_smd_agent.sh -s ${SIDENT} -t db ${BYKEYNIDENT} -a ${ACTION}</value>

</configentry>

</configsection>

Parameter Reference

FlexFrame Agents Guide 284

<!-- *** timing parameters for CI services *** -->

<configsection name="SRV_CI">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for APP services *** -->

<configsection name="SRV_APP">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for SCS services *** -->

<configsection name="SRV_SCS">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for ASCS services *** -->

<configsection name="SRV_ASCS">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for JC services *** -->

<configsection name="SRV_JC">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

Parameter Reference

285 FlexFrame Agents Guide

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for J services *** -->

<configsection name="SRV_J">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for livecache (LC) services *** -->

<configsection name="SRV_LC">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for enqueue replication (ERS) services *** -->

<configsection name="SRV_ERS">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for MDM services *** -->

<configsection name="SRV_MDS71">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for MDM Import services *** -->

Parameter Reference

FlexFrame Agents Guide 286

<configsection name="SRV_MDIS71">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for MDM Export services *** -->

<configsection name="SRV_MDSS71">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for xprint services *** -->

<configsection name="SRV_XPR">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for content management server services ***

-->

<configsection name="SRV_CMS">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for TREX (Text Retrieval and information

EXtraction) services *** -->

<configsection name="SRV_TRX">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

Parameter Reference

287 FlexFrame Agents Guide

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for Busines Object Enterprice services ***

-->

<configsection name="SRV_BOE4">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for Busines Object Enterprice Server

services *** -->

<configsection name="SRV_BOE_SRV">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for Solution Manager Diagnostics services

*** -->

<configsection name="SRV_SMD">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for Primary Application Server/Instance

services *** -->

<configsection name="SRV_PAI">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

Parameter Reference

FlexFrame Agents Guide 288

</configentry>

</configsection>

<!-- *** timing parameters for VMware services *** -->

<configsection name="SRV_VMWARE">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for Control-M Service services *** -->

<configsection name="SRV_CTM">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for Web Dspatcher services *** -->

<configsection name="SRV_WEBDISP">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for Database SAPSYBASE services *** -->

<configsection name="SRV_SAPSYBASE">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">600</value>

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">300</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">300</value>

</configentry>

</configsection>

<!-- *** timing parameters for Database SAP-HANA Real-Time Data

Platform services *** -->

<configsection name="SRV_HANA">

<!-- specifies maximum service restart time -->

<configentry name="Service_MaxRestartTime">

<value type="UnsignedInteger">3100</value>

Parameter Reference

289 FlexFrame Agents Guide

</configentry>

<!-- specifies maximum service start time -->

<configentry name="Service_MaxStartTime">

<value type="UnsignedInteger">2700</value>

</configentry>

<!-- specifies maximum service stop time -->

<configentry name="Service_MaxStopTime">

<value type="UnsignedInteger">400</value>

</configentry>

</configsection>

</configsection>

<!-- *** path parameters *** -->

<!-- specifies path to FA scripts -->

<configentry name="FAScriptFilePath">

<value type="String">/opt/myAMC/scripts</value>

</configentry>

<!-- specifies path to FA scripts for local installation -->

<configentry name="FAScriptFilePathLocal">

<value type="String">/opt/local/myAMC/scripts</value>

</configentry>

<!-- Specifies path to spare node request directory. -->

<configentry name="SpareNodeRequestPath">

<value type="String">/opt/myAMC/vFF/SpareRequest</value>

</configentry>

<!-- Specifies path to list of virtual cold standby sparenodes. -->

<configentry name="VirtualColdStandbySpareNodeFilePath">

<value type="String">/opt/myAMC/vFF/vFF_${vFF}/config</value>

</configentry>

<!-- specifies path to live list file -->

<configentry name="LiveListLogFilePath">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/data/FA/livelist</value>

</configentry>

<!-- specifies path to live list file

In order to use the FlexWeb web interface this path must be

the same as specified in <install-path>/web/myamc-flexweb.conf

and in ServicesXmlFilePath

-->

<configentry name="LiveListXmlFilePath">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/data/FA/xmlrepository</value>

</configentry>

<!-- specifies path to service xml file

In order to use the FlexWeb web interface this path must be

the same as specified in <install-path>/web/myamc-flexweb.conf

and in LiveListXmlFilePath

-->

<configentry name="ServicesXmlFilePath">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/data/FA/xmlrepository</value>

</configentry>

<!-- specifies path to services list file -->

<configentry name="ServicesListFilePath">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/data/FA/servicelists</value>

</configentry>

<!-- specifies path to services log file -->

<configentry name="ServicesLogFilePath">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/data/FA/servicelogs</value>

Parameter Reference

FlexFrame Agents Guide 290

</configentry>

<!-- specifies path to reboot file -->

<configentry name="RebootListFilePath">

<value type="String">/opt/myAMC/vFF/vFF_${vFF}/data/FA/reboot</value>

</configentry>

<!-- specifies path to switch over file -->

<configentry name="SwitchOverListFilePath">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/data/FA/switchover</value>

</configentry>

<!-- specifies path to performance data -->

<configentry name="PerformanceFilePath">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/data/FA/performance</value>

</configentry>

<!-- specifies path to blackboard file -->

<configentry name="BlackboardFilePath">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/data/FA/blackboard</value>

</configentry>

<!-- specifies path to PersistFAInfoFile file -->

<configentry name="PersistFAInfoFilePath">

<value type="String">/opt/myAMC/vFF/vFF_${vFF}/data/FA/reboot</value>

</configentry>

<!-- specifies path to shutdown config files -->

<configentry name="ShutdownCfgFilePath">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/data/FA/shutdown</value>

</configentry>

<!-- specifies path to ACC script files

<install-path>/scripts/acc should either contain

the acc scripts or must be a link to the correct

directory.

-->

<configentry name="ACCScriptFilePath">

<value type="String">/opt/myAMC/scripts/acc</value>

</configentry>

<!-- specifies path to SAP script files

<install-path>/scripts/sap should either contain

the sap scripts or must be a link to the correct

directory.

-->

<configentry name="SAPScriptFilePath">

<value type="String">/opt/myAMC/scripts/sap</value>

</configentry>

<!-- specifies path to control file -->

<configentry name="ControlFilePath">

<value type="String">/opt/myAMC/scripts/sap/log</value>

</configentry>

<!-- specifies path to ServicePing scripts.

-->

<configentry name="ServicePingScriptFilePath">

<value type="String">/opt/myAMC/scripts</value>

</configentry>

<!-- specifies path to FSUtil scripts.

-->

<configentry name="FSUtilScriptFilePath">

<value type="String">/opt/myAMC/scripts</value>

</configentry>

<!-- specifies path to DetTest - scripts, output and timeout [s].

Parameter Reference

291 FlexFrame Agents Guide

-->

<configentry name="DetTest_Sapparar_ScriptFilePath">

<!--

<value

type="String">/opt/myAMC/FA_AppAgent/myAMC.DetTestSapparar.sh</value>

-->

<value type="String">../myAMC.DetTestSapparar.sh</value>

</configentry>

<configentry name="DetTest_Sapparar_ScriptTimeout">

<value type="UnsignedInteger">60</value>

</configentry>

<configentry name="DetTest_Sapparar_OutputFilePath">

<value type="String">/tmp/myAMC.DetTestOutSapparar.txt</value>

</configentry>

<configentry name="DetTest_Ensmon_ScriptFilePath">

<!--

<value

type="String">/opt/myAMC/FA_AppAgent/myAMC.DetTestEnsmon.sh</value>

-->

<value type="String">../myAMC.DetTestEnsmon.sh</value>

</configentry>

<configentry name="DetTest_Ensmon_ScriptTimeout">

<value type="UnsignedInteger">60</value>

</configentry>

<configentry name="DetTest_Ensmon_OutputFilePath">

<value type="String">/tmp/myAMC.DetTestOutEnsmon.txt</value>

</configentry>

<configentry name="DetTest_Dbmcli_ScriptFilePath">

<!--

<value

type="String">/opt/myAMC/FA_AppAgent/myAMC.DetTestDbmcli.sh</value>

-->

<value type="String">../myAMC.DetTestDbmcli.sh</value>

</configentry>

<configentry name="DetTest_Dbmcli_ScriptTimeout">

<value type="UnsignedInteger">60</value>

</configentry>

<configentry name="DetTest_Dbmcli_OutputFilePath">

<value type="String">/tmp/myAMC.DetTestOutDbmcli.txt</value>

</configentry>

<!-- specifies name of HostInfoLDAP config file -->

<!-- The part '-HOSTNAME' will be replaced at runtime with '' or with the

hostname of the node. -->

<configentry name="HostInfoLDAPFile">

<value type="String">/opt/myAMC/vFF/vFF_${vFF}/config/myAMC_FA_Hosts-

HOSTNAME.xml</value>

</configentry>

<!-- specifies name of group config file -->

<configentry name="GroupConfigFile">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/config/myAMC_FA_Groups.xml</value>

</configentry>

<!-- specifies name of rule config file.

If the file does not exist, it will be ignored.

-->

<configentry name="RuleConfigFile">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/config/myAMC_FA_Rules.xml</value>

</configentry>

<!-- specifies name of custom rule config file.

If the file does not exist, it will be ignored.

-->

<configentry name="RuleCustomConfigFile">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/config/myAMC_FA_Rules_Custom.xml</value>

</configentry>

Parameter Reference

FlexFrame Agents Guide 292

<!-- specifies name of selection-rule config file.

-->

<configentry name="SelectionRuleConfigFile">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/config/myAMC_FA_SelectionRules.xml</value>

</configentry>

<!-- *** misc parameters *** -->

<!-- specifies the postfix of server-lan -->

<configentry name="LanPostfixServer">

<value type="String">-se</value>

</configentry>

<!-- specifies the postfix of client-lan -->

<configentry name="LanPostfixClient">

<value type="String"></value>

</configentry>

<!-- specifies the postfix of storage-lan -->

<configentry name="LanPostfixStorage">

<value type="String">-st</value>

</configentry>

<!-- specifies the postfix of control-lan -->

<configentry name="LanPostfixControl">

<value type="String">-co</value>

</configentry>

<!-- specifies whether or not to respect the service dependencies -->

<configentry name="RespectServiceDependencies">

<value type="Boolean">true</value>

</configentry>

<configsection name="Shutdown_Facility">

<configsection name="Executable">

<configentry name="Shut_Ex_Blade">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_IPMI">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_IPMIPOWER">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_RSB">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_XSCF">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_RPS">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_SCON">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_XSCF2">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_ALOM">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_FA_BLADE">

<value

type="String">/opt/myAMC/scripts/PowerMng/blade_wrapper.sh</value>

Parameter Reference

293 FlexFrame Agents Guide

</configentry>

<configentry name="Shut_Ex_FA_IPMI">

<value

type="String">/opt/myAMC/scripts/PowerMng/ipmi_wrapper.sh</value>

</configentry>

<configentry name="Shut_Ex_FA_XSCF2">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_FA_XSCF">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_FA_RPS">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_FA_VM">

<value

type="String">/opt/myAMC/scripts/PowerMng/vm_vm_wrapper.sh</value>

</configentry>

<configentry name="Shut_Ex_FA_HV">

<value

type="String">/opt/myAMC/scripts/PowerMng/vm_hv_wrapper.sh</value>

</configentry>

<configentry name="Shut_Ex_FA_GENERIC">

<value

type="String">/opt/myAMC/scripts/PowerMng/generic_wrapper.sh</value>

</configentry>

<configentry name="Shut_Ex_RESERVED_1">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_RESERVED_2">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_RESERVED_3">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_RESERVED_4">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_RESERVED_5">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_WINSTD">

<value type="String">Shutdown.exe</value>

</configentry>

<configentry name="Shut_Ex_WIN_RESERVED_1">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_WIN_RESERVED_2">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_WIN_RESERVED_3">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_WIN_RESERVED_4">

<value type="String"></value>

</configentry>

<configentry name="Shut_Ex_WIN_RESERVED_5">

<value type="String"></value>

</configentry>

</configsection>

<configsection name="Configuration">

<configentry name="Shut_Cnf_Blade">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_IPMI">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_IPMIPOWER">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_RSB">

<value type="String"></value>

Parameter Reference

FlexFrame Agents Guide 294

</configentry>

<configentry name="Shut_Cnf_XSCF">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_RPS">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_SCON">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_XSCF2">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_ALOM">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_FA_BLADE">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/data/FA/shutdown/FA_blade.cfg</value>

</configentry>

<configentry name="Shut_Cnf_FA_IPMI">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/data/FA/shutdown/FA_ipmi.cfg</value>

</configentry>

<configentry name="Shut_Cnf_FA_XSCF2">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_FA_XSCF">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_FA_RPS">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_FA_VM">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/data/FA/shutdown/FA_VM.cfg</value>

</configentry>

<configentry name="Shut_Cnf_FA_HV">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/data/FA/shutdown/FA_HV.cfg</value>

</configentry>

<configentry name="Shut_Cnf_FA_GENERIC">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/data/FA/shutdown/FA_Generic.cfg</value>

</configentry>

<configentry name="Shut_Cnf_RESERVED_1">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_RESERVED_2">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_RESERVED_3">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_RESERVED_4">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_RESERVED_5">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_WINSTD">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_WIN_RESERVED_1">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_WIN_RESERVED_2">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_WIN_RESERVED_3">

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_WIN_RESERVED_4">

Parameter Reference

295 FlexFrame Agents Guide

<value type="String"></value>

</configentry>

<configentry name="Shut_Cnf_WIN_RESERVED_5">

<value type="String"></value>

</configentry>

<configentry name="Shut_Prio_Blade">

<value type="UnsignedInteger">102</value>

</configentry>

<configentry name="Shut_Prio_IPMI">

<value type="UnsignedInteger">101</value>

</configentry>

<configentry name="Shut_Prio_IPMIPOWER">

<value type="UnsignedInteger">101</value>

</configentry>

<configentry name="Shut_Prio_RSB">

<value type="UnsignedInteger">103</value>

</configentry>

<configentry name="Shut_Prio_XSCF">

<value type="UnsignedInteger">105</value>

</configentry>

<configentry name="Shut_Prio_RPS">

<value type="UnsignedInteger">106</value>

</configentry>

<configentry name="Shut_Prio_SCON">

<value type="UnsignedInteger">107</value>

</configentry>

<configentry name="Shut_Prio_XSCF2">

<value type="UnsignedInteger">104</value>

</configentry>

<configentry name="Shut_Prio_ALOM">

<value type="UnsignedInteger">108</value>

</configentry>

<configentry name="Shut_Prio_FA_BLADE">

<value type="UnsignedInteger">1</value>

</configentry>

<configentry name="Shut_Prio_FA_IPMI">

<value type="UnsignedInteger">2</value>

</configentry>

<configentry name="Shut_Prio_FA_XSCF2">

<value type="UnsignedInteger">111</value>

</configentry>

<configentry name="Shut_Prio_FA_XSCF">

<value type="UnsignedInteger">112</value>

</configentry>

<configentry name="Shut_Prio_FA_RPS">

<value type="UnsignedInteger">113</value>

</configentry>

<configentry name="Shut_Prio_FA_VM">

<value type="UnsignedInteger">3</value>

</configentry>

<configentry name="Shut_Prio_FA_HV">

<value type="UnsignedInteger">4</value>

</configentry>

<configentry name="Shut_Prio_FA_GENERIC">

<value type="UnsignedInteger">5</value>

</configentry>

<configentry name="Shut_Prio_RESERVED_1">

<value type="UnsignedInteger">6</value>

</configentry>

<configentry name="Shut_Prio_RESERVED_2">

<value type="UnsignedInteger">7</value>

</configentry>

<configentry name="Shut_Prio_RESERVED_3">

<value type="UnsignedInteger">8</value>

</configentry>

<configentry name="Shut_Prio_RESERVED_4">

<value type="UnsignedInteger">9</value>

</configentry>

<configentry name="Shut_Prio_RESERVED_5">

<value type="UnsignedInteger">10</value>

</configentry>

<configentry name="Shut_Prio_WINSTD">

Parameter Reference

FlexFrame Agents Guide 296

<value type="UnsignedInteger">11</value>

</configentry>

<configentry name="Shut_Prio_WIN_RESERVED_1">

<value type="UnsignedInteger">12</value>

</configentry>

<configentry name="Shut_Prio_WIN_RESERVED_2">

<value type="UnsignedInteger">13</value>

</configentry>

<configentry name="Shut_Prio_WIN_RESERVED_3">

<value type="UnsignedInteger">14</value>

</configentry>

<configentry name="Shut_Prio_WIN_RESERVED_4">

<value type="UnsignedInteger">15</value>

</configentry>

<configentry name="Shut_Prio_WIN_RESERVED_5">

<value type="UnsignedInteger">16</value>

</configentry>

<configentry name="Shut_UseIfIP_Blade">

<value type="Boolean">true</value>

</configentry>

<configentry name="Shut_UseIfIP_IPMI">

<value type="Boolean">true</value>

</configentry>

<configentry name="Shut_UseIfIP_IPMIPOWER">

<value type="Boolean">true</value>

</configentry>

<configentry name="Shut_UseIfIP_RSB">

<value type="Boolean">true</value>

</configentry>

<configentry name="Shut_UseIfIP_XSCF">

<value type="Boolean">true</value>

</configentry>

<configentry name="Shut_UseIfIP_RPS">

<value type="Boolean">true</value>

</configentry>

<configentry name="Shut_UseIfIP_SCON">

<value type="Boolean">true</value>

</configentry>

<configentry name="Shut_UseIfIP_XSCF2">

<value type="Boolean">true</value>

</configentry>

<configentry name="Shut_UseIfIP_ALOM">

<value type="Boolean">true</value>

</configentry>

<configentry name="Shut_UseIfIP_FA_BLADE">

<value type="Boolean">true</value>

</configentry>

<configentry name="Shut_UseIfIP_FA_IPMI">

<value type="Boolean">false</value>

</configentry>

<configentry name="Shut_UseIfIP_FA_XSCF2">

<value type="Boolean">true</value>

</configentry>

<configentry name="Shut_UseIfIP_FA_XSCF">

<value type="Boolean">true</value>

</configentry>

<configentry name="Shut_UseIfIP_FA_RPS">

<value type="Boolean">false</value>

</configentry>

<configentry name="Shut_UseIfIP_FA_VM">

<value type="Boolean">false</value>

</configentry>

<configentry name="Shut_UseIfIP_FA_HV">

<value type="Boolean">false</value>

</configentry>

<configentry name="Shut_UseIfIP_FA_GENERIC">

<value type="Boolean">false</value>

</configentry>

<configentry name="Shut_UseIfIP_RESERVED_1">

<value type="Boolean">false</value>

</configentry>

<configentry name="Shut_UseIfIP_RESERVED_2">

Parameter Reference

297 FlexFrame Agents Guide

<value type="Boolean">false</value>

</configentry>

<configentry name="Shut_UseIfIP_RESERVED_3">

<value type="Boolean">false</value>

</configentry>

<configentry name="Shut_UseIfIP_RESERVED_4">

<value type="Boolean">false</value>

</configentry>

<configentry name="Shut_UseIfIP_RESERVED_5">

<value type="Boolean">false</value>

</configentry>

<configentry name="Shut_UseIfIP_WINSTD">

<value type="Boolean">false</value>

</configentry>

<configentry name="Shut_UseIfIP_WIN_RESERVED_1">

<value type="Boolean">false</value>

</configentry>

<configentry name="Shut_UseIfIP_WIN_RESERVED_2">

<value type="Boolean">false</value>

</configentry>

<configentry name="Shut_UseIfIP_WIN_RESERVED_3">

<value type="Boolean">false</value>

</configentry>

<configentry name="Shut_UseIfIP_WIN_RESERVED_4">

<value type="Boolean">false</value>

</configentry>

<configentry name="Shut_UseIfIP_WIN_RESERVED_5">

<value type="Boolean">false</value>

</configentry>

</configsection>

<!-- Full specified path to pre poff hook script. -->

<configentry name="PrePoffHookPath">

<value

type="String">/opt/myAMC/scripts/PrePoffHook.sh</value>

</configentry>

<!-- Full specified path to post poff hook script. -->

<configentry name="PostPoffHookPath">

<value

type="String">/opt/myAMC/scripts/PostPoffHook.sh</value>

</configentry>

<!-- Ignore the result of the pro or post hook scripts. -->

<configentry name="IgnorePoffHookResult">

<value type="Boolean">true</value>

</configentry>

<!-- Full specified path to script to check for VM host POFF. -->

<configentry name="VMHostPoffCheckPath">

<value

type="String">/opt/myAMC/scripts/VMHostPoffCheck.sh</value>

</configentry>

<!-- Timeout in sec for the script to check for VM host POFF. -->

<configentry name="VMHostPoffCheckTimeout">

<value type="UnsignedInteger">60</value>

</configentry>

<configsection name="Managementblades">

<!-- Here the 'Hostname's of the management-blades must be

configured. -->

<!-- first entry -->

<!-- this is in comment, because it is only an example !!!

<configsection name="Mgmt_Blade_1">

<configentry name="Hostname">

<value type="String">vader</value>

</configentry>

Parameter Reference

FlexFrame Agents Guide 298

</configsection>

-->

<!-- 2. entry -->

<!-- this is in comment, because it is only an example !!!

<configsection name="Mgmt_Blade_2">

<configentry name="Hostname">

<value type="String">yoda</value>

</configentry>

</configsection>

-->

</configsection>

<!-- Here the default 'ShutdownMode' must be configured. -->

<!--

Allowed values for:

'ShutdownMode': cycle, leave-off

-->

<configentry name="Default_ShutdownMode">

<value type="String">leave-off</value>

</configentry>

<!-- Here the file for the Poff-synchronisation may be configured. --

>

<configentry name="Shut_File_for_POff_sync">

<value

type="String">/opt/myAMC/vFF/log/Poff_SA_Agt_cfg_files.log</value>

</configentry>

<!-- Here the values for timing may be configured. -->

<!--

Shut_Cycle [ms]: Cycletime of Shutdown-functionality. Must

be > 10 Sec.

Shut_SNMP_Timeout [ms]: SNMP-timeout

Shut_SNMP_Tries []: SNMP-tries

Shut_Exec_Timeout [ms]: Timeout for execute the SA-agents

Shut_PowerOff_Try []: Poff-tries

Shut_ReNew_validity_1 [ms]: renew the SA-config if hostdata

are valid

Shut_ReNew_validity_0 [ms]: renew the SA-config if hostdata

are invalid

Shut_DiagTrapRepeat_valid [s]: resend trap if shutdown

validity is valid ('0' == no resend)

Shut_DiagTrapRepeat_invalid [s]: resend trap if shutdown

validity is invalid ('0' == no resend)

-->

<configentry name="Shut_Cycle">

<value type="UnsignedInteger">60000</value>

</configentry>

<configentry name="Shut_SNMP_Timeout">

<value type="UnsignedInteger">3000</value>

</configentry>

<configentry name="Shut_SNMP_Tries">

<value type="UnsignedInteger">3</value>

</configentry>

<configentry name="Shut_Exec_Timeout">

<value type="UnsignedInteger">30000</value>

</configentry>

<configentry name="Shut_PowerOff_Try">

<value type="UnsignedInteger">1</value>

</configentry>

<configentry name="Shut_ReNew_validity_1">

<value type="UnsignedInteger">3600000</value>

</configentry>

<configentry name="Shut_ReNew_validity_0">

<value type="UnsignedInteger">600000</value>

</configentry>

<configentry name="Shut_DiagTrapRepeat_valid">

<value type="UnsignedInteger">86400</value>

Parameter Reference

299 FlexFrame Agents Guide

</configentry>

<configentry name="Shut_DiagTrapRepeat_invalid">

<value type="UnsignedInteger">3600</value>

</configentry>

<configentry name="IgnoreShutdownFailure">

<value type="Boolean">false</value>

</configentry>

<configsection name="BrutForceShutdown">

<!-- Here all parameters for a 'brut force shutdown' must be

configured. -->

<!--

Allowed values for:

'ShutdownTyp': UNKNOWN, BLADE, IPMI, RSB, XSCF, RPS,

SCON, XSCF2, ALOM, FA_BLADE, FA_IPMI,

FA_XSCF2, FA_XSCF,

FA_RPS, FA_VM, FA_HV, FA_GENERIC, RESERVED_1, RESERVED_2, RESERVED_3, RESERVED_4, RESERVED_5,

WINSTD,

WIN_RESERVED_1, WIN_RESERVED_2, WIN_RESERVED_3, WIN_RESERVED_4, WIN_RESERVED_5

'Hardware': UNKNOWN, LINUX, SOLARIS, WIN

'ShutdownMode': cycle, leave-off

-->

<!-- first entry -->

<!-- this is in comment, because it is only an example !!!

<configsection name="BFSD_Blade_1">

<configentry name="Hostname">

<value type="String">vader</value>

</configentry>

<configentry name="ShutdownTyp">

<value type="String">XSCF</value>

</configentry>

<configentry name="MacAdress">

<value

type="String">00c00d0032f7</value>

</configentry>

<configentry name="Hardware">

<value type="String">SOLARIS</value>

</configentry>

<configentry name="ShutdownMode">

<value type="String">cycle</value>

</configentry>

<configentry name="IP_Adress">

<value

type="String">158.92.4.214</value>

</configentry>

<configentry name="Console">

<value type="String">console_1</value>

</configentry>

<configentry name="Machine">

<value type="String">i686</value>

</configentry>

<configentry name="Port">

<value type="UnsignedInteger">2</value>

</configentry>

</configsection>

-->

<!-- 2. entry -->

<!-- this is in comment, because it is only an example !!!

<configsection name="BFSD_Blade_2">

<configentry name="Hostname">

<value type="String">yoda</value>

</configentry>

<configentry name="ShutdownTyp">

<value type="String">BLADE</value>

</configentry>

<configentry name="MacAdress">

<value

type="String">00c00d0032f7</value>

</configentry>

Parameter Reference

FlexFrame Agents Guide 300

<configentry name="Hardware">

<value type="String">LINUX</value>

</configentry>

<configentry name="ShutdownMode">

<value type="String">cycle</value>

</configentry>

<configentry name="IP_Adress">

<value

type="String">192.168.102.104</value>

</configentry>

<configentry name="Console">

<value type="String">console_1</value>

</configentry>

<configentry name="Machine">

<value type="String">i686</value>

</configentry>

<configentry name="Port">

<value type="UnsignedInteger">2</value>

</configentry>

</configsection>

-->

</configsection>

</configsection>

<configsection name="Additional_Checks">

<!-- specifies how often (in seconds) myAMC.FA make the additional

checks.

Addition Checks: 'Mount', 'Filers', 'Files', 'Lock'.

The default value for this parameter is 60 seconds.

-->

<configentry name="AddCheckCycleTime">

<value type="UnsignedInteger">60</value>

</configentry>

<!-- specifies the filename for 'lock'-checks checks.

"<hostname>.log.lock" will be added by program.

-->

<configentry name="Lock_file">

<value

type="String">/opt/myAMC/vFF/vFF_${vFF}/log/AppAgt/CHK_lock_</value>

</configentry>

<configsection name="File_check">

<!-- For the FileCheck there must be configured 'Filename'

and 'permissions'. -->

<!-- 'Filename' must be full specified or accassable from

'bin_xxx'-directory. -->

<!-- 'permissions': Allowed are 'F'=exists, 'R'=readable,

'W'=writable, 'X'=executable -->

<!-- first entry -->

<configsection name="File_monitor_alert">

<configentry name="Filename">

<value

type="String">/opt/myAMC/scripts/sap/monitor_alert</value>

</configentry>

<configentry name="permissions">

<value type="String">FRX</value>

</configentry>

</configsection>

<!-- next entry -->

Parameter Reference

301 FlexFrame Agents Guide

<configsection name="File_ff_service.sh">

<configentry name="Filename">

<value

type="String">/opt/myAMC/scripts/sap/ff_service.sh</value>

</configentry>

<configentry name="permissions">

<value type="String">FRX</value>

</configentry>

</configsection>

</configsection>

<configsection name="Mount_check">

<!-- For the Mount_check there must be configured

'Mountpoint' and 'permissions'. -->

<!-- 'Mountpoint' must be full specified. -->

<!-- 'permissions': Allowed are 'R'=readable, 'W'=writable

-->

<!-- first entry -->

<configsection name="Mount_1">

<configentry name="Mountpoint">

<value

type="String">/FlexFrame/myAMC</value>

</configentry>

<configentry name="permissions">

<value type="String">RW</value>

</configentry>

</configsection>

</configsection>

<configsection name="Filer_check">

<!-- For the Filer_check there must be configured 'IP_addr'

and 'permissions'. -->

<!-- 'IP_Hostname': IP-address of filer, or hostname. -->

<!-- 'ffu': parmaeter for future use -->

<!-- first entry -->

<!-- this is in comment, because it is only an example !!!

<configsection name="Filer_1">

<configentry name="IP_Hostname">

<value type="String">filer</value>

</configentry>

<configentry name="ffu">

<value type="String">xxx</value>

</configentry>

</configsection>

-->

<!-- 2. entry -->

<!-- this is in comment, because it is only an example !!!

<configsection name="Filer_2">

<configentry name="IP_Hostname">

<value type="String">filer2</value>

</configentry>

<configentry name="ffu">

<value type="String">xxx</value>

</configentry>

</configsection>

-->

</configsection>

</configsection>

Parameter Reference

FlexFrame Agents Guide 302

<configsection name="SharedResource">

<!-- Specifies the directory, user and password of shared filesystems

used on Windows systems.

These parameters are only used on Windows systems.

-->

<configsection name="Directory">

<!-- 1st entry goes here -->

<!-- this is in comment, because it is only an example !!!

<configsection name="Directory_1">

<configentry name="RemoteNetwork">

<value

type="String">\\myserver\myuser</value>

</configentry>

<configentry name="User">

<value type="String">myuser</value>

</configentry>

<configentry name="Password">

<value

type="String">blabla1234567890</value>

</configentry>

</configsection>

-->

<!-- next entry goes here -->

</configsection>

</configsection>

</configsection>

</configuration>

Parameter Reference

303 FlexFrame Agents Guide

7.5.13 FA FrameAgent

The FA FrameAgent uses the same type of config files as the FA AppAgent and the FA

CtrlAgent. The FA FrameAgent is a local installation on the Control Nodes. Therefore the

config files are located in a local pool structure on the Control Node.

Local file system: /opt/local/myAMC/vFF/vFF_<Pool>/config/*

Instead of shared file system: /opt/myAMC/vFF/vFF_<Pool>/config/*

The default parameter values e.g. timing parameters, or path values in the config files

may differ.

7.5.14 Adjustment of the FA WebGUI

Some of the Icons shown in the FA WebGUI can be adapted with individual icons.

To change the standard icons with individual icons, the file

/opt/myAMC/FA_WebGui/FAWebGui.properties has to be changed.

application.title

Program title, when the FA WebGUI ist started as application

(/opt/myAMC/FA_WebGui/webgui.sh).

icons.logo-topleft

Left picture on the top left of the GUI.

Default is the „Fujitsu“ logo.

icons.logo-topright

Right picture on the top of the gui. Default is the „myAMC“ logo.

icons.heading

Icon in the middle of the top line of the GUI.

Default is„FlexFrame Autonomous Management Center“ icon.

icons.node.<POOLNAME>.<AN>

icons.node.bygroup.<poolname>.<groupname>

icons.node.<AN>

Icon for the Application Node with the name <AN>.

icons.nodes.<POOLNAME>

Icon for the Application Node of the pool <POOLNAME>.

icons.node.bygroup.<groupname>

icons.node.byos.<operatingsystem>

linux or solaris

Parameter Reference

FlexFrame Agents Guide 304

icons.nodes

node

icons.system.<POOLNAME>.<SID>

icons.system.<SID>

icons.systems.<POOLNAME>

icons.systems

7.5.15 FA Webservices and Hypervisor Monitor configuration

The server part of the FA WebGui has some configuration parameters.

The configuration file is /opt/myAMC/config/FA_WebGui.conf

The following parameters are used for the collection of the virtual nodes of a hostsystem:

builder.enabled.vmhost

Enable or disable VMHost-Checkers: true or false

builder.update-cycletime.vmhost

Cycletime (in seconds) for the monitoring of available ESX servers.

Parameter Reference

305 FlexFrame Agents Guide

7.6 FA DomainManager

7.6.1 Common

myAMC.FA-DomainManager is a component of myAMC.FA Performance and Accounting

Solution.

myAMC.FA-DomainManager processing measuring data which are collected from my-

AMC.FA-Agents and Collectors as ASCII-Files (called Collet-Files).

Reading of Collet-Files

Profil control, generation of alerts

Storage in database

7.6.2 Configuration

7.6.2.1 Common Parameters

The DomainManager needs the config file DomainManager.xml in the directory

/opt/myAMC/FA_DomainManager/config/.

LogLevel

Possible values: -1=Off, 1=Critical, 2=Error, 3=Warning, 4=Normal, 5=Info,

6=Babble, 7=Debug.

ReaderRefreshTime

Cycletime in seconds to look for new collets (default: 60).

7.6.2.2 Database Connection

The parameters for the database connection are in the same config file:

DatabaseDSN

ODBC database name (DSN), the same as in the file /etc/odbc.ini

(default: AMC_PERF).

DatabaseUser

Database user name (default: myAMC).

DatabasePassword

(default: FlexFrame).

Parameter Reference

FlexFrame Agents Guide 306

7.6.2.3 Accounting Configuration

The additional values for the billing have to be configured with the FA ConfigGUI. The GUI is started with the script /opt/myAMC/FA_ConfigGui/configgui.sh.

7.6.2.3.1 SAPS Value and Hyperthreading

The DomainManager uses an application node’s computing capacity (measured in SAPS

based on SAP Release 4.7 32bit) und Hyperthreading state to calculate used compute

time for each service. The SAPS value and Hyperthreading state are automatically de-

tected by FA AppAgent and reported to DomainManager via the performance collet.

These values can be overridden. Additionally, the SAPS value can be converted to other

SAP releases.

Pool and host names allow the use of wildcards (“*”) to specify a group of nodes with a

single configuration entry.

Parameter Reference

307 FlexFrame Agents Guide

7.6.2.3.2 Release Information for SAP Systems

The calculation of performance data for SAP systems depends on the release version.

Since the information of release in the collection is not included, this can be individually

configured for each system here. The system-specific configuration can be made for

every SID or for all SIDs or e.g. for productive SIDs with use of wildcards like “*” or “P*”.

Together with SAPS value per release the SAPS base can be changed.

Parameter Reference

FlexFrame Agents Guide 308

7.6.2.3.3 Pricing Information

Here the necessary price information can be configured for the calculation of billing data.

Parameter Reference

309 FlexFrame Agents Guide

7.6.2.4 Performance Profile

The profile for the monitoring of the performance values are set with the FA ConfigGUI. The GUI is started with the script /opt/myAMC/FA_ConfigGui/configgui.sh.

7.6.2.4.1 Profile for File System Monitoring

The thresholds for the file system monitoring are configured with this dialog.

Parameter Reference

FlexFrame Agents Guide 310

7.6.2.4.2 Profile for Directory Monitoring

The dialog for the directory thresholds is configured with this dialog.

311 FlexFrame Agents Guide

8 BlackBoard

8.1 General

myAMC.FA offers a command interface via which a node, an instance or a complete

system can be started and stopped. Furthermore it enables a system to be placed in the

nowatch status, which results in FA monitoring being disabled for this period. The com-

mand interface is used both for manual intervention and also for operation via the WebIn-

terface.

8.2 Implementation

The BlackBoard is implemented as an ASCII file which is secured against manipulation.

This file is also used as a log for the commands triggered via the BlackBoard.

Each BlackBoard command is valid for a particular period. After this the command is

discarded.

Each BlackBoard command has a mechanism which secures it against being modified

with an editor.

Command syntax:

Each command is represented by a line in the ASCII file blackboard.txt. This

line is formed of Variable=Value tuples. The following variables are available:

TimeStamp

Time the entry was made in the format “DD-MM-YY HH:MM:SS“

TimeLong

Timestamp of the entry (seconds since 1970)

SRC-ID

Source identifier (sender ID: "AppAgent", "CtrlAgent", "WebGui", "Extern" etc.)

SRC-Hostname

Host name of the sender

CMD-ID

Command identifier: String which identifies the command.

vFF

Name of the virtual FlexFrame for which this command applies.

Group

Name of the group for which this command applies.

Service

Name of the service for which this command applies.

BlackBoard

FlexFrame Agents Guide 312

SID

SID of the SAP system for which this command applies.

Inst-Nr

Instance number for which this command applies.

Node

Host name of the node for which this command applies.

Value

Value for specific commands.

Validity

Validity period for this command in seconds (examples: "0", "180", etc.).

Key

String which protects the command against manipulation and entries made with

an editor.

Example:

TimeStamp=31-12-2003 15:00:10;

TimeLong=1234567899;

SRC-ID=myAMC.FA_WebInterface;

SRC-Hostname=vader;

CMD-ID=Service_Start;

vFF=Bayer1;

Group=Produktiv;

Service=SRV_APP;

SID=P*;

Inst-Nr=;

Node=;

Value=;

Validity=240;

Key=65h57709845kjjhjkh465480

Individual command syntax fields can be empty. These are then not entered in the

BlackBoard file.

Individual command syntax fields can be filled with keywords (e.g. "*"). Wildcards

can also be used.

An empty field does not mean “*” !

If, for example, a command is to apply for all nodes, Node=* must be specified.

BlackBoard

313 FlexFrame Agents Guide

The following SRC-IDs (source identifiers) are currently permitted:

myAMC.FA_AppAgent

myAMC.FA_CtrlAgent

myAMC.FA_WebInterface

myAMC.FA_BBTool

myAMC.FA_BBTool_1

myAMC.FA_BBTool_2

myAMC.FA_BBTool_3

myAMC.FA_BBTool_4

myAMC.FA_BBTool_5

No other SRC-IDs are accepted.

BlackBoard

FlexFrame Agents Guide 314

8.3 Generating BlackBoard Commands

8.3.1 WebInterface

Commands can be issued to the BlackBoard from the myAMC.FA WebInterface if in-

teraction is enabled or if the user’s rights permit this.

Here the variables required are requested by the users, if necessary, and the command

is written to the BlackBoard.

Over the Webinterface only the commands permitted for the relevant element (pool,

group, node, service) are offered.

In future enhancements it will also be possible to store security prompts and password

queries here to provide the greatest degree of security against user errors.

The actual entry in the BlackBoard file is made using the BBTool.sh script.

Hint: This interaction with WebInterface will be not supported by FlexFrame.

Example: Usage of WebInterface to generate BlackBoard commands:

With “right-click” to a node/service in the tree the context menu will be shown. There

services can be started, stopped or set to Watch/NoWatch.

Then the “Execute service action”-menu will appear, where depending on the selected

action different choices may be done.

BlackBoard

315 FlexFrame Agents Guide

Next press „Execute“ to write the action in the BlackBoard. The further execution will be

done by the FA-Agents (after some delay).

8.3.2 Interactive

BlackBoard commands can be entered manually in the BlackBoard file using the

BBTool.sh and BBT_dialog.sh scripts.

The scripts and programs only provide a limited plausibility check.

You should therefore prefereably use the myAMC.FA WebInterface.

8.4 Commands

Command Parameters

(wildcards permitted)

Parameters

(no wildcards)

Value ?

Service_Start Node, vFF Group, Service,

SID, Inst-Nr

(with APP)

BlackBoard

FlexFrame Agents Guide 316

Command Parameters

(wildcards permitted)

Parameters

(no wildcards)

Value ?

Service_Start_as_SwGet

(for internal use only)

Node, vFF Group, Service,

SID, Inst-Nr

(with APP)

Service_Stop Node, vFF, Group,

Service, SID, Inst-Nr

Service_Restart Node, vFF, Group,

Service, SID, Inst-Nr

Service_SetPrio Node, vFF, Group,

Service, SID, Inst-Nr

Value Priority

Service_Watch Node, vFF, Group,

Service, SID, Inst-Nr

Service_Nowatch Node, vFF, Group,

Service, SID, Inst-Nr

Service_ReactionON Node, vFF, Group,

Service, SID, Inst-Nr

Service_ReactionOFF Node, vFF, Group,

Service, SID, Inst-Nr

Service_TrapsendON Node, vFF, Group,

Service, SID, Inst-Nr

Service_TrapsendOFF Node, vFF, Group,

Service, SID, Inst-Nr

Node_Reboot Node, vFF

Node_Shutdown Node, vFF

Node_Switchover Node, vFF

Free command

(only autonomous test and

support)

Node, vFF Value Command

317 FlexFrame Agents Guide

9 FlexFrame Autonomous Agent Traps

FlexFrame Autonomous Agents can be easily linked into Enterprise Management scenar-

ios. They supply an SNMP trap for all major status changes and for all reactions which

are implemented.

9.1 General

Each trap supplies all the important information on the time, physical and virtual identifi-

cation of the trap sender, and the severity, through to a meaningful message text in short

or long form, enabling it to be used directly for display in Enterprise Event Management

Systems or as a brief info, mail or SMS.

The contents of the traps of the FlexFrame Agents V1.0 and V2.0 are in principle identi-

cal. Trap attributes which did not exist in Version 1.0, e.g. pool name and group name,

are not sent.

The format of the FlexFrame Autonomy traps is such that they can be analyzed and fur-

ther processed in Enterprise Management Systems using filter modules. All important

attributes which concern FlexFrame Autonomy can be found in the variable bindings of a

FlexFrame Autonomy trap.

Enterprise OID 1.3.6.1.4.1.231.694.27,

Major Trap ID 6

Minor Trap ID 2

All messages contain a severity code. The following section describes the different sever-

ity levels:

Normal

Messages which indicate the transition to a normal state are sent with severity nor-

mal.

Warning

Messages regarding problems which are detected by the FA Agents are sent with

severity warning.

Critical

Messages regarding problems which lead to a reaction (restart, reboot, switchover)

are sent with severity critical.

Emergency

Messages regarding severe problems or situations are sent with severity emergen-

cy. This includes messages regarding MultiNodeFailures, which is a new feature as

of Version 3.0A10 of the FA Agents.

FlexFrame Agents Guide 318

9.2 Structur of FlexFrame Autonomy Traps

All traps are sent with the Enterprise OID 1.3.6.1.4.1.231.694.27, plus the Major Trap ID 6 and the Minor Trap ID 2.

General trap format (all variable bindings have the prefix 1.3.6.1.4.1.231.694).

FlexFrame Autonomous Agent Traps

FlexFrame Agents Guide 319

Example VB Description Comment

1 10 Trap version

27 20 Application ID (One of the two fields is always configurable)

myAMC.FA 21 Application name

1049117190 30 Timestamp (unixtime)

2003-04-01 31 Date %Y-%m-%d

12:15:00 32 Time %H:%M:%S

110 Symbolic group name (if configured)

111 Group name (if configured)

o11 121 System ID

belana 131 Physical device name

158.92.4.215 132 Physical IP address

1 140 Type: Alarm (1), Event (2), Log (3) ,

Heartbeat (4)

FA:ServiceUp

Log

152 Category (see VB 210) FA:<unique text as trap-id>

Log

00 161 Instance number

cio11_o11_00 162 Instance name <virtual_servername>_<sid>_<inst_no>

FlexFrame Autonomous Agent Traps

320 FlexFrame Agents Guide

Example VB Description Comment

250 170 Severity (see table)

Cust_1 190 Pool name (vFF) Name of pool to which the host belongs

BSP_GR_1 191 Group name Group name of the service

2 192 Priority Priority of the service

SRV_DBORA 200 Service type name Unique service type name

The following names are possible: SRV_DBORA, SRV_DBSAP,

SRV_CI, SRV_APP, SRV_SCS, SRV_ASCS, SRV_JC, SRV_J

message server 201 Subservice type

Down 202 Status

cio11 203 Virtual host name (server LAN)

00 204 Service ID In the first version it corresponds to the instance number (VB 161)

myAMC_FA_AppAgent 205 Sender Process name : myAMC_FA_{App|Ctrl}Agent

db 206 Service type display name Display name of service type

123 210 Message ID (see VB 152) Unique trap number (internal ID)

message server is down 500 Short message Foramatted short message text

message server of service ci

(O11 00) on node belana is down

501 Long message Foramatted long message text

FlexFrame Autonomous Agent Traps

FlexFrame Agents Guide 321

9.3 Overview of the FlexFrame Autonomy SNMP Traps

The following tables provide an overview of all defined traps of the FlexFrame Agents. Trap version V1 and V2.

These lists can be modified and extended at any time as a result of change requests.

A minus sign in a field means that this VB does not exist in the trap.

Table 1

VB 210

(as of

V2.0)

Internal ID see VB 210

(as of V2.0)

Short Message

VB 500

Long Message

VB 501

1 CtrlAgtUp has started <sender> on node <phys. server> has started

2 CtrlAgtDown has shut down <sender> on node <phys. server> has shut down

3 CtrlAgtSwitchOver switch over switching over service <service> <SID> <ID> node

<phys. server>

4 CtrlAgtSwitchOverFailed switch over failed switching over of service <service> <SID> <ID> from node

<phys. server> failed

5 CtrlAgtPoffHost_ok power off ok ‘<hostname>’ power off ok: <specific message>

6 CtrlAgtPoffHost_failed power off failed ‘<hostname>’ power off failed: <specific message>

7 CtrlAgtPoffHost_IF_ERR power off not done ‘<host-

name>’ power off failed: <specific message>

8 CtrlAgtPoffSwitchOffNetInterfacesOk switched off network interfaces switched off network interfaces

FlexFrame Autonomous Agent Traps

322 FlexFrame Agents Guide

Table 1

VB 210

(as of

V2.0)

Internal ID see VB 210

(as of V2.0)

Short Message

VB 500

Long Message

VB 501

9 CtrlAgtPoffSwitchOffNetInterfacesFailed failed to switch off network

interfaces failed to switch off network interfaces

10 CtrlAgentPoffNotDone Power off not done

'<hostname>’

Power off not done '<hostname>’ , because node may be

available. Administrator, check availability of node.

11 CtrlAgentPoffHhk_PING_ok ext. SwitchOver-Check

'<hostname>’: ping ok

ext. SwitchOver-Check '<hostname>’: ping ok <specific

message>

12 CtrlAgentPoffHhk_PING_fail ext. SwitchOver-Check

'<hostname>’: ping failed

ext. SwitchOver-Check '<hostname>’: ping failed <specific

message>

13 CtrlAgentPoffHhk_SSH_ok ext. SwitchOver-Check

'<hostname>’: ssh ok

ext. SwitchOver-Check '<hostname>’: ssh ok <specific

message>

14 CtrlAgentPoffHhk_SSH_fail ext. SwitchOver-Check

'<hostname>’: ssh failed

ext. SwitchOver-Check '<hostname>’: ssh failed <specific

message>

15 CtrlAgentMultiFailure_ShortTime MultiNodeFailure: ShortTime. MultiNodeFailure: ShortTime. <specific message>

16 CtrlAgentMultiFailure_LongTime MultiNodeFailure: LongTime. MultiNodeFailure: LongTime. <specific message>

17 CtrlAgentMultiFailure_AllNodes MultiNodeFailure: AllNodes. MultiNodeFailure: AllNodes. <specific message>

18 CtrlAgentNodeLiveMessageFailed Node live message failed

‘<hostname>’. Node live message failed ‘<hostname>’. <specific message>

FlexFrame Autonomous Agent Traps

FlexFrame Agents Guide 323

Table 1

VB 210

(as of

V2.0)

Internal ID see VB 210

(as of V2.0)

Short Message

VB 500

Long Message

VB 501

19 CtrlAgentNodeNotRechable_SwitchOver_decided Node not reachable, Switch-

Over decided ‘<hostname>’.

Node not reachable, SwitchOver decided ‘<hostname>’.

<specific message>

20 CtrlAgentNoSparePool_defined No spare pool defined. No spare pool defined. <specific message>

21 CtrlAgentNoSpare_to_TakeOver No spare for TakeOver. No spare for TakeOver. <specific message>

22 CtrlAgent_SPCT_SpareList_AddTo Add to list of spare nodes:

‘<hostname>’.

Add to list of spare nodes: ‘<hostname>’. <specific mes-

sage>

23 CtrlAgent_SPCT_SpareList_RemoveFrom Remove from list of spare

nodes: ‘<hostname>’.

Remove from list of spare nodes: ‘<hostname>’. <specific

message>

24 CtrlAgent_SPCT_RequestNotSuccessful Request not successful for

node: ‘<hostname>’.

Request not successful for node: ‘<hostname>’. <specific

message>

25 CtrlAgent_SPCT_MoveNodeSuccessful fa_move_node.sh successful

for node: ‘<hostname>’.

fa_move_node.sh successful for node: ‘<hostname>’. <spe-

cific message>

26 CtrlAgent_SPCT_MoveNodeNotSuccessful

fa_move_node.sh not suc-

cessful for node: ‘<host-

name>’.

fa_move_node.sh not successful for node: ‘<hostname>’.

<specific message>

27 CtrlAgent_VM_LicenseToKillServer Get the license to kill the VM-

Host. VM: ‘<hostname>’.

Get the license to kill the VM-Host. VM: ‘<hostname>’.

<specific message>

FlexFrame Autonomous Agent Traps

324 FlexFrame Agents Guide

Table 1

VB 210

(as of

V2.0)

Internal ID see VB 210

(as of V2.0)

Short Message

VB 500

Long Message

VB 501

28 CtrlAgent_VM_NOLicenseToKillServer Get no license to kill the VM-

Host. VM: ‘<hostname>’.

Get no license to kill the VM-Host. VM: ‘<hostname>’. <spe-

cific message>

29 CtrlAgent_VM_Message VM-Host check gives a mes-

sage. VM: ‘<hostname>’.

VM-Host check gives a message. VM: ‘<hostname>’. <spe-

cific message>

30 CtrlAgtPoffHost_SD Valuid shutdown valid ‘<hostname>’ shutdown valid: <specific message>

31 CtrlAgtPoffHost_SD_Invalid shutdown invalid ‘<hostname>’ shutdown invalid: <specific message>

100 AgentUp has <state> <sender> on node <phys. server> has <state>

101 AgentDown has <state> <sender> on node <phys. server> has <state>

110 NodeShutDown (as of V2.0) node <state> node <phys. server> has <state>

111 NodeRebooting (as of V2.0) node <state> node <phys. server> has <state>

112 NodeRebootStart (as of V2.0) node <state> node <phys. server> has <state>

113 NodeSwitchOver (as of V2.0) node <state> node <phys. server> has <state>

115 NodeTakeOverFailed (as of V2.0) node <state> node <phys. server> has <state>

200 ServiceStarting is <state> service <service> on node <phys. server> is <state>

201 ServiceUp has <state> service <service> on node <phys. server> has <state>

FlexFrame Autonomous Agent Traps

FlexFrame Agents Guide 325

Table 1

VB 210

(as of

V2.0)

Internal ID see VB 210

(as of V2.0)

Short Message

VB 500

Long Message

VB 501

202 ServiceStartFailed has <state> service <service> on node <phys. server> has <state>

203 ServiceStopping is <state> service <service> on node <phys. server> is <state>

204 ServiceDown has <state> service <service> on node <phys. server> has <state>

205 ServiceStopFailed has <state> service <service> on node <phys. server> has <state>

206 ServiceFailed <state> service <service> on node <phys. server> <state>

207 ServiceRestart (as of V2.0) is <state> service <service> on node <phys. server> is <state>

208 ServiceRestartFailed <state> service <service> on node <phys. server> <state>

209 ServiceWatch (as of V2.0) <state> watching service <service> on node <phys. server>

210 ServiceNowatch (as of V2.0) <state> No longer watching service <service> on node <phys. serv-

er>

211 ServiceReboot (as of V2.0) Is <state> service <service> on node <phys. server> is <state>

212 ServiceRebootStart (as of V2.0) Is <state> service <service> on node <phys. server> is <state>

213 ServiceSwitchOver (as of V2.0) Is <state> service <service> on node <phys. server> is <state>

214 ServiceSwitchOverStart (as of V2.0) Is <state> service <service> on node <phys. server> is <state>

FlexFrame Autonomous Agent Traps

326 FlexFrame Agents Guide

Table 1

VB 210

(as of

V2.0)

Internal ID see VB 210

(as of V2.0)

Short Message

VB 500

Long Message

VB 501

215 ServiceFlagPhase (as of V8.0) Is <state> service <service> on node <phys. server> is <state>

300 (1)

SubServiceDown is <state> saposcol on node <phys. server> is <state>

300 (2)

<ServiceSubType> of service <service> on node

<phys. server> is <state>

301 SubServiceFailed <state> <ServiceSubType> of service <service> on node

<phys. server> <state>

302 SubServiceDeleted <state> <state> <ServiceSubType> for service <service> on node

<phys. server>

400 CHK_Filers Filer <state> <specific message>

401 CHK_Files File <state> <specific message>

402 CHK_Lock Lock <state> <specific message>

403 CHK_Mounts Mount <state> <specific message>

404 CHK_SRDF_NAS_FH_ErrCode SRDF Check ErrCode <specific message>

405 CHK_SRDF_NAS_FH_SRDFFailed SRDF failed <specific message>

406 CHK_SRDF_NAS_FH_AdminCall SRDF Admin intervention

necessary <specific message>

FlexFrame Autonomous Agent Traps

FlexFrame Agents Guide 327

Table 1

VB 210

(as of

V2.0)

Internal ID see VB 210

(as of V2.0)

Short Message

VB 500

Long Message

VB 501

410 CHK_TimeSync_JumpDetected

(for future use) Time jump detected <specific message>

411 CHK_TimeSync_DiffDetected

(for future use) Time difference detected <specific message>

450 PERF_SpaceUtilFS_VExc_MaxUtilization Perf Filesystem 'MaxUtiliza-

tion' exceeded <specific message>

451 PERF_SpaceUtilFS_VExc_MaxGrowthRate Perf Filesystem

'MaxGrowthRate' exceeded <specific message>

500 BB_get node <state> <specific message>

501 BB_DoIt node <state> <specific message>

502 BB_Error node <state> <specific message>

503 BB_NoMatch node <state> <specific message>

FlexFrame Autonomous Agent Traps

328 FlexFrame Agents Guide

Table 2

VB 210

(as of V2.0) Service VB 200

Service Subtype

VB 201

ID

VB 204

Logical Server Name in

ServerLAN (SL) VB 203

SID

VB 121

Long Instance

No. VB 161

1 – 2 - - - - - -

3

SRV_DBORASRV_DBSAP, SRV_LC

-

- SL <SID> -

SRV_CI, SRV_JC, SRV_SCS,

SRV_ASCS, SRV_APP, SRV_J <ID> SL <SID> <Inst No>

SRV_ERS <ID> - <SID> <Inst No>

4

SRV_DBORASRV_DBSAP, SRC_LC

-

- SL <SID> -

SRV_CI, SRV_JC, SRV_SCS, RV_ASCS,

SRV_APP, SRV_J, SRV_ERS <ID> SL <SID> <Inst No>

SRV_ERS <ID> - <SID> <Inst No>

5 – 10,

18 – 19

22 – 31

<hostname> - - - - -

1-2,

11-17, 20 -

21

100 – 101,

110 – 113,

115

- - - - - -

FlexFrame Autonomous Agent Traps

FlexFrame Agents Guide 329

Table 2

VB 210

(as of V2.0) Service VB 200

Service Subtype

VB 201

ID

VB 204

Logical Server Name in

ServerLAN (SL) VB 203

SID

VB 121

Long Instance

No. VB 161

200 – 215

SRV_DBORASRV_DBSAP, SRV_LC

-

- SL <SID> -

SRV_CI, SRV_JC, SRV_SCS,

SRV_ASCS, SRV_APP, SRV_J <ID> SL <SID> <Inst No>

SRV_ERS <ID> - <SID> <Inst No>

300 (1)

- saposcol - SL - -

300 (2)

SRV_DBSAP, SRV_LC vserver, kernel

- SL - - SRV_DBORA

ora_dbw, ora_lgwr,

ora_ckpt, ora_smon,

ora_pmon, tnslsnr,

ora_mman, ora_arc

SRV_ERS ers.sap <ID> - <SID> <Inst No>

SRV_CI ms.sap, dw.sap

<ID> SL <SID> <Inst No> SRV_JC jc.sap

SRV_SCS, SRV_ASCS ms.sap, en.sap

SRV_APP dw.sap

FlexFrame Autonomous Agent Traps

330 FlexFrame Agents Guide

SRV_J jc.sap

Table 2

VB 210

(as of V2.0) Service VB 200

Service Subtype

VB 201

ID

VB 204

Logical Server Name in

ServerLAN (SL) VB 203

SID

VB 121

Long Instance

No. VB 161

301

SRV_DBORASRV_DBSAP, SRV_LC

server-lan ping

- SL <SID> -

SRV_CI, SRV_JC, SRV_SCS,

SRV_ASCS, SRV_APP, SRV_J <ID> SL <SID> <Inst No>

SRV_CI, SRV_JC, SRV_SCS,

SRV_ASCS, SRV_APP, SRV_J client-lan ping <ID> SL <SID> <Inst No>

302

SRV_DBORASRV_DBSAP, SRV_LC

control file

- SL <SID> -

SRV_CI, SRV_JC, SRV_SCS,

SRV_ASCS, SRV_APP, SRV_J <ID> SL <SID> <Inst No>

SRV_ERS <ID> - <SID> <Inst No>

400 – 406,

410 – 411,

450 – 451,

500

- - - - - -

501 – 503

SRV_DBORASRV_DBSAP, SRV_CI,

SRV_JC, SRV_SCS, SRV_ASCS,

SRV_APP, SRV_J, SRV_ERS, SRV_LC

- <ID> SL <SID> <Inst No>

FlexFrame Autonomous Agent Traps

FlexFrame Agents Guide 331

Table 3

VB 210

(as of V2.0) State VB 202 Sender VB 205 Long Severity VB 170

1 started myAMC_FA_[App]|[Frame]|[Ctrl]Agent 50

2 shut down myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

3 - myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

4 failed myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

5 poff ok myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

6 poff failed myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

7 poff not done myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

8 netoff ok myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

9 netoff failed myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

10 poff not done myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

11 ping ok myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

12 ping failed myAMC_FA_[App]|[Frame]|[Ctrl]Agent 50

13 ssh ok myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

14 ssh failed myAMC_FA_[App]|[Frame]|[Ctrl]Agent 50

15 MultiNodeFailure: ShortTime myAMC_FA_[App]|[Frame]|[Ctrl]Agent 275

FlexFrame Autonomous Agent Traps

332 FlexFrame Agents Guide

Table 3

VB 210

(as of V2.0) State VB 202 Sender VB 205 Long Severity VB 170

16 MultiNodeFailure: LongTime myAMC_FA_[App]|[Frame]|[Ctrl]Agent 275

17 MultiNodeFailure: AllNodes myAMC_FA_[App]|[Frame]|[Ctrl]Agent 275

18 Node live message failed myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

19 Node not reachable myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

20 No spare pool defined myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

21 No spare for TakeOver myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

22 Add to list of spare nodes myAMC_FA_[App]|[Frame]|[Ctrl]Agent 50

23 Remove from list of spare nodes myAMC_FA_[App]|[Frame]|[Ctrl]Agent 50

24 Request not successful for node myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

25 fa_move_node.sh successful for node myAMC_FA_[App]|[Frame]|[Ctrl]Agent 50

26 fa_move_node.sh not successful for

node myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

27 Get the license to kill the VM-Host. VM myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

28 Get no license to kill the VM-Host. VM myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

29 VM-Host check gives a message. VM myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

FlexFrame Autonomous Agent Traps

FlexFrame Agents Guide 333

Table 3

VB 210

(as of V2.0) State VB 202 Sender VB 205 Long Severity VB 170

30 shutdown valid myAMC_FA_[App]|[Frame]|[Ctrl]Agent 50

31 shutdown invalid myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

100 started myAMC_FA_[App]|[Frame]|[Ctrl]Agent 50

101 shut down myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

110 shut down myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

111 reboot (down) myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

112 reboot (up) myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

113 switch over myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

115 take over failed myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

200 starting myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

201 started myAMC_FA_[App]|[Frame]|[Ctrl]Agent 50

202 failed to start myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

203 stopping myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

204 stopped myAMC_FA_[App]|[Frame]|[Ctrl]Agent 50

205 failed to stop myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

FlexFrame Autonomous Agent Traps

334 FlexFrame Agents Guide

Table 3

VB 210

(as of V2.0) State VB 202 Sender VB 205 Long Severity VB 170

206 failed myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

207 restart myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

208 failed to restart myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

209 watch myAMC_FA_[App]|[Frame]|[Ctrl]Agent 50

210 no watch myAMC_FA_[App]|[Frame]|[Ctrl]Agent 50

211 reboot myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

212 reboot (start) myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

213 swich over myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

214 switch over (start) myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

215 PHASE-flag: <text> myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

300 (1)

down myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

300 (2)

down myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

301 failed (<nr>) myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

302 delete myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

400 failed myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

FlexFrame Autonomous Agent Traps

FlexFrame Agents Guide 335

Table 3

VB 210

(as of V2.0) State VB 202 Sender VB 205 Long Severity VB 170

401 failed myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

402 failed myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

403 failed myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

404 SRDF Check ErrCode myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250/275

405 SRDF failed myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250/275

406 SRDF Admin intervention necessary myAMC_FA_[App]|[Frame]|[Ctrl]Agent 275

410 Time jump myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150/250

411 Time difference myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150/250

450 Perf Filesystem 'MaxUtilization' exceed-

ed myAMC_FA_[App]|[Frame]|[Ctrl]Agent 250

451 Perf Filesystem 'MaxGrowthRate' ex-

ceeded myAMC_FA_[App]|[Frame]|[Ctrl]Agent 150

500 BB get cmd myAMC_FA_[App]|[Frame]|[Ctrl]Agent 50

501 BB do cmd myAMC_FA_[App]|[Frame]|[Ctrl]Agent 50

502 BB cmd error myAMC_FA_[App]|[Frame]|[Ctrl]Agent 50, 150, 250

FlexFrame Autonomous Agent Traps

336 FlexFrame Agents Guide

Table 3

VB 210

(as of V2.0) State VB 202 Sender VB 205 Long Severity VB 170

503 BB cmd no match myAMC_FA_[App]|[Frame]|[Ctrl]Agent 50, 150, 250

FlexFrame Agents Guide 337

10 FA Troubleshooting

10.1 General

The FA Agents offer a large number of diagnostic options for detecting and diagnosing

problems on the FA Agents themselves or other components.

Problems concerning FA Agents can be assigned to one of the following categories:

FlexFrame installation and configuration errors

Parameter errors

Configuration errors

Detection, reaction errors, start, stop, maintenance errors

Power-shutdown errors

Typical consequences of installation and configuration errors are:

FA Agents fail to start

Error messages during startup of FA Agents

10.2 Incident Diagnosis

Error: Mount points missing

Diagnosis:

In the case of mount points monitored by FA Autonomy, traps are sent to the central

trap consoles. With other mount points which are absolutely essential for the opera-

tion of the node concerned it can happen that the agents cannot be started as the di-

rectories required are not available.

Response:

Provide the mount points required with the appropriate mount options.

Error: Mount points without “File Locking”

Diagnosis:

The FA Agents log this situation both in the operating system’s Syslog and in special files (/opt/myAMC/vFF/log/log_syslog*).

Response:

Provide the mount points required with the appropriate mount options (lock).

Error: Rights for the directories/files are not sufficient

FA Troubleshooting

338 FlexFrame Agents Guide

Diagnosis:

In the case of files monitored by FA Autonomy, traps are sent to the central trap con-

soles. With other directories/files which are absolutely essential for the operation of

the node concerned it can happen that the agents cannot be started as the directo-

ries/files required are not available.

Response:

Provide the directories/files with the required rights.

Error: Agents do not have the authorization to write to the

directories assigned

Diagnosis:

The FA Autonomy work and log files are not written.

Response:

Provide the directories/files with the required rights.

Error: Version incompatibility

FlexFrame installation and FlexFrame Autonomy installation are not directly compati-

ble. This can always be the case when older FlexFrame installations are updated

with new FlexFrame Autonomy Agents.

Diagnosis:

For diagnosis and troubleshooting, the mount points, the directory structure and the

access rights to the directories used by the agents must be checked.

Response:

Using the command line tool, check that the parameters used in the FA config files

are compatible with the version and syntactically correct.

Error: Pool assignment not found

A node is assigned to the wrong pool or to the default pool.

Diagnosis:

Display on the FA_WebGUI or in the agent’s start trap and display on an event con-

sole.

Response:

Check the LDAP configuration parameters, call the PGTool Pool.sh and check the

pool name returned.

Check the pool membership for each node.

Error: Group assignment is not correct

FA Troubleshooting

FlexFrame Agents Guide 339

Diagnosis:

Display on the FA_WebGUI or in the agent’s start trap and display on an event con-

sole.

Response:

Check the group configuration in the group configuration file. Check the group mem-

bership for each node.

Error: Service priority not recognized

Diagnosis:

Display on the FA_WebGUI or in the agent’s start trap and display on an event con-

sole.

Response:

Check the configuration of the service class and service priority in the group configu-

ration file. Check the values for each node.

Error: Availability problem not rectified by autonomous reaction

Diagnosis:

Services are discontinued (possibly due to hardware fault) and are not made avai-

lable again by FlexFrame Autonomy.

Response:

Check whether nodes are available for taking over the services (Spare Nodes).

Check whether the FA Agents on the nodes involved have been started.

Error: Services do not start

Constant reboot

Permanent switchover

Diagnosis:

SAP services which are started do not enter run mode but are repreatedly restarted

or, if the problem escalates, the node is rebooted or an internal SwitchOver takes

place. Possible causes:

The MaxRestart time for the service is too short. This parameter can be adjusted in

the FA configuration.

The virtual interfaces cannot be reached.

There is a permanent problem which prevents a service being started (e.g. neces-

sary database recovery).

Response:

Stop the FA Agents to interrupt escalation of the reaction and check whether the ser-

vice can be started manually.

If the service cannot be started manually, this problem must be corrected by the ad-

FA Troubleshooting

340 FlexFrame Agents Guide

ministrator.

If the service can be started manually, the time required for this must be matched to

the MaxStart time and MaxRestart time in the configuration and the configuration

must be adjusted, if necessary.

If the virtual interfaces cannot be reached from the Application Agent, the network

configuration must be checked.

Error: Service cannot be stopped

Diagnosis:

An active SAP service is repeatedly restarted after a manual stop command .

Response:

If the FlexFrame SAP scripts were not used for the manual stop command, this is the

cause. The FlexFrame SAP scripts must be used.

If the FlexFrame SAP scripts were used, the Monitor Alert Script might not be availa-

ble or does not have the required rights.

However, it is also possible that the Monitor Alert Time and CycleTime are configured

incorrectly. The agents’ CycleTime is too long in relation to the Monitor Alert Time.

The Monitor Alert Time must be at least 3 * the CycleTime.

Error: Maintenance activities are interrupted by autonomous

reactions

Diagnosis:

Unwanted autonomous reactions during maintenance.

Response:

Set NoWatch for the service concerned or stop the Application Agents for the node

concerned and restart them after maintenance has been completed.

Error: Incorrect display on the FA_WebGUI

Diagnosis:

The state checked manually does not match the display.

Response:

Check whether the Application Agents concerned, the Control Agents concerned and

the web server are running properly for the WebInterface.

FA Troubleshooting

FlexFrame Agents Guide 341

10.3 FA Work and Log Files

10.3.1 General

The FlexFrame Autonomy Agents write detailed log files.

The log files of the FlexFrame Autonomy Agents can be used for the diagnosis.

The functions of the FA Agents are documented in their own files. These files may not be

modified manually as this can impair fault-free operation of the FA Agents or lead to erro-

neous reactions.

These files are created dynamically during ongoing operation. Deleting these files leads

to a status in which the Autonomous Agents reorganize themselves, and from this point

they reevaluate the situation from the current viewpoint without any previous knowledge.

10.3.2 Overview, Principal Directories, Files

Base directory: /opt/myAMC/

Base directory: /opt/local/myAMC/

Version numbers: In the table below, V<v>K<r> corresponds to

V<version number>K<revision_number>.

Subdirectories Content

./scripts Scripts for various tasks

./scripts/sap Link to the FlexFrame scripts

./scripts/PowerMng Scripts for the power managemnet

blades.

./scripts/ShutDown_Node Scripts to shutdown a node.

./scripts/fa_list_services.sh Script to list all FlexFrame service states.

./scripts/allnodes Script to execute a command at all nodes

of a pool.

./config General configuration data

FA Troubleshooting

342 FlexFrame Agents Guide

Subdirectories Content

./config/FA_WebGui.conf General settings for the WebGUI (directo-

ries, cycle times, database settings)

./config/amc-users.xml User management

./FA_AppAgent Installation path of myAMC. FA_AppAgent

and of diverse scripts.

./FA_AppAgent/myAMC.FA_AppAgent Start/Stop scripts AppAgent

./FA_AppAgent/PGTool_Pool.sh Determination of pool membership

./FA_AppAgent/PGTool_Version.sh Determination of pool version

./FA_AppAgent/PVget.sh Determination of the SAPS number of a

node

./FA_ AppAgent/BBTool.sh BlackBoard control

./FA_ AppAgent/BBT_dialog.sh BlackBoard dialog mode control

./FA_AppAgent/bin_Linux_SLES9_<VxxKyy>.

/FA_AppAgent/lib_Linux_SLES9_<VxxKyy>

Binaries and libraries for each version.

./FA_AppAgent/config myAMC.FA_AppAgent-specific configura-

tion data

./FA_AppAgent/log empty

./FA_CtrlAgent Installation path of myAMC. FA_CtrlAgent

and of scripts

./FA_CtrlAgent/myAMC.FA_AppAgent Start/StopScripts CtrlAgent

./FA_CtrlAgent/PGTool_Pool.sh Determination of pool membership

./FA_CtrlAgent/PGTool_Version.sh Determination of pool version

./FA_CtrlAgent/PVget.sh Determination of the SAPS number of a

node

./FA_CtrlAgent/BBTool.sh BlackBoard control

./FA_CtrlAgent/BBT_dialog.sh BlackBoard dialog mode control

./FA_CtrlAgent/bin_Linux_SLES9_<VxxKyy>

./FA_CtrlAgent/lib_Linux_SLES9_<VxxKyy>

Binaries and libraries for each version.

FA Troubleshooting

FlexFrame Agents Guide 343

Subdirectories Content

./FA_CtrlAgent/config myAMC.FA_CtrlAgent-specific configura-

tion data

./FA_CtrlAgent/log empty

./FA_FrameAgent Installation path of myAMC.

FA_FrameAgent and of diverse scripts.

./FA_FrameAgent/myAMC.FA_FrameAgent Start/Stop scripts FrameAgent

./FA_FrameAgent/PGTool_Pool.sh Determination of pool membership

./FA_FrameAgent/PGTool_Version.sh Determination of pool version

./FA_FrameAgent/PVget.sh Determination of the SAPS number of a

node

./FA_ FrameAgent/BBTool.sh BlackBoard control

./FA_ FrameAgent/BBT_dialog.sh BlackBoard dialog mode control

./FA_FrameAgent/bin_Linux_SLES9_<VxxKyy

>./FA_FrameAgent/lib_Linux_SLES9_<VxxKy

y>

Binaries and libraries for each version.

./FA_FrameAgent/config myAMC.FA_FrameAgent-specific configu-

ration data

./FA_FrameAgent/log empty

./FA_ConfigGui Installation path of myAMC.

FA_ConfigGui.

./FA_DomainManager Installation path of myAMC.

FA_DomainManager.

./FA_LogAgent Installation path of myAMC.

FA_LogAgent.

FA Troubleshooting

344 FlexFrame Agents Guide

Subdirectories Content

./FA_Messenger Installation path of myAMC.

FA_Messenger.

./FA_ Messenger/log/Robot.txt Protocolfile of received messages.

./FA_WebGui Installation path of myAMC. FA_WebGui.

./vFF Pool-specific (vFF) data

./vFF/SpareRequest Request directory for spares from spare

pool

./vFF/log Pool-specific log files

./vFF/log/myAMC_FA_Pools.xml

./vFF/log/myAMC_FA_Pools-default.xml

Pools configuration file and its default

version (this is used as LDAP cache)

./vFF/Common/.vFF_template.<VxxKxx> Template of pool-specific data for each

version

./vFF/Common/.vFF_template.<VxxKxx>/

config

Configuration

./vFF/Common/.vFF_template.<VxxKxx>/

config/TrapTargets.xml

Trap targets

./vFF/Common/.vFF_template.<VxxKxx>/

config/myAMC_FA.xml

./vFF/Common/.vFF_template.<VxxKxx>/

config/myAMC_FA-default.xml

myAMC.FA configuration and delivery

status (default).

./vFF/Common/.vFF_template.<VxxKxx>/

config/myAMC_FA_Checks.xml

./vFF/Common/.vFF_template.<VxxKxx>/

config/myAMC_FA_Checks-default.xml

Definition of „additional Checks“ and

delivery status (default).

FA Troubleshooting

FlexFrame Agents Guide 345

Subdirectories Content

./vFF/Common/.vFF_template.<VxxKxx>/

config/myAMC_FA_GUI.xml

./vFF/Common/.vFF_template.<VxxKxx>/

config/myAMC_FA_GUI-default.xml

myAMC.FA GUI configuration and deliv-

ery status (default).

./vFF/Common/.vFF_template.<VxxKxx>/

config/myAMC_FA_Groups.xml

./vFF/Common/.vFF_template.<VxxKxx>/

config/myAMC_FA_Groups-default.xml

myAMC.FA groups configuration and

delivery status (default).

This is used as LDAP cache

./vFF/Common/.vFF_template.<VxxKxx>/

config/myAMC_FA_Hosts.xml

./vFF/Common/.vFF_template.<VxxKxx>/

config/myAMC_FA_Hosts-default.xml

Host configuration from LDAP and deliv-

ery status (default).

This is used as LDAP cache

./vFF/Common/.vFF_template.<VxxKxx>/

config/myAMC_FA_SD_Sec.xml

./vFF/Common/.vFF_template.<VxxKxx>/

config/myAMC_FA_SD_Sec-default.xml

myAMC.FA shutdown security configura-

tion and delivery status (default).

./vFF/Common/.vFF_template.<VxxKxx>/

config/myAMC_FA_Rules.xml

./vFF/Common/.vFF_template.<VxxKxx>/

config/myAMC_FA_Rules-default.xml

myAMC.FA service rules and delivery

status (default).

./vFF/Common/.vFF_template.<VxxKxx>/

config/myAMC_FA_SelectionRules.xml

./vFF/Common/.vFF_template.<VxxKxx>/

config/myAMC_FA_SelectionRules-

default.xml

Definition of „SelectionRules“ for „Pool

independent spare node“ and delivery

status (default).

./vFF/Common/.vFF_template.<VxxKxx>/log

./vFF/Common/.vFF_template.<VxxKxx>/log

/AppAgt

./vFF/Common/.vFF_template.<VxxKxx>/log

/CtlrAgt

./vFF/Common/.vFF_template.<VxxKxx>/log

/FrameAgt

Logfiles for each pool of:

myAMC.FA_AppAgent

myAMC.FA_CtrlAgent

myAMC.FA_FrameAgent

./vFF/Common/.vFF_template.<VxxKxx>/

data

./vFF/Common/.vFF_template.<VxxKxx>/

data/FA

Work files

./vFF/Common/.vFF_template.<VxxKxx>/

data/FA/livelist

Live list

livelist.log

FA Troubleshooting

346 FlexFrame Agents Guide

Subdirectories Content

./vFF/Common/.vFF_template.<VxxKxx>/

data/FA/xmlrepository

XML repository for the web interface

livelist.

xmlServices_<nodename>.xml

./vFF/Common/.vFF_template.<VxxKxx>/

data/FA/servicelists

Service lists

Services_<nodename>.lst

./vFF/Common/.vFF_template.<VxxKxx>/

data/FA/servicelogs

Service logs (history)

Services_<nodename>.log

./vFF/Common/.vFF_template.<VxxKxx>/

data/FA/reboot

Reboot files

Reboot_<nodename>.lst

Persistent FA-Info

Persist_FA_Info.txt

./vFF/Common/.vFF_template.<VxxKxx>/

data/FA/switchover

SwitchOver files

SwitchOver_<nodename>.lst

./vFF/Common/.vFF_template.<VxxKxx>/

data/FA/blackboard

BlackBoard

blackboard.txt

./vFF/Common/.vFF_template.<VxxKxx>/

data/FA/performance

Measured performance data

./vFF/Common/.vFF_Master Pool-Master with the same directories and

files as in template

./vFF/vFF_Cust_1

./vFF/vFF_Cust_1/config

./vFF/vFF_Cust_1/log/…

./vFF/vFF_Cust_1/data

./vFF/vFF_Cust_1/data/FA/….

Pool-specific data for pool “Cust_1”

(example).

See above for the description of the sub-

directories and files.

./vFF/vFF_Cust_2

./vFF/vFF_Cust_2/config

./vFF/vFF_Cust_2/log/…

./vFF/vFF_Cust_2/data

./vFF/vFF_Cust_2/data/FA/….

Pool-specific data for pool “Cust_2”

(example).

See above for the description of the sub-

directories and files.

FA Troubleshooting

FlexFrame Agents Guide 347

10.3.3 Collecting Diagnostic Information for Support Assis-tance

If support is needed, there is special data needed in the FlexFrame Support. This infor-

mation is required to analyze problems with FlexFrame and the Autonomous Agents.

Error description, as precise as possible

What is the problem or error? On which pool/node/service does it occur?

Version of the FA Agents installed

Run rpm -qa | grep myAMC on the Control Node.

Configuration, work and log files of the FA Agents

The following script creates an archive with the desired information:

/opt/myAMC/FA_CtrlAgent/SAVE_FA_files_for_diag.sh

This script must be invoked on the control- node!

cd /opt/myAMC/FA_CtrlAgent

./SAVE_FA_files_for_diag.sh

Usage

cd /opt/myAMC/FA_CtrlAgent

./SAVE_FA_files_for_diag.sh –h usage: SAVE_FA_files_for_diag.sh <args>

-h (show this help)

-C (save config only)

-c "<customer name>" specify customer name

-i "<incident number>" specify incident number

-d "<problem description>" specify problem description

-P "<pools>" specify pools

-p <y Y n N> include performance files [Y/N]

-g <y Y n N> compress output file [Y/N]

-D LogFiles Delete log files

-D PerfFiles Delete performance files

-D LogAndPerfFiles Delete log and performance files

Please ensure, that this script will be started at the active Ctrl-Node (CtrlAgent

is active).

FA Troubleshooting

348 FlexFrame Agents Guide

The functions of the FA Agents are documented in various files. These files may not be

changed manually as this can impair error-free operation of the FA Agents or result in

incorrect reactions.

These files are created dynamically during ongoing operation. Deleting these files leads

to a status in which the Autonomous Agents reorganize themselves, and from this point

they re-evaluate the situation from the current viewpoint without any previous knowledge.

FA Troubleshooting

FlexFrame Agents Guide 349

10.3.4 Selected Files

The write cycle for the entries (with the exception of reboot, switchover and BlackBoard)

and the storage location of the files described in the following are defined using a param-

eter in the configuration file myAMC_FA.xml.

10.3.4.1 Livelist

Each FA AppAgent regularly enters itself in this list. Through these entries the my-

AMC.FA_CtrlAgent recognizes whether the various myAMC.FA_AppAgents are available

and functioning without error.

10.3.4.2 Services List

This file (testament) exists for each FA AppAgent on a node-specific basis. In it the agent

logs the services which it has detected using its detectors plus their current status. A

service-related status is logged in this file. The contents are updated after each detector

cycle.

10.3.4.3 Services Log

The contents of this file are identical to those of the Services-List file, with the differ-

ence that the history is contained in this file. This enables status changes and reaction

decisions to be detected and replicated.

10.3.4.4 Reboot

The contents of this file are identical to those of the Services-List file. The file serves

as an information storage when a reboot takes place. It is written only for the autonomous

reaction reboot and is deleted again after the reboot has been completed and the ser-

vices have been started up.

10.3.4.5 Switchover

The contents of this file are identical to those of the Services-List file. The file serves

as information storage (testament) when a switchover takes place. It is written only for the

autonomous reaction switchover and is deleted again after the services have been taken

over.

10.3.4.6 XML Repository

In terms of contents the files in the XML Repository are the same as those in the Livelist

and Services List. By contrast, the contents are written in XML notation and can thus be

visualized directly with the associated FA WebInterface.

The write cycle for the entries and the storage location of the file are defined using a

parameter in the configuration file myAMC_FA.xml.

FA Troubleshooting

350 FlexFrame Agents Guide

10.3.4.7 BlackBoard

The BlackBoard is an input interface for the FA Agents. Commands can be entered here

which are executed by the FA AppAgents. The commands have a specific validity period

and are secured against manipulation. The file is written manually using a tool which

guarantees, among other things, protection against manipulation.

10.3.5 FA Autonomy Diagnostic Tool

Manual diagnosis of the log files can be very time-consuming. The Fujitsu support organ-

ization works with specialized diagnostic tools which can analyze even large quantities of

data very quickly and efficiently. This service can be utilized when required and if a corre-

sponding service agreement exists.

To utilize this service, either individual log files or the entire virtual FA directory of a pool

can be sent to the support department, e.g. as a compressed and protected zip archive.

FA Troubleshooting

FlexFrame Agents Guide 351

10.3.6 Collecting Diagnostic Information for Support Assis-tance

If support is needed, there is special data needed in the FlexFrame Support. This infor-

mation is required to analyze problems with FlexFrame and the Autonomous Agents.

Error description, as precise as possible

What is the problem or error? On which pool/node/service does it occur?

Version of the FA Agents installed

Run rpm -qa | grep myAMC on the Control Node.

Configuration, work and log files of the FA Agents

The following script creates an archive with the desired information:

/opt/myAMC/FA_CtrlAgent/SAVE_FA_files_for_diag.sh

This script must be invoked on the control- node!

cd /opt/myAMC/FA_CtrlAgent

./SAVE_FA_files_for_diag.sh

Usage

cd /opt/myAMC/FA_CtrlAgent

./SAVE_FA_files_for_diag.sh –h usage: SAVE_FA_files_for_diag.sh <args>

-h (show this help)

-C (save config only)

-c "<customer name>" specify customer name

-i "<incident number>" specify incident number

-d "<problem description>" specify problem description

-P "<pools>" specify pools

-p <y Y n N> include performance files [Y/N]

-g <y Y n N> compress output file [Y/N]

-D LogFiles Delete log files

-D PerfFiles Delete performance files

-D LogAndPerfFiles Delete log and performance files

Please ensure, that this script will be started at the active Ctrl-Node (CtrlAgent

is active).

FA Troubleshooting

352 FlexFrame Agents Guide

The functions of the FA Agents are documented in various files. These files may not be

changed manually as this can impair error-free operation of the FA Agents or result in

incorrect reactions.

These files are created dynamically during ongoing operation. Deleting these files leads

to a status in which the Autonomous Agents reorganize themselves, and from this point

they re-evaluate the situation from the current viewpoint without any previous knowledge.

FlexFrame Agents Guide 353

11 Abbreviations

ABAP Advanced Business Application Programming

ACI Adaptive Computing Infrastructure

ACPI Advanced Configuration and Power Interface

APM Advanced Power Management

APOLC Advanced Planner & Optimizer Life Cache

CCU Console Connection Unit

CIFS Common Internet File System

DART Data Access in Real Time

DHCP Dynamic Host Configuration Protocol

DIT Domain Information Tree

ERP Enterprise Resource Planning

ESF Enhanced System Facility

EULA End User License Agreement

FAA FlexFrame Autonomous Agent

FC Fiber Channel

FTP File Transfer Protocol

IP Internet Protocol

IPMP IP Multipathing

LAN Local Area Network

LDAP Lightweight Directory Access Protocol

LUN Logical Unit Number

LVM Landscape Virtualization Management

SAP system for monitoring and controlling SAP landscapes.

MAC Media Access Control

MINRA Minimal Read Ahead

NAS Network Attached Storage

NDMP Network Data Management Protocol

NFS Network File System

Abbreviations

354 FlexFrame Agents Guide

NIC Network Interface Card

NVRAM Non-Volatile Random Access Memory

OBP Open Boot Prom

OLTP On-Line Transaction Processing

ONTAP Open Network Technology for Appliance Products

OSS Open Source Software

POST Power-On Self Test

PCL PRIMECLUSTER

PFS Production File System (on Celerra)

PW PRIMEPOWER

PXE Preboot Execution Environment

PY PRIMERGY

QA Quality Assurance

QS Quality of Service

RAID Redundant Array of Independent (or Inexpensive) Disks

RARP Reverse Address Resolution Protocol

RDBMS Relational Database Management System

RHEL Red Hat Enterprise Linux

RSB Remote Service Board

SCS System Console Software

SAP BW SAP Business Warehouse

SAPGUI SAP Graphical User Interface

SAPOSS SAP Online System Service

SID System Identifier

SLD System Landscape Directory

SLES SUSE Linux Enterprise Server

SMB Server Message Block

SMC System Management Console

SNMP Simple Network Management Protocol

Abbreviations

FlexFrame Agents Guide 355

SPOC Single Point Of Control

TELNET Telecommunications Network

TFTP Trivial File Transfer Protocol

UDP User Datagram Protocol

UPS Uninterruptible Power Supply

VLAN Virtual Local Area Network

VTOC Virtual Table Of Contents

WAN Wide Area Network

WAS Web Application Server

WAFL Write Anywhere File Layout

XSCF Extended System Control Facility

FlexFrame Agents Guide 357

12 Glossary

Advanced Business Application Programming

Proprietary programming language of SAP.

Advanced Power Management

Advanced Power Management defines a layer between the hardware and the operat-

ing system that effectively shields the programmer from hardware details.

Application Agent

A software program for monitoring and managing applications.

Application Node

A host for applications (e.g. SAP instances db, ci, agate, wgate, app etc.). This

definition includes Application Servers as well as Database Servers.

Automounter

The automounter is an NFS utility that automatically mounts directories on an NFS

client as they are needed, and unmounts them when they are no longer needed.

Autonomous Agent

Central system management and high availability software component of FlexFrame.

Blade

A special form factor for computer nodes.

BladeRunner

The working title for the solution part of SAP for FlexFrame.

BOOTPARAM

Boot time parameters of the kernel.

BRBACKUP

SAP backup and restore tools.

Celerra

NAS system of EMC.

Checkpoint Restore

On EMC Celerra a SnapSure feature that restores a PFS to a point in time using

checkpoint information. As a precaution, SnapSure automatically creates a new

checkpoint of the PFS before it performs the restore operation.

Client LAN

Virtual network segment within FlexFrame, used for client-server traffic.

Common Internet File System

A protocol for the sharing of file systems (same as SMB).

Glossary

358 FlexFrame Agents Guide

Computing Node

From the SAP ACI perspective: A host that is used for applications.

Control Agent

A software program for monitoring and managing nodes within FlexFrame.

Control LAN

Virtual network segment within FlexFrame, used for system management traffic.

Control Node

A physical computer system, controlling and monitoring the entire FlexFrame land-

scape and running shared services in the rack (dhcp, tftp, ldap etc.).

Control Station

A Control Node in an SAP ACI environment.

DART

Operating system of Celerra data movers (Data Access in Real Time).

Dynamic Host Configuration Protocol

DHCP is a protocol for assigning dynamic IP addresses to devices on a network.

Dynamic Host Configuration Protocol server

A DHCP server provides configuration parameters specific to the DHCP client host,

required by the host to participate on the Internet.

EMC NAS

Network attached storage for file systems of EMC.

Enterprise Resource Planning

Enterprise Resource Planning systems are management information systems that in-

tegrate and automate many of the business practices associated with the operations

or production aspects of a company.

Ethernet

A Local Area Network which supports data transfer rates of 10 megabits per second.

Fiber Channel

Fiber Channel is a serial computer bus intended for connecting high-speed storage

devices to computers.

Filer

Network attached storage for file systems of NetApp.

FlexFrame

A joint project in which the main partners are SAP, Network Appliance, Intel and Fu-

jitsu.

FlexFrame® for SAP

®

FlexFrame® for SAP

® is a radically new architecture for SAP environments. It exploits

Glossary

FlexFrame Agents Guide 359

the latest business-critical computing technology to deliver major cost savings for

SAP customers.

FlexFrame internal LAN Switch

Cisco network switches which are integral part of the FlexFrame for SAP hardware

configuration and which are automatically configured by the FlexFrame for SAP soft-

ware.

Gigabit Ethernet

A Local Area Network which supports data transfer rates of 1 gigabit (1,000 mega-

bits) per second.

Host name

The name of a node (assigned to an interface) that is resolved to a unique IP ad-

dress. One node can have multiple host names (cf. node name).

In SAP environments host names are currently limited to 13 alphanumeric characters

including the hyphen (“ - “). The first character must be a letter. In the SAP environ-

ment host names are case-sensitive.

Image

In the FlexFrame documentation, “Image” is used as a synonym for “Hard Disk Im-

age”.

Internet Protocol Address

A unique number used by computers to refer to each other when sending information

through networks using the Internet Protocol.

Landscape Virtualization Management (LVM)

SAP system for monitoring and controlling SAP landscapes

Lightweight Directory Access Protocol

Protocol for accessing on-line directory services.

Local Area Network

A computer network that spans a relatively small area. Most LANs are confined to a

single building or group of buildings. However, one LAN can be connected to other

LANs over any distance via telephone lines and radio waves. A system of LANs con-

nected in this way is called a Wide Area Network (WAN).

Local host name

The name of the node (physical computer); it can be displayed and set using the

command /bin/hostname.

Logical Unit Number

An address for a single (SCSI) disk drive.

MAC address

Device identifier number of a Network Interface Card. In full: "media access control

address".

Glossary

360 FlexFrame Agents Guide

MaxDB

A relational database system from mySQL (formerly ADABAS and SAPDB).

Media Access Control address

An identifier for network devices, usually unique. The MAC address is stored physi-

cally on the device.

NAS system

Network Attached Storage of any vendor (in our context: EMC NAS or NetApp Filer).

NDMPcopy

NDMPcopy transfers data between Filers using the Network Data Management Pro-

tocol (NDMP).

Netboot

A boot procedure for computers where the operating system is provided via a net-

work instead of local disks.

Netweaver

SAP NetWeaver is the technical foundation of SAP solutions.

Network Appliance Filer

See “Filer”.

Network Attached Storage

A data storage device that is connected via a network to one or multiple computers.

Network File System

A network protocol for network-based storage access.

Network Interface Card

A hardware device that allows computer communication via networks.

Node

A physical computer system controlled by an OS.

Node name

The name of a physical node as returned by the command uname -n. Each node

name within a FlexFrame environment must be unique.

Non-Volatile Random Access Memory

A type of memory that retains its contents when the power is turned off.

On-Line Transaction Processing

Transaction processing via computer networks.

OpenLDAP

An Open Source LDAP Service Implementation.

Open Network Technology for Appliance Products

The operating system of Network Appliance Filers.

Glossary

FlexFrame Agents Guide 361

Open Source Software

Software that is distributed free of charge under an open source license, such as the

GNU Public License.

Oracle RAC

A cluster database by Oracle Corporation.

Physical host

Name of a physical computer system (node).

Power-On Self Test

Part of a computer's boot process; automatic testing of diverse hardware compo-

nents.

Preboot Execution Environment

An environment that allows a computer to boot from a network resource without hav-

ing a local operating system installed.

PRIMECLUSTER

Fujitsu’s high-availability and clustering software.

PRIMEPOWER

Fujitsu's SPARC-based server product line.

PRIMERGY

Fujitsu's i386-based server product line.

Red Hat Enterprise Linux

Linux distribution by Red Hat, Inc., targeting business customers.

Reverse Address Resolution Protocol

A protocol allowing resolution of an IP address corresponding to a MAC address.

SAP Service

In FlexFrame: SAP Service and DB Services.

SAP service script

An administration script for starting and stopping an SAP application on a virtual host.

SAP Solution Manager

Service portal for the implementation, operation and optimization of an SAP solution.

SAPLogon

Front-end software for SAPGUI.

SAPRouter

Router for SAP services like SAPGUI or SAPTELNET.

SavVol

A Celerra volume to which SnapSure copies original point-in-time data blocks from

the PFS before the blocks are altered by a PFS transaction.

Glossary

362 FlexFrame Agents Guide

Server

A physical host (hardware), same as node.

Service

A software program providing functions to clients.

Service type

The type of an application or service (db, ci, app, agate, wgate etc.).

Single Point of Control

In FlexFrame: One user interface to control a whole FlexFrame environment.

Storage LAN

A virtual LAN segment within a FlexFrame environment, carrying the traffic to NAS

systems.

SUSE Linux Enterprise Server

A Linux distribution by Novell, specializing in server installations.

Telecommunications Network

A terminal emulation program for TCP/IP networks such as the Internet.

Trivial File Transfer Protocol

A simple form of the File Transfer Protocol (FTP). TFTP uses the User Datagram

Protocol (UDP) and provides no security features. It is often used by servers to boot

diskless workstations, X-terminals, and routers.

TFTP server

A simple FTP implementation.

Virtual host

The name of the virtual host on which an application runs; it is assigned to a physical

node when an application is started.

Virtual Local Area Network

A VLAN is a logically segmented network mapped over physical hardware according

to the IEEE 802.1q standard.

Virtualization

Virtualization means the separation of hardware and processes. In a virtualized envi-

ronment (FlexFrame), a process can be moved between hardware nodes while stay-

ing transparent to the user and application.

FlexFrame Agents Guide 363

13 Index

A

allnodes 158

autonomous functions 70

autonomous operation 127

autonomy

Adjustment of FA-WebGUI 306

application scenarios 97

collecting diagnostic information for

support assistance 353, 357

definition of generic services

parameters 267

directories, production and log

files 347

FA Frame Agent 306

general parameters 249

node-related parameters 263

parameters for the performance and

accounting option 251

path configuration 271

power shutdown 199

service-related parameters 265

shutdown configuration 273

user interactions 128

WebInterface 159

Autonomy 14

autonomy architecture 65

autonomy pools 70

autonomy reactions 98

Reboot 98

Restart 98

SwitchOver 98

Autonomy software 22

start scripts 23

autonomy traps 321

format 321, 323

overview 326

B

BlackBoard commands

command file 314

command list 318

interactive 318

via WebInterface 317

C

class creation rules 78

Client LAN 20

D

directories, production and log

files 149

Domain Manager 95

Data collection 95

Data retentiontime and

compression 96

DomainManager 47

Database connection 47

mySQL 48

PostgreSQL 48

Index

364 FlexFrame Agents Guide

E

escalation with partner service 105

SCS/ASCS with ERS 105

service with SMD 107

F

FA Agent

deactivating and activating 20

installing 20

system and directory 20

version 20

FA Autonomy

diagnostic tool 356

FA components

configuration and log files 79

service types 80

systems 80

FA WebInterface 44

configuring 44

function 44

installing 44

starting and stopping 44

WebGui and database 45

mySQL 45

PostgreSQL 46

FA_AppAgents 19

FA_CtrlAgent 19

FA_DomainManager 19

fa_list_services.sh 157

FA_LogAgent 19

FA_Messenger 19

FA_Suite 19

FA_WebInterface 19

First Steps

General Information 19

Installation and Startup 20

Configuration 34

Different FF-versions 36

FlexFrame solution 20

generic services 42

Installation 22

EzSetup

Backup with EzBackup 25

General 24

Important 29

Standard Installation 26

Usage 32

EzSetup-Installation 24

Installation Packages 22

Requirements 22

rpm-Installation 23

start / stop 35

FlexFrame

accounting option 85

accounting Plug-in 197

autonomy 97

performance 85, 197

reporting Plug-in 197

Fujitsu FlexFrame scripts 127

Index

FlexFrame Agents Guide 365

G

generic services 83

group schema 73

grouping 70

grouping function 73

H

hardware resources 70

I

introduction 65

IP storage 20

L

live cache 81

M

maintenance scripts 101

Messenger

Database connection 50

Messenger 50

Messenger

Database connection

mySQL 50

Messenger

Database connection

PostgreSQL 50

migration 150

migration tool 154

Multi Node Failure 102

LongTime 103

ShortTime 103

myAMC 14

myAMC.FA 14

myAMC.FA version management 52

Lifecycle management files 53

Version manager 56

Version-Components 55

Version-Dependency 54

Lifecycle process 52

myAMC.FA_AppAgent 23

myAMC.FA_CtrlAgent 23

myAMC.FA_LogAgent 14

myAMC.FA_Messenger 14, 19

N

Netapp Filer 20

node failure 102

NoWatch/Watch of SAP services 133

O

operating mode 125

event mode 125

reaction mode

central 126

local 125

P

parameterization

class creation rules 248

default parameter file 222, 228, 274

FA Agents 219

FlexFrame autonomy 249

grouping 223

pool creation 223

service classes 247

Index

366 FlexFrame Agents Guide

service power value 247

service priority 247

traps 220

pool creation 70

pool-indepenednt-spare 116

Productive Pool 116

SparePool 117

power shutdown 199

Application Nodes 211

architecture 200

Blade systems 201

configuration 203

default shutdown mode 216

Management Blades 209

other Server 202

PRIMERGY systems 201

switchover control parameters 204

user, password, community 206

virtual VM Server 202

Powershutdownkonzept

für virtuelle Server 202

R

read/write Root Image 20

read-only Root Image 20

reboot 70

related documents 18

replicated enqueue service (ERS) 80

restart 70

S

SAP HANA 82

SAP start scripts 20

self-repair strategies 101

Server LAN 20

service classes 77

service detection model 84

service failure 101

service instance 77

service power value 77

service priotiy 77

service reaction model 84

service state model 83

SLES 20

Solution Manager Diagnostic

(SMD) 80

spare nodes 102

start/stop of SAP services 131

start/stop/status of Agents 129

Storage LAN 20

switchover 70

T

TakeOver Rules 109

Add Rule 110

Dynamic Rule 112

Dynamic Rule Example 115

Replace Rule 110

SpareNode 109

Substitution Rule 111

TakeOver Startegy 108

Index

FlexFrame Agents Guide 367

testament types 78

U

Usage of Pool-Master 59

Automation of steps during pool

creation 62

Create Pool-Master from existing

pool 60

Create/Update pool from Pool-

Master 61

Usage of ‘fa_MasterPoolMgr.sh’ 62

use cases 134

Autonomy for Application

Instances 136

File System Utilization 138

High Availability and Autonomy

Rules 139

Performance, Capacity and

Accounting 138

semi-autonomous operation 135

W

WebInterface

BlackBoard settings 162

configuration 159

configuration of FlexFrame

autonomy 183

Hypervisor Monitor 163

info and help 196

interaction 194

login 164

message display 178

overview 165

paths and file names 163

pool / group tree 166, 193

reading out the FA data 163

starting 164

status display 172

updates 194

visualization 164