登 录
注 册
< 系统运维
Linux
计算机系统
系统工具
常用特殊命令
常用shell脚本
Nginx基本概念
Nginx多端口代理
Nginx负载均衡配置
Nginx负载均衡策略
Nginx动静分离
Nginx高可用
热门推荐>>>
中台架构
中台建设与架构
Hadoop
源码分析-NN启动(三)
HBase
HBased对接Hive
Python
数据导出工具
Flink
3分钟搭建Flink SQL测试环境
Kafka
Kafka对接Flume
深度学习
卷积神经网络
数据结构与算法
选择合适的算法
MySQL
数据备份恢复
计算机系统
信号量同步线程
Hive
Hive调优参数大全
其他框架
Azkaban Flow1.0与2.0
ClickHouse
表引擎-其他类型
技术成长
最好的职业建议
精选书单
技术成长书单—机器学习
技术资讯
数据在线:计算将成为公共服务
开发工具
IntelliJ IDEA 20年发展回顾(二)
系统工具
Mac命令行工具
虚拟化
内存虚拟化概述
云原生
云原生构建现代化应用
云服务
一文搞懂公有云、私有云...
Java
Spring Boot依赖注入与Runners
Go
Go函数与方法
SQL
SQL模板
安全常识
一文读懂SSO
当前位置:
首页
>>
Linux
>>
Nginx负载均衡配置
Nginx负载均衡配置
2021-12-25 14:49:41 星期六 阅读:793
![](/static/images/article_images/1693148318.130344.jpeg) 负载均衡(Load Balance),它在网络现有结构之上可以提供一种廉价、有效、透明的方法来扩展网络设备和服务器的带宽,并可以在一定程度上增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性等。 用官网的话说,它充当着网络流中“交通指挥官”的角色 ####实现效果 在浏览器里输入www.libins.cn/balance/index.html,实现将请求均匀的发送到三台服务器。如下图所示: 为了方便实验,这里通过一台机器上3个不同的端口号来启动Tomcat应用,以此来模拟三台机器。 ![](/static/images/article_images/1640414739.0617857.jpeg) #### 配置步骤 使用Tomcat镜像,生成并启动三个容器,指定端口映射 ``` # 获取镜像 docker pull tomcat:8.0.35 # 根据镜像创建容器并启动,指定物理机端口映射为7070 docker run --name tomcat7070 -p 7070:8080 -v $PWD/test:/usr/local/tomcat/webapps/test -d tomcat:8.0.35 # 根据镜像创建容器并启动,指定物理机端口映射为8080 docker run --name tomcat8080 -p 8080:8080 -v $PWD/test:/usr/local/tomcat/webapps/test -d tomcat:8.0.35 # 根据镜像创建容器并启动,指定物理机端口映射为9090 docker run --name tomcat9090 -p 9090:8080 -v $PWD/test:/usr/local/tomcat/webapps/test -d tomcat:8.0.35 ``` 保证浏览器输入IP:端口,能够看到Tomcat的启动成功页面,如下图 ![](/static/images/article_images/1640414822.2275372.jpeg) 分别在三台Tomcat服务器上创建HTML页面 ``` # 在7070机器上创建 docker exec -it tomcat7070 /bin/bash cd webapps mkdir balance cd balance echo "<h2>This is index html page for port: 7070</h2>" >> index.html exit # 在8080机器上创建 docker exec -it tomcat8080 /bin/bash cd webapps mkdir balance cd balance echo "<h2>This is index html page for port: 8080</h2>" >> index.html exit # 在9090机器上创建 docker exec -it tomcat9090 /bin/bash cd webapps mkdir balance cd balance echo "<h2>This is index html page for port: 9090</h2>" >> index.html exit ``` ##### 配置Nginx请求转发 修改Nginx的配置文件 ``` cd /usr/local/nginx/conf vim nginx.conf ``` 在HTTP全局块增加一个server块,并增加主机列表 ``` upstream myserver{ server 192.168.1.6:7070 weight=1; server 192.168.1.6:8080 weight=1; server 192.168.1.6:9090 weight=1; } ``` 修改HTTP块下面的server块内容 ``` # 配置server_name的值为Tomcat服务所在机器IP listen 80; server_name 192.168.1.6; ``` 修改server块下面的location 块的转发路径和端口 ``` location / { proxy_pass http://myserver; root html; index index.html index.htm; } ``` 重启Nginx服务并查看效果 ``` cd /usr/local/nginx sbin/nginx -s stop # 启动 sbin/nginx ``` 浏览器输入www.libins.cn/balance/index.html测试 ![](/static/images/article_images/1640414955.732838.jpeg)