【问题标题】:WSO2 API Manager cluster deployment. Some architectural doubtsWSO2 API Manager 集群部署。一些架构疑问
【发布时间】:2020-02-02 18:39:26
【问题描述】:

我对集群模式下的 WSO2 API Manager 2.6.0 安装有以下疑问。

我必须按照官方文档提出的部署PATTER 4https://docs.wso2.com/display/AM260/Deployment+Patterns

所以这是合乎逻辑的方案:

为了提供高可用性,这种部署模式需要:

  • 2 个外部网关组件(暴露在 Internet 上的网关)。
  • 2 个内部网关组件(网关暴露在内部或可通过 VPN 访问)。
  • 2 个开发者门户(发布者、带有流量管理器组件的商店)。
  • 2 个关键管理器组件。

好的,这对我来说很清楚。根据这个逻辑架构,最终客户端向我提供了以下代表实际机器的物理架构(我们将其部署在一些虚拟机上,我们不使用像 Kubernetes 这样的工具):

第二个物理方案说明了必须创建的 VM 以及必须在每台计算机上安装的组件。在这里,我发现以下疑问:

  1. 正如您在上一张图片中看到的(进入方案的 WSO2 API 管理器节点 部分),似乎网关组件被拆分为 网关管理器网关工作者 节点。似乎在 2 个网关场景中,第一个网关组件(管理器节点和工作程序节点)有 2 个节点,第二个网关组件(另一个管理器节点和另一个工作程序节点)有其他 2 个节点。在我看来,这很奇怪。据我所知,网关组件是自洽的,我不必拆分管理节点和工作节点。我的想法是我的冗余网关组件(网关 1 和网关 2)只有 2 个节点。是它还是我错过了什么?

  2. 另一个疑问与负载平衡有关:网关组件必须在负载平衡器下。我的疑问是:使用 2 个不同的负载均衡器是否有意义? (外部网关节点使用外部LB,内部网关节点使用内部LB)。

  3. 最后怀疑它与 2 个密钥管理器节点有关(与必须与 API 管理器集成的 WSO2 IS 组件有关)。我认为这两个节点也必须处于负载平衡状态。那么将这些节点放在前面提到的内部负载均衡器下是否明智?

【问题讨论】:

    标签: wso2 wso2-am wso2is


    【解决方案1】:

    1) APIM 之前曾经有这种工作管理器分离,并且发布者用于将 API 运行时工件发布到网关管理器节点。然后网关管理器将运行时文件保存在其文件系统中,并使用 NFS 将这些文件与其他网关同步。但是现在没有经理档案了。现在发布者发布给自己(即发布者的配置应该指向自己),然后使用 NFS 与网关共享文件。

    2) 是的,你可以。

    3) 是的,你可以。但是,如果您有通过授权码授权生成令牌等用例,您也需要将 KM 暴露给外部 LB,因为当用户登录时,浏览器必须直接与 KM 对话(重定向)。

    【讨论】:

    • 感谢您提供的信息。关于第 1 点:所以我只能为 2 个网关组件考虑 2 个虚拟机?这是对的吗?关于第 2 点:关于两个内部网关:这些 GW 组件将通过 OAuth2 客户端凭据授权访问来自网络内部的调用。调用者应用程序将由用于获取相关访问令牌的一对 cliendID\clientSecret 标识。所以我认为在这种情况下,我必须将我的 2 KM 实例同时暴露给内部 LB 和外部 LB。我的推理正确吗?
    • 1) 是的,你可以。无论如何,它与工人-经理分离是正交的。或者我误解了这个问题。 2) 是的,内部 GW 可以连接到 internal-km-lb,外部 GW 可以连接到 external-lm-lb。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多