Skip to Content

SAP Landscape Virtualization Management (LVM) Overview of Customization Options


SAP Landscape Virtualization Management (LVM)

Overview of Customization Options


Custom Tabs:              Define your own tabs in the LVM GUI to integrate your tools

Custom Services:        Detect, manage and integrate additional applications

Custom Operations:   Define your own action buttons in the LVM GUI

Custom Hooks:            Extend the functionality of the pre-defined activities

Custom Provisioning:  Bring your own (replication) technology

Custom Links:              Invoke a custom URL with context information (e.g. SAPGUI or RDP)

Custom Validations:    Define your own validations to pro-actively scan for problems

Additional integration: Use SAP LVM web services to remote control LVM from the outside

Custom Tabs (Demo Video here)

Custom Tabs allow you to render any website within the LVM GUI. It is a very easy way to

integrate your own tools into one GUI.

                                                Click to enlarge picture/slide

You find the Custom Tabs configuration under "Setup" "Custom Tabs"

Custom Services (Demo Video here)

Custom Services help you to integrate non SAP applications, that support your SAP systems,

like Web servers, Document Management Systems and others. By default, LVM will detect

SAP NetWeaver based systems for you. For non SAP NetWeaver based applications you can

use Custom Services .You are able to manage those applications in the same way as you

manage SAP applications. You are able to start/stop them, define interdependencies to

influence start/stop sequences or schedule these actions.

                                                Click to enlarge picture/slide

                                                Click to enlarge picture/slide

To enable an application as a  Custom Service you have to install the SAP Host Agent (7.20 min.)

on the Server where the application is installed ,create a definition/command/script for each

of the required functions like detect/start/stop/monitor and put the files under

"/usr/sap/hostctrl/exe/operations.d" and make them owned by root and read only !

                                                Click to enlarge picture/slide

                                                Click to enlarge picture/slide

Attached to SAP Note 1396981 (Quick link) are sample scripts for Linux and Windows, you can

use them as a starting point. After you have created the scripts and tested them, you can detect

your application with LVM. Go to "Configuration" "Systems" and click on "Discover",fill in the

parameters like in the example below and then click on "Detect"

                                                Click to enlarge picture/slide

Custom Operations/Custom Hooks (Demo Video here)

Custom Operations and Hooks help you to extend the functionality that LVM delivers out of the

Box. With Custom Operations you are able to create your own functional elements inside the

LVM GUI and with Custom hooks you are able to modify or even replace the existing workflows

of LVM. You are also able to control any kind of software component including non SAP

components from SAP LVM.

                                                Click to enlarge picture/slide

The Architecture looks the same for Operations and Hooks. You start by creating a Provider

Definition in the LVM GUI under "Setup" , "Provider Implementation Definition". In the definition

you are able to either select a script registered by the SAP Host Agent ,an HTTP Post operation

(calling a specific URL) or calling a Webservice that controls a more complex set of actions.

                                                Click to enlarge picture/slide

In this screenshot you can see where to configure the "Provider Implementation Definition"

                                                Click to enlarge picture/slide

                                                Click to enlarge picture/slide

Custom Operations are defined under "Setup", "Custom Operations". You need to define a

"Provider Implementation Definition" first and then create the Operation.All the Custom

operations are available in the "Operations" section of LVM. Custom Hooks are also defined

in this section, but under "Custom Hooks". For defining a custom Hook you need to define the

Operation for which the hook is executed and if the Hook should be executed before (pre),

after (post) or when an error occurs (error) . Operations are all the pre-defined functional

elements of LVM, like e.g. clone Volumes.

                                                Click to enlarge picture/slide

Constraints are very important in this context. Since a Hook is executed every time an activity

is called in the LVM workflow and LVM supports many different OS/DB combinations and a

specific script usually only works on a specific OS/DB you have to define constraints that ensure

the hook is only executed on the right OS/DB combo or when the instance is in a specific status

