作为管理员,您使用什么工具来记录您对机器的操作?

作为管理员,您使用什么工具来记录您对机器的操作?

我更像是一名 Linux 应用程序开发人员,而不是管理员。随着时间的推移,我构建并维护了服务器,有时是为了提供服务,但大多数情况下只是为了开发我所从事的应用程序。

很久以前,我会在我的帐户中创建一个文件来记录我在每台机器上所做的事情,这样当我迁移到其他机器时就可以复制它。

现在,我安装了一个私人 trac 安装,安装它的博客插件,然后使用它来记录我安装的所有内容,以及我运行的大多数命令以及输出。这为我提供了一个组合 wiki 和博客,我发现它作为“船长日志”非常有用。我这样做主要是因为当我迁移到新的干净机器时,我可以更轻松地启动它。

然而,当我看到其他人只是安装这个,删除那个,运行这个,设置这个配置......而似乎没有使用任何方式来真正记录他们在做什么时,我总是感到惊讶。

您做什么?有哪些可用的工具?

我对为几个人维护几台机器和维护几台到几十台机器提供实际服务的转变特别感兴趣。

最佳实践是什么?在哪里可以找到好的资源?

谢谢!

答案1

答案肯定是正式的配置管理。目前该领域的三大竞争者是 Chef、Puppet 和 Cfengine。基本上,您需要将开发方法应用于系统管理:编写一个定义机器状态的“程序”,然后应用它(显然这是一个过于简单的说法)。

事实上,我们这些固执的 Linux 管理员之所以能够“神奇地”配置机器,是因为我们经过多年的重复,已经完全内化了这些知识。我大致知道我需要在任何一台机器上接触的配置文件列表,我可以根据记忆手动编辑这些文件。这实际上是一种糟糕的做事方式,特别是如果你有多个服务器或多个系统管理员。手动编辑配置文件总是计划不周和管理不善的标志。

我非常喜欢使用克隆兹拉加上 PXE 启动,自动启动系统,并将足够的详细信息放入 Kickstart 配置中,以便机器连接到网络并运行您选择的 CM 工具。除了最基本的“启动系统,将其连接到网络”逻辑之外的所有内容都应该放在您的 CM 工具中,不是在您的初始系统映像或 Kickstart 中。

作为参考,我目前管理大约 10,000 台 unix 服务器。

答案2

您的问题是从少数机器的角度来处理的。它不是记录您的命令。为此,脚本命令应该能得到您所要求的。但扩展的真正解决方案是能够快速重现配置并管理这些配置中的更改。像木偶厨师可以让你做到这一点。配方通常保存在修订控制系统中,这样你就可以全面了解对配置所做的每项更改,并且可以在需要时恢复到以前的配置。

当这些工具与 PXE 启动和预置或 kickstart 结合时,您可以快速为各种角色配置机器。

即使您只管理几台机器来实现其提供的变更管理和跟踪,使用这类工具也不失为一个好主意。

相关内容