在进行下列操作之前,请先确保两台服务器都执行过了《ServHA Mirror for Linux 前序配置手册》中所述的步骤,既两台服务器已经建立了一个基础的双机热备环境;
请提前准备好应用安装程序以及应用程序所依赖的包或存储介质;
请确保两台服务器上的SELinux处于关闭状态;
ServHA双机热备软件对应用的安装只有一点要求:主备机上安装的应用要完全一致,即应用程序的版本、安装路径、配置等等参数要完全一致,也可将应用程序完全放入镜像盘中。
请按照实际需求以合适的方式为两台服务器都安装适合的应用程序。
某些需要JDK环境的应用程序,请先确保两台服务器上已配置好JDK环境。
某些应用需要桌面环境,请自行按需安装。
接入ServHA双机热备软件管理的应用程序资源,需要使用启动脚本和停止脚本进行启停操作,启停脚本需要在完成操作后退出,不会伴随业务主进程占用终端,例如tomcat自带的startup.sh和shutdown.sh。
接入ServHA双机热备软件管理的应用程序资源,除了需要提供应用程序的启停方式之外,还需要提供检测其是否正常运行的方式,ServHA双机热备软件会在每个检测周期内(大约几秒)通过调用检测器来判定本机的应用程序是否运行,并根据运行状态触发相应的动作。
资源在启动和停止的过程中不会调用检测器,其他的时段,两台服务器的检测器会被周期性的分别调用,启动着资源树的服务器需要检测到资源为启动状态,未启动资源树的服务器需要检测到资源为停止状态。
ServHA双机热备软件提供了四种检测器,可根据实际情况和需要启用并配置相应的参数:
端口检测器(适用于网络服务程序)
检测本机指定的端口是否被程序占用,还可以联合判断占用该端口的程序是不是指定的程序,满足条件则认为应用程序在本机处于运行状态;
URL检测器(适用于WEB程序)
系统会尝试访问指定的URL,并检测返回内容,还可以联合判断返回内容中是否包含指定的字符串,满足条件则认为应用程序在本机处于运行状态;
进程检测器(适用于大多数本地运行程序)
检测本机是否运行着指定进程或程序,指定的进程和程序皆运行,则认为应用程序在本机处于运行状态;
自定义检测器(适用于更复杂的情况)
如遇到更复杂的情况,可以自行编写检测脚本,该脚本需要能立即返回“0”或者“非0”的值,两台服务器的检测器会分别调用该脚本,返回“0”则认为应用程序在本机处于运行状态,返回其它值则认为本机应用程序处于停止状态。(注:由于两台服务器都会间隔性的调用该脚本,所以该脚本必须要满足两台服务器都能独立访问到的条件,即处于相同的绝对路径并不处于镜像盘下)
*例如使用tomcat做WEB服务,启动之后会有java进程监听配置的端口(如80或者8080端口);使用浏览器进行访问会显示一个页面,如下图:
可以使用URL检测器检测访页面中是否出现了“Tomcat”字符串,并且辅以端口检测器达到检测效果。
ServHA |
Ø 在ServHA双机热备软件配置监控端中操作
选中资源树并创建自定义资源,如下图:
在“创建自定义资源”窗口中填写“资源名称”、“启动脚本”、“停止脚本”并配置合适的检测器,点击“保存”按钮,如下图为tomcat的示例:
资源创建完成后,将该资源的图标拖动到镜像资源以及IP资源图标上,建立依赖关系,完成后效果如下图:
ServHA |
在ServHA双机热备软件配置监控端中,选择该资源树未启动的节点并点击“启动”,将资源树切换到备机,如下图:
待备机资源树启动完成后对应用进行访问测试以及数据同步测试。
最后将资源树切回主机。
至此,使用ServHA双机热备软件在Linux下配置通用程序的双机热备操作完成。