linux下apache+tomcat+jk負載均衡配置全過程

試驗目的和環境:一共2臺服務器,均爲AS3

一臺爲: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
發佈了67 篇原創文章 · 獲贊 0 · 訪問量 4142
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章