Пятый фактор
Отправить заявку
Переносы сайтов и данных

Миграция Terraform на OpenTofu

Миграция Terraform на OpenTofu сохраняет связь кода с уже созданной инфраструктурой. Главный актив здесь — state: он сопоставляет адреса ресурсов в конфигурации с объектами облака. Мы фиксируем каждую копию, порядок зависимостей и версии providers, затем заставляем OpenTofu построить ожидаемый plan в тех же окружениях. Переключение CI происходит только после ручной сверки изменений и контрольного запуска.

Срок: 10 рабочих дней

Когда стоит обратиться

Обычно к нам обращаются в таких ситуациях:

  • Компания выбрала OpenTofu как основной IaC-инструмент и хочет перенести действующую инфраструктуру с управляемым риском.
  • Несколько state читают outputs друг друга, поэтому одновременная замена команд способна нарушить планирование зависимых окружений.
  • CI использует кеш providers, private registry, Terragrunt или собственные wrappers, которые требуют отдельной проверки маршрутов и credentials.

Что именно мы сделаем

01

Инвентаризируем репозитории, state, backends, providers, modules, workspaces, wrappers, CI и зависимости remote state.

02

Сохраняем конфигурации и state, строим порядок переноса связанных стеков и фиксируем версии инструментов.

03

Инициализируем OpenTofu, обновляем lock-файл и pipeline, устраняем точечные несовместимости registry и команд.

04

Запускаем validate и plan для каждого окружения, объясняем каждое изменение и проверяем блокировку backend.

05

Выполняем безопасное контрольное apply, передаём журнал, инструкции и сохранённую точку возврата.

Что входит в стоимость

49 900 ₽ за всю работу

OpenTofu читает конфигурации и state Terraform 1.x, однако проект может зависеть от конкретного registry, cloud-функций, wrapper и нескольких связанных state. Снимаем резервные копии и версии, переносим конфигурации снизу вверх: сначала контуры, чьи outputs читают другие через remote state, затем потребителей. Пересоздаём dependency lock под OpenTofu, проверяем credentials, backend locking, validate, plan и apply на выбранном безопасном изменении.

Что будет готово

Материалы

Передадим вам

  • Репозиторий OpenTofu с проверенными constraints, lock-файлом, backend, modules и обновлёнными командами CI/CD.
  • Резервные копии state, карта зависимостей remote state и журнал сравнения планов по окружениям.
  • Инструкция init, plan, apply, добавления provider, разблокировки backend и возврата к сохранённой версии.
Проверка

Перед сдачей проверим

  • OpenTofu инициализирует каждый выбранный backend, читает существующий state и строит plan с объяснённым составом изменений.
  • Pipeline выполняет fmt, validate и plan, сохраняет artifact и использует выбранные credentials и provider checksums.
  • Контрольное apply изменяет выбранный безопасный параметр, а следующий plan подтверждает синхронизацию кода, state и инфраструктуры.

Как это выглядит на практике

Перенос Terraform state и конфигураций в OpenTofu

Три связанных state переходят в правильном порядке

  1. 01

    Сетевой стек публикует subnet IDs, кластер читает их через remote state, а приложение получает endpoint кластера из третьего state.

  2. 02

    Копии фиксируются отдельно, затем OpenTofu сначала инициализирует сеть и подтверждает чистый plan на существующих ресурсах.

  3. 03

    После сети переходят кластер и приложение; lock-файлы пересоздаются для Linux runners, private module доступен по действующим credentials.

  4. 04

    Pipeline выполняет контрольное изменение метки, повторный plan становится чистым, а карта зависимостей остаётся в документации команды.

Что понадобится для работы

От вас

  • Репозитории IaC, версии Terraform и wrappers, список окружений, providers, modules и CI pipelines.
  • Безопасный доступ к backend и тестовым облачным credentials, резервные копии state либо право создать их.
  • Карта владельцев инфраструктуры, разрешённое контрольное изменение и окно для первого apply через OpenTofu.

Если у вас немного другая ситуация

Небольшие уточнения, которые помогают довести согласованный результат до рабочего состояния, уже учитываем в цене. Если по ходу работы появится отдельный крупный блок или понадобится платная лицензия, сначала обсудим варианты и стоимость. Расскажите о своей ситуации — подстроим план под неё.

Стоимость работ 49 900 ₽ полная стоимость известна заранее
  1. 3 000 ₽после подписания договора через Диадок
  2. 46 900 ₽после выполнения, демонстрации и приёмки результата

