当前位置: 首页 > news >正文

Nginx反向代理配置+负载均衡集群部署

文章目录

    • 负载均衡+反向代理基础环境部署:
      • 什么是代理
      • 实验环境图
        • 流量过程
      • 环境部署
        • 准备两台Web服务器
          • 安装Nginx
          • 准备页面内容
          • 添加主机名
        • 代理服务器配置
      • 修改windos hosts文件
      • 测试:
        • 终端
        • 浏览器

负载均衡+反向代理基础环境部署:

什么是代理

正向代理既是通过代理服务器访问外网资源,而反向代理与之相反是将局域网的资源通过反向代理服务器提供给互联网用户浏览和使用等。

实验环境图

image-20230807204107216

流量过程

当客户端发起请求后通过Internet (本实验为NAT网卡)来到代理服务器上,代理服务器经算法选择后调用后端服务器响应并将流量返回给客户端。

环境部署

IP角色
192.168.110.135代理(负载均衡)服务器
192.168.110.137Web服务器1
192.168.110.134Web服务器2
192.168.110.1(Vmware-NAT网卡IP)客户端(Windows)

准备两台Web服务器

安装Nginx

可以选择RPM包安装和源码安装。RPM包安装这里不演示了,若不会源码安装的同学可以借鉴这一篇文章Nginx源码安装详细过程。

准备页面内容
echo "example.com Web2 `hostname -I`" > /usr/local/nginx/html/index.html 
echo "example.com Web1 `hostname -I`" > /usr/share/nginx/html/index.html

这里页面文件的具体路径根据自己配置文件中的定义。

添加主机名
vim /etc/nginx/nginx.conf
#将server下的server_name改为
server_name www.example.com
#检查配置文件语法
nginx -t
#重启服务
systemctl restart nginx

代理服务器配置

vim /etc/nginx/conf.d/proxy.conf
upstream web_pools{server 192.168.110.137:80 weight=1;server 192.168.110.134:80 weight=1;
}server{listen 80;server_name www.example.in;location / {proxy_pass http://web_pools;}
}
#语法检查
nginx -t
#重启服务
systemctl restart nginx

修改windos hosts文件

路径:C:\Windows\System32\drivers\etc\hosts
192.168.110.135 www.example.in
若修改后无法保存,需要修改文件属性将只读去掉

测试:

终端

C:\Users\SuperMe>curl www.example.in
example.com Web2 192.168.110.134C:\Users\SuperMe>curl www.example.in
example.com Web1 192.168.110.137C:\Users\SuperMe>curl www.example.in
example.com Web1 192.168.110.137C:\Users\SuperMe>curl www.example.in
example.com Web2 192.168.110.134C:\Users\SuperMe>curl www.example.in
example.com Web2 192.168.110.134C:\Users\SuperMe>curl www.example.in
example.com Web1 192.168.110.137

浏览器

image-20230807203017882

image-20230807203140937
剩下的事情交给刷新处理就能看到效果。

http://www.lryc.cn/news/113263.html

相关文章:

  • 设计模式行为型——迭代器模式
  • K8s持久化存储(nfs网络存储)
  • 常规VUE项目优化实践,跟着做就对了!
  • PLL 的 verilog 实现
  • 【Hystrix技术指南】(1)基本使用和配置说明
  • Oracle EBS OM客制化调用API创建销售订单非常慢(FND_FLEX_HASH死锁)
  • 【leetcode】394. 字符串解码
  • 系统架构设计高级技能 · 系统质量属性与架构评估(二)【系统架构设计师】
  • 魅族Pandaer手机壳
  • F5洞察2023年网络威胁,助力网络安全防护
  • 从零构建深度学习推理框架-4 框架中的算子注册机制
  • 使用vscode+ssh免密远程Linux
  • rust-异步学习
  • 【Azure】office365邮箱测试的邮箱账号因频繁连接邮箱服务器而被限制连接 引起邮箱显示异常
  • 重新登录成功和登录失败处理器
  • 【Spring】(三)Spring 使用注解存储和读取 Bean对象
  • ParallelCollectionRDD [0] isEmpty at KyuubiSparkUtil.scala:48问题解决
  • ---------------- 部署 Zookeeper 集群 ----------------
  • SpringBoot 依赖管理和自动配置---带你了解什么是版本仲裁
  • c语言每日一练(2)
  • 代码随想录第三十七天
  • Linux进程间通信--ftok
  • Spring Boot集成Mybatis-Plus
  • 梳理日常开发涉及的负载均衡
  • IEEE 754 浮点数运算
  • 阿里巴巴Java开发手册学习记录
  • 论文阅读---《Unsupervised T ransformer-Based Anomaly Detection in ECG Signals》
  • 收藏这8个好用的原型设计工具,轻松制作原型图
  • 王道计网 第四章笔记
  • C# Blazor 学习笔记(9):动态css/class绑定