Pulumi
Назначение
Заголовок раздела «Назначение»Pulumi — IaC-платформа, в которой инфраструктуру описывают на общих языках программирования, а также YAML и HCL. Программа объявляет ресурсы, а движок вычисляет и применяет желаемое состояние.
Open-source SDK распространяется под Apache License 2.0. Для state и совместной работы используют Pulumi Cloud или поддерживаемые самостоятельно управляемые backends.
Возможности и интеграции
Заголовок раздела «Возможности и интеграции»- TypeScript, Python, Go, .NET, Java, YAML и HCL;
- providers для AWS, Azure, Google Cloud, Kubernetes и других платформ;
- resources, stacks, outputs и reusable components;
- preview/update/refresh и управление состоянием;
- unit, property и integration testing инфраструктурного кода;
- policy, least privilege и CI/CD integrations;
- миграция и импорт существующей инфраструктуры.
Ограничения
Заголовок раздела «Ограничения»Общий язык даёт циклы, функции и абстракции, но позволяет создать трудно читаемую логику вместо понятной декларации. Нужны инженерная дисциплина, тесты и ограничения абстракций. State и секреты требуют защиты, а preview разрушительных изменений остаётся обязательным.
Когда выбирать
Заголовок раздела «Когда выбирать»Подходит командам разработчиков, которым важны типы, пакеты и тестирование на знакомом языке. Terraform/OpenTofu предлагают HCL и широкую совместимость, Ansible — настройку существующих систем.
Связанные материалы
Заголовок раздела «Связанные материалы»- Infrastructure as Code
- IaC для WordPress — пример связки Pulumi + Ansible.
- Окружения
- CI/CD
Материалы и источники
Заголовок раздела «Материалы и источники»- Pulumi: Infrastructure as Code — языки, ресурсы и operations.
- Pulumi: Testing — проверки инфраструктурного кода.
- Pulumi: Continuous Delivery — запуск в CI/CD.