Linux-部署Tomcat及其负载均衡

简介: Linux-部署Tomcat及其负载均衡

简介:Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。


发展历史:Tomcat最初是由Sun的软件架构师詹姆斯·邓肯·戴维森开发的。后来他帮助将其变为开源项目,并由Sun贡献给Apache软件基金会。

一,部署tomcat

       1.安装tomcat之前必须先安装JDK,检查JDK是否安装

java -version

2.安装配置tomcat ,启动tomcat服务

[root@localhost ~]# tar zxf /mnt/apache-tomcat-8.5.16.tar.gz
[root@localhost ~]# mv apache-tomcat-8.5.16/ /usr/local/tomcat8
启动tomcat
[root@localhost ~]# /usr/local/tomcat8/bin/startup.sh 
Using CATALINA_BASE:   /usr/local/tomcat8
Using CATALINA_HOME:   /usr/local/tomcat8
Using CATALINA_TMPDIR: /usr/local/tomcat8/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/local/tomcat8/bin/bootstrap.jar:/usr/local/tomcat8/bin/tomcat-juli.jar
Tomcat started.

tomcat配置说明

[root@localhost ~]# cd /usr/local/tomcat8/
[root@localhost tomcat8]# ll
总用量 92
drwxr-x---. 2 root root  4096 8月  29 15:05 bin
drwx------. 3 root root   254 8月  29 15:05 conf
drwxr-x---. 2 root root  4096 8月  29 15:05 lib
-rw-r-----. 1 root root 57092 6月  22 2017 LICENSE
drwxr-x---. 2 root root   197 8月  29 15:05 logs
-rw-r-----. 1 root root  1723 6月  22 2017 NOTICE
-rw-r-----. 1 root root  7064 6月  22 2017 RELEASE-NOTES
-rw-r-----. 1 root root 15946 6月  22 2017 RUNNING.txt
drwxr-x---. 2 root root    30 8月  29 15:05 temp
drwxr-x---. 7 root root    81 6月  22 2017 webapps
drwxr-x---. 3 root root    22 8月  29 15:05 work

主要目录说明:


bin:存放windows或Linux平台上启动和关闭tomcat的脚本文件

conf:存放tomcat服务器的各种全局配置文件,其中server.xml和web.xml

lib:存放tomcat运行需要的库文件

logs:存放tomcat执行时的LOG文件

webapps:tomcat的主要web发布目录

work:存放JSP编译后产生的class文件


配置文件说明:

[root@localhost conf]# ll
总用量 224
drwxr-x---. 3 root root     23 8月  29 15:05 Catalina
-rw-------. 1 root root  13816 6月  22 2017 catalina.policy
-rw-------. 1 root root   7376 6月  22 2017 catalina.properties
-rw-------. 1 root root   1338 6月  22 2017 context.xml
-rw-------. 1 root root   1149 6月  22 2017 jaspic-providers.xml
-rw-------. 1 root root   2358 6月  22 2017 jaspic-providers.xsd
-rw-------. 1 root root   3622 6月  22 2017 logging.properties
-rw-------. 1 root root   7511 6月  22 2017 server.xml
-rw-------. 1 root root   2164 6月  22 2017 tomcat-users.xml
-rw-------. 1 root root   2633 6月  22 2017 tomcat-users.xsd
-rw-------. 1 root root 168251 6月  22 2017 web.xml


catalina.policy:权限控制配置文件

catalina.properties:tomcat属性配置文件

contest. xml:上下文配置文件

logging.properties:日志log相关配置文件

server.xml:主配置文件

tomcar-users.xml:manager-gui管理用户配置文件

web.xml:tomcat的servlet,servlet-mapping,filter,MIME等相关配置

tomcat主配置文件说明

server.xml结构构成:<Server>,<Service>,<Connector>,<Engine>,<Host>,<Context>

二, 案例:Nginx+Tomcat负载均衡群集

目的:使用nginx服务器调用两台tomcat服务器,实现负载均衡群集


实验环境:


1.部署tomcat两台相同

1.关闭防火墙

2.确认是否安装JDK

3.安装配置Tomcat

4.创建/web/webapp1,修改tomcat配置文件server.xml,将网站文件目录更改到/web/webapp1路径下。

5.在/web/sebapp1/路径下建立index.jsp,为了区别将测试页面index.jsp的内容改为不同的内容

在webapp1目录下建立一个index.jsp的测试页面

1. mkdir -p /web/webapp1
2. echo "tomcat-server-01" > /web/webapp1/index.jsp

修改Tomcat的server.xml文件

root@demo ~]# vim /usr/local/tomcat/conf/server.xml 
  <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
        <Context docBase="/web/webapp1/" path="" reloadable="false"></Context>

部署Nginx服务器配置

1.安装相关软件

yum -y install pcre-devel zlib-devel openssl-devel

2.解压并安装Nginx

[root@localhost ~]# groupadd www
[root@localhost ~]# useradd -g www www -s /sbin/nologin 
[root@localhost ~]# tar zxf /mnt/nginx-1.12.0.tar.gz -C /usr/src/
[root@localhost ~]# cd /usr/src/nginx-1.12.0/
[root@localhost nginx-1.12.0]# ./configure --prefix=/usr/local/nginx --user=www --group=www --with-file-aio --with-http_stub_status_module  --with-http_gzip_static_module  --with-http_flv_module
[root@localhost nginx-1.12.0]# make && make install

