Skip to content
This repository has been archived by the owner on Jul 27, 2023. It is now read-only.

HA configuration of pacemaker for SAP Netweaver software

License

Notifications You must be signed in to change notification settings

redhat-sap/sap-netweaver-ha-pacemaker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

90 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

THIS ROLE IS DEPRECATED AND NO LONGER DEVELOPED

The successor is now developed as part of the community.sap_install collection.

sap-netweaver-ha-pacemaker Ansible Lint Ansible Galaxy Import

HA configuration of pacemaker for SAP Netweaver software

Role variables

variable info required?
sap_netweaver_ha_pacemaker_hacluster_manage_shared_storage Attempt to manage shared (eg. nfs) storage? no, default is yes
sap_netweaver_ha_pacemaker_hacluster_node1_ip IP address of first node in cluster yes
sap_netweaver_ha_pacemaker_hacluster_node1_fqdn FWDN of first node in cluster yes
sap_netweaver_ha_pacemaker_hacluster_node2_ip IP address of second node in cluster yes
sap_netweaver_ha_pacemaker_hacluster_node2_fqdn FWDN of second node in cluster yes
sap_netweaver_ha_pacemaker_ensa_ver ENSA/ERS version no, default 2
sap_netweaver_ha_pacemaker_hacluster_manage_azure_lb Default: no. Deal with Azure load balancer? no
sap_netweaver_ha_pacemaker_sid SID of this instance yes
sap_netweaver_ha_pacemaker_profile_path Full path of directory holding profiles no, is generated sanely
sap_netweaver_ha_pacemaker_alias_ascs ASCS host alias yes
sap_netweaver_ha_pacemaker_instance_number_ascs ASCS instance number yes
sap_netweaver_ha_pacemaker_instance_name_ascs ASCS Instance Name (profile file name) no, is generated sanely
sap_netweaver_ha_pacemaker_profile_file_ascs Full path and name of ASCS profile no, is generated sanely
sap_netweaver_ha_pacemaker_profile_path_ascs Full path to directory holding ASCS profile no, is generated sanely
sap_netweaver_ha_pacemaker_vip_ascs Virtual (cluster managed) IP address for ASCS yes
sap_netweaver_ha_pacemaker_alias_ers ERS host alias yes
sap_netweaver_ha_pacemaker_instance_number_ers ERS instance number yes
sap_netweaver_ha_pacemaker_instance_name_ers ASCS Instance Name (profile file name) no, is generated sanely
sap_netweaver_ha_pacemaker_profile_file_ers Full path and file name of ASCS profile no, is generated sanely
sap_netweaver_ha_pacemaker_profile_path_ers Full path to directory holding ASCS profile no, is generated sanely
sap_netweaver_ha_pacemaker_vip_ers Virtual (cluster managed) IP address for ASCS yes
sap_netweaver_ha_pacemaker_e4s_repos_ppc64le List of required extended support repos for ppc64le arch no
sap_netweaver_ha_pacemaker_e4s_repos_x86_64 List of required extended support repos for x86_64 arch no
sap_netweaver_ha_pacemaker_standard_repos_ppc64le List of required standard support repos for ppc64le arch no
sap_netweaver_ha_pacemaker_standard_repos_x86_64 List of required standard support repos for x86_64 arch no
sap_netweaver_ha_pacemaker_fsdevice_ascs ascs profile filesystem resource yes
sap_netweaver_ha_pacemaker_fsdevice_ers ers profile filesystem resource yes
sap_netweaver_ha_pacemaker_fsdevice_sapmnt sapmnt filesystem resource yes
sap_netweaver_ha_pacemaker_fsdevice_sys sys filesystem resource yes
sap_netweaver_ha_pacemaker_fsdevice_trans trans filesystem resource yes
sap_netweaver_ha_pacemaker_mntdir_ascs ASCS filesystem mount point directory yes
sap_netweaver_ha_pacemaker_mntdir_ers ERS filesystem mount point directory yes
sap_netweaver_ha_pacemaker_mntdir_sapmnt sapmnt filesystem mount point directory yes
sap_netweaver_ha_pacemaker_mntdir_sys sys filesystem mount point directory yes
sap_netweaver_ha_pacemaker_mntdir_trans trans filesystem mount point directory yes
sap_netweaver_ha_pacemaker_fstype Type of filesystem resource of managed filesystems see: pcs fstype=xxx yes
sap_netweaver_ha_pacemaker_fstype_ Type of filesystem resource for (inherited value from above) no
sap_netweaver_ha_pacemaker_fsr_name_ PCS resource name for managed filesystem of no
sap_netweaver_ha_pacemaker_auto_recover_ascs Sets SAPInstance AUTOMATIC_RECOVER=true if ansible truthy (otherwise skips setting) no
sap_netweaver_ha_pacemaker_auto_recover_ers Sets SAPInstance AUTOMATIC_RECOVER=true if ansible truthy (otherwise skips setting) no
sap_netweaver_ha_pacemaker_ocf_check Default for OCF_CHECK_LEVEL= value for mount points no
sap_netweaver_ha_pacemaker_ocf_check_ OCF_CHECK_LEVEL= value for mount points (inherited value from above) no
sap_netweaver_ha_pacemaker_startup_delay Delay in integer seconds for systemd PCS startup no
sap_netweaver_ha_pacemaker_save_backups Save backups of remote files that we change no