Предоплата входит в общую стоимость. Оставшуюся сумму оплачиваете после демонстрации и приёмки готовой работы.

Часто спрашивают

Об этой услуге

Совместим ли OpenTofu со state Terraform?

OpenTofu заявляет совместимость с конфигурациями и state Terraform 1.x. Конкретный проект всё равно проходит проверку providers, backend и фактического plan.

Почему state переносятся в определённом порядке?

Стек-потребитель читает outputs базового стека через remote state. Переход снизу вверх сохраняет доступность данных и упрощает проверку каждого plan.

Нужно ли пересоздавать dependency lock?

Для OpenTofu формируем и проверяем lock-файл с нужными платформами runners, версиями и checksums providers, затем фиксируем его в репозитории.

Что происходит с ресурсами в облаке?

Они продолжают существовать, а OpenTofu читает их связь из state. Любое предложенное создание, удаление или замена разбирается по plan до применения.

Поддерживается ли Terragrunt?

Да. Проверяем версию Terragrunt, выбор бинарника, hooks, cache, generate blocks, remote state и порядок запуска зависимых модулей.

Можно включить шифрование state OpenTofu?

OpenTofu поддерживает собственные механизмы шифрования state и plan. Схему ключей и совместимость backend согласуем как часть переноса либо отдельный этап.

Как проверяется private registry?

Тестируем разрешение module и provider sources с runners, способ аутентификации, зеркало, кеш и checksums на чистом рабочем каталоге.

Как выглядит контрольный результат?

OpenTofu строит ожидаемый plan, выполняет одно безопасное изменение через CI, а повторный plan подтверждает выбранное состояние ресурсов и state.

Цена и изменения по ходу работы

Цена на странице окончательная?

Да. Перед началом мы сверяем исходные данные и фиксируем результат в договоре. Указанная на странице сумма покрывает согласованную работу целиком, даже если её техническая реализация потребует больше времени, чем ожидалось при оценке.

Что означает резерв незапланированных работ?

Это уже включённый в цену запас времени на небольшие связанные уточнения заказчика, которые появляются после старта: например, добавить поле, изменить формат уведомления или учесть ещё одно условие обработки.

Резерв рассчитывается по формуле: стоимость услуги × 30% ÷ 1 500 ₽. Для услуги за 30 000 ₽ это 6 часов. Эти часы относятся только к дополнительным, заранее незапланированным уточнениям. Они не являются сроком проекта и не ограничивают время на основную работу: согласованный результат мы выполняем полностью.

Можно уточнять детали уже во время работы?

Да. Небольшие связанные изменения обычно помещаются во включённый резерв и не требуют доплаты. Если новая идея заметно меняет результат или превращается в самостоятельную задачу, сначала обсудим подход и стоимость. Любое решение согласуем до выполнения.

Начало работы и оплата

Как оформляются договор и оплата?

Подписываем договор через Диадок. Предоплата составляет 3 000 ₽ и входит в общую стоимость услуги. Остаток оплачивается после демонстрации и приёмки готового результата.

Когда начинается срок выполнения?

Срок отсчитывается после согласования задачи, получения необходимых доступов и материалов, подписания договора и поступления предоплаты. Конкретную дату старта и плановый день готовности подтверждаем перед началом.

Как учитываются платные лицензии и внешние сервисы?

До старта проверяем, нужны ли тарифы, лицензии, сертификаты или дополнительные ресурсы внешних систем. Если они потребуются, заранее покажем варианты и стоимость. По возможности аккаунты и лицензии оформляются сразу на заказчика.

Проверка результата и гарантия

Как принимается готовая работа?

Вместе проверяем согласованные сценарии на контрольных данных или тестовой копии, а затем демонстрируем результат. Для интеграций сверяем передачу данных и обработку ошибок, для сайта — работу нужных страниц и действий пользователя, для отчёта — расчёты и обновление данных.

Какая гарантия действует после сдачи?

На выполненные изменения действует гарантия 3 месяца. Если в изменённой нами части обнаружится ошибка нашей реализации, проверим и исправим её без дополнительной оплаты. Переданные материалы, настройки и код остаются у заказчика.

Следующий шаг

Опишите задачу

Опишите задачу и желаемый результат. Можно указать сайт, CMS, 1С, CRM, ERP или другую систему — разберёмся в ситуации и предложим подходящий следующий шаг.