话不多说,直接上
1,三台服务器
192.168.1.55(001,主,反向代理服务器)
192.168.1.56(002)
192.168.1.57(003)
2,思路
001服务器做为主服务器,域名直接解析到001服务器(192.168.1.55)上,由001服务器负载均衡到002服务器(192.168.1.56)与003服务器(192.168.1.57)上。
3,域名解析(这里无所谓,你想直接用IP地址访问也可以)
域名就随便使用 www.kang.com作测试,所以www.kang.com的解析只能在hosts文件设置。
打开:C:Windows/System32/driver/setc/hosts
添加
192.168.1.55 www.kang.com
保存退出,然后启动命令模式ping下看看是否已设置成功
4,001服务器nginx.conf设置
打开nginx.conf,文件去你自己nginx安装目录下找。
在http段加入以下代码
#加入下面这个集合 当然www.kang.com这个名字只是这个集合的名字而已,我这里是为了更加清晰明了,并不是上面配置的域名
upstream www.kang.com{
#需要参与均衡的服务器地址
server 192.168.1.57:81;
server 192.168.1.57:81;
}
server{
listen 81;
#服务地址。。。
server_name www.kang.com;
location / {
proxy_pass http://www.kang.com; #这一行必不可少是要反向代理的地址,就用上面的集合
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
完事保存并重启nginx(别忘重启)
5,002,003服务器nginx.conf的设置
打开nginx.confi,修改以下代码
server{
listen 81;
server_name www.kang.com; #服务地址
index index.html;
root /data0/htdocs/www;
}
保存重启nginx
6,测试
当访问www.kang.com的时候,为了区分是转向哪台服务器处理我分别在,002、003服务器下写一个不同内容的index.html文件,以作区分。
打开浏览器访问www.kang.com结果,刷新会发现所有的请求均分别被001主服务器(192.168.1.55)分配到002服务器(192.168.1.56)与003服务器(192.168.1.57)上,实现了负载均衡效果。
假如其中一台服务器宕机会怎样?
当某台服务器宕机了,是否会影响访问呢?
我们先来看看实例,根据以上例子,假设003服务器192.168.1.57这台机子宕机了(我就把003服务器关机了)。
你会发现,虽然003服务器(192.1681.57)宕机了,但不影响网站访问。这样,就不会担心在负载均衡模式下因为某台机子宕机而拖累整个站点了。