1. 程式人生 > >Linux環境下Apache反向代理金蝶中介軟體Apusic叢集

Linux環境下Apache反向代理金蝶中介軟體Apusic叢集

作業系統:RedHat Enterprise Linux 5.6

文件參考:《金蝶Apusic應用伺服器 幫助手冊| IX. Apusic Http Server使用指南》

 

一、金蝶中介軟體配置

金蝶中介軟體需要修改的是叢集環境中所有節點域中的apusic.conf和vm.options兩個配置檔案。

1、apusic.conf配置檔案修改

配置高可用性

<SERVICE CLASS="com.apusic.cluster.ClusterService">
    <ATTRIBUTE NAME="ClusterName" VALUE="ApusicCluster
"/> <ATTRIBUTE NAME="ReplicationPolicy" VALUE="ALL"/> <ATTRIBUTE NAME="LoadWeight" VALUE="100"/> <ATTRIBUTE NAME="ServerName" VALUE="node1"/> </SERVICE>

其中屬性ClusterName為叢集的名稱,多個節點如果想加入到同一個叢集中,ClusterName必須相同。ServerName為當前節點的名稱,必須唯一,如果存在相同名稱的節點,則後加入的節點會加不到叢集中。

由於Apusic預設Session複製策略為配對複製的,如果使用者想使用Session多點複製,需要設定ClusterService的配置屬性:

<ATTRIBUTE NAME="ReplicationPolicy" VALUE="all"/> <!-- ReplicationPolicy預設為"pair",即配對複製。—>
 

配置會話:

<SERVICE CLASS="com.apusic.web.session.SessionService">
    <ATTRIBUTE NAME="DefaultSessionTimeout" VALUE="3600"/>
    <ATTRIBUTE NAME="MaxSessionsInCache" VALUE="10240"/>
    <ATTRIBUTE NAME="
SessionInvalidateCheckInterval" VALUE="60"/> <ATTRIBUTE NAME="Distributable" VALUE="True"/> <ATTRIBUTE NAME="Replicable" VALUE="True"/> <ATTRIBUTE NAME="SessionStick" VALUE="True"/> <ATTRIBUTE NAME="PersisteSession" VALUE="False"/> <ATTRIBUTE NAME="DestorySessionOnApplicationStop" VALUE="True"/> </SERVICE>

需要設定SessionService的Distributable和Replicable屬性為True。

當用戶想使用Session Stick時,SessionStick值需要設定為True。

 

2、配置vm.options

在該配置檔案最後新增如下內容:

apusic.redirect.proxy=true
com.apusic.jvm.route=node1

 

二、Apache2配置

確保Apache已經載入如下module

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_http_module modules/mod_proxy_http.so

在httpd.conf中增加配置:

<VirtualHost *:80>
ProxyRequests off
ProxyPass / balancer://proxy/  stickysession=JSESSIONID  nofailover=off
<Proxy balancer://proxy>
BalancerMember http://192.168.101.100:6060/  loadfactor=1 route=node1
BalancerMember http://192.168.101.100:8080/  loadfactor=1 route=node2
</Proxy>
</VirtualHost>

其中80埠是使用者安裝時配置的http協議監聽埠,確認是否為80埠,可以檢視配置檔案中的Listen 選項。BalancerMember為後置機節點,後面的值為後置機的地址和埠。Loadfactor為負載權重。

當用戶想使用會話粘滯(Session-Stick),可以在ProxyPass/balancer://test/後面加入stickysession=JSESSIONID,同時在每個BalancerMember最後面加入route=RouteName; 若使用者想使用失效轉移時還要在後面加入nofailover=off