65.9K
CodeProject 正在变化。 阅读更多。
Home

5分钟设置Tomcat集群

starIconstarIconstarIconstarIconstarIcon

5.00/5 (2投票s)

2014年1月27日

公共领域

3分钟阅读

viewsIcon

10391

描述如何安装和使用Bear来设置和管理Tomcat集群

引言

在这个技巧中,我将展示如何使用 Bear 来

  • 在你的集群上安装 JDK、Maven 和 Tomcat
  • 为每个主机配置 Tomcat 多实例
  • 启动、停止并检查 Tomcat 服务的状态
  • 运行远程命令来手动测试一切是否正常

背景

Bear 是一个轻量级的 Groovy/Java/JVM 远程自动化工具。Bear 与其他现有工具的区别在于它使用程序化方法。 在 Bear 中,你的部署是一个普通的 Java 类,可以通过 main() 运行。 Bear 喜欢 static 类型安全、链式方法调用、FP 和流畅的编程技术。

安装 Bear

Bear 需要
  • 1 台或多台带有 Linux 的远程机器,标准密码认证
  • JDK 8 EA (推荐用于 UI), JDK 7+ 运行控制台/UI
  • Maven 3+。 mvn 必须在命令行中可用。 如何在 Windows 上安装 Maven

要安装 Bear,在命令行中输入(可能需要管理员权限)

$ mvn com.chaschev:installation-maven-plugin:1.4:install -Dartifact=com.chaschev:bear

创建项目

为你部署创建一个目录或使用一个已有的目录,然后: 

$ mkdir tomcat-demo
$ cd tomcat-demo

# generates a new project for your hosts, i.e. vm04, vm05, vm06
$ bear --create tomcat-demo --template java.tomcat --hosts="vm04,vm05,vm06" --user your-ssh-user --password your-pass

这里 javatomcat 是将功能添加到生成的项目的标签。
注意: 如果你计划使用不是最新的 JDK 版本(在撰写本文时为 7u51),你需要通过提供 --oracleUser--oraclePassword 来指定你的 Oracle.com 凭据。

指定版本

.bear/TomcatDemoProject.groovy 中打开生成的项目并编辑配置以设置要安装的工具的版本

@Override
protected GlobalContext configureMe(GlobalContextFactory factory) throws Exception {
  java.acceptLicense.set true

  java.version.set "7u51"
  tomcat.version.set "7.0.50"
  maven.version.set "3.1.1"

  bear.appStartTimeoutSec.set(600)         // override startup timeout for Tomcat

  ...

添加 Tomcat 实例

通过简单地枚举端口来添加实例。 所有其他内部 Tomcat 端口将根据每个实例进行相应调整

   tomcat.instancePorts.set "8080, 8081"

运行安装

现在我们准备运行安装。 为了获得最佳结果,请确保你的机器上没有安装 JDK。 如果有,你可能想要卸载它们,或者你可以保持原样,Bear 将覆盖诸如 /usr/bin/java/usr/bin/javac 之类的引用  

$ bear tomcat-demo.setup

tomcat-demo 是我们项目的名称,setup 是此类中的方法名称(实际上是超类的方法)。 此任务将安装 JDK、Maven、Tomcat,还将创建服务和快捷方式以运行脚本。 还有 关于如何通过 IDE 运行项目的说明。 如果一切正常,你应该在屏幕截图中看到 Bear 的 UI

Setup Finished

启动 & 停止 Tomcat 实例

在 UI 中,单击状态选项卡并在提示符中键入

tomcat-start
tomcat-status

要检查状态或停止实例,请使用 tomcat-statustomcat-stop。 单击任何主机选项卡,在滚动条的底部你应该看到

tomcat-status

注意: 通常在部署项目时,你只需执行 $ bear tomcat-demo.deploy 即可部署它并重新启动服务。

手动验证

对于那些像我一样好奇整个事情如何工作和配置的人,选择任何主机选项卡并输入: 

ls /var/lib/bear/tools/tomcat/current/ -w 1
..
bin
conf
instances
lib
logs
webapps
work

给你 Tomcat 主目录的列表。 一切如常,除了 instances 文件夹,它包含每个实例的运行时和配置

$ ls /var/lib/bear/tools/tomcat/current/ -w 1
tomcat-8080
tomcat-8081

$ ls /var/lib/bear/tools/tomcat/current/tomcat-8080 -w 1
conf
logs
webapps

要手动启动/停止实例或编辑 upstart 脚本,请键入

# Prints the service commands for your OS
cat `which tomcat-status`

# Prints the status for an instance
sudo service tomcat-8080 status
sudo service tomcat-8080 stop

# Will print the upstart script content
cat /etc/init/tomcat-8080.conf

结果

在本技巧中,我向你展示了如何使用 Bear 快速设置 Tomcat 环境。 因此,你现在可以将你的 WAR 放入创建的 webapps 中以部署你的项目。 你也可以使用 Bear 来完成此操作,它将允许你执行其他操作,例如从版本控制中检出你的项目、构建你的 WAR、为其创建发布文件夹、回滚到以前的版本之一。

祝你的部署愉快!

Andrey

© . All rights reserved.