Nginx负载均衡应用配置测试(详细教程)

1.配置前规划(环境准备)

1.准备好三台虚拟机

机器名 服务器IP 用途 备注
nginx 192.168.29.207 负载均衡服务器 ——
nginx1 192.168.29.38 后端服务器1 HTTP
nginx2 192.168.29.45 后端服务器2 HTTP

2.首先配置nginx1和nginx2

准备好两台虚拟机,连接好网络,网络配置为桥接模式

3.分别配置以下命令(搭建好HTTP模式)

yum install httpd -y		##apache软件(*需要进入根目录 )
yum install httpd-manual	##apache的手册
systemctl start httpd 
systemctl enable httpd 
firewall-cmd --list-all				##列出火墙信息
firewall-cmd --permanent --add-service=http		##永久允许http
firewall-cmd --reload				##火墙从新加载策略
vim /var/www/html/index.html		##写默认发布文件内容

hello world

 在nginx(主)中和nginx1,nginx2中安装好nginx(安装方式在以前文章有)

4.分别测试页面(浏览器输入http://ip/)

Nginx负载均衡应用配置测试(详细教程)_第1张图片

 Nginx负载均衡应用配置测试(详细教程)_第2张图片

5.域名解析

由于不是真实环境,域名就随便使用一个web-server用作测试,所以a.com的解析只能在hosts文件设置。

6.ping 查看是否设置成功(如图可以看出web-server解析到了192.168.29.207)

Nginx负载均衡应用配置测试(详细教程)_第3张图片

7.设置防火墙(三台都要)

firewall-cmd --zone=public --add-port=80/tcp --permanent
systemctl restart firewalld.service
vi /etc/selinux/config     #关闭selinux 
修改配置文件:将selinux=enforcing改为disabled
弄好后重启虚拟机,查看后出现Disabled

2.Nginx轮询模式负载均衡配置

1.编辑配置文件

cd /usr/local/nginx/conf
cp nginx.conf nginx.conf.bak
vim nginx.conf

在http{}模块里添加以下内容
 
upstream webServer {
  server 192.168.29.38:80;     #nginx1
  server 192.168.29.45:80;     #nginx2
}
server{
listen 80;
server_name 192.168.29.207;
location / {
  index  index.html index.htm;
  proxy_pass http://192.168.29.207;     
}

/usr/local/nginx/sbin/nginx -t     #检查语法

/usr/local/nginx/sbin/nginx -s reload      #重启

 2.配置nginx1

cd /usr/local/nginx/html/
cp index.html  index.html.bak
vim index.html    #清空里面的所有配置
添加语句:
Welcome to server1
/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx -s reload

在浏览器中访问 查看

3.配置nginx2

cd /usr/local/nginx/html/
cp index.html  index.html.bak
vim index.html    #清空里面的所有配置
添加下面的语句:
Welcome to server2
/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx -s reload

在浏览器中访问查看

4.测试负载均衡

[root@localhost conf]# curl 192.168.95.137
Welcome to server1 
[root@localhost conf]# curl 192.168.95.137
Welcome to server2
[root@localhost conf]# curl 192.168.95.137
Welcome to server1 
[root@localhost conf]# curl 192.168.95.137
Welcome to server2

3.权重模式负载均衡

1.打开nginx(负责负载均衡)主虚拟机

编辑配置文件

在http{}模块里添加以下内容
 
upstream webServer {
  server 192.168.29.38:80 weight=3;      
  server 192.168.29.45:80 weight=7;
}
server{
listen 80;
server_name 192.168.29.207;
location / {
  index  index.html index.htm;
  proxy_pass http://192.168.29.207;
}
}
/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx -s reload

2.测试负载均衡

[root@localhost conf]# curl 192.168.29.207
Welcome to server2
 
[root@localhost conf]# curl 192.168.29.207
Welcome to server1 
 
[root@localhost conf]# curl 192.168.29.207
Welcome to server2
 
[root@localhost conf]# curl 192.168.29.207
Welcome to server2
 
[root@localhost conf]# curl 192.168.29.207
Welcome to server1 
 
[root@localhost conf]# curl 192.168.29.207
Welcome to server2
 
[root@localhost conf]# curl 192.168.29.207
Welcome to server2
 
[root@localhost conf]# curl 192.168.29.207
Welcome to server2
 
[root@localhost conf]# curl 192.168.29.207
Welcome to server1 
 
[root@localhost conf]# curl 192.168.29.207
Welcome to server2

从上面结果可以看出,一共测试访问10次用户请求,分流至server2服务器上的有7次,分流至server1服务器上的有3次,表明权重配置生效

你可能感兴趣的:(nginx,负载均衡,服务器)