文章目录

  • Haproxy群集+Nginx负载均衡+Tomcat
    • 一、Nginx+Tomcat
      • 1、tomcat1搭建
        • 1)准备工作
        • 2)安装JDK,配置tomcat环境变量
          • ①rpm安装JDK
          • ②配置tomcat环境变量
          • ③将tomcat1.sh脚本导入环境变量使其生效
          • ③执行java -version命令查看java版本是否和之前安装的一致
        • 3)安装配置Tomcat1
          • ①解压安装包至指定目录并重命名
          • ②启动tomcat1并查看端口信息
          • ③验证tomcat1配置启动成功
        • 4)建立web站点
          • ①根目录下建立存放网站文件的目录,并建立index.jsp测试页面
          • ②修改tomcat1的主配置文件server.xml
          • ③关闭tomcat1,再重新启动
          • ④验证tomcat站点配置成功
      • 2、Tomcat2\Tomcat3搭建
        • 1)tomcat2搭建(192.168.10.147:8080)
        • 2)tomcat3搭建(192.168.10.147:8081)
          • ①tomcat3复制tomcat2的安装目录并重命名
          • ②建立tomcat3站点测试页面文件
          • ③更改主配置文件server.xml
          • ④验证tomcat3搭建成功
      • 3、Nginx服务
        • 1)Nginx搭建
        • 2)Nginx1配置文件设置
        • 3)验证Nginx1+tomcat负载均衡
        • 4)Nginx2配置文件设置与验证
    • 二、Haproxy+Nginx
      • 1、编译安装Nginx服务器
        • 1)搭建Nginx1
          • ①使用安装包Nginx-1.12.2.tar.gz进行编译安装
          • ② ./configure配置并加载相关功能模块,make && make install编译安装
          • ③make && make install 编译安装
          • ④建立测试界面、启动Nginx服务
          • ⑤验证Nginx1配置成功
        • 2)搭建Nginx2
      • 2、编译安装Haproxy
        • 1)传包、解包、安装编译环境
        • 2)make编译、make install安装
        • 3)Haproxy服务器配置
          • ①建立Haproxy的配置文件
          • ②根据目前的群集设置,修改Haproxy配置文件如下
            • Ⅰ:global配置项修改
            • Ⅱ:defaults配置项修改
            • Ⅲ:listen配置项修改
        • 2)测试高可用
    • 三、验证haproxy+nginx+tomcat
    • 三、验证haproxy+nginx+tomcat

Haproxy群集+Nginx负载均衡+Tomcat

一、Nginx+Tomcat

环境如下

主机 操作系统 IP地址 主要软件
Nginx服务器1 CentsOS7 x86_64 192.168.10.148 nginx-1.12.2.tar.gz
Nginx服务器2 CentsOS7 x86_64 192.168.10.152 nginx-1.12.2.tar.gz
Tomcat服务器1 CentsOS7 x86_64 192.168.10.146 apache-tomcat-9.0.16
Tomcat服务器2 CentsOS7 x86_64 192.168.10.147:8080 apache-tomcat-9.0.16
Tomcat服务器3 CentsOS7 x86_64 192.168.10.147:8081 apache-tomcat-9.0.16

1、tomcat1搭建

1)准备工作

关闭防火墙、核心防护、开机自启;上传安装包

2)安装JDK,配置tomcat环境变量

①rpm安装JDK

②配置tomcat环境变量

③将tomcat1.sh脚本导入环境变量使其生效

③执行java -version命令查看java版本是否和之前安装的一致

3)安装配置Tomcat1

①解压安装包至指定目录并重命名

②启动tomcat1并查看端口信息

③验证tomcat1配置启动成功

浏览器访问测试http://192.168.10.146:8080,出现如下界面表示tomcat1配置启动成功

4)建立web站点

①根目录下建立存放网站文件的目录,并建立index.jsp测试页面

②修改tomcat1的主配置文件server.xml

③关闭tomcat1,再重新启动

④验证tomcat站点配置成功

浏览器访问http://192.168.10.146:8080;出现如下界面则表示tomcat1站点配置成功,并且能运行JSP了。

2、Tomcat2\Tomcat3搭建

tomcat2、tomcat3都搭建在虚拟机192.168.10.147上。

