Nginx 反向代理,负载均衡,动静分离和高可用 实操

反向代理实操

      • 反向代理
          • 大致介绍
          • tomcat服务器的准备
          • nginx的配置修改
      • 负载均衡
          • 大致介绍
          • 准备工作
          • nginx配置修改
      • 动静分离
          • 简单介绍
          • 配置修改
      • 高可用
          • 简单介绍
          • 实现原理
          • 具体操作

反向代理

大致介绍

nginx的这几个特性都是通过修改配置文件nginx.conf 来实现的.
要通过nginx 来实现反向代理,实际 就是 客户端浏览器 请求 nginx ,nginx 将该请求转发给另外一个服务器比如tomcat。tomcat服务器处理完请求后,将结果返回给nginx,nginx然后再将结果返回给客户端.

tomcat服务器的准备

我这边的做法是在linux上面简单的部署一个tomcat(下载解压即可),tomcat启动的端口默认是8080。 然后用firewall 添加8080端口。firewall-cmd --add-port=8080/tcp --permanent
然后启动.
启动方式: 进入tomcat解压的bin目录. 例如:
进入该bin目录:
在这里插入图片描述
执行./startup.sh 启动服务
Nginx 反向代理,负载均衡,动静分离和高可用 实操_第1张图片

nginx的配置修改

Nginx 反向代理,负载均衡,动静分离和高可用 实操_第2张图片
解释下截图内容:
1.server_name 是nginx服务器的地址,要改成对应的ip路径。
2.location 可以理解为路由。 后面的 / 表示拦截所有的请求。 也可以改成 /test/.表示拦截所有的包含有/test/的请求。proxy_pass 表示将拦截到的请求转发到具体的服务器中。路径是 127.0.0.1:8080. 也就是本机的tomcat服务.
配置修改完成后,需要重新加载下nginx配置文件。
在/usr/local/nginx/sbin目录
执行**./nginx -s reload** 。 然后在浏览器 输入 ip:80 就可以访问tomcat了。
正常是需要 ip:8080才能访问tomcat。 如果80端口能访问tomcat,说明实现了反向代理.
如果出现了问题,可以评论讨论.

负载均衡

大致介绍

现实系统中,我们会采用多个服务器来分摊请求,这样会减少每个服务器的压力。并且如果某个服务器挂了,也不会影响整个系统的运转.本次模拟是 安装两个tomcat ,然后将第二个的端口改下,比如改成8081.在nginx配置文件配置下两个tomcat的ip和端口。并设置对应的策略。那么同一个请求,重复请求多次,请求会根据配置的策略分发到不同的tomcat服务器

准备工作

采用 cp 命令复制下tomcat目录,进入复制tomcat 目录下面,找到config目录。在里面找到server.xml文件。用vim打开,修改下对应的端口.
Nginx 反向代理,负载均衡,动静分离和高可用 实操_第3张图片
修改完后,启动。

nginx配置修改

在/usr/local/nginx/conf 目录找到 nginx.conf文件。用vim打开
在http 目录下面,建一个 server 节点和 upstream节点.
Nginx 反向代理,负载均衡,动静分离和高可用 实操_第4张图片

动静分离

简单介绍

动静分离可以理解为 将不同的请求根据一些策略转发到不同的服务器进行处理.即对请求流量进行处理。和负载均衡是同一个原理。只是配置修改的点不同。可以参考下截图修改配置

配置修改

Nginx 反向代理,负载均衡,动静分离和高可用 实操_第5张图片
在server 里面配置多个location节点,每个location拦截不同的url请求,然后转发到不同的路径处理.

高可用

简单介绍

高可用主要是防止 出现nginx 宕机导致整个服务不可用。具体的实现是配置多台nginx服务器。比如配置两太nginx服务器,一台备用(正常不接受请求,只有主 nginx实例挂了无法提供服务,此时该服务器就可以提供服务)

实现原理

采用 keepalived 软件完成。这个软件会监控多台nginx服务器,如果发下主nginx不可用,就将请求转发到备nginx服务器。

具体操作

1.安装keepalived软件
两台nginx服务器都需要安装.
yum install keepalived -y
2.配置文件修改
安装完成后,会在/etc生产一个keepalived文件夹,里面有个keepalived.conf配置文件。
此时需要修改该配置文件。
其中主nginx的配置文件如下:
Nginx 反向代理,负载均衡,动静分离和高可用 实操_第6张图片
对应的脚本文件的内容需要放置在/usr/local/src/下的 nginx_check.sh文件中。文件内容如下(主要是检测nginx 是否是能启动):
Nginx 反向代理,负载均衡,动静分离和高可用 实操_第7张图片

从服务器的keepalived.conf修改如下:
Nginx 反向代理,负载均衡,动静分离和高可用 实操_第8张图片
查看网卡的方式
Nginx 反向代理,负载均衡,动静分离和高可用 实操_第9张图片

以上nginx的介绍就完了。如果需要更加详细的了解。建议初中学者可以观看尚硅谷Nginx视频。还不错。地址:https://www.bilibili.com/video/BV1zJ411w7SV?p=15

你可能感兴趣的:(nginx栏目,nginx,负载均衡,tomcat)