看了半天IBM Knowledge Center,终于把metrc server搞定了,原来是没有配置 用lbkeys命令生成key文件,并拷贝的server机器。现在metrc server可以正常监控server端的机器,并根据cpu和内存使用情况负载均衡,但是“单点故障”的问题怎么解决呢?想了半天,能自定义一个metrc来解决单点故障的问题,于是写了个脚本命名成portlaod.cmd,放在server端metrc server目录的script目录下,脚本如下:
/***************************************************************************/
@echo off
netstat -aon | findstr \"\\<0.0.0.0:80\\>\" | findstr \"LISTENING\" > nul
IF ERRORLEVEL 1 GOTO err
IF ERRORLEVEL 0 GOTO ok
GOTO unknown
:err
echo 100
exit /B 2
:unknown
echo 0
exit /B 3
:ok
echo 0
exit /B 0
/********************************************************************************/
实际就是ihs服务开启时返回0,没开启时返回100。并设置portload 这个metrc的权重最高。load balancer顾问程序根据这个返回值判断,当值为100时不向这台服务器发请求。关机时由于rmi连通不了这台server,返回值就是-1,也不向这台服务器发请求。