从 do-release-upgrade LTS->LTS 中可以期待什么(持续时间、问题、配置调整……)?

从 do-release-upgrade LTS->LTS 中可以期待什么(持续时间、问题、配置调整……)?

我有一个高效的 Ubuntu Server LTS 网络服务器(“经典” LAMP),运行 12.04.5 LTS(最新版,常规版apt-get update && apt-get dist-upgrade)。我只能通过 SSH(具有 root 访问权限的租用服务器)访问它。我不是使用任何第三方软件/来源,只能使用官方的 Ubuntu。

我想运行do-release-upgrade升级到 14.04.X LTS。

我的问题是,我能从这个过程中获得什么来将停机时间降至最低:

  • LTS 升级将持续多长时间(X 分钟、X 半小时、X 小时)?我知道这取决于很多因素,但最好能提前知道一个大致的时间表(硬件和网络连接速度非常快)。
  • 中间是否需要重新启动 (-> SSH-only-access)?
  • 是否需要不断的用户输入?
  • 更新后的重要服务(Apache、PHP、MySQL)是否会运行,或者我是否需要更新大量配置文件(如果是的话,可能需要进行调整)?
  • 在大型 LTS 升级中还经常出现其他已知问题吗?

答案1

LTS 升级将持续多长时间(X 分钟、X 半小时、X 小时)?我知道这取决于很多因素,但最好能提前知道一个大致的时间表(硬件和网络连接速度非常快)。

上次我这样做只花了半个多小时。互联网连接速度高于平均水平。但这确实取决于很多因素。如果你安装了台式机,则需要更长时间。如果你安装的软件比我多,则需要更长时间。如果你安装的软件较少,则需要的时间会更少。

中间是否需要重新启动(-> SSH-only-access)?

我做的时候没有,而且据我所知,升级只需 1 个操作即可完成。因此最后需要重新启动。

是否需要不断的用户输入?

不。但你可能想观察整个过程。

更新后的重要服务(Apache、PHP、MySQL)是否会运行,或者我是否需要更新大量配置文件(如果是的话,可能需要进行调整)?

对我来说确实如此:apache 和 mysql 随后立即运行;但这在很大程度上取决于您的设置;如果您使用了在 14.04 中被删除的弃用选项,这些可能会给您带来麻烦。

如果崩溃,apache 和 mysql 都会显示清晰的消息。

我的建议是:在开始升级之前,请自行停止所有服务并备份配置文件。进行数据库转储,备份 my.conf 和 /etc/apache2/conf,站点-ETC。

在大型 LTS 升级中还经常出现其他已知问题吗?

是的,停电。当你开始升级时,停电似乎很常见。因此,与系统的任何重大更改一样:备份并检查是否可以恢复。

还有一件事:在我升级了一台机器之后,我们根据经验猜测了如果升级失败,我们公司会损失多少钱。我们决定最便宜、最安全的方法是购买一台新服务器,然后将旧服务器更改为备用服务器。这也使升级变得更容易:我们可以调整 apache 设置、mysql 设置并恢复备份。这花费了一个多小时(几天),但可以在白天和我们想要的时候进行。

答案2

这些升级应该花费不到一个小时,也许 30 分钟,但这只是升级,而不是之后的测试和修复。

您可能会遇到几个有关配置文件的问题:覆盖还是保留旧文件。一般来说,您应该保留旧文件,否则 Apache 配置将被覆盖等。您最好确保备份这些配置文件。您的 /etc 文件夹有多大?使用适当的权限备份它(sudo cp -rp /etc /etc-backup)。var 文件夹也是如此。检查是否有足够的空间来执行此操作。

Apache 或 Mysql 或任何其他服务可能会因您当前的设置而停止工作。数据库可能无法正确升级。PHP 升级可能会导致问题。检查您的邮件服务器。

我的建议:在 Virtualbox 中使用本地 12.04 VM,安装您的网站,检查 mysql、php 和 apache 是否是同一版本。检查邮件服务器,如果网站或 cronjob 向客户发送邮件,请禁用邮件,或更改测试环境中的所有邮件地址,以确保客户不会收到虚假的测试邮件。在此过程中制作快照,这样当您犯错时就可以回退一两步。

您可以选择使用 12.04 的桌面版本。这样您就可以在 VM 等中使用 Firefox。桌面可以让事情变得简单得多,而且我猜它不会损害用于测试的服务器设置。这就是我所做的,但你可能不想这样做。

然后使用本地 12.04 VM 进行升级。查看会出现什么问题。网站还能运行吗?日志中是否有错误?请注意,此测试并不能绝对保证相同的程序可以在实时机器上运行。但您可能会发现大多数问题。

在这些情况下,“云”有其优势,我的意思是在云中使用虚拟机。您可以在升级之前制作快照。然后升级,如果出现问题则返回。或者您可以保持原始机器运行,使用快照创建第二个虚拟机,然后升级以进行测试等。

相关内容