linux下jdk+tomcat安装配置

本文以jdk-6u43-linux-x64.bin和apache-tomcat-6.0.26.tar.gz为例进行说明


一、安装jdk

1、安装
登陆shell后执行如下命令:在usr下创建一个java的文件夹作为jdk的主目录
[[email protected] ~]$ cd /usr
[[email protected] usr]$ mkdir java
[[email protected] usr]$ cd java


将jdk-6u43-linux-x64.bin上载到Linux服务器java目录下,赋权后进行安装
[[email protected] java]$ chmod 755 jdk-6u43-linux-x64.bin
[[email protected] java]$ ./jdk-6u43-linux-x64.bin 

chmod也可以用数字来表示权限
语法为:chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
r=4,w=2,x=1
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=5。


755 代表用户对该文件拥有读,写,执行的权限,同组其他人员拥有执行和读的权限,没有写的权限,其他用户的权限和同组人员权限一样
777代表,user,group ,others ,都有读写和可执行权限

如果出现上述提示,表示jdk安装成功
2、设置环境变量
编辑.bash_profile文件,必须在ls -al可以看到.bash_profile这个文件的目录下执行编辑操作,如果当前用户组没有编辑文件的权限,需要先给加用户组:

[[email protected] ~]$ vi .bash_profile

linux下jdk+tomcat安装配置


JAVA_HOME=/crm/ruleuser/java/jdk1.6.0_43
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/tools.jar

export JAVA_HOME PATH CLASSPATH



红色部分是需要我们添加的部分
修改.bash_profile后,使用source ~/.bash_profile命令让修改立即生效


修改完后可以通过下面来验证一下变量设置是否生效(在验证前先logout一下,再重新登陆);
[[email protected] java]$ echo $JAVA_HOME
/usr/java
[[email protected] java]$  echo $CLASSPATH
.:/usr/java/lib/dt.jar:/usr/java/lib/tools.jar
[[email protected] java]$ echo $PATH
/usr/java/bin:/usr/java/bin:/usr/kerberos/bin:/usr/bin:/bin:/usr/sbin:/sbin:/home/urp/bin:/usr/java/bin
[[email protected] java]$ java -version
java version "1.6.0_43"
Java(TM) SE Runtime Environment (build 1.6.0_43-b01)
Java HotSpot(TM) 64-Bit Server VM (build 20.14-b01, mixed mode)


OK,环境变量设置成功。

二、安装Tomcat

登陆shell后执行如下命令:在urp下创建一个tomcat6.0的文件夹作为tomcat的主目录
[[email protected] ~]# cd /home/urp
[[email protected] urp]# mkdir tomcat6.0


将apache-tomcat-6.0.26.tar.gz上载到Linux服务器tomcat6.0目录下,解压后进行安装
[[email protected] tomcat6.0]$ tar -zxvf  apache-tomcat-6.0.26.tar.gz

如果解压后目录不对,可以通过mv命令将解压后的tomcat放到想要的位置:
mv apache-tomcat-7.0.11 /usr/tomcat7.0


tomcat安装完成后,进入bin目录下通过./startup.sh命令启动tomcat服务
[[email protected] tomcat6.0]# cd apache-tomcat-6.0.26/bin
[[email protected] bin]# ./startup.sh 


启动的同时可以打开另一个xshell查看日志
[[email protected] logs]# tail -f catalina.out


日志正常后可以通过浏览器打开地址查看是否可以进入tomcat主界面,可以的话表示安装成功

如果根据服务需要分别安装tomcat6.0,相应端口需要进行修改,不然启动不了tomcat服务:

可以设置虚拟机大小来控制服务性能


三、tomcat集群

1、配置tomcat


1.修改端口


对于tomcat配置主要集中在conf/server.xml文件上。


Tomcat1中shutdown端口改为18005,HTTP端口改为18080,AJP端口改为18009。


Tomcat2中shutdown端口改为28005,HTTP端口改为28080,AJP端口改为28009。



2.开启tomcat集群支持


同样是在conf/server.xml文件里,进行两处改动:


改动1:为<Engine>设置jvmRoute


修改<Engine name="Catalina"defaultHost="localhost">


Tomcat1设为<Engine name="Catalina"defaultHost="localhost" jvmRoute="tomcat1">


