支持
支持
Solutions
Linux平台自主开发的程序如何做双机热备

一、  前序准备

在进行下列操作之前,请先确保两台服务器都执行过了《ServHA Mirror for Linux 前序配置手册》中所述的步骤,既两台服务器已经建立了一个基础的双机热备环境;

请提前准备好应用安装程序以及应用程序所依赖的包或存储介质;

请确保两台服务器上的SELinux处于关闭状态;

二、  安装应用程序

ServHA双机热备软件对应用的安装只有一点要求:主备机上安装的应用要完全一致,即应用程序的版本、安装路径、配置等等参数要完全一致,也可将应用程序完全放入镜像盘中。

请按照实际需求以合适的方式为两台服务器都安装适合的应用程序。

某些需要JDK环境的应用程序,请先确保两台服务器上已配置好JDK环境。

某些应用需要桌面环境,请自行按需安装。

三、   明确应用程序的启停机制

接入ServHA双机热备软件管理的应用程序资源,需要使用启动脚本和停止脚本进行启停操作,启停脚本需要在完成操作后退出,不会伴随业务主进程占用终端,例如tomcat自带的startup.shshutdown.sh

四、   明确应用程序的检测机制

接入ServHA双机热备软件管理的应用程序资源,除了需要提供应用程序的启停方式之外,还需要提供检测其是否正常运行的方式,ServHA双机热备软件会在每个检测周期内(大约几秒)通过调用检测器来判定本机的应用程序是否运行,并根据运行状态触发相应的动作。

资源在启动和停止的过程中不会调用检测器,其他的时段,两台服务器的检测器会被周期性的分别调用,启动着资源树的服务器需要检测到资源为启动状态,未启动资源树的服务器需要检测到资源为停止状态。

ServHA双机热备软件提供了四种检测器,可根据实际情况和需要启用并配置相应的参数:

端口检测器(适用于网络服务程序)

检测本机指定的端口是否被程序占用,还可以联合判断占用该端口的程序是不是指定的程序,满足条件则认为应用程序在本机处于运行状态;

URL检测器(适用于WEB程序)

系统会尝试访问指定的URL,并检测返回内容,还可以联合判断返回内容中是否包含指定的字符串,满足条件则认为应用程序在本机处于运行状态;

进程检测器(适用于大多数本地运行程序)

检测本机是否运行着指定进程或程序,指定的进程和程序皆运行,则认为应用程序在本机处于运行状态;

自定义检测器(适用于更复杂的情况)

如遇到更复杂的情况,可以自行编写检测脚本,该脚本需要能立即返回“0”或者“非0”的值,两台服务器的检测器会分别调用该脚本,返回“0”则认为应用程序在本机处于运行状态,返回其它值则认为本机应用程序处于停止状态。(注:由于两台服务器都会间隔性的调用该脚本,所以该脚本必须要满足两台服务器都能独立访问到的条件,即处于相同的绝对路径并不处于镜像盘下)

*例如使用tomcatWEB服务,启动之后会有java进程监听配置的端口(如80或者8080端口);使用浏览器进行访问会显示一个页面,如下图:

可以使用URL检测器检测访页面中是否出现了“Tomcat”字符串,并且辅以端口检测器达到检测效果。

五、   创建资源

ServHA

Ø ServHA双机热备软件配置监控端中操作

 

选中资源树并创建自定义资源,如下图:

在“创建自定义资源”窗口中填写“资源名称”、“启动脚本”、“停止脚本”并配置合适的检测器,点击“保存”按钮,如下图为tomcat的示例:

资源创建完成后,将该资源的图标拖动到镜像资源以及IP资源图标上,建立依赖关系,完成后效果如下图:

六、  启动、切换测试

ServHA

 

ServHA双机热备软件配置监控端中,选择该资源树未启动的节点并点击“启动”,将资源树切换到备机,如下图:

待备机资源树启动完成后对应用进行访问测试以及数据同步测试。

最后将资源树切回主机。

至此,使用ServHA双机热备软件在Linux下配置通用程序的双机热备操作完成。

 

在线客服
官方微信
Copyright © 北京微彩华创科技有限公司京ICP备13046875号