设为首页 收藏本站
查看: 732|回复: 0

[经验分享] 部署tomcat及负载均衡群集

[复制链接]

尚未签到

发表于 2018-11-29 12:47:33 | 显示全部楼层 |阅读模式
Tomcat Server的组成部分
  1 - Server

A Server element represents the entire Catalina servlet container. (Singleton)
  2 - Service

A Service element represents the combination of one or more Connector components that share a single Engine
Service是这样一个集合:它由一个或者多个Connector组成,以及一个Engine,负责处理所有Connector所获得的客户请求

  3 - Connector

一个Connector将在某个指定端口上侦听客户请求,并将获得的请求交给Engine来处理,从Engine处获得回应并返回客户
TOMCAT有两个典型的Connector,一个直接侦听来自browser的http请求,一个侦听来自其它WebServer的请求
Coyote Http/1.1 Connector 在端口8080处侦听来自客户browser的http请求
Coyote JK2 Connector 在端口8009处侦听来自其它WebServer(Apache)的servlet/jsp代理请求

  4 - Engine

The Engine element represents the entire request processing machinery associated with a particular Service
It receives and processes all requests from one or more Connectors
and returns the completed response to the Connector for ultimate transmission back to the client
Engine下可以配置多个虚拟主机Virtual Host,每个虚拟主机都有一个域名
当Engine获得一个请求时,它把该请求匹配到某个Host上,然后把该请求交给该Host来处理
Engine有一个默认虚拟主机,当请求无法匹配到任何一个Host上的时候,将交给该默认Host来处理

  5 - Host

代表一个Virtual Host,虚拟主机,每个虚拟主机和某个网络域名Domain Name相匹配
每个虚拟主机下都可以部署(deploy)一个或者多个Web App,每个Web App对应于一个Context,有一个Context path
当Host获得一个请求时,将把该请求匹配到某个Context上,然后把该请求交给该Context来处理
匹配的方法是“最长匹配”,所以一个path==""的Context将成为该Host的默认Context
所有无法和其它Context的路径名匹配的请求都将最终和该默认Context匹配

  6 - Context

一个Context对应于一个Web Application,一个Web Application由一个或者多个Servlet组成
Context在创建的时候将根据配置文件$CATALINA_HOME/conf/web.xml和$WEBAPP_HOME/WEB-INF/web.xml载入Servlet类
当Context获得请求时,将在自己的映射表(mapping table)中寻找相匹配的Servlet类
如果找到,则执行该类,获得请求的回应,并返回

  Tomcat目录
tomcat
|---bin Tomcat:存放启动和关闭tomcat脚本;
|---confTomcat:存放不同的配置文件(server.xml和web.xml);
|---doc:存放Tomcat文档;
|---lib/japser/common:存放Tomcat运行需要的库文件(JARS);
|---logs:存放Tomcat执行时的LOG文件;
|---src:存放Tomcat的源代码;
|---webapps:Tomcat的主要Web发布目录(包括应用程序示例);
|---work:存放jsp编译后产生的class文件;

-
Web应用服务器的选择
IBM的WebSphere及Oracle的WebLogic
性能高,但价格也高
Tomcat
性价比高


Nginx+Tomcat网站拓扑架构

http://i2.运维网.com/images/blog/201801/20/d00da1a646c710918215ec358daad906.png
  主机要求
使用3台虚拟机
操作系统为CentOS 6.5 x86_64

http://i2.运维网.com/images/blog/201801/20/e623a1a47da1bd6e97e37bedfb295d94.png
  -
配置防火墙规则

iptables  -A INPUT  -p tcp –-dport  80 –j ACCEPT
iptables  -A OUPUT  -p tcp –-sport  80 –j ACCEPT
iptables  -A INPUT  -p tcp –-sport  8080 –j ACCEPT
iptables  -A OUPUT  -p tcp –-dport  8080 –j ACCEPT
-
安装jdk
http://i2.运维网.com/images/blog/201801/20/42c051d0413bc87d3f1c44b60145a394.png


建立就java.sh脚本
http://i2.运维网.com/images/blog/201801/20/fb26a7f4db7cd80678ec8a113e344e74.png


