有时部署项目时使用多个应用服务器做负载均衡,这里使用多个Tomcat做负载。
服务器环境: CentOS 6.5
Tomcat目录: /usr/local
Tomcat目录下有tomcat1、tomcat2、tomcat3、tomcat4 四个tomcat实例。
tomcat实例的命名规则: tomcat${i}
1. 新建一个shell文件命名为 tomcat.sh
#!/bin/bash # Apache Tomcat daemon # # chkconfig: 345 10 10 # description: Apache Tomcat daemon # # processname: tomcat export JAVA_HOME=/usr/local/java/jdk1.7.0_80 #define variables tom="/usr/local/tomcat" startup_bin="bin/startup.sh" shutdown_bin="bin/shutdown.sh" usage="{p2|p3|all} {start|stop|restart|status}" dev="/dev/null" #judge $1 $2 whether null if [ "$1" == "" -o "$2" == "" ];then echo echo "Usage: $0 $usage" echo exit 1 fi #judge $1 case $1 in "p3") tomcats="1 2 3" ;; "p2") tomcats="1 2" ;; "all") tomcats="1 2 3 4" ;; *) echo "Usage: $0 $usage" ;; esac #define start function tomcatstart() { for i in $tomcats do tom_home="$tom$i" run_status=$(ps -ef | grep -v 'grep' | egrep "java.*=${tom_home}") if [ "${run_status}X" != "X" ];then echo "tomcat$i is already running..." else ${tom_home}/${startup_bin} &>$dev echo "tomcat$i starting,Please wait 2s..." sleep 2 fi done } #define stop function tomcatstop() { for j in $tomcats do tom1_home="$tom$j" run1_status=$(ps -ef | grep -v 'grep' | egrep "java.*=${tom1_home}") if [ "${run1_status}X" == "X" ];then echo "tomcat$j is not running..." else ${tom1_home}/${shutdown_bin} &>$dev echo "tomcat$j stopping,Please wait 2s..." sleep 2 fi done } #define restart function tomcatrestart() { for m in $tomcats do tom2_home="$tom$m" run2_status=$(ps -ef | grep -v 'grep' | egrep "java.*=${tom2_home}") if [ "${run2_status}X" == "X" ];then echo "tomcat$m is not running..." ${tom2_home}/${startup_bin} &>$dev echo "tomcat$m starting,Please wait 2s..." sleep 2 else ${tom2_home}/${shutdown_bin} &>$dev echo "tomcat$m stopping,Please wait 2s..." sleep 2 ${tom2_home}/${startup_bin} &>$dev echo "tomcat$m starting,Please wait 2s..." sleep 2 fi done } #define status function tomcatstatus() { for n in $tomcats do tom3_home="$tom$n" run3_status=$(ps -ef | grep -v 'grep' | egrep "java.*=${tom3_home}") if [ "${run3_status}X" == "X" ];then echo "tomcat$n is not running..." else echo "tomcat$n is running" fi done } #judge $2 case $2 in "start") tomcatstart ;; "stop") tomcatstop ;; "restart") tomcatrestart ;; "status") tomcatstatus ;; *) echo "Usage: $0 $usage" ;; esac
2. 修改文件tomcat.sh的权限,更改为可执行
chmod +x tomcat.sh
3. 启动tomcat命令
比如想启动tomcat1和tomcat2两个实例:
./tomcat.sh p2 start
停止命令:
./tomcat.sh p2 stop
4. 把tomcat脚本配置为系统服务
cp tomcat.sh /etc/init.d/tomcat sudo chkconfig --add /etc/init.d/tomcat
查看是否已添加进服务列表
chkconfig --list
添加到服务以后, 就可以这样以服务方式来启动和停止、重启tomcat了。
service tomcat p2 start
相关推荐
### 四、编写Tomcat启动脚本 在创建的文件中,我们定义了一系列环境变量,包括 `CATALINA_BASE`, `CATALINA_HOME`, `CATALINA_TMPDIR`, 和 `JRE_HOME`。这些变量指向了Tomcat及其相关Java运行环境的具体位置。接着...
这个"shell脚本远程启动其他服务器的tomcat传输文件自动登录判断启动停止"的方案,就是一种典型的自动化运维实践,它结合了多个核心工具和技术,包括shell脚本、expect、ssh以及scp,用于实现远程服务器管理与文件...
在Linux环境下启动多个Tomcat服务器是一项常见的需求,尤其是在开发、测试或生产环境中,为了实现不同应用的隔离或者负载均衡,企业级项目往往需要部署多个独立的Tomcat实例。以下将详细解析如何在Linux系统中成功...
本文将深入探讨如何使用Ant工具进行远程调用Shell脚本,以启动Linux服务器上的Tomcat应用服务器。Ant是一个基于Java的任务执行工具,常用于构建和管理Java项目。而Tomcat是一款广泛使用的开源Servlet容器,适用于...
如果看到类似“Server startup in XXX ms”这样的日志信息,则表示Tomcat启动成功。 #### 二、关闭Tomcat 关闭Tomcat同样可以通过执行位于bin目录下的脚本来完成。 1. **进入Tomcat的bin目录**: ```bash cd /...
针对标题"Linux安装Tomcat Shell脚本",描述中提到的是一站式脚本,涵盖了安装Tomcat、配置JDK以及创建Tomcat用户等多个步骤。接下来,我们将深入探讨这些知识点。 **一、Linux Shell脚本** Shell脚本是Linux系统...
Linux 系统、Tomcat、重启、shell 脚本这些标签都是与本文相关的关键词,涵盖了 Linux 操作系统、Apache Tomcat 服务器、重启机制和 shell 脚本编程等多个方面的知识点。 部分内容解释 本文提供的 shell 脚本用于...
对于大型应用,可能会使用多个Tomcat实例组成集群,通过负载均衡器分配请求,实现高可用性和性能提升。 总结,`Tomcat停止与启动shell`涉及到的IT知识点主要包括Tomcat的基本操作、自定义脚本的编写、环境变量配置...
本篇文章将深入讲解如何在Linux环境下部署SpringBoot(SpringCloud)项目,并启动多个jar文件,以及如何通过shell脚本来实现日志管理和服务控制。 首先,SpringBoot是一个基于Spring框架的轻量级开发工具,它内置了...
于JAVA开发项目 随着服务的越来越多 配置文件更是眼花缭乱 每次不知道因为配置问题浪费多少时间 更不知道因为配置问题出过多少问题 多台服务器来回切换 如果服务需要依赖 启动更是问题 功能:一次修改 统一安装;...
例如,一个简单的启动Tomcat的shell脚本可以这样写: ```bash #!/bin/bash # 定义Tomcat路径 CATALINA_HOME=/path/to/tomcat # 检查Tomcat是否已运行 if [ $(ps aux | grep -c "[t]omcat") -gt 1 ]; then echo ...
Linux 多tomcat服务 统一安装 统一部署 工具 shell编写 1 引言 基于JAVA开发项目,随着服务的越来越多,配置文件更是眼花缭乱,每次不知道因为配置问题浪费多少时间,更不知道因为配置问题出过多少问题。多台...
Linux 单个tomcat多实例部署shell脚本详解 步骤: 1. 下载tomcat,解压安装 2.将tomcat下的webapps,conf,temp等目录分别拷至根目录www下A,B,C目录下 3.新建如下脚本restart_tomcat.sh 4.使用restart_tomcat.sh A/B/C ...
Tomcat作为一款广泛应用的Java Servlet容器,其启动和停止通常需要手动执行命令,而通过编写shell脚本,我们可以实现一键启动、停止甚至重启Tomcat服务,提高工作效率。本文将详细介绍如何在Linux环境下编写shell...
# 2、根据路径去查找进程ID,然后逐个杀掉(毕竟一台服务器上面是会有多个不同业务的tomcat在运行。) kill -9 [ID] 刚接触这些命令的时候,会经常的手动去敲命令然后练习加深,久而久之,感觉是在浪费时间(有时候...
Red Hat Linux的安装可以通过网络下载ISO镜像文件完成,通常包括多个光盘镜像,如rhel-5-server-i386-disc1.iso至disc5.iso,每个镜像包含系统安装所需的不同组件。安装过程可以根据硬件配置选择自定义或标准安装,...
总结来说,Apache Tomcat 9.0.38是Linux环境中部署Java Web应用的重要工具,它的安装、配置、管理及优化涉及多个方面,需要对Linux系统、Java环境以及Web服务有深入理解。这个版本提供了许多新特性,如增强的安全性...
18个Linux Shell脚本经典案例合集,内含: Dos攻击防范(自动屏蔽攻击IP).sh Linux系统发送告警脚本.sh MySQL数据库备份单循环.sh MySQL数据库备份多循环.sh nginx 访问访问日志按天切割.sh nginx访问日志分析脚本.sh...
### Linux环境下JDK、Tomcat、Oracle的安装与配置 #### 一、安装前准备 在开始安装之前,首先需要确保已经下载了JDK、Tomcat、Oracle的相关安装包,并将其放置于合适的位置。 1. **JDK**:推荐放置在`/home`目录...