日期:2014-05-16  浏览次数:20965 次

tomcat+apache+terracotta做集群
http://huaiyude06.iteye.com/blog/225776
1.       apache2.2.4+tomcat6+ssl 的整合 , 我是使用 mod_JK 整合的 ,mod_JK 为 mod_jk-1.2.26-httpd-2.2.4.so
(1). 安装 apache2.2.4, 我使用的是 apache_2.2.4-win32-x86-openssl-0.9.8d.msi 来安装的 .
(2). 配置 apache.
    先将 mod_jk-1.2.26-httpd-2.2.4.so 复制到 <APACHE_HOME>\modules 中 . 修改 <APACHE_HOME>\conf\httpd.conf 文件 , 加入 :

LoadModule jk_module modules/mod_jk-1.2.26-httpd-2.2.4.so  
  
JkWorkersFile conf/workers.properties  
  
JkLogFile logs/mod_jk.log  
  
JkMount /* loadbalancer  
  
JkMount /*.action loadbalancer  
  
JkMount /*.html loadbalancer 



        在 <IfModule dir_module> 标签中加入 login.jsp.

   为了支持 ssl, 还要去掉 LoadModule ssl_module modules/mod_ssl.so 行的注释和Include conf/extra/httpd-ssl.conf行 的注释 .
 
          在 <APACHE_HOME>\ conf 目录下创建 workers.properties 文件 , 改文件的配置为 :
      

worker.list=loadbalancer  
  
worker.worker1.type=ajp13   
  
worker.worker1.host=localhost  
  
worker.worker1.port=9009   
  
worker.worker1.lbfactor=5  
  
 worker.worker1.redirect=worker2  
  
 worker.worker2.type=ajp13  
  
 worker.worker2.host=localhost  
  
 worker.worker2.port=10009  
  
 worker.worker2.lbfactor=5  
  
 worker.loadbalancer.type=lb  
  
 worker.loadbalancer.balanced_workers=worker1,worker2  



为了支持 ssl 修改 <APACHE_HOME>\conf\extra 目录下的 httpd-ssl.conf 文件 , 修改 certificate file 为 SSLCertificateFile <APACHE_HOME>/conf/blarg.cert, 修改 keyfile 为 SSLCertificateKeyFile <APACHE_HOME>/conf/blarg.key, 还要配置 ssl 的 mod_JK, 加入以下内容到该文件 :


Java代码
JkMount /* loadbalancer 
 
JkMount /*.action loadbalancer 
 
JkMount /*.html loadbalancer 

使用 openssl 工具生成 blarg.cert 和 blarg.key 文件放到 <APACHE_HOME>\conf 目录下 ,apache 部分配置完成 .

(3). 安装两个 tomcat 分别是 tomcat-1 和 tomcat-2, 配置 tomcat-1 和 tomcat-2.
配置 tomcat-1, 配置 <TOMCAT_HOME>\conf 下的 server.xml, 找到 Server 节点改为
Xml代码
<Server port="9005" shutdown="SHUTDOWN"> 

找到 Http 的 connector 节点改为
Xml代码
<Connector port="9080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="9443" /> 

找到 ajp 的 connector 节点改为 :
Xml代码
<Connector port="9009" protocol="AJP/1.3" redirectPort="9443" /> 

加入 ssl 的 connector:


<Connector SSLEnabled="true" acceptCount="100"  
  
                            clientAuth="false" disableUploadTimeout="true" enableLookups="true"  
  
                            keystoreFile="server.keystore" keystorePass="changeit"  
  
                            maxSpareThreads="75" maxThreads="200" minSpareThreads="5" port="9443"  
  
                            scheme="https" secure="true" sslProtocol="TLS" /> 


找到 Engine 节点改为 :
 
Xml代码
<Engine name="Catalina" defaultHost="localhost" jvmRoute="worker1">, 
jvmRoute 为 session_sticky 的关键一定要对应 workers.properties 的 worker 名 .

生成 server.keystore 文件放入 <TOMCAT_HOME> 下 .

  配置 tomcat-2, 配置 <TOMCAT_HOME>\conf 下的 server.xml, 找到 Server 节点改为
Xml代码
<Server port="10005" shutdown="SHUTDOWN"> 

找到 Http 的 connector 节点改为
Xml代码
<Connector port="10080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="10443" /> 

找到 ajp 的 connector 节点改为 :
Xml代码
<Connector port="10009" protocol="AJP/1.3" redirectPort="10443" />  

加入 ssl 的 connector:


<Connector SS