使用F5负载均衡Liferay Portal服务器与Jboss捆绑在一起

时间:2015-05-13 05:20:25

标签: jboss7.x load-balancing liferay-6 f5

我们正在尝试使用F5加载与Jboss 7.1.1捆绑在一起的Life Life Life Portal。当我们尝试到达Load Balancer主机和端口时,我们正在观察一种奇怪的行为。

如果我们尝试访问https://Loadbalancer_Host:Loadbalancer_Port,我们会被重定向到https://Loadbalancer_Host:Liferay_Port/c/portal/layout页。

我们已在Liferay服务器上正确配置了证书,并且可以单独访问它们而不会出现任何问题。

我们无法确定这是否与我们在F5上配置的配置文件有关,或者我们是否缺少Jboss上的配置。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

首先,当然要确保指向F5的源服务器的属性配置为指向正确的虚拟服务器目标vIP / port / URI(例如https://x.x.x.x:443/c/portal/layout)。

您正在尝试使用虚拟服务器进行加密的具体操作?假设您在Liferay服务器上拥有证书(看起来您正在Liferay服务器上终止),您似乎要在F5上尝试进行SSL直通或SSL / TLS桥接。如果您尝试进行SSL / TLS传递,那么您根本不需要客户端服务器端" SSL / TLS"该配置文件(只是简单地配置为没有配置文件的http端口,但请记住此配置,您不能执行任何第7层操作,例如关于http请求的irules /响应事件,应配置性能层4或类似,并且显然不应该使用http配置文件。如果您尝试创建" SSL / TLS"桥,您将使用客户端配置文件以结合服务器端配置文件终止SSL / TLS以便在发送到Liferay服务器之前重新加密。使用SSL / TLS桥接器,您可以使用第7层irules来检查/操纵http流量。

如果您觉得可能正在进行重定向,那么您可以使用irule进行检查以验证这一点,但是除非您实际上尝试创建所提到的桥,否则您无法进行设置。使用HTTP响应事件声明,检查状态是否为重定向,如果是,则创建一个告诉您的日志。 HTTP :: is_redirect不适用于某些版本,因此如果LTM日志中出现错误,请检查实际状态:

以下响应代码导致[HTTP :: is_redirect]返回匹配项(下面未显示您还可以检查将浏览器指向备用资源的Location头):

-301(永久移动) -302(找到) -303(见其他) -305(使用代理) -307(临时重定向)

when HTTP_RESPONSE {  

# Check if the status indicates a redirect, use [HTTP::is_redirect] if possible
# if {([HTTP::status] == 302) or ([HTTP::status] == 301) or....}{
if {[HTTP::is_redirect]} {  

   log local0. "There was indeed a redirect"
}  
}

如果存在重定向,则可能来自ESB,除非您在F5上有检查特定URI的逻辑并且如果检测到,则路由到另一个URI。因此,请确保有人没有配置并应用irule进行重定向(实际上可以在第4层为http或https完成),具体如下:

when CLIENT_ACCEPTED {

#if all of the members in the pool have been marked down by the health monitor
if { [active_members [LB::server pool_name]] <1 } {
TCP::respond "HTTP/1.0 302 Found\r\nServer: Apache\r\nConnection:     Close\r\nContent-Length: 0\r\nLocation: https://www.somewhere.else.com\r\n"
}
} 

我认为,在阅读本文之后,如果还没有解决的话,你应该能够辨别出问题是什么,如果仍然不确定是否乐意尝试提供帮助。