(e.g. shutdown).

                                                Click to enlarge picture/slide

Here is an example definition file for a custom hook that restarts sapcontrol .The nice thing in

this example is, that we combined the commands for different Operating Systems into one

definition. With the help of the "Platform" descriptor you can define a command that gets

executed only if the "Platform" parameter is met. So in this example if the hook is executed on

a Windows OS the command above the Platform: Windows is being used. This way you can

create only one definition for several OS. In addition the Command: descriptor could also point

to a whole script that gets executed. This example can be found attached to

SAP Note 1465491 (Quick link)

                                                Click to enlarge picture/slide

Custom Provisioning (Demo Video here)

Out of the Box, LVM supports many Storage Systems that can be used to create the data copy

that is needed for the whole System Copy workflow. If you like to use another method for

getting the data copy, like a shadow Database or Backup/Restore or existing copy procedures,

Custom Provisioning is right for you. It replaces the LVM based cloning procedure with your

own scripts.

Phases of an end to end system copy with LVM

1.) Copy the Data via a storage or VM based clone

2.) Run System rename to change the SID of the Instance

3.) Run Post copy automation (PCA) on the copy

Custom Provisioning replaces step 1.)

                                                Click to enlarge picture/slide

From an architectural point of view it looks very similar to the custom hooks concept.You create

a Provider definition and point to the script/HTTP post/Webservice that implements the

functionality on the source or target Host. In addition , if you need to control a more complex

Landscape or Procedure, you are able to use an additional central Host that is used as a proxy.

So instead of issuing the scripts directly on the source and target hosts, it is possible to use the

central host and control everything from there. An example could be, that you don't want to

install  the Software that is needed to control the cloning process on the hosts with a productive

SAP system.

                                                Click to enlarge picture/slide

                                                Click to enlarge picture/slide

You are able to create a script for each of the steps mentioned above or only use a subset of

the steps if you use existing scripts. If you plan to do a storage based cloning operation of a

"live" source system you should use the "Clone Volumes" steps for the actual cloning command.

If you do that, LVM provides you with the database consistency options needed to create a

consistent snapshot. This means that LVM will issue the right commands to the source database

to put it into a backup state. This step has a hard timeout of 90 sec. to ensure there is no impact

on your productive System. So your cloning procedure needs to be finished within this 90 sec.


Additional integration points

In addition to customizing SAP LVM, it is possible to control SAP LVM from the outside and to

control outside Software components from SAP LVM. This is done through web services that

allow to control LVM from the outside and the custom operations/hooks shown above.

                                                  Click to enlarge picture/slide

The Controller Command Interface (CCI) is a web service provided by SAP LVM that allows you

to upload configuration information, e.g. adding a new system to LVM in a fully automated way.

It also allows you to execute control functions like starting/stopping of Systems known to LVM.

This is a great way to integrate SAP LVM with any kind of orchestration Software that requires

the SAP domain expertise delivered by SAP LVM.

With SAP LVM version 2.1 we have extended the functionality of the CCI interface with so called

templates. A template is a way to save all the parameters needed for an E2E process like a

system copy. One example would be, that  an admin that is familiar with the landscape and the

parameters needed, sets up a system copy process, saves it as a template and an operator who

may not be so familiar with the details executes this process at a later point in time. These

templates are also available via the CCI web service and allow the remote execution of SAP LVM

processes like system copy. Currently only provisioning processes are supported by this method.

                                                  Click to enlarge picture/slide

The templates are basically XML files, that can be stored on filesystem level, modified and

uploaded for execution to SAP LVM. This allows for example to create self service scenarios

where users would connect to an orchestration engine, set some parameters and the

orchestration engine would then use the web service to execute the process with SAP LVM.

For more details and documentation : SAP LVM online help -> Development Information

These are the main customization options LVM provides to you.With the help of these features

you are able to greatly enhance and adapt LVM to your needs.

More info:

LVM Online help extensibility

No comments