inux上的apache+tomcat+ssi,服务器集群,和ssi配置

关于为什么要做服务器集群,其实,我也说不清楚,或许这东西我们用起来都很好使吧,在现实的开发中是相当好的,废话不多说了,本应该上截图的,当是不知道在linux有什么截图软件,希望知道的推荐 下
1.准备集成工具
    1.jdk jdk-6u24-linux-i586.bin
    2.apache httpd-2.2.19.tar.gz,这个我是下载下来自己编译安装的
    3.tomcat apache-tomcat-6.0.32.tar.gz 这个可以直接解压使用(4个tomcat 本地3个,远程1个,只要把这个服务器复制3个就可以了,到时我们可以该里面的配在参数,至于远程的服务器我是  在windows上的,版本是apache-tomcat-6.0.32.zip)
    4.mod_jk mod_jk-1.2.31-httpd-2.2.x.so 对于什么样的服务器 配置什么样的mod_jk官网上有,自己去看
2.开始安装软件
    说明:我所有的软件都安装在linux的根目录下面,的java文件夹里面,关于所有安装程序都是java文件夹里面的,如果你自己改变来目录请自己替换文件夹,如果你在安装软件的时候出错来,记得请卸载干净,在实际使用命令的时候,如果你不是以root用户登录的话,你执行每条命令的时候都要在前面加上sudo,如创建一个文件夹 sudo mkdir java ,声明 我是用root用户登录的,所以下面的所有命令我都没加sudo
    1.jdk
        (1)复制或剪切jdk-6u20-linux-i586.bin 到java文件下面
        (2)启动终端 :首先得进入java这个目录里面,接着输入命令sudo -s ./jdk-6u20-linux-i586.bin;   
        (3)接着一路回车 ,直到询问是否安装,出现yes/no的时候,输入yes/y 回车;
        (4)等上面的运行完成之后 ,就需要对JDK进行配置;输入命令sudo gedit /etc/profile,在弹出的文件最后一行中粘贴如下信息:
            配置信息代码
            #set java environment  
            # 注意bestupon 要替换成你的用户名 
            JAVA_HOME=/java/jdk1.6.0_24 
            export JRE_HOME=/java/jdk1.6.0_24/jre 
            export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH 
            export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
            #set java environment

        (5)重新启动你的机子之后在在终端输入 :java -version 如出现如下信息,表示安装配置正确。
            终端代码
            bestupon@bestupon-laptop:~$ java -version 
            java version "1.6.0_20"
            Java(TM) SE Runtime Environment (build 1.6.0_20-b02) 
            Java HotSpot(TM) Server VM (build 16.3-b01, mixed mode) 
            bestupon@bestupon-laptop:~$ 


    2.apache       
            1.(方法一)使用这个命令安装sudo apt-get install apache2 这样操作比较简单,但安装后的文件分布在linux的各个文件夹里面对我们以后的服务器集群配置的时候不方便,所以我只是提提,不推荐使用此方法
            2.(方法二)解压缩httpd-2.2.19.tar.gz到临时目录 ,如~/httpd-2.2.19.tar.gz
            3.进入~/httpd-2.0.63目录 ,执行
                命令一 ./configure --prefix=/java/apache --enable-module=so 
                命令二 make
                命令三 make install
                敲完一个命令记得回车,等执行完没报错再执行第二个命令
                如果上述步骤都没报错,那我们就可以启动apache了
            4.启动和停止apache
                此命令的路径应该是在你apache安装目录,如我的安装目录是/java/apache
                启动:/java/apache/bin/httpd -k start
                启动时提示:
                  httpd: Could not determine the server's fully qualified domain name, using 127.0.0.1 for ServerName.
                解决办法是在http.conf中加一行:
                  ServerName 127.0.0.1:80
                如果启动的时候没有报错,那我们可以输入 127.0.0.1 测试下如果输出是It works!那么说明你成功了,如果不行那么你就用你本机的ip来测试下,如果还不行,你就卸载重装吧,获取本机ip的命令,在终端输入 ifconfig,回车就ok了
                停止:sudo /usr/local/apache2/bin/httpd -k stop
            5.让Ubuntu开机自动启动apache.
                1). 复制 /usr/local/apache2/bin/apachectl到/etc/init.d
                2). 加载为服务
                     sudo update-rc.d apachectl defaults
    3.tomcat
        直接解压tomcat apache-tomcat-6.0.32.tar.gz放到java目录下面去,然后在负责两个,所以总共3个tomcat在linux服务器上面
           
