WAS ND6.1 集群配置向导-之三

来源:互联网 发布:合肥市近年保险数据 编辑:程序博客网 时间:2024/06/05 19:14

Websphere Application Server Network Deployment version 6.1 Cluster Guide - 3/3

by maj 21/8.08

COPYLEFT BY MAZHE(mazhe219@gmail.com)


附2:自定义LoadBalancer
1.编写自定义LoadBalancer代码
可以使用servlet书写负载分发逻辑,选择好要分发的服务器后可以使用response.sendRedirect(url)
该LoadBalancer应用的上下文要和webserver中的被访问应用一致(待研究)

2.修改webserver的plugin配置
要修改的配置文件地址:
/opt/IBM/WebSphere/AppServer/profiles/Dmgr01/config/cells/Cell01/nodes/Node01/servers/webserver1/plugin-cfg.xml

原始配置:
   <VirtualHostGroup Name="default_host">
      <VirtualHost Name="*:80"/>
      <VirtualHost Name="*:9443"/>
      <VirtualHost Name="*:9081"/>
   </VirtualHostGroup>
  
   <ServerCluster LoadBalance="Round Robin" Name="testCluster">
      <Server CloneID="11111" LoadBalanceWeight="2" Name="Node01_app01">
         <Transport Hostname="APPHOST01" Port="9081" Protocol="http"/>
         <Transport Hostname="APPHOST01" Port="9444" Protocol="https">
            <Property Name="keyring" Value="/opt/IBM/HTTPServer/config/webserver1/plugin-key.kdb"/>
            <Property Name="stashfile" Value="/opt/IBM/HTTPServer/config/webserver1/plugin-key.sth"/>
         </Transport>
      </Server>
      <Server CloneID="22222" LoadBalanceWeight="2" Name="Node02_app02">
         <Transport Hostname="APPHOST02" Port="9083" Protocol="http"/>
         <Transport Hostname="APPHOST02" Port="9446" Protocol="https">
            <Property Name="keyring" Value="/opt/IBM/HTTPServer/config/webserver1/plugin-key.kdb"/>
            <Property Name="stashfile" Value="/opt/IBM/HTTPServer/config/webserver1/plugin-key.sth"/>
         </Transport>
      </Server>
      <Server CloneID="33333" LoadBalanceWeight="2" Name="Node03_app03">
         <Transport Hostname="APPHOST02" Port="9081" Protocol="http"/>
         <Transport Hostname="APPHOST02" Port="9444" Protocol="https">
            <Property Name="keyring" Value="/opt/IBM/HTTPServer/config/webserver1/plugin-key.kdb"/>
            <Property Name="stashfile" Value="/opt/IBM/HTTPServer/config/webserver1/plugin-key.sth"/>
         </Transport>
      </Server>

      <PrimaryServers>
         <Server Name="Node01_app01"/>
         <Server Name="Node02_app02"/>
         <Server Name="Node03_app03"/>
      </PrimaryServers>
   </ServerCluster>
上面配置文件中一些不很重要的属性被省略掉了,
将配置文件改为:
  <VirtualHostGroup Name="default_host">
      <VirtualHost Name="*:80"/>
      <VirtualHost Name="*:9443"/>
      <VirtualHost Name="*:9081"/>
      <VirtualHost Name="*:8088"/>
   </VirtualHostGroup>
   <ServerCluster LoadBalance="Round Robin" Name="testCluster">
      <ClusterAddress Name="MyLoadBalancer">
         <Transport Hostname="192.168.0.6" Port="8088" Protocol="http"/>
      </ClusterAddress>
      <Server CloneID="11111" LoadBalanceWeight="2" Name="Node01_app01">
         <Transport Hostname="APPHOST01" Port="9081" Protocol="http"/>
         <Transport Hostname="APPHOST01" Port="9444" Protocol="https">
            <Property Name="keyring" Value="/opt/IBM/HTTPServer/config/webserver1/plugin-key.kdb"/>
            <Property Name="stashfile" Value="/opt/IBM/HTTPServer/config/webserver1/plugin-key.sth"/>
         </Transport>
      </Server>
      <Server CloneID="22222" LoadBalanceWeight="2" Name="Node02_app02">
         <Transport Hostname="APPHOST02" Port="9083" Protocol="http"/>
         <Transport Hostname="APPHOST02" Port="9446" Protocol="https">
            <Property Name="keyring" Value="/opt/IBM/HTTPServer/config/webserver1/plugin-key.kdb"/>
            <Property Name="stashfile" Value="/opt/IBM/HTTPServer/config/webserver1/plugin-key.sth"/>
         </Transport>
      </Server>
      <Server CloneID="33333" LoadBalanceWeight="2" Name="Node03_app03">
         <Transport Hostname="APPHOST02" Port="9081" Protocol="http"/>
         <Transport Hostname="APPHOST02" Port="9444" Protocol="https">
            <Property Name="keyring" Value="/opt/IBM/HTTPServer/config/webserver1/plugin-key.kdb"/>
            <Property Name="stashfile" Value="/opt/IBM/HTTPServer/config/webserver1/plugin-key.sth"/>
         </Transport>
      </Server>
      <PrimaryServers>
         <Server Name="MyLoadBalancer"/>
      </PrimaryServers>
   </ServerCluster>

主要添加了名为MyLoadBalancer的ClusterAddress,这个自定义LoadBalancer的地址为192.168.0.6,端口为8088,要指定PrimaryServers中为主要添加了名为MyLoadBalancer的ClusterAddress,并在 VirtualHostGroup中添加一个端口.
  
2.webserver传播插件
点选webserver1并进行插件的传播.

3.完成自定义LoadBalancer
进行访问测试

 

原发于 http://blog.sina.com.cn/mazhe219

原创粉丝点击