热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Nginx反向代理与负载均衡实验

本实验旨在通过配置Nginx实现反向代理和负载均衡,确保从北京本地代理服务器访问上海的Web服务器时,能够依次显示红、黄、绿三种颜色页面以验证负载均衡效果。

在本次实验中,我们将通过配置 Nginx 实现反向代理和负载均衡。具体目标是从北京的本地代理服务器访问位于上海的 Web 服务器,并在浏览器输入 www.jht.com 后,依次显示红、黄、绿三种颜色页面,以此来验证负载均衡的效果。


R1 路由器配置如下:
interface Ethernet0/0
ip address 192.168.1.1 255.255.255.0
ip nat inside
no sh
interface Ethernet0/1
ip address 10.1.1.1 255.255.255.0
ip nat outside
no sh
access-list 1 permit 192.168.1.0 0.0.0.255
ip nat inside source list 1 interface Ethernet0/1 overload
R2 路由器配置,将 Nginx 服务器的 8081、8082 和 8083 端口映射出去。
interface Ethernet0/0
ip address 192.168.56.1 255.255.255.0
ip nat inside
no sh
interface Ethernet0/1
ip address 10.1.1.2 255.255.255.0
ip nat outside
no sh
ip nat inside source static tcp 192.168.56.102 8081 10.1.1.2 8081 extendable
ip nat inside source static tcp 192.168.56.102 8082 10.1.1.2 8082 extendable
ip nat inside source static tcp 192.168.56.102 8083 10.1.1.2 8083 extendable

接下来是 Nginx 服务器的配置:

1. 安装 Nginx
//安装基本依赖包
[root@Nginx ~]# yum install -y gcc gcc-c++ autoconf pcre pcre-devel make automake wget httpd-tools vim tree
配置 Nginx 官方 Yum 源
[root@Nginx ~]# vi /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/6/$basearch/
gpgcheck=0
enabled=1
//安装 Nginx
[root@Nginx ~]# yum install nginx -y
//查看 Nginx 当前版本
[root@Nginx ~]# nginx -v
nginx version: nginx/1.12.2

2. 创建相应的目录,并创建对应的 HTML 文件
[root@Nginx ~]# mkdir /soft/{code1,code2,code3} -p
[root@Nginx ~]# cat /soft/code1/index.html



jht1-8081




[root@Nginx ~]# cat /soft/code2/index.html



jht1-8082




[root@Nginx ~]# cat /soft/code3/index.html



jht1-8083



3. 建立对应的 releserver.conf 配置文件
[root@Nginx ~]# cat /etc/nginx/conf.d/releserver.conf
server {
listen 8081;
root /soft/code1;
index index.html;
}
server {
listen 8082;
root /soft/code2;
index index.html;
}
server {
listen 8083;
root /soft/code3;
index index.html;
}

最后是代理服务器的配置:

1. 安装 Nginx
//安装基本依赖包
[root@Nginx ~]# yum install -y gcc gcc-c++ autoconf pcre pcre-devel make automake wget httpd-tools vim tree
配置 Nginx 官方 Yum 源
[root@Nginx ~]# vi /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/6/$basearch/
gpgcheck=0
enabled=1
//安装 Nginx
[root@Nginx ~]# yum install nginx -y
//查看 Nginx 当前版本
[root@Nginx ~]# nginx -v
nginx version: nginx/1.12.2

2. 配置 Nginx 反向代理
[root@Nginx ~]# cat /etc/nginx/conf.d/proxy.conf
upstream node {
server 10.1.1.2:8081;
server 10.1.1.2:8082;
server 10.1.1.2:8083;
}
server {
server_name www.jht.com;
index index.html
listen 80;
location / {
proxy_pass http://node;
}
}

3. 使用浏览器验证结果