1)tomcat2搭建(192.168.10.147:8080)

tomcat2网页测试文件建立如下:

tomcat2搭建过程同tomcat1,安装目录为/usr/local/tomcat/tomcat2;目录/usr/local/tomcat/tomcat2/webapps/test下的测试网页文件内容为“tomcat2,192.168.10.147:8080”。tomcat2验证搭建成功如下:

2)tomcat3搭建(192.168.10.147:8081)

tomcat3是复制tomcat2的安装目录。

①tomcat3复制tomcat2的安装目录并重命名

②建立tomcat3站点测试页面文件

③更改主配置文件server.xml

同一台服务器要避免端口冲突,更改tomcat3的各端口如下:

22行Server port:

26行Connector port:

116行Connector port

④验证tomcat3搭建成功

浏览器通过8081端口访问http://192.168.10.147:8081,出现如下界面代表搭建成功:

3、Nginx服务

1)Nginx搭建

Nginx安装编译参考第二部分中内容(二、Haproxy+Ngixn)

2)Nginx1配置文件设置

nginx -t命令查看配置文件是否正确

3)验证Nginx1+tomcat负载均衡

脚本验证浏览器访问http://192.168.10.146:1234(Nginx服务器IP),可以看到访问页面在tomcat1、tomcat2、tomcat3之间反复切换。

4)Nginx2配置文件设置与验证

nginx2配置文件设置同Nginx1,验证结果如下:

二、Haproxy+Nginx

环境如下:

主机 操作系统 IP地址 主要软件
Hyproxy服务器 CentsOS7 x86_64 192.168.10.143 haproxy-1.5.19.tar.gz
Nginx服务器1 CentsOS7 x86_64 192.168.10.148 nginx-1.12.2.tar.gz
Nginx服务器2 CentsOS7 x86_64 192.168.10.152 nginx-1.12.2.tar.gz

1、编译安装Nginx服务器

1)搭建Nginx1

①使用安装包Nginx-1.12.2.tar.gz进行编译安装

② ./configure配置并加载相关功能模块,make && make install编译安装

③make && make install 编译安装
④建立测试界面、启动Nginx服务

⑤验证Nginx1配置成功

浏览器访问http://192.168.10.148/test.html进行测试,出现如下图所示Nginx配置成功

2)搭建Nginx2

编译安装过程同Nginx1相同,建立测试页面内容为"this nginx2 server 192.168.10.152"。

安装完成后,在浏览器访问http://192.168.10.152/test.html进行测试,出现如下页面则表示Nginx2配置成功。

2、编译安装Haproxy

1)传包、解包、安装编译环境

2)make编译、make install安装

3)Haproxy服务器配置

①建立Haproxy的配置文件

②根据目前的群集设置,修改Haproxy配置文件如下
Ⅰ:global配置项修改

Ⅱ:defaults配置项修改

Ⅲ:listen配置项修改

③创建自启动脚本、开启Haproxy

3、测试Web集群

1)测试高性能

浏览器打开http://192.168.10.143/test.html,浏览显示信息如下图:

再次打开一个新的浏览器页面访问http://192.168.10.143/test.html,浏览页面如下图:

通过上面可以看到群集负载均衡已经生效,满足了高性能需求。

2)测试高可用

将192.168.10.148的Nginx服务停用,在浏览器打开http://192.168.10.143/test.html,浏览器显示信息同第二次打开显示的信息。

因此,当其中一台节点出现故障时,不会影响群集的使用,满足了群集的高可用性。

三、验证haproxy+nginx+tomcat

浏览器访问haproxy服务器IP,访问界面在tomcat三个服务器之间来回切换,实现负载均衡如下:

三、验证haproxy+nginx+tomcat

浏览器访问haproxy服务器IP,访问界面在tomcat三个服务器之间来回切换,实现负载均衡如下:

[外链图片转存中…(img-oxLJCkQc-1659683997730)]

[外链图片转存中…(img-mYgM225M-1659683997731)]

Haproxy群集+Nginx负载均衡+Tomcat架构搭建相关推荐

  1. Nginx负载均衡+tomcat+session共享

    为什么80%的码农都做不了架构师?>>>    本文,是笔者工作之余写的,第一是把之前打系统框架的步骤记录下来.第二是将这个过程,谈不上经验,奉献给正在撘这种框架遇到各种bug,各种 ...

  2. nginx 负载均衡tomcat

    2019独角兽企业重金招聘Python工程师标准>>> 努力学习,超越自我. nginx是一个高性能http和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.特点是内存占 ...

  3. Nginx负载均衡(架构之路)

    [前言] 在大型网站中,负载均衡是有想当必要的.尤其是在同一时间访问量比较大的大型网站,例如网上商城,新闻等CMS系统,为了减轻单个服务器的处理压力,我们引进了负载均衡这一个概念,将一个服务器的压力分 ...

  4. tomcat服务部署与nginx负载均衡

    中间件产品介绍 ​ 目前来说IBM的WebSphere. Oracle的Weblogic占据了市场上Java语言Web站点的部分份额.该两种软件由于无与伦比的性能及可靠性等优势被广泛应用于大型互联网公 ...

  5. Docker 实战2案列:Nginx 负载均衡

    本篇概要: 1. 搭建 CentOS + Nginx 容器.commit 提交.在容器主机文件互拷: 2. Docker Compose 以及启动多个 Web 容器: 3. Docker networ ...

  6. Nginx系列1: 正向代理和反向代理、Nginx工作原理、Nginx常用命令和升级、搭建Nginx负载均衡

    一.什么是正向代理.什么是反向代理 1. 正向代理,意思是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器 ...

  7. linux window nginx性能,Nginx负载均衡搭建(Window与Linux)

    windows上搭建nginx负载均衡 1.准备几台http服务器软件,这里选用一台apache一台tomcat apache(windows)下载链接:https://www.apachehaus. ...

  8. Nginx系列篇二:linux搭建Nginx负载均衡

    建议先搭建好Nginx环境 可阅读--->Linux中搭建Nginx 1.准备好三台服务器[标配] 一.nginx负载均衡服务器:192.168.102.110,配置好Nginx 二.tomca ...

  9. 关于Tomcat+Nginx负载均衡与Jmeter服务器测压的日记

    Jmeter测压 1.Jmeter-5.1.1下载:http://mirror.bit.edu.cn/apache//jmeter/binaries/apache-jmeter-5.1.1.zip 2 ...

最新文章

  1. OpenBSD 5.2 发布
  2. DLL load failed: 页面文件太小,无法完成操作
  3. java线程并发库之--线程同步工具CountDownLatch用法
  4. A4.2021年全国数学建模竞赛A题-赛题分析与评阅要点(FAST主动反射面的形状调节)
  5. Duplicate复制数据库并创建物理StandBy(spfile+不同实例名+不同路径)
  6. java集合,Collection,list,set,map汇总
  7. python数据存储系列教程——xls文件的读写、追加(xlwt、xlwt、xlutils)
  8. 使用现有模板制作一个简单的H5页面
  9. Flutter高级第1篇:ListView嵌套GridView、不同终端屏幕适配方案
  10. 阿里云oss对象存储:给图片添加(多行)文字图片水印
  11. 微信视频号值不值得去做
  12. 1067 试密码 (20 分)之测试点4分析
  13. G 蛋白偶联受体与小分子化合物的相互作用
  14. 古墓丽影:崛起 PC版今日发售
  15. 《深入理解计算机系统》:Cache Lab
  16. 公众号批量移动用户分组
  17. 韩国仁川机场乐天免税店买买买!
  18. 阿里云域名解析网络和服务架构设计(三) 之阿里云CLB负载均衡
  19. ctfshow web入门 XXE web373~web378
  20. 【动画版】数据结构-B树【宁哥算法课堂】

热门文章

  1. Spark07:【案例】Transformation和Action
  2. 【C语言总结】C语言字符串、字符和字节
  3. 我明白,我的爱,只是一种无限期的等待,也不会有你的归来
  4. item_password-获得淘口令真实url-返利API
  5. 魅族手机:通讯社交类应用今日使用已超时,请明日再用
  6. 第1关:Hbase数据库的安装
  7. PHP ramdisk,linux ramdisk 配置
  8. 玩转ChatGPT:Excel操作初探
  9. jQuery的事件与动画
  10. 牛客国庆集训派对Day5 B 电音之王(CCPC_CAMP) 黑科技-蒙哥马利快速乘