wso2elb服务映射无法与所有配置的主机名一起工作

wso2elb服务映射无法与所有配置的主机名一起工作,wso2,Wso2,我目前正在部署一些wso2as集群,并且在URL映射方面面临一个奇怪的问题。 我已经设置了两个名为was0和was1的工作节点,一个名为mgt的管理器节点和一个名为ELB的ELB节点 安装似乎工作正常,因为我能够调用负载平衡器上映射的URL,如下所示:,was0.0域映射到群集外部访问此地址的站点上的负载平衡器IP上。 当我在此端点上调用服务时,我能够实现负载平衡,因为我可以注意到我的wsdl具有基于was0和was1的enpoints。这两个工作节点被检测为ELB上的应用程序节点 然而,我遇到

我目前正在部署一些wso2as集群,并且在URL映射方面面临一个奇怪的问题。 我已经设置了两个名为was0和was1的工作节点,一个名为mgt的管理器节点和一个名为ELB的ELB节点

安装似乎工作正常,因为我能够调用负载平衡器上映射的URL,如下所示:,was0.0域映射到群集外部访问此地址的站点上的负载平衡器IP上。 当我在此端点上调用服务时,我能够实现负载平衡,因为我可以注意到我的wsdl具有基于was0和was1的enpoints。这两个工作节点被检测为ELB上的应用程序节点

然而,我遇到的问题是,当我使用基于was0的URL时,它工作得很好,但是当我尝试使用was1时,负载平衡器返回一个空白页面,并且我没有注意到日志中有任何错误。我在集群配置中将主机was1和was0都定义为as的应用程序成员。 如果我尝试从ELB节点直接在WAS上访问基于was1的Web服务,我可以毫无问题地访问它,因此服务在was1节点上工作,并且该节点也在集群内被检测和注册,但无法通过集群访问。 最后,这会导致一个调用在循环目标为0时工作,一个调用在目标为1时不工作

因此,我现在想知道我是否很了解集群行为:它是否适用于映射URL的两个应用服务器,还是只有第一个was0成功响应是正常的?如何强制生成的WSDL返回有效的端点URL? 通过阅读文档,我了解到我需要映射ELB上的WAS URL,然后这个映射将在所有WAS服务器上保持平衡,但它似乎不是这样工作的

如果您需要一些配置部件、图表或示例,请告诉我,我没有将其粘贴在这里,因为它非常大:

作为参考,我在通过2个wso2esb工作节点进行平衡时遇到了相同的问题,但通过在ESB配置中使用WSDLEPRPrefix强制第一个节点URL esb0使用WSDLEPRPrefix来解决了这个问题。由于我在wso2as中没有这样的设置,我不知道如何访问WSDL中返回的URL

提前感谢您的帮助


BOUCNIAUX Benjamin

我找到了解决方案,如果有人有一天遇到同样的问题,这里有一个解决方法:因为axis2集群配置必须基于真实的服务器名was0、was1,而carbon.xml必须定义映射URL的主机名,这将在所有WAS之间共享。在我的例子中,有两个节点was0.domain和was1.domain,解决方案是使用一些基于was.domain的URL,而不标识物理服务器,并将carbon.xml主机名定义为AS节点上的was.domain。负载平衡器随后将检测到这两个服务器处理was.domain,并向它们发送请求。在ELB方面,我还必须为AS域定义hosts条目was.domain,而不是有两个主机was0和was1。我希望有一天这会对某人有所帮助:你能回答这个问题并将其标记为已解决吗?