SlideShare a Scribd company logo
1 of 14
Download to read offline
SAP	
  LVM	
  Custom	
  Opera3ons	
  
•  This  is  the  second  in  a  series  of  presenta0ons  dedicated  to  SAP  
Landscape  Virtualiza0on  Management  (LVM)
•  This  document  provides  a  quick  overview  of  how  you  can  
customize  LVM  with  custom  opera0ons  and  hooks  and  is  aimed  
at  system  administrators  responsible  for  configuring  and  
opera0ng  SAP  LVM
•  This  document  describes  how  this  can  be  achieved  in  a  UNIX  
environment  but  can  be  easily  adapted  for  the  Windows  
plaKorm
•  In  this  presenta0on,  we  will  show  you  how  to  create  custom  
opera0ons  and  hooks  for  managing  a  Red  Hat®  cluster  
containing  the  SAP  Central  Services  (SCS)
Introduc3on	
  
Overview	
  
•  SAP  LVM  manages  SAP  instances  and  databases  as  standard  
using  the  SAP  Host  Agent
•  Out-­‐of-­‐the  box  opera0ons  include  “stop”,  “start”,  “mass  stop”,  
“mass  start”
•  SAP  LVM  can  be  extended  to  include  custom  opera0ons  that  
can  be  associated  with  instances  and  hosts
•  Custom  opera0ons  are  defined  in  LVM  via  a  Provider  
Implementa0on  and  Custom  Opera0on  and  Hooks  defini0on
•  Custom  opera0ons  are  registered  with  the  SAP  Host  Agent  
using  a  configura0on  file
Provider	
  Implementa3on	
  
•  The  Provider  Implementa0on  defines  the  link  between  LVM  and  
the  host  agent  and  describes  how  the  custom  opera0ons  are  
implemented
•  In  this  example,  the  provider  implementa0on  
“LVM_CustomOpera0on_ClusterAdm”  will  be  defined
•  The  Provider  Implementa0on  must  include  the  custom  
parameter  OPERATION  which  LVM  will  supply  to  the  host  agent  
when  triggered
•  The  host  agent  configura0on  file  defini0on  for  the  provider  
implementa0on  will  call  the  Korn  script  with  the  $[PARAM-­‐
OPERATION]  parameter
Provider	
  Implementa3on	
  
Custom	
  Opera3on	
  Defini3ons	
  
•  The  custom  opera0on  “Freeze”  is  used  to  freeze  the  Red  Hat  cluster  
so  other  opera0ons  can  take  place  without  a  cluster  failover  
Custom	
  Opera3on	
  Defini3ons	
  
•  The  important  fields  to  note  here  are  the  “Name”  and  “Bu^on  
Group”  –  Freeze  and  Cluster  Opera0on  respec0vely
•  The  custom  parameter  “Opera0on”  has  been  set  to  FREEZE  
which  will  be  passed  to  the  host  agent  and  Korn  script  via  the  
configura0on  file
•  The  “Name”  and  “Bu^on  Group”  appear  on  the  host  opera0on  
screen  in  LVM
•  Clicking  the  Cluster  Opera0on  bu^on  triggers  the  custom  
opera0on  and  the  associated  Korn  script
•  Similar  custom  opera0ons  are  created  for  “Unfreeze”  and  
“Relocate”
Custom	
  Hook	
  Defini3ons	
  
•  The  custom  hook  is  needed  to  intercept  SAP  system  stop  and  start  requests  
to  prepare  the  cluster  (freeze/unfreeze)  so  that  cluster  monitoring  does  not  
incorrectly  start  or  stop  the  instance  whilst  valid  stop/start  opera0ons  are  
being  performed
Host	
  Agent	
  Registered	
  Script	
  
