Обновление релизов linux систем
Небольшая заметка на тему перехода с одного релиза на другой. Например, обновление Centos 7 до 8, Ubuntu 18 до 20 и т.д. Мое мнение на этот счет - никогда не проводить такое обновление в проде. Релиз системы слишком масштабное обновление. Даже если авторы дистрибутива предлагают штатное обновление с релиза на релиз, это не значит, что у вас все пройдет гладко. Меняются системные репозитории, зависимости и версии пакетов. Слишком велик шанс, что что-то пойдет не так и не заработает после обновления.
Я сам проводил такие обновления на Ubuntu, отработав их изначально в тестовой среде. То есть это реальный путь, но при возможности, я не иду по нему, так как всегда ориентирован на максимальную стабильность и отсутствие ошибок. В этом случае единственно верный путь - делать не обновление, а переносить функционал на новую систему. Это более надежный путь, максимально страхующий вас от непредвиденных ошибок в будущем.
В эпоху виртуализации нет никаких проблем аккуратно все перенести на новую виртуалку, убедиться, что все работает и переключить трафик. В случае проблем, можно обратно направить трафик на старую систему и разбираться с ошибками. А если обновляете рабочую систему, то обратно откатиться сложнее. Да и временные затраты на обновление и разбор ошибок с зависимостями могут занимать не меньше времени, чем полный перенос.
А вы обновляетесь с релиза на релиз?