Terraform: инфраструктура на уровне кода | страница 44
Обновив свою консоль EC2, вы увидите примерно такое окно, как на рис. 2.5.
Рис. 2.5. У сервера EC2 теперь есть тег с именем
Итак, у вас теперь есть рабочий код Terraform, стоит сохранить его в системе управления версиями. Это позволит вам делиться им с другими членами команды, отслеживать историю всех изменений инфраструктуры и использовать журнал фиксаций для отладки. Ниже показан пример того, как создать локальный Git-репозиторий и применять его для хранения конфигурационного файла Terraform:
git init
git add main.tf
git commit -m "Initial commit"
Cледует также создать файл под названием .gitignore. Он заставляет Git игнорировать определенные типы файлов, которые вы бы не хотели сохранить по случайности:
.terraform
*.tfstate
*.tfstate.backup
Файл .gitignore, показанный выше, заставляет Git игнорировать папку .terraform, которую Terraform использует в качестве временной рабочей папки, а также файлы вида *.tfstate, в которых Terraform хранит состояние (в главе 3 вы узнаете, почему файлы состояния нельзя записывать в репозиторий). Файл .gitignore тоже нужно зафиксировать:
git add .gitignore
git commit -m "Add a .gitignore file"
Чтобы поделиться этим кодом со своими коллегами, вам необходимо создать общий Git-репозиторий, к которому вы все можете обращаться. Для этого можно использовать GitHub. Перейдите на сайт https://github.com, зарегистрируйтесь (если вы этого еще не сделали), создайте новый репозиторий и укажите его в качестве удаленной точки входа под названием origin для своего локального Git-репозитория:
git remote add origin git@github.com:
Теперь, когда вы хотите поделиться своими изменениями с коллегами, можете загрузить изменения в репозиторий origin:
git push origin master
Если вы хотите посмотреть, какие изменения внесли ваши коллеги, можете загрузить изменения из репозитория origin:
git pull origin master
При дальнейшем чтении этой книги и в целом при применении Terraform не забывайте регулярно фиксировать (gitcommit) и загружать (gitpush) свои изменения. Это позволит работать над кодом совместно с членами вашей команды. К тому же все изменения вашей инфраструктуры будут записываться в журнал фиксаций, что придется очень кстати в случае отладки. Больше о командной работе с Terraform вы узнаете в главе 8.
Развертывание одного веб-сервера
Следующим шагом будет развертывание на этом инстансе веб-сервера. Мы попытаемся развернуть простейшую веб-архитектуру: один веб-сервер, способный отвечать на HTTP-запросы (рис. 2.6).