3

我有一个计划为我的公司使用 WSO2 API 管理器,所以试图让它在集群中工作。

它由 Keymanager、Gateway(manager, worker)、Publisher、Store 组成,位于 2 个 AWS 实例上。

Host1 包含 Keymanager、Gateway manager、Publisher、Store。Host2 包含网关工作程序。

我感到困惑的一点是如何在 /repository/conf/api-manager.xml 文件中配置正确的设置。

案例一)在 GatewayEndpoint 中设置 gateway.manager.com

<APIGateway>
  . . . 
    <ServerURL>https://gateway.manager.com:9444/services/</ServerURL>
    <Username>admin</Username>
    <Password>admin</Password>
    <GatewayEndpoint>http://gateway.manager.com:8281, https://gateway.manager.com:8244</GatewayEndpoint>
. . .
</APIGateway>

案例 2)在 GatewayEndpoint 中设置 gateway.worker.com

<APIGateway>
  . . . 
    <ServerURL>https://gateway.manager.com:9444/services/</ServerURL>
    <Username>admin</Username>
    <Password>admin</Password>
    <GatewayEndpoint>http://gateway.worker.com:8280, https://gateway.worker.com:8243</GatewayEndpoint>
. . .
 </APIGateway>

主机 200.100.100.123 gateway.manager.com 200.100.100.234 gateway.worker.com


感谢和问候

4

2 回答 2

2

您不需要在网关管理器上进行 APIGateway 配置,因为您在一个节点中使用网关管理器、密钥管理器、发布者、存储。

您可以如下配置网关管理器节点

<APIGateway>
    <Environments>
        <Environment type="hybrid">
        ...
            <ServerURL>https://gateway.manager.com:9443/services/</ServerURL> <!-- To deploy API to gateway Manager -->
            <Username>admin</Username>
            <Password>admin</Password> 
            <GatewayEndpoint>http://gateway.worker.com:8280,https://gateway.worker.com:8243</GatewayEndpoint> <!-- To show the gateway worker URLs for API in API Store -->
        </Environment>
    </Environments> 
    ...
</APIGateway>

您无需在 Gateway Worker 节点上进行任何配置。

于 2016-08-10T12:05:23.820 回答
1

您不需要在网关端点部分定义网关管理器 URL。当您单击 API 并查看详细信息时,API 商店将使用网关端点部分列出 API 网关 URL。因此,您可以对所有节点使用以下配置,而不会出现任何问题。

<GatewayEndpoint>http://gateway.worker.com:8280, https://gateway.worker.com:8243</GatewayEndpoint>

您需要在发布者中定义网关服务器 URL 如下,主要是因为它将使用此 URL 将 API 发布到网关管理器。

<ServerURL>https://gateway.manager.com:9444/services/</ServerURL>
于 2016-08-10T11:49:19.243 回答