Contents
[hide]Known Issues and Recommendations
Primary Server Disconnection
When the primary server goes down due to power or network disconnection, the script to disable the Virtual IP fails because the primary box is unavailable. When the primary server is started, there might be an IP conflict since Virtual IP is not disabled in the primary server. Genesys recommends you add the disable Virtual IP script as a startup script in the machine, so the Virtual IP is disabled by default when a system boots up and then according to the event (4563) from Genesys application in our case SIP Server the reaction scripts should be triggered. See Creating Virtual IP control scripts (Windows, Linux). Note: There is no resolution for an IP conflict caused by unplugging an IP cable. This is a known limitation.
VIP Not Enabled Issue
The VIP not enabled issue can only occur in Windows. In this scenario, the backup server is down when the primary server starts. If the VIP down service is started after the Primary SIP server is started and the alarm condition from the server has already enabled the VIP in the machine, the VIP is disabled and VM SIP server goes into a service unavailable state.
Preventing The VIP Not Enabled Issue
Purpose: To prevent the VIP from being disabled and the VM SIP server from going into a service unavailable state.
Start
- Add the following script as a startup script in Windows.
[+] Commands for SC_ENABLE_VIP.BAT
@echo off rem Set Application, Configuration and SCS server details rem Application Details set application=<Name of the Application> rem Configuration server details set host=<IP address of the config server> set port=<Port of the config server> set appname=<App name the config server> set user=<Config server user name> set password=<Config server password> rem Third party application details set thirdparty=<Third party server name that is linked to the VIP_ON script> rem for example thirdparty=primary_VIP_up rem SCS server details set scshost=<IP address of the SCS server> set scsport=<Port of the SCS server> rem set the path in which log files will be stored Logpath= <Specify the path to log files> rem for example Logpath= C:\Solution_HA\Logs rem set the mlcmd utility path of the local machine in which it is copied mlcmdpath= <Specify the mlcmd path > rem for example mlcmdpath = C:\Solution_HA\Mlcmd echo %date% >> %Logpath%\thirdparty_status.log echo %time% >> %Logpath%\thirdparty_status.log :start echo checking the status of thridparty application >> %Logpath%\thirdparty_status.log "%mlcmdpath%\mlcmd.exe" -getappstatus-runmode %thirdparty% -cshost %host% -csport %port% -csappname %appname% -csuser %user% -cspassword %password% -scshost %scshost% -scsport %scsport% 1> %Logpath%\application_mode.txt 2>&1 FINDSTR "APP_STATUS_STOPPED" %Logpath%\application_mode.txt > nul if errorlevel 0 goto next if not errorlevel 0 goto start :next rem Checking the mode of application "%mlcmdpath%\mlcmd.exe" -getappstatus-runmode %application% -cshost %host% -csport %port% -csappname %appname% -csuser %user% -cspassword %password% -scshost %scshost% -scsport %scsport% 1> %Logpath%\application_mode.txt 2>&1 FINDSTR "BACKUP" %Logpath%\application_mode.txt > nul if not errorlevel 1 goto backup rem Checking the mode of application "%mlcmdpath%\mlcmd.exe" -getappstatus-runmode %application% -cshost %host% -csport %port% -csappname %appname% -csuser %user% -cspassword %password% -scshost %scshost% -scsport %scsport% 1> %Logpath%\application_mode.txt 2>&1 FINDSTR "PRIMARY" %Logpath%\application_mode.txt > nul if errorlevel 1 goto next timeout 3 if errorlevel 0 goto end :backup echo %application% is not in Primary mode, exiting the loop >> %Logpath%\thirdparty_status.log exit :end rem stopping application "%mlcmdpath%\mlcmd.exe" -stopapp %application% -cshost %host% -csport %port% -csappname %appname% -csuser %user% -cspassword %password% -scshost %scshost% -scsport %scsport% timeout 3 rem starting application "%mlcmdpath%\mlcmd.exe" -startapp %application% -cshost %host% -csport %port% -csappname %appname% -csuser %user% -cspassword %password% -scshost %scshost% -scsport %scsport% timeout 3 echo %application% is restarted since the application %thirdparty% was in unknown state >> %Logpath%\thirdparty_status.log echo %date% >> %Logpath%\thirdparty_status.log echo %time% >> %Logpath%\thirdparty_status.log echo. >> %Logpath%\thirdparty_status.log
- Copy the MLCMD utility files (mlcmd.exe and mlcmd.exe.manifest files) from the SCS host onto the host running the VM components.
End
Subnet for GSVM Servers
You must connect both the primary and backup GSVM Servers within the same subnet to prevent problems refreshing the ARP cache of the gateway after the switchover of the Virtual IP. You can use the ARPING command in the Virtual IP takeover scripts to resolve this issue. ARPING is a tool included in Linux. A third-party version of ARPING can also be downloaded and installed in Windows.