Linux Virtual Server
lvs是一款优秀的调度器,将客户的请求转发到后段web服务器;
一、linux cluster 类型:
LB: load balancing ,负载均衡
HA: high availiablity,高可用
HPC:high performance computing,高性能
分布式系统:
分布式存储:云盘
分布式计算:hadoop,spark
二、工作协议层次划分
1、传输层(四层)DPORT
LVS
nginx:stream
haproxy:mode tcp
2、应用层(七层)
proxy server 反向代理服务器
http:nginx、httpd、haproxy(mode http)
fastcgi:nginx,httpd
mysql:mysql-proxy
注释:
1、正向代理
所谓正向代理就是顺着请求的方向进行的代理,即代理服务器他是由你配置为你服务,去请求目标服务器地址。
比如我们要去访问谷歌网站,我们直接访问不通,那么我们就可以找一个代理服务器为我们服务,我们通过代理服务器请求到谷歌网站。对于谷歌而言他只知道有一个服务器访问了自己,并不知道这件事你是访问不了他,找了一个代理服务器访问自己。
2、反向代理
所谓反向代理正好与正向代理相反,代理服务器是为目标服务器服务的,虽然整体的请求返回路线都是一样的都是Client到Proxy到Server。
比如 我们访问百度网站,百度的代理服务器对外的域名为 https://www.baidu.com 。具体内部的服务器节点我们不知道。现实中我们通过访问百度的代理服务器后,代理服务器给我们转发请求到他们N多的服务器节点中的一个给我们进行搜索后将结果返回。
三、会话保持
1、访问流程
客户端访问--->LVS调度器--->后段服务器(多台)
2、功能背景
当客户端访问后段web服务器第一台,输入用户名和密码。当客户端刷新界面,请求被分配到后端web服务器第二台时,还要重新输入用户名和密码,这样会影响客户体验,所以采用会话保持功能。
3、原理
LVS调度器记录客户端源地址ip记录到自己的表中,等下次客户端再次访问时,就直接将请求转发到上一次访问的web服务器中,不用再输入账号和密码;
4、cookie
客户端访问--->LVS调度器--->后段服务器
当客户端访问到后段web第一台服务器,第一台服务器生成一个cookie信息,发送给客户端,客户端的硬盘上会生成一个cookie文件,下次再次访问网站是会携带这个cookie信息,请求报文中携带cookie,这样的话,LVS调度器会记录下来,下一次再次访问会看到这个cookie信息,直接将请求转发到第一台web服务器;