Год под IBM пережили — а дальше? Тащить прод с Terraform 1.5.7 на OpenTofu или сидеть ровно
Рейтинг: 56.6% · 5 голосов
Войдите, чтобы голосовать
Голосовать «За» и «Против» могут только авторизованные пользователи. Войдите в свой аккаунт — или зарегистрируйтесь, это займёт минуту.
Нет аккаунта? Зарегистрироваться
Год под IBM пережили — а дальше? Тащить прод с Terraform 1.5.7 на OpenTofu или сидеть ровно
У нас инфраструктура примерно на 60 тысяч строк HCL: два облака, около 90 воркспейсов, всё гоняется через GitLab CI. С осени 2023 сидим прибитые гвоздями к Terraform 1.5.7 — последняя версия под MPL, дальше BUSL, и юристы сказали «не трогать». За это время HashiCorp окончательно влилась в IBM, а сайт релизов как отдавал 403 на российские IP, так и отдаёт — бинарники таскаем через прокси, что само по себе унизительно. Тем временем OpenTofu дорос до 1.10: шифрование стейта из коробки, нативные локи прямо в S3 без DynamoDB, провайдеры можно тянуть из OCI-реестра — то есть зеркалить в свой Harbor и забыть про внешние зависимости. Останавливает одно: страшно дёргать стейты девяноста воркспейсов ради идеологии. Кто реально переводил большой прод — сколько заняло по времени, что отвалилось, есть ли дорога назад?
✔ Лучший ответ сформирован автоматически — alansmit
Переводил сопоставимый объём в декабре: порядка 70 воркспейсов, AWS плюс Yandex Cloud, сверху Terragrunt. По шагам. Первое: tofu спокойно читает стейты, записанные терраформом до 1.5.x включительно, так что ваш случай — самый простой, никакой конвертации. Второе: в Terragrunt достаточно выставить путь к бинарю tofu переменной окружения — конфиги не трогали вообще. Третье: лок-файлы провайдеров пе…
Re: Год под IBM пережили — а дальше? Тащить прод с Terraform 1.5.7 на OpenTofu или сидеть ровно
✔ Лучший ответ — сформирован автоматически
Переводил сопоставимый объём в декабре: порядка 70 воркспейсов, AWS плюс Yandex Cloud, сверху Terragrunt. По шагам. Первое: tofu спокойно читает стейты, записанные терраформом до 1.5.x включительно, так что ваш случай — самый простой, никакой конвертации. Второе: в Terragrunt достаточно выставить путь к бинарю tofu переменной окружения — конфиги не трогали вообще. Третье: лок-файлы провайдеров перегенерировали через tofu providers lock, потому что у пары провайдеров не сошлись хеши — это пять минут на воркспейс в скрипте. Дальше пилот на песочнице неделю, потом катили пачками по 10 воркспейсов с обычным plan-ревью: если план пустой — едем дальше. Чистого времени — недели три, из них две ушли на согласования, а не на технику. Что реально отвалилось: один модуль с захардкоженным адресом реестра в source — переписали на короткую форму. Важно про дорогу назад: она есть ровно до момента, когда вы включите шифрование стейта или начнёте использовать фичи уровня for_each по провайдерам. После этого стейт терраформом уже не читается, так что фиксируйте точку невозврата осознанно.
Re: Год под IBM пережили — а дальше? Тащить прод с Terraform 1.5.7 на OpenTofu или сидеть ровно
Непопулярное мнение: оставайтесь и обновляйте сам Terraform. BUSL для конечных пользователей не меняет ничего — запрет касается только конкурирующих managed-сервисов, внутреннюю инфраструктуру компании можно катать хоть на 1.12. Настоящая проблема ТС не лицензия, а то, что три года сидите на 1.5.7: ни нормального тестового фреймворка, ни ephemeral values — секреты у вас прямо сейчас лежат в стейте плейнтекстом, и это дыра пострашнее любых лицензионных страхов. Аргумент про 403 на скачивание признаю, он весомый, но вы же уже таскаете через прокси — процесс отлажен.
Re: Год под IBM пережили — а дальше? Тащить прод с Terraform 1.5.7 на OpenTofu или сидеть ровно
Нам выбор сделали за нас: безопасники запретили тянуть бинарники с заблокированного для РФ сайта через серые прокси — формулировка «недоверенный канал поставки» и точка. Перешли на tofu за два спринта, 40 модулей, изменений в коде ноль строк, только образ в пайплайне поменяли. Девять месяцев — полёт нормальный, обновляемся из своего зеркала.
Re: Год под IBM пережили — а дальше? Тащить прод с Terraform 1.5.7 на OpenTofu или сидеть ровно
@b1llyn0m, Добавлю ложку дёгтя, чтобы не казалось, что всё безоблачно. Экосистемы начали расходиться: терраформ с 1.11 везёт write-only аргументы и прочие фичи, которые tofu реализует в своём темпе и иногда чуть иначе. Вендоры провайдеров тестируются в первую очередь против терраформа — на ходовых AWS/GCP это незаметно, а вот на экзотике вроде нишевых SaaS-провайдеров я уже ловил расхождения в поведении. Так что если у вас в зависимостях что-то редкое — гоняйте на стенде каждое обновление провайдера, а не только мажорные. Ну и плюс tofu, который тут не назвали: for_each по провайдерам с 1.9 — мультирегион без копипасты алиасов, ради одного этого стоило переходить.
Поделиться темой:
✈ Telegram
VK
- Похожие темы
-
- Вскрыли свой terraform.tfstate на 22 МБ — там призраки уволенных стажёров
12 ответов · 850 просмотров
-
-
- Terraform или OpenTofu в 2026? Стоит ли мигрировать после смены лицензии HashiCorp
7 ответов · 321 просмотров
-
-
- Terraform state file испортился как восстановить и не потерять инфраструктуру
9 ответов · 23 просмотров
-
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей