我有一些普遍的问题,我希望这是问的正确地方。
我们目前有11台(9个Red Hat/2个Centos)服务器,过去5年在不同时间购买,虽然都是Linux操作系统,但是硬件还是有区别的,只是因为购买时间不同. 然而,我们需要在所有机器上安装一套核心的生物信息学软件,让用户拥有相同的环境。过去我们使用共享安装驱动器,但是当软件在给定机器上无法运行时我们遇到了问题,因为没有安装所有必需的库等。
长话短说,我正在寻找有关解决此问题的最佳方法的提示和建议。您认为处理共享驱动器并在出现问题时进行故障排除是最佳途径,还是有我不知道的改进方法(软件/理论)。最终我觉得尝试独立维护每台机器必须是最痛苦的方法。
我不认为他们是“最好的方法”,但经常被吹捧的解决方案是使用Puppet或类似软件(Chef、CFEngine)。
根据我的经验,设置它需要做很多工作,但在拥有许多类似系统的环境中很有用。也就是说,我发现解决方案很麻烦,而且工作量很大。
也许“更好”的方法 - 我为我工作的组织使用混合解决方案 - 除了使用 Puppet 来“最低限度地管理”系统的关键部分之外,我还推出了一个 PXE 启动系统,这意味着重新映像系统非常容易,因此它们都具有相同的“基本配置”,无需任何体力劳动。
我的武器库中的另一种技术是拥有一台“主机”,它可以通过 SSH 连接到所有其他机器,并使用单个命令在所有其他机器上执行相同的作业。(我们有一个脚本,它将我们要执行的整个命令作为参数,并通过 SSH 在所有机器上执行)。