一、概念、作用
- 负载均衡技术 (load balance) 是一种概念,把资源的使用进行平均分配。
- 负载均衡:分发流量、请求到不同的服务器。使流量分配(理想的状态的)。
- 主要作用:流量分发、请求平均、降低单例压力。
- 其他作用:安全 隐藏后端真实服务 屏蔽非法请求(七层负载均衡)
二、Nginx负载均衡的算法
- Round-Robin RR(轮询)字面意思一个一个轮流出现(实际操作可能会有差错,多刷几次)
- weight (权重) 权重高的多分发一些 服务器硬件更好的设备优先设置更高权重
- ip_hash 同一个IP,所有访问的都分发到同一个web服务器
三、实际操作
- 准备服务器,这里web服务器使用tomcat
nginx | 192.168.10.15 |
web1 | 192.168.10.16 |
web2 | 192.168.10.17 |
- 修改nginx配置文件
- 如果不知道文件在哪儿,使用find查询
- 在http字段进行配置,location字段代理转发到xxx段,匹配upstream
upstream nginxtest {
#web1 server01
server 192.168.10.16:8080;
#web2 server02
server 192.168.10.17:8080;
##如果要权重的话在后边添加weight=数字,越大权重越大
##server 192.168.10.17:8080 weight=10;
##ip hash 设置此项 weight就失效了;
##server 192.168.10.17:8080 down;
##server 192.168.10.17:8080 backup;
##down 此条配置,不会被分发到,即不会跳转到这个ip
}
server {
listen 80;
server_name localhost;
location / {
#代理转发到shop段 匹配到上面的upstream
proxy_pass http://nginxtest;
}
}
- 重载nginx
[root@server02 conf]# /usr/local/nginx/sbin/nginx -s reload
- 修改web服务器tomcat主页,使其容易识别
- 浏览器访问nginx服务器
不断刷新之后你会发现页面在变化,它可以在两个web服务器的tomcat来回切换