(3)在192.168.180.2服务器中安装配置jsp测试界面
[root@ittestserver1 m]# vim 1.jsp
this is test jsp page
[root@ittestserver1 conf]# /usr/local/tomcat/bin/startup.sh
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/java/jdk1.7.0_79
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started. 查看测试界面
(4)接下来是最重要的配置haproxy服务器
[root@localhost haproxy]# vim /etc/haproxy/haproxy.cfg
#---------------------------------------------------------------------
# Global settings
#---------------------------------------------------------------------
global
log 127.0.0.1 local2 info ###[err warning info debug]
chroot /usr/local/haproxy
pidfile /var/run/haproxy.pid ###haproxy的pid存放路径,启动进程的用户必须有权限访问此文件
maxconn 4000 ###最大连接数,默认4000
user haproxy
group haproxy
daemon ###创建1个进程进入deamon模式运行。此参数要求将运行模式设置为"daemon"
#---------------------------------------------------------------------
# common defaults that all the 'listen' and 'backend' sections will
# use if not designated in their block
#---------------------------------------------------------------------
defaults
mode http ###默认的模式mode { tcp|http|health },tcp是4层,http是7层,health只会返回OK
log global ###采用全局定义的日志
option dontlognull ###不记录健康检查的日志信息
option httpclose ###每次请求完毕后主动关闭http通道
option httplog ###日志类别http日志格式
option forwardfor ###如果后端服务器需要获得客户端真实ip需要配置的参数,可以从Http Header中获得客户端ip
option redispatch ###serverId对应的服务器挂掉后,强制定向到其他健康的服务器
timeout connect 10000 #default 10 second timeout if a backend is not found
timeout client 300000 ###客户端连接超时
timeout server 300000 ###服务器连接超时
maxconn 60000 ###最大连接数
retries 3 ###3次连接失败就认为服务不可用,也可以通过后面设置
####################################################################
listen stats
bind 0.0.0.0:1080 #监听端口
stats refresh 30s #统计页面自动刷新时间
stats uri /stats #统计页面url
stats realm Haproxy Manager #统计页面密码框上提示文本
stats auth admin:admin #统计页面用户名和密码设置
stats hide-version #隐藏统计页面上HAProxy的版本信息
stats enable ###启用管理界面
stats admin if TRUE ##如果登录成功就可以管理在线服务器
#---------------------------------------------------------------------
# main frontend which proxys to the backends
#---------------------------------------------------------------------
frontend main
#frontend www # *表示haproxy监听所有地址,监听的端口为80
bind 0.0.0.0:80
# bind *:8080
#######定义访问控制,表示url以.css .js .html .php结尾的分别调度到哪台服务器上访问
# acl url_static path_beg -i /static /images /javascript /stylesheets
acl url_static path_end -i .jpg .gif .png .css .js .html
acl url_dynamic_php path_end -i .php
acl url_dynamic_jsp path_end -i .jsp
#######usr_backend表示使用backend服务,if表示如果满足url_static这个条件就调度到这台服务器上
use_backend static if url_static ###满足策略要求,则响应策略定义的backend静态页面
use_backend dynamic_php if url_dynamic_php ###满足策略要求,则响应策略定义的backend静态页面
se_backend dynamic_jsp if url_dynamic_jsp ###满足策略要求,则响应策略定义的backend静态页面
# default_backend dynamic ###不满足则响应backend的默认动态页面
# default_backend dynamic ###不满足则响应backend的默认动态页面
#---------------------------------------------------------------------
# static backend for serving up images, stylesheets and such
#---------------------------------------------------------------------
backend static ###定义后端静态请求响应
balance roundrobin ###负载均衡模式轮询
server static 192.168.180.4:80 check ###后端服务器定义
#server static 192.168.180.9:80 check ###后端服务器定义
backend dynamic_php #####定义后端动态请求响应
balance roundrobin
server phpsrv1 192.168.180.9:80 check maxconn 2000
# server websrv1 dd192.168.180.9:80 check maxconn 2000
#server websrv2 192.168.180.4:80 check maxconn 2000
# server websrv2 192.168.180.2:443 check maxconn 2000
backend dynamic_jsp #####定义后端动态请求响应
balance roundrobin
server jspsrv1 192.168.180.2:8081 check maxconn 2000
#---------------------------------------------------------------------
# round robin balancing between the various backends
#---------------------------------------------------------------------