Выпуск OpenTofu 1.7, форка платформы управления конфигурацией Terraform

Представлен выпуск проекта OpenTofu 1.7, продолжающего развитие открытой кодовой базы платформы управления конфигурацией и автоматизации поддержания инфраструктуры Terraform. Разработка OpenTofu ведётся под покровительством организации Linux Foundation с использованием открытой модели управления при участии сообщества, сформированного из заинтересованных в проекте компаний и энтузиастов (о поддержке проекта объявили 161 компания и 792 индивидуальных разработчика). Код проекта написан на языке Go и распространяется под лицензией MPL 2.0.

Форк создан в ответ на перевод компанией HashiCorp своих продуктов на проприетарную лицензию BSL 1.1, ограничивающую использование кода в облачных системах, конкурирующих с продуктами и сервисами HashiCorp. Cмена лицензии объясняется желанием сохранить финансирование своих разработок в условиях неспособности классических моделей лицензирования противостоять паразитированию компаний, использующих готовые открытые исходные тексты разработок HashiCorp для создания собственных коммерческих облачных продуктов без участия в совместной разработке.

Платформа может использоваться для построения, изменения и версионирования инфраструктуры в соответствии с концепцией инфраструктура как код, при которой конфигурация систем описывается на высокоуровневом предметно-ориентированном языке и обрабатывается по аналогии с кодом. OpenTofu поддерживает построение графа ресурсов, определяющего все связи между ресурсами для эффективного распараллеливания операций над ресурсами и внесения изменений с учётом зависимостей.

OpenTofu также позволяет на основании заданной конфигурации генерировать план исполнения (Execution Plan), позволяющий оценить действия с инфраструктурой до их фактического применения к инфраструктуре. Сложные изменения в инфраструктуру могут вноситься автоматизированно, при минимальном участии администратора, что позволяет избежать многих ошибок, вызванных человеческим фактором. При этом администратор может полностью отслеживать, что именно будет изменено и в каком порядке, используя предоставленные план исполнения и граф ресурсов.

Среди изменений в версии OpenTofu 1.7:

  • Возможность защиты важных файлов состояния с использованием сквозного шифрования. Шифрование позволяет исключить доступ посторонних к данным файлам при использовании бэкендов хранения, не заслуживающих доверия. Пароль для шифрования может задаваться с использованием переменных окружений или систем управления ключами, такими как AWS KMS, GCP KMS и OpenBao.

  • Поддержка динамических функций, определяемых провайдером. Указанная возможность позволяет провайдеру предоставлять не только ресурсы, но и функции для использования в коде OpenTofu. Более того, функции могут определяться провайдером динамически, в зависимости от конфигурации пользователя. Поддержка представленной функциональности уже добавлена в экспериментальные провайдеры Lua и Go.

  • Реализованы декларативные операции удаления, позволяющие пометить ресурс для удаления из файла состояния, но сохранить его в созданной инфраструктуре.

  • Возможность применения циклов «for_each» в блоках, осуществляющих импорт, для упрощения импортирования нескольких типовых ресурсов.



Источник: http://www.opennet.ru/opennews/art.shtml? num=61097

OpenNet прочитано 4488 раз