#!/bin/ksh93 # ALTRAN_PROLOG_BEGIN_TAG # This is an automatically generated prolog. # # Copyright (C) Altran ACT S.A.S. 2017,2019,2021,2022. All rights reserved. # # ALTRAN_PROLOG_END_TAG # # @(#) 5881272 43haes/usr/sbin/cluster/events/resource_manage.sh, 61aha_r726, 2205A_aha726, May 16 2022 12:15 PM ######################################################################### # # COMPONENT: CLMGR # # FUNCTIONS: # # collect_logs # cluster_rehearsals # modify_cluster_security # modify_cluster_hmc # modify_cluster_nova # modify_cluster_cloudroha # modify_cluster_roha # refresh_mirror_group # restore_snapshot # resume_app_monitoring # suspend_app_monitoring # mirror_volume_group # ######################################################################### #============================================================================= # # Name: collect_logs # # Description: # # Inputs: # # Outputs: # # Returns: # #============================================================================= function collect_logs { LINENO=2 . $HALIBROOT/log_entry "$0()" "$CL" max CL=$LINENO KLIB_HACMP_collect_logs "${_ENV_ARGS[DIRECTORY]}" \ "${_ENV_ARGS[NODES]}" \ "${_ENV_ARGS[RSCT_LOGS]}" log_return_msg "$?" "$0()" "$LINENO" return $? } # End of "collect_logs" #============================================================================= # # Name: cluster_reahersals # # Description: Retrieves the Failover Rehearsals for resource group # # Inputs: resource_group # # Outputs: Failover Rehearsals of the resource group # # Returns: 0 SUCCESS # >0 FAIL # #============================================================================= function cluster_rehearsals { LINENO=2 . $HALIBROOT/log_entry "$0()" "$CL" max CL=$LINENO KLIB_HACMP_cluster_rehearsals "${_ENV_ARGS[RESOURCE_GROUP]}" log_return_msg "$?" "$0()" "$LINENO" return $? } # End of "cluster_rehearsals()" #============================================================================= # # Name: modify_cluster_security # # Description: # # Inputs: # # Outputs: # # Returns: # #============================================================================= function modify_cluster_security { LINENO=2 . $HALIBROOT/log_entry "$0()" "$CL" max # Get the associative array reference, and initialize it typeset -n list=$1 CL=$LINENO KLIB_HACMP_modify_cluster_security list \ "${_ENV_ARGS[LEVEL]}" \ "${_ENV_ARGS[ALGORITHM]}" \ "${_ENV_ARGS[MECHANISM]}" \ "${_ENV_ARGS[CERTIFICATE]}" \ "${_ENV_ARGS[PRIVATE_KEY]}" log_return_msg "$?" "$0()" "$LINENO" return $? } # End of "modify_cluster_security()" #============================================================================= # # Name: modify_cluster_hmc # # Description: # # Inputs: # # Outputs: # # Returns: # #============================================================================= function modify_cluster_hmc { LINENO=2 . $HALIBROOT/log_entry "$0()" "$CL" max # Get the associative array reference, and initialize it typeset -n list=$1 CL=$LINENO KLIB_HACMP_modify_cluster_hmc list \ "${_ENV_ARGS[DEFAULT_HMC_TIMEOUT]}" \ "${_ENV_ARGS[DEFAULT_HMC_RETRY_COUNT]}" \ "${_ENV_ARGS[DEFAULT_HMC_RETRY_DELAY]}" \ "${_ENV_ARGS[DEFAULT_HMCS_LIST]}" \ "${_ENV_ARGS[CONNECTION_TYPE]}" log_return_msg "$?" "$0()" "$LINENO" return $? } # End of "modify_cluster_hmc()" #============================================================================= # # Name: modify_cluster_nova # # Description: manages the novalink cluster tunables as per the user input # # Inputs: DEFAULT_NOVA_TIMEOUT # DEFAULT_NOVA_RETRY_COUNT # DEFAULT_NOVA_RETRY_DELAY # CONNECTION_TYPE # # Outputs: nothing # # Returns: 0 SUCESS # 1 FAIL # #============================================================================= function modify_cluster_nova { LINENO=2 . $HALIBROOT/log_entry "$0()" "$CL" max # Get the associative array reference, and initialize it typeset -n list=$1 CL=$LINENO KLIB_HACMP_modify_cluster_nova list \ "${_ENV_ARGS[DEFAULT_NOVA_TIMEOUT]}" \ "${_ENV_ARGS[DEFAULT_NOVA_RETRY_COUNT]}" \ "${_ENV_ARGS[DEFAULT_NOVA_RETRY_DELAY]}" \ "${_ENV_ARGS[CONNECTION_TYPE]}" log_return_msg "$?" "$0()" "$LINENO" return $? } # End of "modify_cluster_nova()" #============================================================================= # # Name: modify_cluster_cloudroha # # Description: manages the cloud roha configuration as per the user input # # Inputs: ACTION # CLOUDSITE # CLOUDTYPE # AUTHKEY # SERVICE # TIMEOUT # # Outputs: nothing # # Returns: 0 SUCESS # 1 FAIL # #============================================================================= function modify_cluster_cloudroha { LINENO=2 . $HALIBROOT/log_entry "$0()" "$CL" max # Get the associative array reference, and initialize it typeset -n list=$1 CL=$LINENO KLIB_HACMP_modify_cluster_cloudroha list \ "${_ENV_ARGS[ACTION]}" \ "${_ENV_ARGS[AUTHKEY]}" \ "${_ENV_ARGS[SERVICE]}" \ "${_ENV_ARGS[CLOUDTYPE]}" \ "${_ENV_ARGS[TIMEOUT]}" \ "${_ENV_ARGS[CLOUDSITE]}" log_return_msg "$?" "$0()" "$LINENO" return $? } # End of "modify_cluster_cloudroha()" #============================================================================= # # Name: modify_cluster_roha # # Description: # # Inputs: # # Outputs: # # Returns: # #============================================================================= function modify_cluster_roha { LINENO=2 . $HALIBROOT/log_entry "$0()" "$CL" max # Get the associative array reference, and initialize it typeset -n list=$1 CL=$LINENO KLIB_HACMP_modify_cluster_roha list \ "${_ENV_ARGS[ALWAYS_START_RG]}" \ "${_ENV_ARGS[ADJUST_SPP_SIZE]}" \ "${_ENV_ARGS[FORCE_SYNC_RELEASE]}" \ "${_ENV_ARGS[AGREE_TO_COD_COSTS]}" \ "${_ENV_ARGS[ONOFF_DAYS]}" \ "${_ENV_ARGS[RESOURCE_ALLOCATION_ORDER]}" log_return_msg "$?" "$0()" "$LINENO" return $? } # End of "modify_cluster_cod()" # # Name: refresh_mirror_group # function refresh_mirror_group { LINENO=2 . $HALIBROOT/log_entry "$0()" "$CL" max typeset mirror_group=$1 CL=$LINENO KLIB_HACMP_refresh_mirror_group "$mirror_group" \ "${_ENV_ARGS[NODES]}" \ "${_ENV_ARGS[SITE]}" \ "${_ENV_ARGS[SYSTEM_GROUPS]}" \ "${_ENV_ARGS[REPOSITORY_GROUP]}" log_return_msg "$?" "$0()" "$LINENO" return $? } # End of "refresh_mirror_group()" #============================================================================= # # Name: restore_snapshot # # Description: # # Inputs: # # Outputs: # # Returns: # #============================================================================= function restore_snapshot { LINENO=2 . $HALIBROOT/log_entry "$0()" "$CL" max typeset snapshot=$1 CL=$LINENO KLIB_HACMP_restore_snapshot "$snapshot" \ "${_ENV_ARGS[CONFIGURE]}" \ "${_ENV_ARGS[FORCE]}" \ "${_ENV_ARGS[NODES]}" \ "${_ENV_ARGS[REPOSITORIES]}" \ "${_ENV_ARGS[CLUSTER_NAME]}" log_return_msg "$?" "$0()" "$LINENO" return $? } # End of "restore_snapshot" #============================================================================= # # Name: resume_app_monitoring # # Description: # # Inputs: # # Outputs: # # Returns: # #============================================================================= function resume_app_monitoring { LINENO=2 . $HALIBROOT/log_entry "$0()" "$CL" max typeset application=$1 CL=$LINENO KLIB_HACMP_resume_app_monitoring "$application" \ "${_ENV_ARGS[RESOURCE_GROUP]}" log_return_msg "$?" "$0()" "$LINENO" return $? } # End of "resume_app_monitoring" #============================================================================= # # Name: suspend_app_monitoring # # Description: # # Inputs: # # Outputs: # # Returns: # #============================================================================= function suspend_app_monitoring { LINENO=2 . $HALIBROOT/log_entry "$0()" "$CL" max typeset application=$1 CL=$LINENO KLIB_HACMP_suspend_app_monitoring "$application" \ "${_ENV_ARGS[RESOURCE_GROUP]}" log_return_msg "$?" "$0()" "$LINENO" return $? } # End of "suspend_app_monitoring" #============================================================================= # # Name: mirror_volume_group # # Description: # # Inputs: # # Outputs: # # Returns: # #============================================================================= function mirror_volume_group { LINENO=2 . $HALIBROOT/log_entry "$0()" "$CL" max typeset volume_group=$1 CL=$LINENO KLIB_HACMP_mirror_volume_group "$volume_group" \ "${_ENV_ARGS[DISKS]}" \ "${_ENV_ARGS[NODE]}" \ "${_ENV_ARGS[MODE]}" \ "${_ENV_ARGS[COPIES_PER_LPART]}" \ "${_ENV_ARGS[CHECK_QUORUM]}" \ "${_ENV_ARGS[EXACT_LV_MAPPING]}" \ "${_ENV_ARGS[MP_FIRST_COPY]}" \ "${_ENV_ARGS[MP_SECOND_COPY]}" \ "${_ENV_ARGS[MP_THIRD_COPY]}" log_return_msg "$?" "$0()" "$LINENO" return $? } # End of "mirror_volume_group" ######################################################################### ######################################################################### ## ## MAIN ## ######################################################################### ######################################################################### LINENO=2 . $HALIBROOT/log_entry resource_manage "$CL" max : version=@(#) 5881272 43haes/usr/sbin/cluster/events/resource_manage.sh, 61aha_r726, 2205A_aha726, May 16 2022 12:15 PM #=================================================== # Source the file with common definitions, the run # the action/class-appropriate class processor. #=================================================== CL=$LINENO . $HAEVENTS/resource_common "$@" if [[ -n $_SUB_ACTION ]]; then CL=$LINENO runClassProcessor "${_SUB_ACTION}_$RESOURCE_CLASS" _VAR_SUBSTITUTIONS _ENV_ARGS else CL=$LINENO runClassProcessor "$RESOURCE_CLASS" _VAR_SUBSTITUTIONS _ENV_ARGS fi log_return_msg "$?" resource_manage "$LINENO" exit $?