--user=www:指定运行用户

--group=www:指定运行组

--with-file-aio:启用文件修改支持

--with-http_stub_status_module: 启用状态统计

--with-http_gzip_static_module:启动gzip静态压缩

--with-http_flv_module:启动flv模块,提供寻求内存使用基于时间的偏移量文件

--with-http_ssl_module:启动ssl模块

3.配置nginx.conf

[root@localhost nginx-1.12.0]# vim /usr/local/nginx/conf/nginx.conf
http {
    upstream tomcat_server {
        server 192.168.2.1:8080 weight=1;
        server 192.168.2.2:8080 weight=1;
        }
    server {
        listen       80;
        server_name  localhost;
        #charset koi8-r;
        #access_log  logs/host.access.log  main
        location / {
            root   html;
            index  index.html index.htm;
            proxy_pass http://tomcat_server;
        }
}

4.测试Nginx配置文件是否正确

[root@localhost nginx-1.12.0]# /usr/local/nginx/sbin/nginx  -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

5.启动Nginx服务

[root@localhost nginx-1.12.0]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

6.查看Nginx服务进程

[root@localhost nginx-1.12.0]# ps aux | grep nginx
root       9413  0.0  0.1  45388  1112 ?        Ss   01:23   0:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
www        9415  0.0  0.1  47912  1968 ?        S    01:23   0:00 nginx: worker process
root       9425  0.0  0.0 112664   956 pts/0    R+   01:23   0:00 grep --color=auto nginx
[root@localhost nginx-1.12.0]# netstat -anpt | grep nginx
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      9413/nginx: master  

查看nginx服务器地址,查看负载均衡情况

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
目录
相关文章
|
11月前
|
NoSQL 关系型数据库 Linux
ERPNext 搭建教程:Linux 一键部署与维护
ERPNext 是一款开源免费的企业资源计划系统,适用于中小企业信息化管理。基于 Python 和 Frappe 框架开发,支持财务、销售、人力、库存等模块,具备高度可定制性。本文介绍如何通过 Websoft9 在 Linux 下快速部署 ERPNext,并提供环境配置、系统维护等实用建议,适合开发者和企业用户快速上手。
2022 7
ERPNext 搭建教程:Linux 一键部署与维护
|
监控 Linux 应用服务中间件
Linux多节点多硬盘部署MinIO:分布式MinIO集群部署指南搭建高可用架构实践
通过以上步骤,已成功基于已有的 MinIO 服务,扩展为一个 MinIO 集群。该集群具有高可用性和容错性,适合生产环境使用。如果有任何问题,请检查日志或参考MinIO 官方文档。作者联系方式vx:2743642415。
3914 57
|
11月前
|
Java Linux 网络安全
Linux云端服务器上部署Spring Boot应用的教程。
此流程涉及Linux命令行操作、系统服务管理及网络安全知识,需要管理员权限以进行配置和服务管理。务必在一个测试环境中验证所有步骤,确保一切配置正确无误后,再将应用部署到生产环境中。也可以使用如Ansible、Chef等配置管理工具来自动化部署过程,提升效率和可靠性。
1003 13
|
Java 关系型数据库 MySQL
在Linux平台上进行JDK、Tomcat、MySQL的安装并部署后端项目
现在,你可以通过访问http://Your_IP:Tomcat_Port/Your_Project访问你的项目了。如果一切顺利,你将看到那绚烂的胜利之光照耀在你的项目之上!
586 41
|
11月前
|
关系型数据库 Linux Nacos
Rocky Linux 部署 Docker 和 NACOS 实例
本文介绍在阿里云环境下基于 Rocky Linux 搭建 Docker 并部署 Nacos 的完整流程。涵盖 Docker 安装、镜像加速配置、网络设置及 MySQL 与 Nacos 容器的创建,适用于开发与生产环境。
1366 1
|
10月前
|
Java jenkins 应用服务中间件
结合Jenkins与Tomcat,实施Maven项目的自动构建和部署流程。
任何项目构建和部署的自动化流程,总离不开对各个环节精细把控与密切配合。涉及到源代码管理、构建工具、持续集成服务器以及最终的运行时环境的协调。通过上述简洁实用的步骤,可以实现Maven项目从源代码到运行状态的无缝过渡,进而提升软件开发的效率与质量。
507 0
|
开发框架 Java 关系型数据库
在Linux系统中安装JDK、Tomcat、MySQL以及部署J2EE后端接口
校验时,浏览器输入:http://[your_server_IP]:8080/myapp。如果你看到你的应用的欢迎页面,恭喜你,一切都已就绪。
814 17
|
Java 关系型数据库 MySQL
在Linux操作系统上设置JDK、Tomcat、MySQL以及J2EE后端接口的部署步骤
让我们总结一下,给你的Linux操作系统装备上最强的军队,需要先后装备好JDK的弓箭,布置好Tomcat的阵地,再把MySQL的物资原料准备好,最后部署好J2EE攻城车,那就准备好进军吧,你的Linux军团,无人可挡!
498 18
|
关系型数据库 MySQL Java
安装和配置JDK、Tomcat、MySQL环境,以及如何在Linux下更改后端端口。
遵循这些步骤,你可以顺利完成JDK、Tomcat、MySQL环境的安装和配置,并在Linux下更改后端端口。祝你顺利!
683 11