•  For  each  Provider  Implementa0on  a  standard  host  agent  configura0on  file  
with  extension  “.conf”  must  be  created  in  the  “opera0ons.d”  sub-­‐directory  
of  /usr/sap/hostctrl/exe
•  For  the  cluster  management  custom  opera0ons  the  sample  configura0on  
file  “ClusterAdm.conf”  would  look  as  below
•  The  “Name”  must  match  the  name  of  the  Registered  Script  on  the  Provider  
Implementa0on  in  LVM
•  The  $[PARAM-­‐OPERATION]  can  be  seen  being  passed  as  the  first  parameter  
to  the  Korn  script,  indica0ng  the  custom  opera0on  being  requested  by  LVM

File	
   Content	
  
ClusterAdm.conf Name: LVM_CustomOperation_ClusterAdm
Command: /sap/Scripts/ClusterAdm.ksh $[PARAM-OPERATION] $[SAPSYSTEMNAME]
Workdir: $[DIR_HOME:#sapparam]
Username: root
ResultConverter: flat
Example	
  Script	
  –	
  ClusterAdm.ksh	
  
Sample	
  Coding	
  (perform	
  any	
  site	
  specific	
  checks	
  beforehand)	
  
#
# Variables from LVM via Hostagent Configuration File
#
OPERATION=$1
SAPSYSTEMNAME=$2
SERVICE=<your cluster service>
#
# Determine requested operation
#
case $OPERATION in
STOP) echo "[RESULT]: ${OPERATION} requested for a clustered service”
if [[ ${STATUS} != "FROZEN" ]]; then
echo "[RESULT]: Service group is not currently frozen; FREEZE operation will be enforced”
fi
OPERAND="-Z";;
START) echo "[RESULT]: ${OPERATION} requested for a clustered service”
if [[ ${STATUS} != "FROZEN" ]]; then
echo "[RESULT]: Service group is not frozen; nothing to do”
exit 0
fi
OPERAND="-U";;
Example	
  Script	
  –	
  ClusterAdm.ksh	
  
Sample	
  Coding	
  (con;nued)	
  
FREEZE) echo "[RESULT]: Cluster operation ${OPERATION} requested”
if [[ ${STATUS} == "FROZEN" ]]; then
echo "[RESULT]: Service group is already frozen; nothing to do”
exit 0
fi
OPERAND="-Z";;
UNFREEZE) echo "[RESULT]: Cluster operation ${OPERATION} requested”
if [[ ${STATUS} != "FROZEN" ]]; then
echo "[RESULT]: Service group ${SERVICE} is not frozen; nothing to do”
exit 0
fi
OPERAND="-U";;
RELOCATE) echo "[RESULT]: Cluster operation ${OPERATION} requested”
if [[ ${STATUS} == "FROZEN" ]]; then
echo "[ERROR]: Service group ${SERVICE} is frozen; ${OPERATION} operation not possible”
exit 8
fi
OPERAND="-r";;
*) echo "[ERROR]: Invalid cluster operation - ${OPERATION}”
exit 8;;
esac
Example	
  Script	
  –	
  ClusterAdm.ksh	
  
Sample	
  Coding	
  (con;nued)	
  
#
# Perform operation
#
echo "[RESULT]: Command issued to OS: ${clus_path}/clusvcadm ${OPERAND} ${SERVICE}”
/usr/sbin/clusvcadm ${OPERAND} ${SERVICE}
exit 0
Reference	
  Material	
  
•  The  following  pages  on  SAP  Help  are  useful:
–  Configuring  Custom  Opera0ons
–  Configuring  Custom  Hooks
•  The  following  SAP  notes  provide  some  informa0on:
–  1465491  -­‐  Provider  Implementa0on  Defini0on
•  Further  details  are  available  on  request  
–  mailto:info@aliterconsul0ng.co.uk
Thank-­‐you	
  

More Related Content

What's hot

Config Management Camp 2015 - How to Deploy CFEngine in the Open Internet
Config Management Camp 2015 - How to Deploy CFEngine in the Open InternetConfig Management Camp 2015 - How to Deploy CFEngine in the Open Internet
Config Management Camp 2015 - How to Deploy CFEngine in the Open InternetCFEngine
 
Cfg Mgmtcamp 2015 - Releases
Cfg Mgmtcamp 2015 - ReleasesCfg Mgmtcamp 2015 - Releases
Cfg Mgmtcamp 2015 - ReleasesCFEngine
 
