我目前在一家 SaaS 公司工作,目前我们的数据中心运行多个 Debian 服务器来支持我们的应用程序。
过去,当安全更新发布时,我们可以登录每台机器,手动更新所需的更新。随着我们拥有更多的客户端(因此,更多的服务器),我们发现手动操作开始变得非常麻烦。
我只是想知道每次发布更新时是否有一种方法(或最佳做法)同时升级多台服务器?
我正在考虑编写一个 cron 脚本,它将在每个周末自动应用所有更新,但是我想可能有更优雅的方法来做到这一点?
答案1
答案2
听起来这是一个足够好的理由来实际安装无人值守升级软件包作为默认构建的一部分,并追溯到您现有的服务器上。正如描述本身所说:
该软件包可以自动且无人值守地下载并安装安全升级,注意仅从配置的 APT 源安装软件包,并检查有关配置文件更改的 dpkg 提示。
该脚本是 APT::Periodic::Unattended-Upgrade 选项的后端。
安装后,您需要做的就是/etc/apt/apt.conf.d/50unattended-upgrades
根据个人喜好进行修改,以指定Origins
要处理哪些升级,以及将特定软件包列入黑名单,以免无人值守升级。您还可以指定发送报告的电子邮件地址,以及如果软件包在升级后请求重新启动,是否自动重新启动。
我将它用于我为客户维护的所有远程服务器,并将报告发送给我,这样我就不必逐一登录它们并执行升级。
答案3
apt-dater只要您可以通过 SSH 访问服务器,它就可能有助于集中式包管理。它可能比依赖其他守护进程的配置管理工具更容易……