Контейнеры это спасение. Наверное лучшее что было с серверным линуксом (я не оч опытный, мб не пропустил чего). Их легко менеджерить, почти не важно что у тебя за сервер, reproducible environment проще простого. Переезжать в облако довольно не сложно, каждая вторая программа имеет свой "идеальный" образ. Что-то не нравится — делаешь свой. Забиваешь на os-specific вещи. С виртуалками явно сложнее и дольше всё)
Чего сложнее, переезды быстрые, бэкапы централизованные, снапшоты перед важными изменениями. В случае внезапных нагрузок выносить проще куда надо (быстрые диски, больше памяти, сеть быстрее). Суть одна, просто все завязано на гипервизор