nginx负载均衡
一、nginx是什么?
nginx [engine x] 是一个 HTTP 和反向代理服务器、一个邮件代理服务器和一个通用的 TCP/UDP 代理服务器,最初由Igor Sysoev编写。
二、负载均衡是什么?
负载均衡,英文名称为Load Balance,其含义就是指将负载(工作任务)进行平衡、分摊到多个操作单元上进行运行,例如FTP服务器、Web服务器、企业核心应用服务器和其它主要任务服务器等,从而协同完成工作任务。
负载均衡器就是反向代理服务器
三、负载均衡算法
- 轮询法
- 最小连接数
- IP哈希
- 最短连接时间
- URL哈希
- random
四、实现http负载均衡
1.规划,规划ip网段和服务器角色(LB,real-server),网卡类型
- 构建负载均衡需要提前脚本配置–with–stream
- 网卡配置全部使用桥接或者hostonly
2.配置好服务器的ip地址
配置好各机器的ip地址
vim /etc/sysconfig/network-scripts/ifcfg-ens33
3.在所有机器上安装nginx,在real-server上配置好web服务, 在负载均衡器上开启反向代理功能
- 提前修改好各机器的主机名,方便辨识
hostnamectl set-hostname xxx
- 检查防火墙配置和selinux 建议关闭
systemctl stop firewalld
systectl disable firewalld
setenforce 0 #临时关闭selinux
在各机器上编译安装nginx
3.1 配置负载均衡器
[root@LB conf]# pwd
/usr/local/scxiongxue99/conf
[root@LB conf]# vim nginx.conf
3.2 修改real-server端口
3.3 修改real-server的html页面
[root@rs1 html]# pwd
/usr/local/scxx99/html
[root@rs1 html]# vim index.html
4 .测试验证
访问负载均衡器 查看是否能访问real-server
5.加权轮询测试
5.1 修改负载均衡器配置
修改负载均衡器定义
验证:real-server1访问次数比其他机器多
5.2 备份服务器
测试:断开其他机器 只访问备份服务器