Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Load balancing CAS, uPortal and Sakai CLE

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.

Load balancing CAS, uPortal and Sakai CLE

Share how UC Merced had used Apache for load balancing, then moved to BigIP's F5 appliance.
#apereo13

Avatar for Benito Gonzalez

Benito Gonzalez

June 06, 2013
Tweet

More Decks by Benito Gonzalez

Other Decks in Technology

Transcript

  1. June 06, 2013 7 Apache Tomcat Tomcat Tomcat Tomcat Apache

      Tomcat Tomcat 7 Thursday, June 6, 13
  2. June 06, 2013 8 Connec.on Source  (169.236) Target  (169.236) Open

     HTTP Any .253.52:80 Open  HTTPS Any .253.52:443 Apache  to  Tomcat1 .253.52:* .253.52:8080 Apache  to  Tomcat2 .253.52:* .253.37:80 Apache  to  Tomcat3 .253.52:* .253.196:80 Connec.ons:  IPs  and  ports 8 Thursday, June 6, 13
  3. June 06, 2013 $ nc -zw 2 169.236.253.37 8080 Connection

    to 169.236.253.37 8080 port [tcp/*] succeeded! $ Target console $ nc -l 8080 $ Trust but verify (connectivity) 9 Source console 9 Thursday, June 6, 13
  4. June 06, 2013 Community • Mailing List – http://www.jasig.org/uportal/mailing-lists –

    http://www.jasig.org/cas/mailing-lists – http://collab.sakaiproject.org/mailman/listinfo • Online Documentation – https://wiki.jasig.org/display/UPC/Home – https://wiki.jasig.org/display/CASUM/Home – https://confluence.sakaiproject.org/display/DOC/ Documentation 10 10 Thursday, June 6, 13
  5. June 06, 2013 Tomcat 13 •Install  the  JDK •Install  Tomcat

     from  hNp://tomcat.apache.org •Run  it  to  make  sure  it’s  working •Edit  conf/server.xml        <Connector  port="7789"  minSpareThreads="5"  maxThreads="800"                protocol="AJP/1.3"  redirectPort="8443"                enableLookups="false"  connec.onTimeout="10000"          /> 13 Thursday, June 6, 13
  6. June 06, 2013 14 mod_jk Installing  apache  and  mod_jk... Ubuntu:

     sudo apt-get install libapache2-mod-jk RHEL:  yum ... -­‐-­‐  [Google  it] 14 Thursday, June 6, 13
  7. June 06, 2013 mod_jk workers.properties 15 worker.list=loadbalancer,jkstatus #  Proper.es  for

     worker1 worker.tomcat1.port=7789 worker.tomcat1.host=up6.ucmerced.edu worker.tomcat1.type=ajp13 worker.tomcat1.lbfactor=10 worker.tomcat1.connec.on_pool_size=1 #  Proper.es  for  worker2 worker.tomcat2.port=7789 worker.tomcat2.host=up7.ucmerced.edu worker.tomcat2.type=ajp13 worker.tomcat2.lbfactor=20 worker.tomcat2.connec.on_pool_size=1 15 Thursday, June 6, 13
  8. June 06, 2013 mod_jk workers.properties (cont.) 16 worker.loadbalancer.type=lb worker.loadbalancer.balanced_workers=tomcat4,tomcat3,tomcat2,tomcat1 #worker.loadbalancer.balanced_workers=tomcat4,tomcat3,tomcat2

    #worker.loadbalancer.balanced_workers=tomcat3,tomcat2,tomcat1 #worker.loadbalancer.balanced_workers=tomcat2,tomcat1 #worker.loadbalancer.balanced_workers=tomcat4 worker.loadbalancer.s.cky_session=1 #  status  worker worker.jkstatus.type=status “worker.list=loadbalancer,jkstatus”  from  top  of  file 16 Thursday, June 6, 13
  9. June 06, 2013 17 LoadModule jk_module "<path_to_lib>/mod_jk.so" <IfModule mod_jk.c> JkWorkersFile

    "<path_to_apache_config>/workers.properties" JkLogFile "|<path_to_apache_bin>/rotatelogs <path_to_apache_logs>/mod_jk.log 86400" JkLogLevel error JkLogStampFormat "[%a %b %d %H:%M:%S %Y]" JkRequestLogFormat "%w %V %T %U %q" JkMount /uPortal* loadbalancer JkMount /uPortal/* loadbalancer JkUnMount /uPortal/media/* loadbalancer JkMount /ResourceServingWebapp/* loadbalancer JkMount /portal_comm_0_1/* loadbalancer JkMount /Announcements/* loadbalancer JkMount /WeatherPortlet/* loadbalancer <Location /jkmanager/> JkMount jkstatus Order deny,allow Deny from all Allow from 169.236.10.91 Allow from 169.236.11.24 Allow from 169.236.250.48/28 </Location> </IfModule> 17 Thursday, June 6, 13
  10. June 06, 2013 Issues 19 ✦  Crashed  once  every  6

     months ✦  Wedged  tomcat  would  break  Apache ✦  AJP  protocol  doesn’t  like  big  payloads 19 Thursday, June 6, 13