Tomcat2设为<Engine name="Catalina"defaultHost="localhost" jvmRoute="tomcat2">



改动2:在<Engine/>中添加关于集群的配置


把以下配置复制到<Engine/>中


<ClusterclassName="org.apache.catalina.ha.tcp.SimpleTcpCluster"

                 channelSendOptions="8">

<ManagerclassName="org.apache.catalina.ha.session.DeltaManager"

                  expireSessionsOnShutdown="false"

                  notifyListenersOnReplication="true"/>

<ChannelclassName="org.apache.catalina.tribes.group.GroupChannel">

<MembershipclassName="org.apache.catalina.tribes.membership.McastService"

address="228.0.0.4" port="45564" frequency="500"dropTime="3000"/>

<ReceiverclassName="org.apache.catalina.tribes.transport.nio.NioReceiver"

address="auto" port="4000" autoBind="100"selectorTimeout="5000"

maxThreads="6"/>

<SenderclassName="org.apache.catalina.tribes.transport.ReplicationTransmitter">

<TransportclassName="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>

</Sender>

<InterceptorclassName="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>

<InterceptorclassName="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>

</Channel>

<ValveclassName="org.apache.catalina.ha.tcp.ReplicationValve"  filter=""/>

<ValveclassName="org.apache.catalina.ha.session.JvmRouteBinderValve"/>

<DeployerclassName="org.apache.catalina.ha.deploy.FarmWarDeployer"

                   tempDir="/tmp/war-temp/"

                   deployDir="/tmp/war-deploy/"

                    watchDir="/tmp/war-listen/"

                   watchEnabled="false"/>

<ClusterListenerclassName="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"/>

<ClusterListenerclassName="org.apache.catalina.ha.session.ClusterSessionListener"/>

</Cluster>


2、配置apache
打开apache安装目录下的conf/httpd.conf文件

修改Listen 和ServerName两项,改成

    Listen 10080

    ServerName 135.33.88.228:10080



并在文件最后追加以下内容:


1          # Load mod_jk module  

2        LoadModulejk_module modules/mod_jk.so  

3        # Specifyjk log file.  

4        JkLogFilelogs/mod_jk.log  

5        # Specifyjk log level [debug/error/info]  

6        JkLogLevelinfo  

7        # Specifyworkers.properties, this file tell jk:  

8        # howmany nodes and where they are.  

9        JkWorkersFileconf/workers.properties  

10      # Specify which requests should handled bywhich node.  

11      JkMount /* controller  


在apache安装目录下的conf目录下创建workers.properties文件,文件的内容如下:


1        #所有节点列表,其中controller是一个逻辑结点,负责负载均衡控制,  

2        #如果JkMount中的URL指定给了controller就表示这个请求会被自动散列到某个物理节点上。  

3        #注意:真正负责处理请求的tomcat的名称(这里就是tomcat1,tomcat2)必须于它们在conf/server.xml 

4        #文件中配置的jvmRout的属性值是一致的!  

5        worker.list= controller,tomcat1,tomcat2  

6           

7        #========tomcat1========  

8        worker.tomcat1.port=18009       

9        worker.tomcat1.host=135.33.88.228 (部署机器的ip)

10      worker.tomcat1.type=ajp13  

11      worker.tomcat1.lbfactor = 1    

12      #========tomcat2========  

13      worker.tomcat2.port=28009 

14      worker.tomcat2.host=135.33.88.228 (部署机器的ip)

15      worker.tomcat2.type=ajp13  

16      worker.tomcat2.lbfactor = 1   

17        

18      #========controller,负载均衡控制器======== 

19      worker.controller.type=lb  

20      worker.controller.balance_workers=tomcat1,tomcat2   

21      worker.controller.sticky_session=1 


 
3、验证测试


在两个tomcat中分别部署一个组合服务引擎的war包,确保两个tomcat中的服务引擎的包名称相同,分别启动两个tomcat和apache。


1.验证tomcat部署正确:


访问http://IP:18080/组合服务引擎的包名/cxf/Orchservice?wsdl,能正常打开wsdl。访问http://IP:28080/组合服务引擎的包名/cxf/Orchservice?wsdl,能正常打开wsdl。


2.验证apache启动正确:


访问http://IP:10080/组合服务引擎的包名/cxf/Orchservice?wsdl,能正常打开wsdl。