推荐阅读
  • 本文详细介绍了一种通过MySQL弱口令漏洞在Windows操作系统上获取SYSTEM权限的方法。该方法涉及使用自定义UDF DLL文件来执行任意命令,从而实现对远程服务器的完全控制。 ... [详细]
  • 本文介绍了如何使用JavaScript的Fetch API与Express服务器进行交互,涵盖了GET、POST、PUT和DELETE请求的实现,并展示了如何处理JSON响应。 ... [详细]
  • 在尝试使用C# Windows Forms客户端通过SignalR连接到ASP.NET服务器时,遇到了内部服务器错误(500)。本文将详细探讨问题的原因及解决方案。 ... [详细]
  • 访问一个网页的全过程
    准备:DHCPUDPIP和以太网启动主机,用一根以太网电缆连接到学校的以太网交换机,交换机又与学校的路由器相连.学校的这台路由器与一个ISP链接,此ISP(Intern ... [详细]
  • 本文详细介绍了优化DB2数据库性能的多种方法,涵盖统计信息更新、缓冲池调整、日志缓冲区配置、应用程序堆大小设置、排序堆参数调整、代理程序管理、锁机制优化、活动应用程序限制、页清除程序配置、I/O服务器数量设定以及编入组提交数调整等方面。通过这些技术手段,可以显著提升数据库的运行效率和响应速度。 ... [详细]
  • 云函数与数据库API实现增删查改的对比
    本文将深入探讨使用云函数和数据库API实现数据操作(增删查改)的不同方法,通过详细的代码示例帮助读者更好地理解和掌握这些技术。文章不仅提供代码实现,还解释了每种方法的特点和适用场景。 ... [详细]
  • 本文探讨了为何相同的HTTP请求在两台不同操作系统(Windows与Ubuntu)的机器上会分别返回200 OK和429 Too Many Requests的状态码。我们将分析代码、环境差异及可能的影响因素。 ... [详细]
  • yikesnews第11期:微软Office两个0day和一个提权0day
    点击阅读原文可点击链接根据法国大选被黑客干扰,发送了带漏洞的文档Trumps_Attack_on_Syria_English.docx而此漏洞与ESET&FireEy ... [详细]
  • Symfony是一个功能强大的PHP框架,以其依赖注入(DI)特性著称。许多流行的PHP框架如Drupal和Laravel的核心组件都基于Symfony构建。本文将详细介绍Symfony的安装方法及其基本使用。 ... [详细]
  • 本文深入探讨了MAC地址与IP地址绑定策略在网络安全中的应用及其潜在风险,同时提供了针对该策略的破解方法和相应的防御措施。 ... [详细]
  • 使用Nginx反向代理实现多域名端口映射
    本文介绍如何通过配置本地hosts文件和Nginx反向代理,实现多个虚拟域名的端口映射,使用户可以通过标准HTTP端口80访问不同后端服务。 ... [详细]
  • 深入解析SpringMVC核心组件:DispatcherServlet的工作原理
    本文详细探讨了SpringMVC的核心组件——DispatcherServlet的运作机制,旨在帮助有一定Java和Spring基础的开发人员理解HTTP请求是如何被映射到Controller并执行的。文章将解答以下问题:1. HTTP请求如何映射到Controller;2. Controller是如何被执行的。 ... [详细]
  • 推荐两款实用的网络诊断工具
    大家好,因为一些私事很久没有更新博客了。今天向大家介绍两款非常有用的网络诊断工具——Tracert和Telnet,帮助你更好地理解和解决网络问题。 ... [详细]
  • Linux网络安装指南
    本文详细介绍了如何通过网络安装Linux操作系统,包括必要的服务配置和常见问题解决方法,旨在帮助IT专业人士提高系统部署效率。 ... [详细]
  • TP-Link无线路由器WPS安全配置指南
    本文详细介绍了如何在TP-Link无线路由器上进行WPS的安全设置,包括关闭不必要的服务、同步主路由器的无线设置等步骤。 ... [详细]
author-avatar
手机用户2602897337
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有