2015-12-08 51 views
1

对于我正在开发的项目,我们使用Jenkins进行CI设置。如何使用Puppet在Jboss中部署EAR/WAR

我们现在想要使用Puppet设置连续传送(CD)。

这里是我们的开发环境规范

  • 的Windows 2008服务器
  • JBoss的SOA-P(JBoss作为5.1应用服务器) - 2个实例
  • 詹金斯CI
  • 安装木偶学习VM (正如我们正在评估的,所以我们没有安装Puppet Enterprise的许可证)。

我的问题是:如何使用Puppet在已安装的Jboss服务器(在Windows m/c上)自动部署我的应用程序?

+0

我将在http://serverfault.com/问这个了。 – mattias

回答

1

对于我组织,我使用以下工具来实现持续交付和持续集成

工头:一个配置和ECN(外部节点分类)

傀儡师: 这将在我们的主服务器上运行

木偶代理: 其余的服务器

詹金斯:维护分期和另一台服务器

安装在木偶大师存储在Nexus仓库模块上释放库 在主服务器

的Nexus仓库。它具有连接到nexus存储库的逻辑,从“发布”存储库获取最新版本。

流量:

  • 我定义了一个詹金斯的工作,其目的是确保构建不破,并在发布的时候,我执行行家释放
    ,反过来上传nexus发布版本库的最新版本。

  • 在领班中加载nexus存储库模块并将“Nexus”类映射到我的所有服务器。这是允许我在工头中单击按钮即可执行 云部署的关键部分。为此,您需要拥有自己的执行dbmigration,undeploy和deployment的puppet文件。我总是为我的所有项目编写一个部署maven模块,这些模块只有这些puppet文件,可以让我一次性在所有服务器中执行部署。

既然你已经熟悉了CI和CD,我希望我的发言是自我解释

0

不知道如何部署应用程序,很难完全回答该如何操作。但我会看看我是否可以指引您朝着正确的方向发展:

伪造品上有现有的模块,以deploy JBoss with Puppet。我建议您仔细查看,看看是否可以找到适合您需求的产品。

然后,您可以整合你的源代码控制,因为他们在得到检查自动部署更改您的JBoss实例。

有使用木偶在Tomcat和Maven持续交付这里的一个例子。这是一个数岁,但其概念仍然适用:http://www.slideshare.net/carlossg/2013-02-continuous-delivery-apache-con

这里也就是从CloudBees的用于长期最高交付木偶和詹金斯(里面有很多背后詹金斯的工程师)https://www.cloudbees.com/event/continuous-delivery-jenkins-and-puppet-debug-bad-bits-production

再加上一般PuppetLabs为例一个在这里:https://puppetlabs.com/blog/whats-continuous-delivery-get-speed-these-great-puppetconf-decks

另外:我不想听起来太销售,并充分披露,我在PuppetLabs工作。 But you can use Puppet Enterprise with up to 10 nodes for free,所以我建议通过使用学习虚拟机,这不是真的设计托管应用程序。