Database and Public Endpoints redundancy on Azure
Database and Public Endpoints redundancy on AzureDatabase and Public Endpoints redundancy on Azure
Database and Public Endpoints redundancy on AzureRadu Vunvulea
 
Run tests at scale with on-demand Selenium Grid using AWS Fargate
Run tests at scale with on-demand Selenium Grid using AWS FargateRun tests at scale with on-demand Selenium Grid using AWS Fargate
Run tests at scale with on-demand Selenium Grid using AWS FargateMegha Mehta
 
Caching strategies with lucee
Caching strategies with luceeCaching strategies with lucee
Caching strategies with luceeGert Franz
 
Lucee writing your own debugging template
Lucee   writing your own debugging templateLucee   writing your own debugging template
Lucee writing your own debugging templateGert Franz
 
Lucee writing your own debugging template
Lucee   writing your own debugging templateLucee   writing your own debugging template
Lucee writing your own debugging templateGert Franz
 
Upgrading or migrating to a higher AEM version - Planning and process
Upgrading or migrating to a higher AEM version - Planning and processUpgrading or migrating to a higher AEM version - Planning and process
Upgrading or migrating to a higher AEM version - Planning and processAshokkumar T A
 
Nagios Conference 2011 - Mike Weber - Training: Reducing Nagios Server Load ...
Nagios Conference 2011 - Mike Weber - Training:  Reducing Nagios Server Load ...Nagios Conference 2011 - Mike Weber - Training:  Reducing Nagios Server Load ...
Nagios Conference 2011 - Mike Weber - Training: Reducing Nagios Server Load ...Nagios
 
Aligning to AEMs Release Cycle
Aligning to AEMs Release CycleAligning to AEMs Release Cycle
Aligning to AEMs Release CycleAshokkumar T A
 
Net flix embracingfailure re-invent2014-141113085858-conversion-gate02
Net flix embracingfailure re-invent2014-141113085858-conversion-gate02Net flix embracingfailure re-invent2014-141113085858-conversion-gate02
Net flix embracingfailure re-invent2014-141113085858-conversion-gate02~Eric Principe
 
Como atualizar meu ambiente para o tfs 2013
Como atualizar meu ambiente para o tfs 2013Como atualizar meu ambiente para o tfs 2013
Como atualizar meu ambiente para o tfs 2013Leandro Prado
 

What's hot (15)

Config Management Camp 2015 - How to Deploy CFEngine in the Open Internet
Config Management Camp 2015 - How to Deploy CFEngine in the Open InternetConfig Management Camp 2015 - How to Deploy CFEngine in the Open Internet
Config Management Camp 2015 - How to Deploy CFEngine in the Open Internet
 
Cfg Mgmtcamp 2015 - Releases
Cfg Mgmtcamp 2015 - ReleasesCfg Mgmtcamp 2015 - Releases
Cfg Mgmtcamp 2015 - Releases
 
Database and Public Endpoints redundancy on Azure
Database and Public Endpoints redundancy on AzureDatabase and Public Endpoints redundancy on Azure
Database and Public Endpoints redundancy on Azure
 
Run tests at scale with on-demand Selenium Grid using AWS Fargate
Run tests at scale with on-demand Selenium Grid using AWS FargateRun tests at scale with on-demand Selenium Grid using AWS Fargate
Run tests at scale with on-demand Selenium Grid using AWS Fargate
 
Caching strategies with lucee
Caching strategies with luceeCaching strategies with lucee
Caching strategies with lucee
 
Lucee writing your own debugging template
Lucee   writing your own debugging templateLucee   writing your own debugging template
Lucee writing your own debugging template
 
Lucee writing your own debugging template
Lucee   writing your own debugging templateLucee   writing your own debugging template
Lucee writing your own debugging template
 
Upgrading or migrating to a higher AEM version - Planning and process
Upgrading or migrating to a higher AEM version - Planning and processUpgrading or migrating to a higher AEM version - Planning and process
Upgrading or migrating to a higher AEM version - Planning and process
 
