繁体   English   中英

集群WSO2 API管理器网关

[英]clustering wso2 api manager gateway

我正在尝试使用此处的教程将wso2 api管理器1.10网关群集到3个主机中: https ://docs.wso2.com/display/CLUSTER44x/Clustering+the+Gateway,但是其中一些步骤令人困惑。 据我所知,WSO2 API管理器有两个传输

1.)位于端口9443(https)和9763(http)的servlet传输(tomcat),用于为碳相关服务提供服务

2.)位于端口8243(https)和8280(http)上的PTT / NIO传输(轴2)用于为部署工件提供请求。

我从教程中不了解的是:

1.)为什么网关管理器组件的集群配置(位于axis2配置中)应该有端口映射?

<parameter name="properties">
    <property name="backendServerURL" value="https://${hostName}:${httpsPort}/services/"/>
    <property name="mgtConsoleURL" value="https://${hostName}:${httpsPort}/"/>
    <property name="subDomain" value="mgt"/>
    <property name="port.mapping.80" value="9763"/>
    <property name="port.mapping.443" value="9443"/>
</parameter>

在负载均衡器(nginx)配置中是否已定义

server {
    listen 443;
    server_name mgt.am.wso2.com;
    ssl on;
    ssl_certificate /etc/nginx/ssl/mgt.crt;
    ssl_certificate_key /etc/nginx/ssl/mgt.key;

    location / {
               proxy_set_header X-Forwarded-Host $host;
               proxy_set_header X-Forwarded-Server $host;
               proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
               proxy_set_header Host $http_host;
               proxy_read_timeout 5m;
               proxy_send_timeout 5m;
               proxy_pass https://xxx.xxx.xxx.xx3:9443/;
        }
    error_log  /var/log/nginx/mgt-error.log ;
    access_log  /var/log/nginx/mgt-access.log;
}

和在tomcat的配置?

<Connector  protocol="org.apache.coyote.http11.Http11NioProtocol" port="9763" proxyPort="80" ... />
<Connector  protocol="org.apache.coyote.http11.Http11NioProtocol" port="9443" proxyPort="443"/>

2.)为什么网关工作者的负载均衡器配置使用servlet端口? 不应该是PTT / NIO端口吗? (由于使用了网关工作程序来处理对部署工件的请求)

upstream wso2.am.com {
        sticky cookie JSESSIONID;
        server xxx.xxx.xxx.xx4:9763;
        server xxx.xxx.xxx.xx5:9763;
}

server {
        listen 80;
        server_name am.wso2.com;
        location / {
               proxy_set_header X-Forwarded-Host $host;
               proxy_set_header X-Forwarded-Server $host;
               proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
               proxy_set_header Host $http_host;
               proxy_read_timeout 5m;
               proxy_send_timeout 5m;
               proxy_pass http://wso2.am.com;
        }
}

upstream ssl.wso2.am.com {
    sticky cookie JSESSIONID;
    server xxx.xxx.xxx.xx4:9443;
    server xxx.xxx.xxx.xx5:9443;
}

server {
listen 443;
    server_name am.wso2.com;
    ssl on;
    ssl_certificate /etc/nginx/ssl/wrk.crt;
    ssl_certificate_key /etc/nginx/ssl/wrk.key;
    location / {
               proxy_set_header X-Forwarded-Host $host;
               proxy_set_header X-Forwarded-Server $host;
               proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
               proxy_set_header Host $http_host;
               proxy_read_timeout 5m;
               proxy_send_timeout 5m;
               proxy_pass https://ssl.wso2.am.com;
        }
}
  1. API Manager中有两个传输端口,即PTT和Servlet。 当请求进入API管理器时,它总是转到默认传输方式,即PTT / NIO传输方式。 调用管理服务时(例如:Publishing API),您将发送一个servlet请求。 如果未在管理器节点中指定端口映射参数,则它将命中PTT / NIO传输,并且请求将失败。

  2. 在此,它为负载均衡器配置指定了一个常见示例。 您的配置需要根据网关工作人员进行更改。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM