Одним из ключевых элементов, способствующих успешному слиянию DevOps и SRE, является подход «Инфраструктура как код» (IaC). Описание инфраструктуры кодом обеспечивает культуру минимизации человеческого фактора при эксплуатации и изменениях в IT-инфраструктуре.
IaC позволяет хранить описание инфраструктуры в виде программного кода в репозиториях с контролем версий. Часто причина отказов в сервисах заключается в том, что кто-то из разработчиков внёс некорректные изменения в настройки сервера, из-за чего сервис перестал работать.
В Git in Sky эта ситуация купируется тем, что мы не настраиваем десятки серверов вручную после внесения правок в код. Мы пишем код один раз, проверяем его на одном сервере, а затем распространяем правку по всей базе серверов. Так мы значительно снижаем вероятность человеческой ошибки. Для
описания инфраструктуры кодом мы используем открытую систему управления конфигурациями Ansible. Этот подход заметно улучшает предсказуемость работы инфраструктуры, позволяет иметь полный контроль и историю изменений.
Так же данный подход позволяет иметь полную историю изменений, вносимых в инфраструктуру, что совместно с мониторингом позволяет находить изменения, после которых, например, произошла деградация производительности или участились инциденты.