Java知识分享网 - 轻松学习从此开始!    

Java知识分享网

Java1234官方群25:java1234官方群17
Java1234官方群25:838462530
        
SpringBoot+SpringSecurity+Vue+ElementPlus权限系统实战课程 震撼发布        

最新Java全栈就业实战课程(免费)

springcloud分布式电商秒杀实战课程

IDEA永久激活

66套java实战课程无套路领取

锋哥开始收Java学员啦!

Python学习路线图

锋哥开始收Java学员啦!
当前位置: 主页 > Java文档 > Java基础相关 >

HaProxy中文指南 PDF 下载


分享到:
时间:2020-04-11 18:50来源:http://www.java1234.com 作者:小锋  侵权举报
HaProxy中文指南 PDF 下载
失效链接处理
HaProxy中文指南  PDF 下载

本站整理下载:
 
相关截图:
 
主要内容:
 
-------------
 
 
- LB1 接收 clients 的 requests
 
 
- 如果 1 个 request 不包含 cookie,则把这个 request 前传到分配的一个有效的 server - 作为回报, 1 个拥有 server 名称的 cookie "SERVERID"会被插入到 response 中
 
 
- 当 client 带有 cookie "SERVERID=A"再此访问时,LB1 就会知道这个 request 必须被前传到 server A. 同时删除这个 cookie 是的 server 不会看到它
 
 
- 当 server"webA"宕机时,request 会被前传至另外一个有效的 server,并且重新分配 cookie
 
 
 
2带 cookie 前缀的 HTTP 负载均衡和高可用性
 
2.1 带 cookie 前缀的 HTTP 负载均衡和高可用性
 
现在你可以不用添加更多的 cookie而是使用已有的 cookie如果应用已经生成 J 足够跟踪 session 的 SESSIONIDcookie我们会在看到该 cookie 时在它前面加上 servername 前
 
由于 load-balancer 变得关 因此 可以通过利用 keepalived 使得运行在 VRRP 模式下
 
的第二台热备它 从网站上下载最新版本的 keepalived 并且安装在 load-balancer 1 LB2
 
上。http://www.keepalived.org/在两个 load-balancer(我们仍然使用原始 之间,我们使用一个共享 。在任何时刻只有 1 个 load-balancers 处于活跃状态。为了允许 proxy 在 Linux2.4 下绑定一个共享 ,需要 /proc 中启用如下配置:
 
 
#echo1>/proc/sys/net/ipv4/ip_nonlocal_bind
 
 
 
 
 
 
 
 
 
 
 
 
 
Config on both proxies (LB1 and LB2) :
 
 
listen webfarm 192.168.1.1:80
 
 
mode http
 
 
balance roundrobin
 
 
cookie JSESSIONID prefix
 
 
option httpclose
 
 
option forwardfor
 
 
option httpchk HEAD /index.html HTTP/1.0
 
 
server webA 192.168.1.11:80 cookie A check
 
 
server webB 192.168.1.12:80 cookie B check
 
 
本文档更新博客地址 http://itnihao.blog.51cto.com
 
It 你好 linux 学习文档之----haproxy 架构指南(中文翻译版)
 
QQ 972322817 itnihao@qq.com
 
 
server webC 192.168.1.13:80 cookie C check
 
 
server webD 192.168.1.14:80 cookie D check
 
 
提示:proxy 会修改 client 和 server 发出的每个 cookie,因此 proxy 能够访问每个 session 中的所有 request 的所有 cookie 是非常重要的。这意味着不是 keepalive(HTTP/1.1),需要使用'httpclose'选项。只有你能确认 clients 不会使用 keepalive,才能删除这个选项。
 
Configuration for keepalived on LB1/LB2 :
 
vrrp_script chk_haproxy { # Requires keepalived-1.1.13
script "killall -0 haproxy" # cheaper than pidof
interval 2 # check every 2 seconds
weight 2 # add 2 points of prio if OK
}
vrrp_instance VI_1 {
interface eth0
state MASTER
virtual_router_id 51
priority 101 # 101 on master, 100 on backup
virtual_ipaddress {
192.168.1.1
}
track_script {
chk_haproxy
}
}
描述:
 
—LB1 是 VRRP 的主( keepalived ), LB2 是备。他们都监控 haproxy 进程,并且如果 haproxyfailed 则降低他们的权重,迁移至另外的节点;
 
 
—LB1 将在 IP:192.168.1.1 上接收 clientrequest
 
 
—两个 LB 用他们的内部 IP 发送健康检测
 
 
—如果 request 不包含 cookie,request 会被前传至 1 个有效的 server
 
—在回复时,如果看到 JESSIONIDcookie,proxy 会在 cookie 加上以('~')为分隔符的 servername 前缀;
 
 
—如果 client 再次访问时带着"JSESSIONID=A~xxx" cookie,LB1 会知道这个 request 必须前传至 serverA。在把 cookie 发送给 server 之前,cookie 中的 servername 会先被剔除出来。
 
 
—如果 server"webA"宕机,requests 会被前传到另外的有效服务器,并且会重新分配 cookie;数据流:
 
 
 
 
 
 
 
 
 
 
 
 

------分隔线----------------------------

锋哥公众号


锋哥微信


关注公众号
【Java资料站】
回复 666
获取 
66套java
从菜鸡到大神
项目实战课程

锋哥推荐