tomcat - Puppet 中的一次性调用任务

标签 tomcat puppet continuous-delivery

我为 Puppet 编写了两个不同的模块,一个确保 Tomcat7 已安装并运行,另一个将 Web 应用程序部署到 Tomcat webapps 文件夹中。

但是,如果我使用这两个模块将 puppet 作为守护进程运行,则每次 pupped 与 puppetmaster 同步时都会部署应用程序,所以我想我应该执行以下操作:

  1. 将 tomcat 模块添加到要由此类节点执行的 list 列表中。通过这种方式,我将确保 Tomcat 每 30 分钟启动并运行一次。

然后:

一个。通过以下命令在 Puppet 代理上调用一个非守护进程的一次性任务,使用标记来指定我只想运行部署应用程序模块。

puppet agent --server MYSERVER --no-daemonize --onetime --tags deploy_app

B.以某种方式修改我的部署应用程序模块,可能在工件中指定应用程序的版本,以从 puppetmaster 自动部署而不是调用 puppet 代理。

什么是正确的方法?公司通常会做什么来使用 Puppet 运行此类任务?

我猜如果你从 puppetmaster 部署很难知道什么时候部署了你的应用程序,所以你在部署过程中失去了控制,我猜这是不好的。

最佳答案

这实际上取决于您如何编写用于部署工件的 list ,但理想情况下,您应该首先在执行过程中检查是否需要更新。您可以通过将工件提取到临时位置并在其上运行二进制差异来实现。

关于tomcat - Puppet 中的一次性调用任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24669597/

相关文章:

azure-devops - 使用 VSTS 设置发布到文件夹

jenkins - 从 Maven 调用生成 Artifactory 构建信息

Puppet 角色/配置文件,具有多个配置文件实例的角色 - 参数如何工作?

apache - 在 Vagrant 上从 Puppetlabs 安装 Apache

linux - 使用 puppet 模块 Camptocamp Bind 创建主 DNS 和从 DNS

ios - FaSTLane 错误 无法从 App Store Connect 接收最新的 API key ,这可能是服务器问题

java - jsp中的下载链接不起作用

java - Tomcat和防洪

apache - 两种服务 HTTP 谷歌计算引擎

java - 将 Tomcat 线程专用于 servlet