Все варианты, которые вы упомянули, возможны, но какой из них выбрать, зависит от времени и бюджета вашего бизнеса.
Подъем и сдвиг (vms)
В основном это самый быстрый подход, и вы можете просто использовать виртуальные машины для перехода в облако. Но управление виртуальными машинами является вашей обязанностью и находится на постоянной основе.
Регулировка подъема и сдвиг (контейнеры)
По моему мнению, вы получаете преимущества облака, когда начинаете пользоваться услугами PAAS. Вы можете рассмотреть возможность контейнера (докер) вашего приложения и перенести его в облако и начать использовать службы Paas. Ваш цикл разработки будет быстрым, а масштабирование - простым. Так как вы больше не управляете vms, это меньше хлопот.
перестроить и отредактировать
это может быть дорогостоящим и трудоемким, и действительно зависит от того, позволяют ли это ваши бизнес-требования. если вы планируете расширить существующую кодовую базу, вы можете подумать об этом, иначе это может иметь большое значение, если вы можете просто перенести свои службы, используя методы, упомянутые выше.