Доста отдавна (около преди 10-на години) се сблъсках с тази екзотична (за времето) технология . Използвал съм може би първия излязъл релииз. Още от тогава беше многообещаваща с единствения недостатък, че за адекватно бързодействие беше необходима многопроцесорна UltraSparc машина , струваща 50-на хиляди долара (тогава). Но все пак и задачите бяха cpu-емки.
Котаракът позволява server side изпълнение на Java програмки, нещо като Java CGI , ама по-сложно :) И това по времето, когато тук програмистите масово използваха Borland Pascal (ах тоз велик език – мда подигравам се) за да пишат приложения.
Напоследък обаче, с наличието на евтини и бързи процесори, Java е станала доста актуална и сред програмистите и в бизнеса. Напълно заслужено всъщност.
Та реших набързо да си припомня инсталацията и конфигурирането на това животно (хищник всъщност).
Първата работа е да проверим дали има Java на съответната машина :
root@web2:~# java -version
java version “1.6.0_06”
Java(TM) SE Runtime Environment (build 1.6.0_06-b02)
Java HotSpot(TM) Client VM (build 10.0-b22, mixed mode, sharing)
root@web2:~#
Имаа.. . А дали е нужната версия ще видим в процеса на инсталация, че сега ме мързи да чета документацията. В краен случай ще инсталирам нужната.
Така, следващата стъпка е да сложим connector-a , т.нар. mod_jk и да пипнем съответните конф. файлове …….
Сваляме mod_jk от тука :
http://tomcat.apache.org/connectors-doc/ (по забутано място няма на сайта)
и го слагаме в lib/httpd/modules (при мен на slack-a , или там дето са модулите на апача)
След това пипваме httpd.conf , така че да се зареди одумвания модул :
LoadModule jk_module lib/httpd/modules/mod_jk.so
JkWorkersFile “/etc/httpd/workers.properties”
JkLogFile “/var/log/jk.log”
Важно е да не се забрави за лог файла , щото апача гърми с грешка и не тръгва. Също така и правата на mod_jk.so
workers.properties е конф файла на mod_jk , създаваме го в /etc/httpd/ (или където са конф файловете на апача)
worker.list=worker1
worker.worker1.type=ajp13
worker.worker1.host=77.77.44.26
worker.worker1.port=8009
Т.е. tomcat ще е на същата машина (дано не умре дъртия celeron) . Гледам вече се поддържа и loadbalancer , навремето нямаше, та се наложи да пиша клъстър на Java. Но за него – друг път. Забележете обаче, че tomcat може да е инсталиран (и да работи) на произволна машина, а не само там дет е web сървъра, като добавим и load balancer , нещата стават интересни. В последствие ще го инсталирам на съседния (доста по бърз) сървър.
След като конфигурирахме апача, следва най-важното – да инсталираме котарака. Избрах v.6 . :
root@web2:/opt#
root@web2:/opt# wget -c http://apache.cbox.biz/tomcat/tomcat-6/v6.0.26/bin/apache-tomcat-6.0.26.tar.gz
–2010-07-02 23:58:52– http://apache.cbox.biz/tomcat/tomcat-6/v6.0.26/bin/apache-tomcat-6.0.26.tar.gz
Resolving apache.cbox.biz… 87.118.140.10
Connecting to apache.cbox.biz|87.118.140.10|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 6123410 (5.8M) [application/x-gzip]
Saving to: `apache-tomcat-6.0.26.tar.gz’100%[============================================================================>] 6,123,410 4.12M/s in 1.4s
2010-07-02 23:58:54 (4.12 MB/s) – `apache-tomcat-6.0.26.tar.gz’ saved [6123410/6123410]
root@web2:/opt# tar zxvf *tar.gz
apache-tomcat-6.0.26/bin/catalina.sh
apache-tomcat-6.0.26/bin/digest.sh
apache-tomcat-6.0.26/bin/setclasspath.shcd bin
./startup.sh
And voila :
Тръгна учудващо бързо. Навремето се борих много повече, особено с conector-a .
Накрая, за да вържем апача с котака , слагаме следния ред в дадения vhost :
JkMount /examples/* worker1
И се получава ето това :