如何自动化Linux服务器配置?


25

有什么方法可以自动化Linux服务器配置?我正在设置几个新的构建服务器以及一个FTP服务器,并且希望尽可能多地实现自动化。

原因是这些服务器的设置和配置需要以易于重复的方式进行。我们认为,尽可能多地自动执行此过程将使将来根据需要最容易重复。

本质上,所有服务器所需的就是安装操作系统以及少量软件包。设置没有太复杂的问题。

因此,是否有一种方法可以自动执行此过程(或至少是其中的一部分)?

编辑:另外,说我使用Kickstart,有没有一种方法可以删除默认的Ubuntu存储库,而只从本地拥有的.deb文件集合中安装软件包(最好通过apt而不是dpkg)?


您选择安装哪个发行版?这将有助于确定下一步
eyoung100

但是请注意,自动化任务可能需要很长时间。如果您打算安装少于10台主机,则可能不值得完成此任务。
Archemar 2014年

我最近了解了saltstack提供的功能(Github上贡献最大的仓库)。我强烈建议您对其进行研究,因为它提供了用于在AWS等服务上创建新服务器以及部署配置,设置,编写文件,远程Shell访问,批量Shell访问的工具。甚至访问限制。似乎您需要做的所有事情。尽管我有好朋友,他们对Ansible发誓要进行新的服务器设置。
ThorSummoner 2014年

+1给您和mattdm ...我不知道这个论坛已经存在,直到我在“热网络问题”上看到它,然后我才想到这个问题没有答案。很高兴你问,回答得很好
Sylas Seabrook 2014年

Answers:


36

是! 这很重要,而且非常普遍。有两种基本方法。一种方法是简单地使用脚本安装,例如在Fedora,RHEL或CentOS的kickstart中使用。在Fedora安装指南:Kickstart安装中查看此内容。对于您的简单情况,这可能就足够了。(以这个为例;其他发行版也有类似的系统,但是由于我是在Fedora上工作,所以我对此很熟悉。)

另一种方法是使用配置管理。这是一个大话题,但请研究Puppet,Chef,Ansible,cfengine,Salt等。在这种情况下,您可能会使用非常基本的通用kickstart来配置最少的计算机,并使用配置管理工具将其发挥作用。

随着您的需求和基础架构的增长,这变得异常重要。对所有更改使用配置管理意味着您不仅可以重新创建初始安装,还可以重新创建系统的状态,因为您引入了与现实世界交互所引起的不可避免的调整和修正。

我们认为,尽可能多地自动执行此过程将使将来根据需要最容易重复。

您绝对处于正确的轨道上-这是专业系统管理的基本原则。我们甚至有一个模因图片:

自动化一切

最初通常较难建立,对于一些更高级的系统来说可能会有很大的学习曲线,但它永远是值得的。即使您只有少数几个系统,也要考虑一下,如果您在深夜或休假时遇到灾难,需要多少精力来重建它们。


1
万分谢意!我将开始研究所有这些。
user1617942 2014年

您没有提到鞋匠。
布莱恩

@staticx是的,这并不全面。设置系统也遍布整个世界:补鞋匠,领班,卫星/太空漫步,FAI,剃刀,这甚至还没有涉及到云技术。
mattdm 2014年

@ChrisK Ha,我会说同样的话;)
William Edwards


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.