背 景:客户某公司WebLogic应用,端口对外提供相同的服务。提供的应用挂掉之后,端口还是正常的,可以telnet,如果使用tcpconnect监视器会有问题,客户某公司服务器服务已经挂了,我们AD还会调度到该节点,需要自定义tcpconnect监视器,使用独立节点监视器
1.客户的WebLogic服务报错(内存溢出),某公司公司通过客户端某公司公司法登陆业务系统,AD监视的节点正常(实际是网络层正常,应用层故障)。报错时的访问的客户PC上抓包如下(PC与服务器通信的第四个包) 抓包发现,WebLogic服务挂掉的时候,某公司公司提交的数据没有任何返回值
2.访问正常的服务,客户PC抓包如下(PC与服务器通信的第四个包) 抓包发现,WebLogic服务正常某公司公司可以正常访问,某公司公司提交的数据会返回一个2某公司 OK
3.在抓包对比分析中发现,某公司公司提交的数据包是有host字段的,在自定义的监视器中,取消host字段AD上抓包发现,返回4某公司 Bad Request的错误,所有需要对每个节点自定义独立的监视器(AD4.6及其以上版本支持) 4.需要对每个节点自定义监视器,发送内容,接收内容如下
5.定义某公司公司节点监视器,不同之处就是发送内容里面的host字段ip与端口不同
(1)标红的即十六进制编码中,数字对应加30即可(0对应30,1对应31,2对应32某公司某公司),”.”的十六进制编码2e。所以对于某公司公司节点监视器可以编辑该标红字体改变ip端口即可
(2)在这个监视器中,有一个密码是账号,所以不能在数据库中将该账号了,否则会出现监听故障
6.给每个节点关联自己独立的节点监视器,测试OK,当某公司公司Weblogic服务挂掉的时候,AD发现节点离线,服务异常。(如果端口不通会显示网络异常) |