我面临的问题是,有时,在安装新系统时,无论是 VMWare 中的虚拟机,还是客户服务器的新 VDS,我都必须不断安装相同的软件包(Nginx、firewalld、htop、python),进行相同的配置并安装相同的应用程序。而且这一切都在命令行中。有没有什么方法可以让这个过程变得舒适?我考虑过各种 Web 管理应用程序(例如快捷面板,冷水钻井平台等等),但没有找到任何具体的标准。当你有很多服务器可供使用并且需要进行相同的设置时,你该如何应对这一切?
我不考虑拥有一组相同的虚拟机并且可以简单地安装现成的系统映像的情况,因为除其他事项外,我必须在其他公司使用第三方系统,在这些公司中我无法安装特定的映像,而必须手动安装所有软件
PS 作为参考,我主要使用 Ubuntu、CentOS 和 Redhat。
答案1
自动安装和配置软件。安装软件包列表的功能是自动化工具“标准库”中的基本功能。或者相对容易地编写自己的脚本。
编写自己的软件包,将内容包装在易于安装、依赖性强的存档中。例如,创建 python venv 的需求文件。或者,将应用程序包装在 rpm 或 deb 等系统软件包中。
复制预建的配置文件。使用可以制作带有站点特定值变量的模板的工具。
如果操作正确,自动化将比手动更快、更可靠地完成任务。