Prog Academy
RU UA
DevOps и облака

Что такое Infrastructure as Code (IaC)?

Infrastructure as Code — подход, при котором серверы, сети, базы и права доступа описываются в конфигурационных файлах и создаются автоматически по этому описанию, вместо ручной настройки через веб-интерфейс облака.

Инфраструктура, собранная руками, со временем расходится: тестовое окружение отличается от продакшена, а точный порядок действий помнит один человек. Описание в коде убирает эту неопределённость — окружение можно пересоздать с нуля в любой момент.

Поскольку конфигурация — это файлы, к ней применимы все привычные практики разработки: хранение в Git, история изменений, код-ревью перед применением, автоматическая проверка в CI/CD. Инструменты — Terraform, Ansible, Pulumi и аналоги от облачных провайдеров.

Связанные термины

Terraform

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

DevOps

DevOps — подход к разработке, в котором создание программы и её эксплуатация объединены в один процесс: та же команда отвечает и за код, и за то, как он собирается, разворачивается и работает на серверах. Цель — выпускать изменения часто, быстро и безопасно.

CI/CD

CI/CD — автоматический конвейер, через который проходит каждое изменение кода: сборка, запуск тестов и доставка готовой версии на серверы. Разработчик отправляет код в репозиторий, а всё остальное происходит без ручных действий.

Cloud Computing

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

Git

Git — система контроля версий: она сохраняет историю изменений проекта, позволяет вернуться к любому предыдущему состоянию и даёт нескольким разработчикам работать над одним кодом параллельно, не перезаписывая правки друг друга.