反向代理和正向代理
区别:
反向代理是我们的给我们的应用集群提供的外部统一的入口,用户可以通过反向代理服务器间接访问我们的应用部署的服务器。
正向代理是用户主动找到一台代理服务器想要访问被墙的网站。叫做正向代理。
基于反向代理的负载均衡
我们的镜像集群服务对外提供服务需要进过统一的入口,并通过入口的负载均衡来调解每一台镜像服务器的压力。
这个统一的入口就是反向代理服务器,可以设置我们的负载均衡算法。
nginx反向代理的配置
打开nginx.conf配置文件
server{
listen:80;//该主机监听的端口号
server_name:localhost;//主机的域名,localhost是匹配找不到
location / { //loaction后面的/ 代表所有根目录的请求都会映射到下面的规则中
proxy_pass http://liuzhongyang.com;//配置之后,所有的请求都会代理到该域名
}
}
复制nginx.conf启动多个nginx节点
./nginx -c conf/nginx-port.conf 指定启动的conf文件
负载均衡
负载均衡的配置,设置upstream,定义一组ip地址,在location中代理到该upstream
默认的负载均衡策略是轮询。可以加权重weigth
upstream liuzhongyang{
server 192.168.0.1:80 weight = 10;
server 192.168.0.1:90 weight = 1;
server 192.168.0.1:100 weight = 1 down;
server 192.168.0.1:110 weight = 1 backup;
}
server{
listen:80; //该主机监听的端口号
server_name:localhost; //主机的域名,localhost是匹配找不到
location / { //loaction后面的/代表所有根目录的请求都会映射到下面的规则中
proxy_pass http://liuzhongyang; //配置之后,所有的请求都会代理到该域名
}
}
- down:代表当前ip不参与负载
- weigth:代表权重,
- backup:其他机器都down或者忙的时候访问backup