玩转Linux系统之搭建Nginx+Tomcat群集实现负载均衡

Posted Friends of the wind

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了玩转Linux系统之搭建Nginx+Tomcat群集实现负载均衡相关的知识,希望对你有一定的参考价值。

在这里插入图片描述

理论

提示:理论是基础,对搭建最优平台架构有帮助。

1、tomcat是免费的开放源代码的web应用服务器 属于轻量级应用服务器,是开发和调试jsp程序的首选。一般来说,具有处理html页面的功能。
2、性价比高 在中小型系统和并发访问用户不是很多的场合下被普遍使用
3、处理html的能力远不及apache或者nginx 所以,tomcat通常是作为一个servlet和jsp容器,单独运行在后端。


搭建nginx+Tomcat群集

提示:可以有多种方式,为便于理解介绍比较简单的一种。
环境:在这里插入图片描述
1、搭建 基础环境

(1)防火墙策略配置

配置防火墙规则,允许Nginx服务、Tomcat服务流量通过。
Nginx服务器防火墙规则
在这里插入图片描述
Tomcat服务器防火墙规则
在这里插入图片描述
(2)服务器配置静态ip地址(建议使用脚本,集群环境,效率第一

编辑脚本:[root@localhost ]# vim ip.sh

#!/bin/bash
sed -i '2c BOOTPROTO=static'   /etc/sysconfig/network-scripts/ifcfg-ens33
sed -i '17c ONBOOT=yes'   /etc/sysconfig/network-scripts/ifcfg-ens33
sed -i '17a IPADDR=192.168.1.2'  /etc/sysconfig/network-scripts/ifcfg-ens33
ifdown ens33;ifup ens33

内容如下图:其他两台省略,方法类似,更改脚本ip地址参数即可!
在这里插入图片描述

查看脚本执行结果:
在这里插入图片描述
查看运行环境是否支持:
在这里插入图片描述
2、 Tomcat服务器配置
Tomcat服务器1
(1)以x-shell远程登录配置为例:上传软件包
在这里插入图片描述
(2)解压
[root@localhost ~]# tar xf apache-tomcat-8.5.16.tar.gz -C /usr/src/

(3)进入解压目录,移动并重命名
[root@localhost ~]# cd /usr/src/
[root@localhost src]# mv apache-tomcat-8.5.16/ /usr/local/tomcat8

(4)建立java的web站点

首先在创建web目录

[root@localhost src]# mkdir -p /web/webapp1

建立index.jsp的测试页面
内容自定为测试方便,写的是web 1 OK
[root@localhost src]# vim /web/webapp1/index.jsp

修改tomcat的server.xml配置文件,以添加对站点目录的支持(实际目录是什么就添什么,图片仅供参考)。

[root@localhost src]# vim /usr/local/tomcat8/conf/server.xml
在这里插入图片描述
(5)启动Tomcat
[root@localhost src]# /usr/local/tomcat8/bin/startup.sh
以下提示,表示启动成功
在这里插入图片描述
Tomcat服务器2方法类似,省略,注意:测试页面内容不要写成一样,我写的是web 2 ok
在管理员主机验证Tomcat(如果没设置网关,IP地址需要和服务器端保持同一网段)
在这里插入图片描述

在这里插入图片描述

3、 Nginx服务器配置
在这里插入图片描述
4、验证:访问nginx服务器是否达到负载均衡效果
在这里插入图片描述


常见错误

提示:这些是常见的错误,请留意。
1、 防火墙规则未配置,且处于开启状态。
2、配置文件,命令之间分隔不正确,多空格、少空格,或字母打错
启动不了服务,通常会有报错提示,第几行没有找到期待的值等等,只要改正就可以。
注意:从Windows复制的命令直接粘贴Linux系统配置文件,也会报错。但是,您的配置,是正确的,怎么办?
由于Linux系统与Windows系统的字符格式是不一样的,所以还是手动填写为妙。
3、 IP地址冲突,手工配置的如果发生冲突,就会启用默认地址策略,分配另一个地址,导致Nginx服务网页无法访问。
典型表现:Nginx服务器本地可以访问,其他设备无法访问
在这里插入图片描述
将冲突的地址改过来,重新加载Nginx服务
[root@localhost nginx-1.12.0]# killall -s HUP nginx
问题解决。

总之,错误并不可怕,关键是我们需要建立系统的标准化流程,按照一定规则来写,就能将其降到最低,更高效的完成工作任务。

以上是关于玩转Linux系统之搭建Nginx+Tomcat群集实现负载均衡的主要内容,如果未能解决你的问题,请参考以下文章

玩转Linux系统之shell脚本轻松搭建LNMP平台架构

玩转Linux之Haproxy搭建群集

linux之tomcat+memcache+nginx的服务搭建

玩转Linux系统之轻松搭建Mysql读写分离集群

玩转Linux系统之轻松搭建Redis集群

玩转Linux系统之轻松搭建Mysql主从复制集群