![]() |
1
4
使一个节点离线,安装Perl,然后使用它重新映射其他节点。 至少,这是我想象中您希望在一个无共享集群中安装软件的方式。Perl只是您碰巧安装的应用程序。 |
![]() |
2
3
假设所有的机器都是相同的,您应该能够保持一个规范的安装,并使用rsync或其他东西来保持其他机器的更新。 |
![]() |
3
2
在过去,我开发了一个Perl程序,它使用Expect模块(来自CPAN)基本上自动化您描述的过程,自动对每个主机执行ssh,复制任何必要的文件,并执行安装。不幸的是,这是为客户机开发的,所以我没有权限共享代码。如果你熟悉Expect,那么设置起来就不太难了。 |
![]() |
4
2
我们目前有一个集群Perl应用程序来进行数据处理。我们还有许多CPAN模块和我们开发的软件所依赖的模块。当你说“什么都不共享”时,我假设你指的是像nfs挂载这样的东西。 如果机器具有相同的配置,那么您可以将整个应用程序构建成一个单一的目录结构(例如:/opt/my-app),对其进行tar升级,这可能是您唯一需要推到框中的东西。 只要将它部署到盒子中,就可以使用 Capistrano . 我们开发了两个自己的集群实用程序,它们与ssh结合使用,我已经发布了一种形式的实用程序: parallel-jobs . 它的 README 显示了执行多个并行ssh命令的示例。扩展该程序以了解集群,然后能够在集群中执行相同的命令(而不是一系列不同的命令),这只是一个很小的步骤。 |
![]() |
5
2
如果您使用的是Debian或Ubto操作系统,那么您可以打包您的Perl模块——我已经打开了一些源代码来帮助实现这一点: Perl module builder 它仍然很粗糙,但是可以工作,可以在您自己的代码和CPAN模块上工作,这使得部署更加容易。 还有一个项目是为所有的CPAN获取Redhat RPM,Dave Cross做了一个演讲。 Perl in RPM-Land 可能有用。 如果您在其他没有打包的系统上,则rsync选项(安装在一台计算机上,然后 rsync 对于其他人来说)也应该可以,注意,如果需要,您可以挂载一个Windows共享并在Unix上同步到它。 使用中央管理器 Puppet 使在集群中创建和维护机器变得更容易管理,从安装代码到管理用户和电子邮件配置。还有一个Perl项目正在开发中,可以做一些类似的事情,但这还没有公开。 |
![]() |
6
1
Capistrano 是一个允许您在一组服务器上运行命令的工具;它非常适合使您的任务变得相当容易。 自动化的进一步发展,也包括复杂性,是 Puppet 这允许您定义一组服务器,赋予它们角色,然后将代码集推送到订阅某个角色的每台计算机上。 |
![]() |
7
0
我不确定什么是无共享集群,但如果它使用一些基本的*nix系统,如Fedora、Mandriva或Ubuntu。许多Perl模块都针对特定的体系结构进行了预编译。你可以很容易地运行这些。 如果这些系统具有相同的架构,您可以像其他人所说的那样做,只需将编译后的模块从一个系统复制到另一个系统,只需确保您拥有所有依赖项以及接收者系统。 |
![]() |
Manny · 如何比较Perl中的字符串? 2 年前 |
![]() |
BioRod · 我不能用Perl打印键和值 3 年前 |
![]() |
user17227456 · Perl CLI代码无法追加字符串行 3 年前 |
![]() |
LearnToBeBetter · 读取文件,搜索字符串,打印字符串 3 年前 |
![]() |
KJ7LNW · 一些波斯语文本的宽字符印刷,但其他文本则没有 3 年前 |
![]() |
con · 如何搜索大型数据结构并返回一系列给出特定值的键/数组? 3 年前 |
![]() |
Pranay Nanda · 使用regex解析许可证文件 7 年前 |