一、概述
1、該系列文章主要介紹Linux下tomcat集群的安裝與配置,其中涵蓋了Linux,vsftpd,jdk,tomcat,apache,jkconnector等相關知識,還包括Linux下的常用命令,作為一個java程序員,這些技術是我們在Linux平台下的基本功。
在現有網絡結構之上,負載均衡提供了一種廉價有效的方法擴展服務器帶寬和增加吞吐量,加強網絡數據處理能力,提高網絡的靈活性和可用性。集群系統(Cluster)主要解決下面幾個問題:
1.高可靠性:利用集群管理軟件,當主服務器故障時,備份服務器能夠自動接管主服務器的工作,並及時切換過去,以實現對用戶的不間斷服務。
2.高性能計算:即充分利用集群中的每一台計算機的資源,實現復雜運算的並行處理,通常用於科學計算領域,比如基因分析,化學分析等。
3.負載 均衡 :即把負載壓力根據某種算法合理分配到集群中的每一台計算機上,以減輕主服務器的壓力,降低對主服務器的硬件和軟件要求。
何為集群?
是一組獨立的計算機系統構成一個松耦合的多處理器系統,它們之間通過網絡實現進程間的通信。應用程序可以通過網絡共享內存進行消息傳送,實現分布式計算機。
何為負載均衡?
先得從集群講起,集群就是一組連在一起的計算機,從外部看它是一個系統,各節點可以是不同的操作系統或不同硬件構成的計算機。如一個提供Web服務的集群,對外界來看是一個大Web服務器。不過集群的節點也可以單獨提供服務。
2、配置環境
Linux:Red Hat Enterprise Linux Server release 5
JDK:java version 1.7.0_21
Tomcat:apache-tomcat-7.0.22
Apache:httpd-2.2.17.tar.gz
Jkconnector:jakarta-tomcat-connectors-1.2.15-src.tar.gz
下載地址:自己google吧,注意是Linux版本。如果這都找不到,這篇文章我勸你就別看了。
3、Linux下tomcat集群原理
Tomcat服務器通過Connector連接器組件與客戶程序建立連接,Connector組件負責接收客戶的請求,以及把Tomcat服務器的響應結果發送給客戶。默認情況下,Tomcat在server.xml中配置了兩種連接器:
<!-- Define a non-SSL Coyote HTTP/1.1
Connector on port 8080 -->
<Connector port="8080"
maxThreads="150"
minSpareThreads="25"
maxSpareThreads="75"
enableLookups="false"
redirectPort="8443"
acceptCount="100"
debug="0"
connectionTimeout="20000"
disableUploadTimeout="true" />
<!-- Define a Coyote/JK2 AJP 1.3
Connector on port 8009 -->
<Connector port="8009"
enableLookups="false"
redirectPort="8443" debug="0"
protocol="AJP/1.3" />
第一個連接器監聽8080端口,負責建立HTTP連接。在通過浏覽器訪問Tomcat服務器的Web應用時,使用的就是這個連接器。
第二個連接器監聽8009端口,負責和其他的HTTP服務器建立連接。在把Tomcat與其他HTTP服務器集成時,就需要用到這個連接器。
Web客戶訪問Tomcat服務器上JSP組件的兩種方式如圖所示。
上圖反映了Web客戶訪問Tomcat服務器上的JSP組件的兩種方式
在圖中,Web客戶1直接訪問Tomcat服務器上的JSP組件,他訪問的URL為http://localhost:8080 /index.jsp。Web客戶2通過HTTP服務器訪問Tomcat服務器上的JSP組件。假定HTTP服務器使用的HTTP端口為默認的80端口, 那麼Web客戶2訪問的URL為http://localhost:80/index.jsp 或者 http://localhost/index.jsp。
下面,介紹Tomcat與HTTP服務器之間是如何通信的。
Tomcat提供了專門的JK插件來負責Tomcat和HTTP服務器的通信。應該把JK插件安置在對方的HTTP服務器上。當HTTP服務器接收到客 戶請求時,它會通過JK插件來過濾URL,JK插件根據預先配置好的URL映射信息,決定是否要把客戶請求轉發給Tomcat服務器處理。
假定在預先配置好的URL映射信息中,所有"/*.jsp"形式的URL都由Tomcat服務器來處理,那麼在圖22-1的例子中,JK插件將把客戶請 求轉發給Tomcat服務器,Tomcat服務器於是運行index.jsp,然後把響應結果傳給HTTP服務器,HTTP服務器再把響應結果傳給Web 客戶2。
對於不同的HTTP服務器,Tomcat提供了不同的JK插件的實現模塊。本章將用到以下JK插件:
與Windows下的Apache HTTP服務器集成:mod_jk_2.0.46.dll
與Linux(RedHat)下的Apache HTTP服務器集成:mod_jk.so-ap2.0.46-rh72..46-rh72
與IIS服務器集成:isapi_redirect.dll
這裡我們主要介紹與RedHat繼承
4、安裝配置步驟
(1)安裝linux和putty
(2)安裝vsftpd和LeapFTP,並做相關配置
(3)jdk安裝和配置
(4)tomcat安裝和配置
(5)Apache安裝和配置(如果Linux上沒有安裝GCC,先安裝GCC)
(6)Jkconnector安裝和配置
(7)整合配置
5、參考資料
(1)網上各位大牛
(2)《鳥哥的Linux私房菜》 http://www.linuxidc.com/Linux/2011-06/36804.htm
下篇繼續…… http://www.linuxidc.com/Linux/2013-07/871180p2.htm