2016-06-21 1 views
1

Я пытаюсь скопировать wso2 api manager 1.10 gateway на 3 хоста, используя учебник здесь: https://docs.wso2.com/display/CLUSTER44x/Clustering+the+Gateway, но некоторые из этих шагов запутывают. Насколько я знаю, менеджер WSO2 апи имеет два транспорта, которыйкластеризация wso2 api manager gateway

1.) сервлет транспорт (кот), расположенный в порту 9443 (HTTPS) и 9763 (HTTP) используется для обслуживания углерода услуг, связанных

2.) Транспорт PTT/NIO (ось 2), расположенный на порту 8243 (https) и 8280 (http), используемый для обслуживания запросов к артефактам развертывания.

Что я не понимаю, из учебника является:

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.) Почему конфигурация балансировки нагрузки для рабочего шлюза использует порт сервлетов? не должен ли быть порт 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; 
     } 
} 

ответ

0
  1. Есть два транспортных портов в API диспетчера, PTT и сервлет. Когда запрос входит в диспетчер API, он всегда переходит на транспорт по умолчанию, который является транспортом PTT/NIO. Когда вызываются службы администратора (например: API публикации), вы отправляете запрос сервлета. Если вы не укажете параметр сопоставления портов в узле менеджера, это приведет к удалению транспорта PTT/NIO, и запрос завершится с ошибкой.

  2. Здесь он указал общий пример конфигурации балансировки нагрузки. Ваша конфигурация должна быть изменена в соответствии с работником Gateway.

+0

привет, спасибо за ответ, но я до сих пор путает 1.), как я знаю, PTT/NIO транспорта находится на порты 8280 и 8243, в то время как порты консоли управления в 9443 и 9763, если мы настроить прокси-проход в nginx, как это, 'proxy_pass https: //xxx.xxx.xxx.xx3: 9443 /', как можно передать запрос на порт PTT/NIO? – rucciva

+0

он установлен на axis2.xml не в nginx. – shashika