Nagios Conference 2011 - Mike Weber - Training: Reducing Nagios Server Load ...
Nagios Conference 2011 - Mike Weber - Training:  Reducing Nagios Server Load ...Nagios Conference 2011 - Mike Weber - Training:  Reducing Nagios Server Load ...
Nagios Conference 2011 - Mike Weber - Training: Reducing Nagios Server Load ...
 
Aligning to AEMs Release Cycle
Aligning to AEMs Release CycleAligning to AEMs Release Cycle
Aligning to AEMs Release Cycle
 
Net flix embracingfailure re-invent2014-141113085858-conversion-gate02
Net flix embracingfailure re-invent2014-141113085858-conversion-gate02Net flix embracingfailure re-invent2014-141113085858-conversion-gate02
Net flix embracingfailure re-invent2014-141113085858-conversion-gate02
 
Como atualizar meu ambiente para o tfs 2013
Como atualizar meu ambiente para o tfs 2013Como atualizar meu ambiente para o tfs 2013
Como atualizar meu ambiente para o tfs 2013
 
Aem offline content
Aem offline contentAem offline content
Aem offline content
 
Installation of EM 12c
Installation of EM 12cInstallation of EM 12c
Installation of EM 12c
 
Travis Wright - PS WF SMA SCSM SP
Travis Wright - PS WF SMA SCSM SPTravis Wright - PS WF SMA SCSM SP
Travis Wright - PS WF SMA SCSM SP
 

Similar to SAP LVM Custom Operations

Building cloud stack at scale
Building cloud stack at scaleBuilding cloud stack at scale
Building cloud stack at scaleShapeBlue
 
Ansible: How to Get More Sleep and Require Less Coffee
Ansible: How to Get More Sleep and Require Less CoffeeAnsible: How to Get More Sleep and Require Less Coffee
Ansible: How to Get More Sleep and Require Less CoffeeSarah Z
 
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle Clusterware
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle ClusterwareManaging Oracle Enterprise Manager Cloud Control 12c with Oracle Clusterware
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle ClusterwareLeighton Nelson
 
WSO2 Dep Sync for Artifact Synchronization of Cluster Nodes
WSO2 Dep Sync for Artifact Synchronization of Cluster NodesWSO2 Dep Sync for Artifact Synchronization of Cluster Nodes
WSO2 Dep Sync for Artifact Synchronization of Cluster NodesWSO2
 
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...Kasun Gajasinghe
 
Deploy Rails Application by Capistrano
Deploy Rails Application by CapistranoDeploy Rails Application by Capistrano
Deploy Rails Application by CapistranoTasawr Interactive
 
SaltConf14 - Ben Cane - Using SaltStack in High Availability Environments
SaltConf14 - Ben Cane - Using SaltStack in High Availability EnvironmentsSaltConf14 - Ben Cane - Using SaltStack in High Availability Environments
SaltConf14 - Ben Cane - Using SaltStack in High Availability EnvironmentsSaltStack
 
Practical solutions for connections administrators
Practical solutions for connections administratorsPractical solutions for connections administrators
Practical solutions for connections administratorsSharon James
 
DB proxy server test: run tests on tens of virtual machines with Jenkins, Vag...
DB proxy server test: run tests on tens of virtual machines with Jenkins, Vag...DB proxy server test: run tests on tens of virtual machines with Jenkins, Vag...
DB proxy server test: run tests on tens of virtual machines with Jenkins, Vag...Timofey Turenko
 
AAI-3218 Production Deployment Best Practices for WebSphere Liberty Profile
AAI-3218 Production Deployment Best Practices for WebSphere Liberty ProfileAAI-3218 Production Deployment Best Practices for WebSphere Liberty Profile
AAI-3218 Production Deployment Best Practices for WebSphere Liberty ProfileWASdev Community
 
Apache Whirr
Apache WhirrApache Whirr
Apache Whirrhuguk
 
SAP LVM Integration with SAP BPA
SAP LVM Integration with SAP BPASAP LVM Integration with SAP BPA
SAP LVM Integration with SAP BPAGary Jackson MBCS
 
3. v sphere big data extensions
3. v sphere big data extensions3. v sphere big data extensions
3. v sphere big data extensionsChiou-Nan Chen
 
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle Clusterware
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle ClusterwareManaging Oracle Enterprise Manager Cloud Control 12c with Oracle Clusterware
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle ClusterwareLeighton Nelson
 
Solaris Zones (native & lxbranded) ~ A techXpress Guide
Solaris Zones (native & lxbranded) ~ A techXpress GuideSolaris Zones (native & lxbranded) ~ A techXpress Guide
Solaris Zones (native & lxbranded) ~ A techXpress GuideAbhishek Kumar
 
Sa106 – practical solutions for connections administrators
Sa106 – practical solutions for connections administratorsSa106 – practical solutions for connections administrators
Sa106 – practical solutions for connections administratorsSharon James
 
Your Inner Sysadmin - LonestarPHP 2015
Your Inner Sysadmin - LonestarPHP 2015Your Inner Sysadmin - LonestarPHP 2015
Your Inner Sysadmin - LonestarPHP 2015Chris Tankersley
 

Similar to SAP LVM Custom Operations (20)

SAP LVM Customer Instances
SAP LVM Customer InstancesSAP LVM Customer Instances
SAP LVM Customer Instances
 
Building cloud stack at scale
Building cloud stack at scaleBuilding cloud stack at scale
Building cloud stack at scale
 
Ansible: How to Get More Sleep and Require Less Coffee
Ansible: How to Get More Sleep and Require Less CoffeeAnsible: How to Get More Sleep and Require Less Coffee
Ansible: How to Get More Sleep and Require Less Coffee
 
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle Clusterware
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle ClusterwareManaging Oracle Enterprise Manager Cloud Control 12c with Oracle Clusterware
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle Clusterware
 
WSO2 Dep Sync for Artifact Synchronization of Cluster Nodes
WSO2 Dep Sync for Artifact Synchronization of Cluster NodesWSO2 Dep Sync for Artifact Synchronization of Cluster Nodes
WSO2 Dep Sync for Artifact Synchronization of Cluster Nodes
 
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...
 
Deploy Rails Application by Capistrano
Deploy Rails Application by CapistranoDeploy Rails Application by Capistrano
Deploy Rails Application by Capistrano
 
SaltConf14 - Ben Cane - Using SaltStack in High Availability Environments
SaltConf14 - Ben Cane - Using SaltStack in High Availability EnvironmentsSaltConf14 - Ben Cane - Using SaltStack in High Availability Environments
SaltConf14 - Ben Cane - Using SaltStack in High Availability Environments
 
Practical solutions for connections administrators
Practical solutions for connections administratorsPractical solutions for connections administrators
Practical solutions for connections administrators
 
DB proxy server test: run tests on tens of virtual machines with Jenkins, Vag...
DB proxy server test: run tests on tens of virtual machines with Jenkins, Vag...DB proxy server test: run tests on tens of virtual machines with Jenkins, Vag...
DB proxy server test: run tests on tens of virtual machines with Jenkins, Vag...
 
AAI-3218 Production Deployment Best Practices for WebSphere Liberty Profile
AAI-3218 Production Deployment Best Practices for WebSphere Liberty ProfileAAI-3218 Production Deployment Best Practices for WebSphere Liberty Profile
AAI-3218 Production Deployment Best Practices for WebSphere Liberty Profile
 
Watch Me Install Alfresco
Watch Me Install AlfrescoWatch Me Install Alfresco
Watch Me Install Alfresco
 
Apache Whirr
Apache WhirrApache Whirr
Apache Whirr
 
SAP LVM Integration with SAP BPA
SAP LVM Integration with SAP BPASAP LVM Integration with SAP BPA
SAP LVM Integration with SAP BPA
 
