上都海奶茶馆 发表于 2018-11-21 13:12:37

Apache的负载均衡之mod_jk模块实现

Apache的负载均衡之mod_jk模块实现
  先配置mod_jk的代理功能,
  # yum install -y httpd-devel
  # rpm -ql httpd-devel
  /usr/sbin/apxs
  apxs是httpd安装外部模块必备的
  # yum groupinstall"Development Tools" "Server Platform Development" -y //所需要的包组。
      编译安装需要的环境。
  # tar xftomcat-connectors-1.2.40-src.tar.gz
  # ls
  a                            install.log            oracle
  apache-tomcat-7.0.56.tar.gzinstall.log.syslog       root20141030092112523.zip
  apache-tomcat-8.0.20.tar.gzjdk-8u31-linux-i586.rpmtomcat-connectors-1.2.40-src
  b                            lamp                  tomcat-connectors-1.2.40-src.tar.gz
  # cd tomcat-connectors-1.2.40-src
  # ls
  conf docsHOWTO-RELEASE.txtjkstatus LICENSEnativeNOTICE README.txtsupporttools xdocs
  # cdnative/
  # ls
  aclocal.m4 apache-2.0    BUILDING.txtconfigure    docsMakefile.amnetscape   scripts   TODO.txt
  apache-1.3 buildconf.shcommon      configure.aciisMakefile.inREADME.txtSTATUS.txt
  # ./configure--with-apxs=/usr/sbin/apxs
  # make && makeinstall
              。
              。
              。
  ----------------------------------------------------------------------
  chmod 755/usr/lib64/httpd/modules/mod_jk.so
  Please be sure to arrange/etc/httpd/conf/httpd.conf...
  make: Leaving directory`/root/tomcat-connectors-1.2.40-src/native/apache-2.0'
  make: Entering directory`/root/tomcat-connectors-1.2.40-src/native'
  make: Entering directory`/root/tomcat-connectors-1.2.40-src/native'
  make: Nothing to be done for`install-exec-am'.
  make: Nothing to be done for`install-data-am'.
  make: Leaving directory`/root/tomcat-connectors-1.2.40-src/native'
  make: Leaving directory`/root/tomcat-connectors-1.2.40-src/native'
  

  # cd /etc/httpd
  # ls
  conf conf.dlogsmodules run
  # cd conf.d/
  # ls
  php.conf READMEwelcome.conf
  # vim mod_jk.conf
  # Load the mod_jk
  LoadModule jk_modulemodules/mod_jk.so
  JkWorkersFile/etc/httpd/conf.d/workers.properties
  JkLogFile logs/mod_jk.log
  JkLogLevel debug
  JkMount /*TomcatA
  JkMount /status/statA
  ~
  # vim/etc/httpd/conf.d/workers.properties
  worker.list = TomcatA,statA
  worker.TomcatA.port=8009
  worker.TomcatA.host=192.168.1.116
  worker.TomcatA.type=ajp13
  worker.TomcatA.lbfactor=1
  worker.statA.type = status
  # httpd -t
  Syntax OK
  # service httpd restart
  Stopping httpd:                                          
  Starting httpd:                                          [ OK]
  #
      至此,一个基于mod_jk模块与后端名为TomcatA的worker通信的配置已经完成,重启httpd服务即可生效。
http://home.51cto.com/thumb.php?w=600&h=600&t=f&url=http://s3.51cto.com/wyfs02/M01/59/FF/wKioL1TzK2aQLNnsAALrg_E-QqU235.jpg
      还有状态信息
http://home.51cto.com/thumb.php?w=600&h=600&t=f&url=http://s3.51cto.com/wyfs02/M00/5A/02/wKiom1TzKlGxumFAAAPIzvlqjzQ107.jpg
要实现负载均衡,至少需要两个tomcat还在本机上操作,配置另一个版本的tomcat,配置完成之后访问http://192.168.1.116:9080
http://home.51cto.com/thumb.php?w=600&h=600&t=f&url=http://s3.51cto.com/wyfs02/M02/5A/02/wKiom1TzKmaT5124AAPGzvdrBTQ853.jpg
   mod_jk可直接支持负载均衡,需要启用一个特殊型的worker:lb。
  # vim mod_jk.conf
  #Load the mod_jk
  LoadModule jk_modulemodules/mod_jk.so
  JkWorkersFile/etc/httpd/conf.d/workers.properties
  JkLogFile logs/mod_jk.log
  JkLogLevel debug
  JkMount /*lbcluster1
  JkMount /status/statA
  ~
  # vim workers.properties
  worker.list = lbcluster1,statA
  worker.TomcatA.port=8009
  worker.TomcatA.host=192.168.1.116
  worker.TomcatA.type=ajp13
  worker.TomcatA.lbfactor=1
  worker.TomcatB.port=9009
  worker.TomcatB.host=192.168.1.116
  worker.TomcatB.type=ajp13
  worker.TomcatB.lbfactor=1
  worker.lbcluster1.type = lb
  sorker.lbcluster1.sticky_session = 0
  worker.lbcluster1.balance_workers =TomcatA, TomcatB
  worker.statA.type = status
  ~
  # httpd -t
  Syntax OK
  # service httpd restart
  Stopping httpd:                                          
  Starting httpd:                                          
  #
  到此mod_jk实现负载均衡就配置好了,测试如下。
  访问http://192.168.1.116
http://home.51cto.com/thumb.php?w=600&h=600&t=f&url=http://s3.51cto.com/wyfs02/M01/59/FF/wKioL1TzK2aQLNnsAALrg_E-QqU235.jpg
      再次刷新
http://home.51cto.com/thumb.php?w=600&h=600&t=f&url=http://s3.51cto.com/wyfs02/M00/5A/02/wKiom1TzLQ3gJumBAAMHlrwgNjM147.jpg
  




页: [1]
查看完整版本: Apache的负载均衡之mod_jk模块实现