使Perl应用程序可移植。构建一个shell脚本或使用Puppet。

3

我有一个Perl应用程序,我在本地维护,需要定期压缩并发送到另一个严格限制的服务器。目标是确保系统管理员安装尽可能少的Perl模块。我们的解决方案是使所有内容针对local::lib工作。

我看到Puppet可以完成一些表面上完全处理此问题的事情。我不是Puppet专家,只知道基本想法。在开始进行大量Puppet学习之前,我想看看这里是否有人对部署依赖于local::lib的Perl应用程序(我正在尝试保持可定义的问题)的最佳方式有任何建议。也就是说,部署完全自包含的Perl应用程序。

非常感谢任何帮助, Janie

编辑:我也偶然发现了这个(供讨论之用)。

您如何管理Perl应用程序的开发、构建和部署?


2
您可能还想了解一下 PARPAR::PackerApp::Packer 等相关内容。 - derobert
1
嗯,这不是人们通常使用 Puppet 的方式。通常情况下,会是“我们有太多的服务器需要管理,手动一个一个地管理已经不可行了,所以我们正在使用 Puppet 自动化服务器管理”。你通常不会设置它然后忘记它——你会定期在服务器上使用它进行管理任务。因此,我认为您正在寻找其他解决方案之一。 - derobert
太棒了!感谢derobert!这是很多非常好的东西,我认为它回答了我的问题。JW - Jane Wilkie
我自己也在类似的环境中工作。我的解决方案是确保所有我需要的模块(除了那些我保证已经在服务器上可用的标准模块)都是纯Perl编写的。然后部署只需要将我的 .tbz文件解压到正确的位置即可。我的应用程序位于 /srv/[myapp] 目录下,@INC的开头是 /srv/[myapp]/mod 和 /srv/[myapp]/lib。(我意识到生活在一个纯Perl的世界中通常是不现实的。) - niczero
系统管理员网站是Server Fault。虽然这似乎不太离题。 - Brad Gilbert
显示剩余3条评论
1个回答

1

是的 - Puppet或Chef是我会考虑用于部署Perl应用程序的解决方案。

您可能会发现David Golden在Pantry上的工作很有趣,这是一些使用Chef的Perl方式。他在七月份做了一个演示文稿,提供了一个很好的概述。


迟到总比没有答案好。我知道有很多人说这是“过度设计”,但老实说,只要它能工作,我不太确定为什么会过度设计。仅仅因为你可以使用Puppet设置1000个服务器并不意味着你不能只设置一个。Adrianh,你的回答获得了Karma。 - Jane Wilkie

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接