美文网首页linux学习
通过Nignx实现负载均衡

通过Nignx实现负载均衡

作者: iXiAo9 | 来源:发表于2018-12-04 20:46 被阅读27次
请准备3台Centos系统的服务器

我将开启三台服务器用于演示
1台为Nginx负载均衡服务器
172.18.27.141
2台为后端的web服务器
172.18.27.150
172.18.27.140

关闭所有iptables防火墙,以及selinux。

172.18.27.141  (nginx)
172.18.27.150    (apache)
172.18.27.140    (apache)

我们先编译安装nginx

172.18.27.141上操作
上传nginx源码包,你可以使用yum来安装它。

下载编译器以及扩展包

yum install -y gcc gcc-c++ pcre-devel openssl-devel zlib-devel

pcre : Nginx的rewrite模块和HTTP核心模块会用到PCRE正则表达式语法

zlib : 适用于数据压缩的函式库

openssl : 若服务器提供安全网页(https:/./)时,会用到OpenSSL库

解压gz格式

其他格式请百度
tar -zxf nginx-1.11.2.tar.gz

安装nginx

./configure --prefix=/usr/local/nginx
检测编译环境
make
编译
make install
编译安装
如有报错请检查pcre-devel是否安装成功!

启动nginx

/usr/local/nginx/sbin/nginx

使用ss命令查看服务器web服务是否存活
ss -tnl
查看80端口是否存在

2台为后端的web服务器

172.18.27.150
172.18.27.140
两台web服务器安装apache
yum install -y httpd

172.18.27.150上操作

修改httpd默认页面
vim /var/www/html/index.html
httpd默认网站存储路径/var/www/html/
里面随便写些东西一会用于区分
我写入的是web1
启动httpd
service httpd start

172.18.27.150上操作

修改httpd默认页面
vim /var/www/html/index.html
httpd默认网站存储路径/var/www/html/
写入web2
启动httpd
service httpd start

这两台服务器web服务器就不用管了
两台防火墙和selinux都是关闭的

使用ss命令查看服务器web服务是否存活
ss -tnl
查看80端口是否存在

最终两台apache效果

最终效果

负载均衡

检查是否正常
-----------------
172.18.27.141  (nginx)
172.18.27.150    (apache)
172.18.27.140    (apache)

接下来我们开始折腾负载均衡

在Nginx中定义负载均衡服务器组,权重为1:1

定义负载均衡服务器组

红框内是添加内容配置文件格式请不要忘记

改配置文件前请先备份,养成良好习惯!

cp nginx.conf nginx.conf.back

    upstream webs{          #定义组名为webs
    server 172.18.27.150 weight=1;    #server空格后填写服务器1的ip地址
    server 172.18.27.140 weight=1;    #weight为权重
    }

如果你不懂权重请把

 server 172.18.27.140 weight=1;

改为

server 172.18.27.140 weight=2;

等下结果出来你就知道效果了

重启nginx即可

访问nginx即可172.18.27.141

最终效果

多刷新几次,如果两个权重都设置为1的话,每次刷新页面都不一样!

相关文章

  • 通过Nignx实现负载均衡

    我将开启三台服务器用于演示1台为Nginx负载均衡服务器172.18.27.1412台为后端的web服务器172....

  • 负载均衡

    一、负载均衡简介 负载均衡是微服务架构中必须使用的技术,通过负载均衡实现系统的高可用、集群扩展等。 其可以通过硬件...

  • Nginx实现负载均衡

    Nginx负载均衡设置 一、负载均衡算法 实现负载均衡可有以下算法: 源地址哈希法:根据获取客户端的IP地址,通过...

  • Ribbon自定义负载均衡算法

    Ribbon内置7种负载均衡算法,通过IRule接口的choose()方法来实现不同的负载均衡算法,我们通过自己实...

  • Keepalived-1 Nginx+Keepalived实

    Nginx通过Upstream模块实现负载均衡 upstream 支持的负载均衡算法 主机清单: 主机名ip系统用...

  • Haproxy+Keepalived高可用

    负载均衡技术 软件负载均衡一般通过两种方式来实现:基于操作系统的软负载实现和基于第三方应用的软负载实现。LVS就是...

  • 当面试官问我Nginx如何实现负载均衡,我这么答让他眼前一亮

    负载均衡介绍 在介绍Nginx的负载均衡实现之前,先简单的说下负载均衡的分类,主要分为硬件负载均衡和软件负载均衡,...

  • 关于负载均衡的总结

    负载均衡的分类 常见的分为三类,dns负载均衡,硬件负载均衡,软件负载均衡 dns负载均衡 一般实现地域级别的负载...

  • Zuul和Nginx区别

    Nginx是采用服务器实现负载均衡进行转发。 Zuul是通过eureka和ribbon进行本地负载均衡转发。 Zu...

  • SpringBoot实现负载均衡(Nginx支撑)

    负载均衡介绍介绍在介绍Nginx的负载均衡实现之前,先简单的说下负载均衡的分类,主要分为硬件负载均衡和软件负载均衡...

网友评论

    本文标题:通过Nignx实现负载均衡

    本文链接:https://www.haomeiwen.com/subject/bnbvcqtx.html