3. v sphere big data extensions
3. v sphere big data extensions3. v sphere big data extensions
3. v sphere big data extensions
 
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle Clusterware
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle ClusterwareManaging Oracle Enterprise Manager Cloud Control 12c with Oracle Clusterware
Managing Oracle Enterprise Manager Cloud Control 12c with Oracle Clusterware
 
Solaris Zones (native & lxbranded) ~ A techXpress Guide
Solaris Zones (native & lxbranded) ~ A techXpress GuideSolaris Zones (native & lxbranded) ~ A techXpress Guide
Solaris Zones (native & lxbranded) ~ A techXpress Guide
 
Sa106 – practical solutions for connections administrators
Sa106 – practical solutions for connections administratorsSa106 – practical solutions for connections administrators
Sa106 – practical solutions for connections administrators
 
Monkey man
Monkey manMonkey man
Monkey man
 
Your Inner Sysadmin - LonestarPHP 2015
Your Inner Sysadmin - LonestarPHP 2015Your Inner Sysadmin - LonestarPHP 2015
Your Inner Sysadmin - LonestarPHP 2015
 

Recently uploaded

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 

Recently uploaded (20)

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 

SAP LVM Custom Operations

  • 1. SAP  LVM  Custom  Opera3ons  
  • 2. •  This  is  the  second  in  a  series  of  presenta0ons  dedicated  to  SAP   Landscape  Virtualiza0on  Management  (LVM) •  This  document  provides  a  quick  overview  of  how  you  can   customize  LVM  with  custom  opera0ons  and  hooks  and  is  aimed   at  system  administrators  responsible  for  configuring  and   opera0ng  SAP  LVM •  This  document  describes  how  this  can  be  achieved  in  a  UNIX   environment  but  can  be  easily  adapted  for  the  Windows   plaKorm •  In  this  presenta0on,  we  will  show  you  how  to  create  custom   opera0ons  and  hooks  for  managing  a  Red  Hat®  cluster   containing  the  SAP  Central  Services  (SCS) Introduc3on  
  • 3. Overview   •  SAP  LVM  manages  SAP  instances  and  databases  as  standard   using  the  SAP  Host  Agent •  Out-­‐of-­‐the  box  opera0ons  include  “stop”,  “start”,  “mass  stop”,   “mass  start” •  SAP  LVM  can  be  extended  to  include  custom  opera0ons  that   can  be  associated  with  instances  and  hosts •  Custom  opera0ons  are  defined  in  LVM  via  a  Provider   Implementa0on  and  Custom  Opera0on  and  Hooks  defini0on •  Custom  opera0ons  are  registered  with  the  SAP  Host  Agent   using  a  configura0on  file
  • 4. Provider  Implementa3on   •  The  Provider  Implementa0on  defines  the  link  between  LVM  and   the  host  agent  and  describes  how  the  custom  opera0ons  are   implemented •  In  this  example,  the  provider  implementa0on   “LVM_CustomOpera0on_ClusterAdm”  will  be  defined •  The  Provider  Implementa0on  must  include  the  custom   parameter  OPERATION  which  LVM  will  supply  to  the  host  agent   when  triggered •  The  host  agent  configura0on  file  defini0on  for  the  provider   implementa0on  will  call  the  Korn  script  with  the  $[PARAM-­‐ OPERATION]  parameter
  • 6. Custom  Opera3on  Defini3ons   •  The  custom  opera0on  “Freeze”  is  used  to  freeze  the  Red  Hat  cluster   so  other  opera0ons  can  take  place  without  a  cluster  failover  
  • 7. Custom  Opera3on  Defini3ons   •  The  important  fields  to  note  here  are  the  “Name”  and  “Bu^on   Group”  –  Freeze  and  Cluster  Opera0on  respec0vely •  The  custom  parameter  “Opera0on”  has  been  set  to  FREEZE   which  will  be  passed  to  the  host  agent  and  Korn  script  via  the   configura0on  file •  The  “Name”  and  “Bu^on  Group”  appear  on  the  host  opera0on   screen  in  LVM •  Clicking  the  Cluster  Opera0on  bu^on  triggers  the  custom   opera0on  and  the  associated  Korn  script •  Similar  custom  opera0ons  are  created  for  “Unfreeze”  and   “Relocate”
  • 8. Custom  Hook  Defini3ons   •  The  custom  hook  is  needed  to  intercept  SAP  system  stop  and  start  requests   to  prepare  the  cluster  (freeze/unfreeze)  so  that  cluster  monitoring  does  not   incorrectly  start  or  stop  the  instance  whilst  valid  stop/start  opera0ons  are   being  performed
  • 9. Host  Agent  Registered  Script   •  For  each  Provider  Implementa0on  a  standard  host  agent  configura0on  file   with  extension  “.conf”  must  be  created  in  the  “opera0ons.d”  sub-­‐directory   of  /usr/sap/hostctrl/exe •  For  the  cluster  management  custom  opera0ons  the  sample  configura0on   file  “ClusterAdm.conf”  would  look  as  below •  The  “Name”  must  match  the  name  of  the  Registered  Script  on  the  Provider   Implementa0on  in  LVM •  The  $[PARAM-­‐OPERATION]  can  be  seen  being  passed  as  the  first  parameter   to  the  Korn  script,  indica0ng  the  custom  opera0on  being  requested  by  LVM File   Content   ClusterAdm.conf Name: LVM_CustomOperation_ClusterAdm Command: /sap/Scripts/ClusterAdm.ksh $[PARAM-OPERATION] $[SAPSYSTEMNAME] Workdir: $[DIR_HOME:#sapparam] Username: root ResultConverter: flat
  • 10. Example  Script  –  ClusterAdm.ksh   Sample  Coding  (perform  any  site  specific  checks  beforehand)   # # Variables from LVM via Hostagent Configuration File # OPERATION=$1 SAPSYSTEMNAME=$2 SERVICE=<your cluster service> # # Determine requested operation # case $OPERATION in STOP) echo "[RESULT]: ${OPERATION} requested for a clustered service” if [[ ${STATUS} != "FROZEN" ]]; then echo "[RESULT]: Service group is not currently frozen; FREEZE operation will be enforced” fi OPERAND="-Z";; START) echo "[RESULT]: ${OPERATION} requested for a clustered service” if [[ ${STATUS} != "FROZEN" ]]; then echo "[RESULT]: Service group is not frozen; nothing to do” exit 0 fi OPERAND="-U";;
  • 11. Example  Script  –  ClusterAdm.ksh   Sample  Coding  (con;nued)   FREEZE) echo "[RESULT]: Cluster operation ${OPERATION} requested” if [[ ${STATUS} == "FROZEN" ]]; then echo "[RESULT]: Service group is already frozen; nothing to do” exit 0 fi OPERAND="-Z";; UNFREEZE) echo "[RESULT]: Cluster operation ${OPERATION} requested” if [[ ${STATUS} != "FROZEN" ]]; then echo "[RESULT]: Service group ${SERVICE} is not frozen; nothing to do” exit 0 fi OPERAND="-U";; RELOCATE) echo "[RESULT]: Cluster operation ${OPERATION} requested” if [[ ${STATUS} == "FROZEN" ]]; then echo "[ERROR]: Service group ${SERVICE} is frozen; ${OPERATION} operation not possible” exit 8 fi OPERAND="-r";; *) echo "[ERROR]: Invalid cluster operation - ${OPERATION}” exit 8;; esac
  • 12. Example  Script  –  ClusterAdm.ksh   Sample  Coding  (con;nued)   # # Perform operation # echo "[RESULT]: Command issued to OS: ${clus_path}/clusvcadm ${OPERAND} ${SERVICE}” /usr/sbin/clusvcadm ${OPERAND} ${SERVICE} exit 0
  • 13. Reference  Material   •  The  following  pages  on  SAP  Help  are  useful: –  Configuring  Custom  Opera0ons –  Configuring  Custom  Hooks •  The  following  SAP  notes  provide  some  informa0on: –  1465491  -­‐  Provider  Implementa0on  Defini0on •  Further  details  are  available  on  request   –  mailto:info@aliterconsul0ng.co.uk