http://i2.运维网.com/images/blog/201801/20/f8bacdb1709ca89645c32608596c7f2d.png

将java.sh脚本导入到环境变量。
http://i2.运维网.com/images/blog/201801/20/8f1bb8db15bafc147f616f0d799d5259.png


安装配置tomcat
解压apache-tomcat包

http://i2.运维网.com/images/blog/201801/20/4556186b72fab4424cfaf65e253be036.png


启动tomcat
http://i2.运维网.com/images/blog/201801/20/f8e518dc06462ef536dd63f7c67ac28e.png


在浏览器上测试http://localhost:8080
http://i2.运维网.com/images/blog/201801/20/6f9017d640ea56cc7198c2e98430afae.png
注意:如果想关闭tomcat,运行/usr/local/tomcat7/bin/shutdown.sh命令


建立java的web站点
建立一个web目录,并在里面建立一个webapp1目录,用于存放网站文件。

http://i2.运维网.com/images/blog/201801/20/14e192fdf3df3c63a166f817c779bd94.png


建立index.jsp的测试页面

http://i2.运维网.com/images/blog/201801/20/3cf5b6decb5ddc37293c0f3fa26418d6.png


http://i2.运维网.com/images/blog/201801/20/042db92cc54a9d0ca78db8639a9b92a9.png

修改tomcat的server.xml文件
在host区域里面添加以下内容即可

http://i2.运维网.com/images/blog/201801/20/b65247c8c6a6eeee122253e3af550724.png


http://i2.运维网.com/images/blog/201801/20/883518b53807f81750d110133aa415dc.png

关闭tomcat服务,然后再启动
http://i2.运维网.com/images/blog/201801/20/28e9032221b189f93560be99391e0184.png


浏览网页http://localhost:8080
http://i2.运维网.com/images/blog/201801/20/0feb3c7b2a4913f7a05b2d27940da118.png

  -
搭建nginx+tomcat负载均衡群集
http://i2.运维网.com/images/blog/201801/20/3663052a805871495e91183ed42082ef.png

Tomcat1已经搭建好了tomcat2同1一样,为了区分不同的服务器,把第二台的网页改为内容www.test2.com

插入centos光盘,删除之前默认存在的几个yum文件配置一个yum仓库,然后安装下面的相关软件包
http://i2.运维网.com/images/blog/201801/20/2dc9a5d99f0188cd2b526101479e6f34.png


http://i2.运维网.com/images/blog/201801/20/759995ec1769a5b5cb5dc99340041dc5.png

http://i2.运维网.com/images/blog/201801/20/84fe1e77edeec1dceb1a448a2cfd49b0.png

建立用户和组,编译安装nginx
http://i2.运维网.com/images/blog/201801/20/36e59d411d03664e6d586281ce725a74.png


http://i2.运维网.com/images/blog/201801/20/20510a727fb0bd9ef39c110c84fedf5c.png

修改nginx配置文件,添加以下内容
首先在http{......}中加入下面代码,设定负载均衡的服务器列表。

http://i2.运维网.com/images/blog/201801/20/bfc3dcff0d854341b227650c385302fe.png


http://i2.运维网.com/images/blog/201801/20/abb1b6a12f806f7448b92178676c667e.png

然后在http{......}里面的server{......}里面的location{......}中加入一行
http://i2.运维网.com/images/blog/201801/20/1d8bc4a579c4e20d2ddd8060c02f98c4.png


测试nginx配置文件是否正确
执行/usr/local/nginx/sbin/nginx  -t
出现下面的信息表示正确

启动nginx服务


查看端口netstat -anpt | grep nginx
http://i2.运维网.com/images/blog/201801/20/57e739ea1e6b5b24c581695a3b4dafa2.png


测试负载均衡效果
打开浏览器访问http://192.168.1.#
不断刷新浏览器测试,可以看到由于权重相同,页面会反复在以下两个页面来回切换,说明负载均衡群集搭建成功。

http://i2.运维网.com/images/blog/201801/20/36f5f636553770668f2b57ba11f4842b.png






运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-641183-1-1.html 上篇帖子: tomcat session会话复制 下篇帖子: Tomcat开启JMX服务
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表