一臺爲:192.168.78.88,計劃作爲webserver,接受靜態網頁請求,安裝apache,tomcat, jakarta-tomcat-connectors;
另外一臺爲:192.168.71.77,計劃安裝tomcat,若請求非靜態,則負載均衡到兩個機器一起負擔。
試驗所需軟件: apache-tomcat-5.5.17.tar.gz,httpd-2.2.2.tar.gz,jakarta-tomcat-connectors-1.2.15-src.tar.gz
安裝過程:apache和tomcat基本步驟省略
jakarta-tomcat-connectors-1.2.15-src.tar.gz的安裝步驟如下:
1. tar -zxvf jakarta-tomcat-connectors-1.2.15-src.tar.gz; cd jakarta-tomcat-connectors-1.2.15-src/jk/native;
2. ./configure --with-apxs=/usr/local/apache/bin/apxs;
make;
su -c 'make install';
3,cp jakarta-tomcat-connectors-1.2.15-src/jk/native/apache-2.0/mod_jk.so
/usr/local/apache/modules APACHE端的配置:
1.對於/usr/local/apache/conf/worker.properties,一般需要自己添加: worker.master.type=lb(master作爲負載均衡) worker.master.balance_workers=worker1,worker2(兩臺機器上的兩個tomcat作爲worker) worker.master.sticky_session=true worker.master.sticky_session_force=false worker.worker1.type=ajp13 worker.worker1.host=192.168.78.88 worker.worker1.port=8009 worker.worker1.socket_timeout=300 worker.worker1.recycle_timeout=0 worker.worker1.lbfactor=1(優先級) worker.worke2.type=ajp13 worker.worker2.host=192.168.71.77 worker.worker2.port=8009 worker.worker2.socket_timeout=300 worker.worker2.recycle_timeout=0 worker.worker2.lbfactor=1(同上,優先級,若數值越大,則優先級越高)
2.對於/usr/local/apache/conf/httpd.conf
1)特殊配置
# LoadModule foo_module modules/mod_foo.so
LoadModule jk_module modules/mod_jk.so(加載這個模塊)
JkWorkersFile /usr/local/apache/conf/worker.properties(用worker.properties的規則來實現jk,指定jk workers.properties的位置,如果是相對路徑,則假定在apache的ServerRoot目錄下。)
JkLogFile /usr/local/apache/logs/jk.log(指定jk log文件的位置,如果是相對路徑,則假定在apache的ServerRoot目錄下。)
JkLogLevel info (指定jk log的級別有效的選項有:debug/error/info ) JkRequestLogFormat "%w %V %T"
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "( 指定log中的時間格式,使用c函數strftime()的格式字符串語法)
2)一般配置:
ServerAdmin [email protected]
ServerName 192.168.78.88:8888
DocumentRoot "/usr/local/apache/htdocs"
Options FollowSymLinks AllowOverride None 說明:以上是對本身默認的主頁的訪問目錄的設置,不難發現,我已經把主頁的端口改成8888,不合下面的虛擬主機衝突,此處不會遵從下面的負載均衡的分配法則。
Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all 說明:此處爲我對虛擬主機所在目錄的設置。
3)虛擬主機
NameVirtualHost *:80
ServerAdmin [email protected]
DocumentRoot /www/docs/virtual-hosts(虛擬主機的根目錄)
ServerName 192.168.78.88 Alias /jingtai "/www/docs/virtual-hosts/jingtai"(若出現對:"http://192.168.78.88/jingtai"頁面的訪問,則跳轉到:"http://192.168.78.88/www/docs/virtual-hosts/jingtai")
Alias /dongtai "/www/docs/virtual-hosts/dongtai"(同上理)
ErrorLog "/usr/local/apache/logs/error_log combined"
JkUnMount /index.html master(若出現對index.html的訪問,則不用jk到master)
JkMount /index.jsp master(若出現對index.jsp的訪問,則要用master來做負載均衡) TOMCAT端的配置:
僅用分別在兩臺機的tomcat裏,對/home/zhq/apache-tomcat-5.5.17/conf/server.xml進行修改,具體如下:
在jvmRoute=“”中填入指定的worker,
在本例中,
78.88填入:worker1;
71.77填入:worker2;
說明:在最新的tomcat版本中該Connector默認情況下是啓用的。
啓動tomcat,檢查ajp13服務是否運行;
netstat -a | grep 8009 或則查看tomcat標準輸出上是否有輸出:
轉自:http://jingfengluo.iteye.com/blog/250489