Paths, Files, Filesystems

sap_netweaver_ha_pacemaker_profile_path is the root directory holding the "profiles" of ASCS and ERS. It is generated based on convention and the provided SID. sap_netweaver_ha_pacemaker_profile_path_ascs and sap_netweaver_ha_pacemaker_profile_path_ers are set to it (or overridden), and the respective profile_file values are generated based on the particular _alias_ names and IDs (or overridden).

For each of thing={'ascs', 'ers', 'sapmnt', 'sys', 'trans'}, we create a PCS filesystem resource named sap_netweaver_ha_pacemaker_fsr_name_<thing>, which is set sanely, but can be overridden. It mounts sap_netweaver_ha_pacemaker_fsdevice_<thing> at sap_netweaver_ha_pacemaker_mntdir_<type> as a filesystem type of sap_netweaver_ha_pacemaker_fstype_<thing>. _mntdir is set by convention (but can be overridden), the device need to be specified. fstype can be specified generally, or per fstype_<thing>.

STONITH fencing

The following variables are common to all fencing devices (except those on hyperscalers)

variable info required?
sap_netweaver_ha_pacemaker_fencing_device.name Name of the fencing device yes
sap_netweaver_ha_pacemaker_fencing_device.type Fencing device type yes *
sap_netweaver_ha_pacemaker_fencing_device.ip IP address of the fencing device yes
sap_netweaver_ha_pacemaker_fencing_device.user Username to connect to the fencing device yes
sap_netweaver_ha_pacemaker_fencing_device.pwd Password to connect to the fencing device yes
sap_netweaver_ha_pacemaker_fencing_device.pcmk_host_list List of nodes controlled by the fencing device yes *
sap_netweaver_ha_pacemaker_fencing_device.password_file Full path/filename to 'password script' to use for fencing device configuration no
sap_netweaver_ha_pacemaker_fencing_device.pcmk_host_map Mapping of the hostnames/ip of the nodes yes*
sap_netweaver_ha_pacemaker_fencing_device.custom_options Additional options to pass to fence device creation, e.g. "ssl=1 ssl_insecure=1 power_wait=30" no

* Must provide either a pcmk_host_list or a pcmk_host_map, per https://access.redhat.com/solutions/2619961 for a discussion on host_list vs host_map

This is a list of the most common fencing devices:

  • fence_vmware_soap - VMWare
  • fence_vmware_rest - VMWare
  • fence_ipmilan - IPMI
  • fence_ilo4_ssh - HP ILO
  • fence_rhevm - RHV
  • fence_azure_arm - Azure

TODO and Notes

  • Fencing should perhaps be extracted to own role to share with redhat_sap.sap-hana-ha-pacemaker
  • Verify drivers other than fence_vmware_rest support passwd_script option
  • Support >2 nodes
  • Support >2 links
  • This remains mostly untested against a range of systems.
  • Var docs
  • FS paths should match samples from docs
  • Is this the right place for Azure LB? (commented out as wasn't going to work, anyway)
  • If using clustering, the sap_s4netweaver_deployment is likely going to need /etc/hosts setup, so this is a dupe
  • /etc/hosts perhaps should have ansible tags in it, either way, so the several roles can not clobber each other
  • Should instance aliases be in /etc/hosts?
  • Rename 'ASCS' to 'APP'(?) everywhere if this "works" with more app stacks than ASCS, like the java thing *

About

HA configuration of pacemaker for SAP Netweaver software

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •