Nginx和Tomcat集群部署

目录

1.安装规划

2.系统概述

  2.1 硬件

2.2软件

2.3安装顺序

3.软件获取

3.1Tomcat下载

3.2Nginx下载

4.Tomcat安装

4.1JAVA环境配置

4.2 Tomcat安装

4.2.1 Tomcat端口修改

4.2.2 启动tomcat

5.Nginx安装

5.1 nginx安装

5.2 nginx配置文件修改

5.3 nginx启动

5.4 nginx关闭

6.Nginx静态文件部署

7.Nginx反向代理

8 Nginx集群部署和负载均衡

 

1安装规划

为软件项目部署到多台服务器搭建集群环境

需要准备一台代理服务器和数台普通服务器

静态资源部署在代理服务器上,动态资源部署在普通服务器上。

操作系统为window2003 或以上(以window10展示)

2系统概述

2.1 硬件

硬件要求不低于以下配置:

 

CPU        Intel至强E5400系列CPU

RAM       1G 1333MHz

DISK       20G以上

2.2软件

   Nginx1.12.2 

   Tomcat7.x

2.3安装顺序

1.在普通服务器安装Tomcat

2.在代理服务器安装nginx

3.软件获取

3.1Tomcat下载

访问https://tomcat.apache.org/

然后再左侧Download栏下选择Tomcat 7


然后在下方选择zip格式,点击浏览器则提示下载


3.2Nginx下载

访问http://nginx.org/  选择nginx稳定版下载



4.Tomcat安装

4.1JAVA环境配置(已经安装jdk并配置好的可以跳过)

首先访问http://www.oracle.com/technetwork/java/javase/downloads/index.html选择JDK SE或者JDK EE进行下载(过程忽略)

然后安装好JDK后在“我的电脑”右键 “属性” 点击左侧高级系统设置然后点击底部环境变量,然后选择系统变量下的新建,在变量名输入JAVA_HOME,然后变量值输入jdk的安装路径或者用浏览目录选择,最后点确定。JDK环境配置完成(用CMD输入java然后回车检查是否安装成功),如果还有问题请查看百度https://jingyan.baidu.com/article/6dad5075d1dc40a123e36ea3.html



4.2 Tomcat安装

Java环境配置好之后,解压下载好的tomcat压缩包,tomcat可以在一台服务器(或者PC)上部署多个,只需要解压即可。但是多个tomcat要一起运行,必须改变配置信息。


4.2.1 Tomcat端口修改

打开tomcat文件夹,找到conf文件夹下的server.xml,以记事本方式打开。

按图片步骤修改端口号(不要与其他程序软件冲突)


4.2.2 启动tomcat

修改好配置文件后就可以启动tomcat了。打开tomcat文件夹下的bin目录找到startup.bat(Linux是startup.sh),双击启动。(同一台服务器运行多个tomcat需要配置CATALINA_HOME,配置方法和JAVA_HOME类似)


在浏览器中输入http://localhost:端口号/   然后回车进入下面界面即tomcat正常启动了


注意:不要关闭这个窗口,否则tomcat会一起关闭。

Tomcat的日志文件放在tomcat下的log文件夹下的catalina.时间.log每天生成一个日志文件,如果无法启动或者运行出错请查看日志。

4.2.3 项目部署

方法一,先将项目文件打包成war包,然后把.war文件放置到tomcat文件夹下的webapps文件夹中,再次启动tomcat时会自动解压运行(tomcat运行起来后可以删除.war文件了)。

方法二,将项目文件自己放置到tomcat文件夹下的webapps文件夹中,再次启动tomcat项目就会运行了。

此外,静态文件也可以放置在webapps下提供给外部访问,但一般静态文件都有专门的服务器去存放。

5 nginx安装

5.1 nginx安装

Nginx的安装和tomcat相似,只需要解压即可,同样可以一台服务器上安装多个nginx(同样要修改端口防止冲突,方法在部署中会提到)

注意:nginx的安装目录不能有中文,否则会启动失败

 

5.2 nginx配置文件修改

Nginx的配置文件在nginx/conf/nginx.conf以记事本方式打开即可修改

如图修改端口


5.3 nginx启动

双击nginx.exe即可启动,启动后无窗口(启动时有窗口闪一下)。打开任务管理器查看


上图两个nginx.exe说明nginx已经启动成功,访问http://服务访问名:端口号/  即可看到nginx欢迎界面


如果任务管理器没有找到nginx的服务则在nginx/logs/error.log查看错误  


5.4 nginx关闭

要关闭nginx需要在任务管理器关闭nginx.exe的进程树就可以了。

6 nginx静态文件部署

网页项目的图片和静态网页等静态资源可以放在nginx上访问

只需要在nginx.conf中修改location属性


然后就可以通过http://服务访问名:端口名/文件名访问了。


7 nginx反向代理

使用nginx进行反向代理其实很简单,只需要在nginx.conf里面配置好数台普通服务器ip就可以了。

首先打开nginx.conf,配置多个server,给予不同listen。

给每个server添加porxy_pass属性。

例如

   server {

       listen       80;

       location / {

           proxy_pass http://localhost:8080/;

       }

    }

 server {

       listen       81;

       location / {

           proxy_pass  http://www.baidu.com/;

        }

}

这样就可以通过http://localhost:80/访问http://localhost:8080/

通过http://localhost:81/ 访问http://www.baidu.com/


注意:以上因为是一台电脑演示的,所以都用localhost,

实际上应用http://代理服务器域名或IP:端口号/ 去访问


8 nginx集群部署和负载均衡

一般一个大的系统都会采用分布式来部署在机房中的数个服务器中,这时就需要一个代理来分发请求给各个服务器,用nginx代理只需要修改一下配置文件nginx.conf 就行了。

首先项目需要拷贝到各个普通服务器的tomcat中运行,并得到它们的访问地址

然后将访问地址配置到代理服务器的nginx中

例如将a.txt放置到三个tomcat中,然后用nginx代理转发

  server{

   listen  80;

   server_namelocalhost;

   upstreambakend{ }{

   server127.0.0.1:8080 weight=2;

   server 127.0.0.1:8081 weight=4;

   server127.0.0.1:8082 weight=1;

   }

   location /  {

   proxy_passhttp://bakend;

   }

 }

当用浏览器多次访问http://localhost:80/a.txt 时,会访问到三个服务器不同的页面


但是并不是每个服务器访问到的概率都是一样的,在地址后面加上weight属性即可赋予权值,权值越高越容易被访问到,使性能高的服务器多干活,性能低的服务器少干活。



  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值