3.进行服务器集群 ,说明,如果你访问你的apache服务器的时候还没出现It works!,对不起你去重新安装好apache在来看下面的教程吧
    1.修改apache的配置文件
        1.修改http.conf 文件 所在位置/java/apache/conf
            1.打开它搜索ServerName 然后出现这么一个字符串 #ServerName www.example.com:80,在此行的下面 加上这么一行 ServerName 127.0.0.1:80
            2.在http.conf文件的末尾加上下面的代码
                #和tomcat集群的配置
                #可以使用绝对路径以/开头,也可以使用相对路径但是必须是conf/mod_jk.conf
                Include /java/apache/conf/mod_jk.conf

        2.新建mod_jk.conf, 找到/java/apache/conf目录在里面新建一个mod_jk.conf文件
            1.在此文件里面添加如下代码
            LoadModule jk_module modules/mod_jk-1.2.31-httpd-2.2.x.so
            JkWorkersFile conf/workers.properties

            #配置日志输出文件
            JkLogFile  /java/apache/logs/mod_jk.log
            JkLogLevel  info
            JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "

            #把访问的所有请求交给controller控制器来处理
            JkMount /* controller
            #但以这些结尾的请求不许要交给控制器来处理
            JkMount /!*.gif controller
            JkMount /!*.swf controller
            JkMount /!*.jpg controller
            JkMount /!*.png controller
            JkMount /!*.css controller
            JkMount /!*.js controller                                  
            JkMount /!*.html controller
            JkMount /!*.htm controller 
        3.配置mod_jk
            把我们开始就准备好的mod_jk复制到/java/apache/modules目录下去
        4.配置workers.properties文件 ,在/java/apache/conf目录下面新建workers.properties文件
            1.在此文件夹下面加入一下代码
            #server
            #配在控制器,这里可以多个只要我们以分号给开就可以来,如worker.list = controller,controller2
            worker.list = controller
            #========本地tomcat1========
            worker.tomcat1.port=8009
            #192.168.1.101是我本机的ip
            worker.tomcat1.host=192.168.1.101
            worker.tomcat1.type=ajp13
            #server的加权比重,值越高,分得的请求越多
            worker.tomcat1.lbfactor=1
            #========本地tomcat2========
            worker.tomcat2.port=8029
            worker.tomcat2.host=192.168.1.101
            worker.tomcat2.type=ajp13
            worker.tomcat2.lbfactor=1

            #========本地tomcat3========
            worker.tomcat3.port=8039
            worker.tomcat3.host=192.168.1.101
            worker.tomcat3.type=ajp13
            worker.tomcat3.lbfactor=1
            #========远程服务器rem========
            worker.rem.port=8009
            worker.rem.host=192.168.1.178
            worker.rem.type=ajp13
            #这个是平衡因子,如果数值越大,那么在特定的时间段里面此服务器分到的处理请求就越多 ,如worker.rem.lbfactor=5
            worker.rem.lbfactor=1
            #上面的配在是配在来4个服务器集群,3个本地的,也就是我linux上的tomcat,一个远程的也就是windows上的一个   



            #重试次数
            worker.retries=3
            worker.controller.type=lb
            #指定分担请求的server列表,用逗号分隔
            worker.controller.balanced_workers=tomcat1,tomcat2,tomcat3,rem
            #设置用于负载均衡的server的session可否共享 有不少文章说设置为1是可以的,但是我是设置为0才可以的
            #粘性Session(默认是打开的) 当该属性值=True(或1)时,代表Session是粘性的,即同一Session在集群中的同一个节点上处理,Session不跨越节点。在集群环境中,一般将该值设置为False
            worker.controller.sticky_session=false
            worker.controller.sticky_session_force=1
        5.进行tomcat配置
            我linux的3个tomcat分别取名为apache-tomcat-6.0.32,apache-tomcat-6.0.32-2,apache-tomcat-6.0.32-3   
            1.修改apache-tomcat-6.0.32 的servler.xml文件
                搜索Engine修改成这样
                 <Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">
                搜索这个org.apache.catalina.ha.tcp.SimpleTcpCluster修改后的样子
                 <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
                其实就是去掉了两边的括号而已

                这个服务器我们就修改这些配置,其他的使用默认的
            2.修改apache-tomcat-6.0.32-2 的servler.xml文件
                搜索这个代码<Server port="8005" shutdown="SHUTDOWN">
                改成<Server port="8025" shutdown="SHUTDOWN">这样
               
                <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
                改成这样 <Connector port="8082" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

                <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
                改成这样 <Connector port="8029" protocol="AJP/1.3" redirectPort="8443" />

                搜索Engine修改成这样
                 <Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat2">
                搜索这个org.apache.catalina.ha.tcp.SimpleTcpCluster修改后的样子
                 <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
                其实就是去掉了两边的括号而已

            4.修改apache-tomcat-6.0.32-3    的servler.xml文件
                搜索这个代码<Server port="8005" shutdown="SHUTDOWN">
                改成<Server port="8035" shutdown="SHUTDOWN">这样
               
                <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
                改成这样 <Connector port="8083" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

                <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
                改成这样 <Connector port="8039" protocol="AJP/1.3" redirectPort="8443" />

                搜索Engine修改成这样
                 <Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat3">
                搜索这个org.apache.catalina.ha.tcp.SimpleTcpCluster修改后的样子
                 <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
                其实就是去掉了两边的括号而已

            5.修改远程服务器apache-tomcat-6.0.32     的servler.xml文件
                搜索Engine修改成这样
                 <Engine name="Catalina" defaultHost="localhost" jvmRoute="rem">
                搜索这个org.apache.catalina.ha.tcp.SimpleTcpCluster修改后的样子
                 <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
                其实就是去掉了两边的括号而已
                这个服务器我们就修改这些配置,其他的使用默认的

4.所有的配在完毕 ,下面我们进行集群测试,首先其他所有的tomcat,启动apache,他们两的启动顺序没关系
    1.分别测试每个tomcat是否启动正常,分别输入
            192.168.1.101:8080
            192.168.1.101:8082
            192.168.1.101:8083
            看看是否已经出现了我们熟悉的小猫来,如果是启动没问题
            输入192.168.1.178:8080测试远程服务器是否正常
    2.输入192.168.1.101测试本地的apache是否启动正常,如成功了我们进行服务器集群测试,最简单就是输入192.168.1.101如果我们发现出现的不是It works!而是我们熟悉的小猫,恭喜你你服务器集群成功了,但是,你怎么知道,我们集群成功了了,下面我上传一个工程,你把他放入到你没一个tomcat的工作目录下面然后我们再测试就能看到服务器集群是否成功了
    测试地址,输入192.168.1.101/test/test2.jsp如果你看到页面上的session是在变化的而且变化的规律貌似我们能看明白,那说明我们的集群就成功了

 

关于软件明天上传,如果觉得好的话,帮我顶起来,给我继续写下去的力量,关于ssi的配置我会在接下来的文章中添加上

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值