`
geeksun
  • 浏览: 965006 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Linux Shell启动多个Tomcat

 
阅读更多

有时部署项目时使用多个应用服务器做负载均衡,这里使用多个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

  

 

分享到:
评论

相关推荐

    linux中设置tomcat自启动

    ### 四、编写Tomcat启动脚本 在创建的文件中,我们定义了一系列环境变量,包括 `CATALINA_BASE`, `CATALINA_HOME`, `CATALINA_TMPDIR`, 和 `JRE_HOME`。这些变量指向了Tomcat及其相关Java运行环境的具体位置。接着...

    shell脚本远程启动其他服务器的tomcat传输文件自动登录判断启动停止

    这个"shell脚本远程启动其他服务器的tomcat传输文件自动登录判断启动停止"的方案,就是一种典型的自动化运维实践,它结合了多个核心工具和技术,包括shell脚本、expect、ssh以及scp,用于实现远程服务器管理与文件...

    linux下启动多tomcat

    在Linux环境下启动多个Tomcat服务器是一项常见的需求,尤其是在开发、测试或生产环境中,为了实现不同应用的隔离或者负载均衡,企业级项目往往需要部署多个独立的Tomcat实例。以下将详细解析如何在Linux系统中成功...

    ant远程调用shell,启动linux上的tomcat

    本文将深入探讨如何使用Ant工具进行远程调用Shell脚本,以启动Linux服务器上的Tomcat应用服务器。Ant是一个基于Java的任务执行工具,常用于构建和管理Java项目。而Tomcat是一款广泛使用的开源Servlet容器,适用于...

    Linux下Tomcat的启动、关闭、杀死进程

    如果看到类似“Server startup in XXX ms”这样的日志信息,则表示Tomcat启动成功。 #### 二、关闭Tomcat 关闭Tomcat同样可以通过执行位于bin目录下的脚本来完成。 1. **进入Tomcat的bin目录**: ```bash cd /...

    linux 安装tomcat shell脚本

    针对标题"Linux安装Tomcat Shell脚本",描述中提到的是一站式脚本,涵盖了安装Tomcat、配置JDK以及创建Tomcat用户等多个步骤。接下来,我们将深入探讨这些知识点。 **一、Linux Shell脚本** Shell脚本是Linux系统...

    linux系统Tomcat重启shell脚本

    Linux 系统、Tomcat、重启、shell 脚本这些标签都是与本文相关的关键词,涵盖了 Linux 操作系统、Apache Tomcat 服务器、重启机制和 shell 脚本编程等多个方面的知识点。 部分内容解释 本文提供的 shell 脚本用于...

    Tomcat停止与启动shell

    对于大型应用,可能会使用多个Tomcat实例组成集群,通过负载均衡器分配请求,实现高可用性和性能提升。 总结,`Tomcat停止与启动shell`涉及到的IT知识点主要包括Tomcat的基本操作、自定义脚本的编写、环境变量配置...

    Linux部署springboot(springcloud)启动多个jar

    本篇文章将深入讲解如何在Linux环境下部署SpringBoot(SpringCloud)项目,并启动多个jar文件,以及如何通过shell脚本来实现日志管理和服务控制。 首先,SpringBoot是一个基于Spring框架的轻量级开发工具,它内置了...

    Linux 多tomcat服务 统一安装 统一部署 工具 shell编写

    于JAVA开发项目 随着服务的越来越多 配置文件更是眼花缭乱 每次不知道因为配置问题浪费多少时间 更不知道因为配置问题出过多少问题 多台服务器来回切换 如果服务需要依赖 启动更是问题 功能:一次修改 统一安装;...

    Tomcat 相关操作shell脚本

    例如,一个简单的启动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编写 自动化部署与统一安装升级 - 类ansible工具

    Linux 多tomcat服务 统一安装 统一部署 工具 shell编写 1 引言 基于JAVA开发项目,随着服务的越来越多,配置文件更是眼花缭乱,每次不知道因为配置问题浪费多少时间,更不知道因为配置问题出过多少问题。多台...

    Linux 单个tomcat多实例部署shell脚本详解

    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 ...

    linux环境下编写shell脚本实现启动停止tomcat服务的方法

    Tomcat作为一款广泛应用的Java Servlet容器,其启动和停止通常需要手动执行命令,而通过编写shell脚本,我们可以实现一键启动、停止甚至重启Tomcat服务,提高工作效率。本文将详细介绍如何在Linux环境下编写shell...

    Linux下重启多个 tomcat 服务的脚本(推荐)

    # 2、根据路径去查找进程ID,然后逐个杀掉(毕竟一台服务器上面是会有多个不同业务的tomcat在运行。) kill -9 [ID] 刚接触这些命令的时候,会经常的手动去敲命令然后练习加深,久而久之,感觉是在浪费时间(有时候...

    Linux+JDK+Tomcat+Oracle

    Red Hat Linux的安装可以通过网络下载ISO镜像文件完成,通常包括多个光盘镜像,如rhel-5-server-i386-disc1.iso至disc5.iso,每个镜像包含系统安装所需的不同组件。安装过程可以根据硬件配置选择自定义或标准安装,...

    最新版linux apache-tomcat-9.0.38.tar.gz

    总结来说,Apache Tomcat 9.0.38是Linux环境中部署Java Web应用的重要工具,它的安装、配置、管理及优化涉及多个方面,需要对Linux系统、Java环境以及Web服务有深入理解。这个版本提供了许多新特性,如增强的安全性...

    Linux Shell脚本经典案例合集

    18个Linux Shell脚本经典案例合集,内含: Dos攻击防范(自动屏蔽攻击IP).sh Linux系统发送告警脚本.sh MySQL数据库备份单循环.sh MySQL数据库备份多循环.sh nginx 访问访问日志按天切割.sh nginx访问日志分析脚本.sh...

    Linux下安装Jdk+Tomcat+Oracle

    ### Linux环境下JDK、Tomcat、Oracle的安装与配置 #### 一、安装前准备 在开始安装之前,首先需要确保已经下载了JDK、Tomcat、Oracle的相关安装包,并将其放置于合适的位置。 1. **JDK**:推荐放置在`/home`目录...

Global site tag (gtag.js) - Google Analytics