Nginx WSO2 API管理器群集:发布服务器和存储的登录错误

Nginx WSO2 API管理器群集:发布服务器和存储的登录错误,nginx,wso2,wso2-am,wso2carbon,Nginx,Wso2,Wso2 Am,Wso2carbon,我们正在尝试按照WSO2文档在集群中配置WSO2 API Manager 2.1.0。我们有: 由两个网关组成的集群 由两个关键管理者组成的集群 由两个流量管理器组成的集群 作为前端负载平衡器,我们使用NGINX。除此之外,一切正常: 当我尝试登录到发布服务器或存储时,请求被发送到负载平衡器,负载平衡器将请求重定向到密钥管理器。KM1的日志为: 信息{org.wso2.carbon.core.services.util.CarbonAuthenticationUtil}-'admin@car

我们正在尝试按照WSO2文档在集群中配置WSO2 API Manager 2.1.0。我们有:

  • 由两个网关组成的集群
  • 由两个关键管理者组成的集群
  • 由两个流量管理器组成的集群
作为前端负载平衡器,我们使用NGINX。除此之外,一切正常:

当我尝试登录到发布服务器或存储时,请求被发送到负载平衡器,负载平衡器将请求重定向到密钥管理器。KM1的日志为:

信息{org.wso2.carbon.core.services.util.CarbonAuthenticationUtil}-'admin@carbon.super[-1234]'登录到[2018-02-01 15:23:15102+0100]{org.wso2.carbon.core.services.util.CarbonAuthenticationUtil}

而在另一种情况下,对数(KM2)为:

TID:[-1234][[2018-02-01 15:23:15165]警告 {org.wso2.carbon.server.admin.module.handler.AuthenticationHandler}- 试图从IP地址在[2018-02-01 15:23:150165]进行非法访问 xxxxx正在尝试验证对服务日志的访问权限 {org.wso2.carbon.server.admin.module.handler.AuthenticationHandler}

最终的结果是我无法访问商店或出版商。 如果两公里中有一公里停车,一切正常。 您对如何配置KM或TM有什么建议吗?
非常感谢

发生这种情况是因为您尚未为密钥管理器启用粘性会话

有两个呼叫转到密钥管理器,两个呼叫都应重定向到同一个密钥管理器。在您的情况下,请求以循环方式进行负载平衡。因此,在另一个节点中创建会话时,第二个调用失败

请参阅下面的文章。

为什么不建议在生产部署中使用thrift密钥验证

当我们有负载平衡器时,Thrift密钥验证不起作用 前面的钥匙经理。原因是大多数负载平衡器 无法以会话感知的方式路由流量。 因此,在这种情况下,始终建议使用WS-key 验证客户端。当我们使用web服务客户端时,我们需要启用 负载平衡器级别的粘性会话。此外,我们需要给出一个 我们用来处理会话粘性的会话cookie


您是在使用ThriftClient还是WSClient进行
KeyValidatorClientType
?我还是在使用WSClient?即使我使用了ThriftClient,结果也是一样的。总之,我们用HAProxy替换NGINX并使用粘性会话解决了问题。