Skip to content

Latest commit

 

History

History
73 lines (48 loc) · 5.07 KB

hw-01.md

File metadata and controls

73 lines (48 loc) · 5.07 KB

Домашнее задание к занятию "Введение в Terraform"

Цель задания

  1. Установить и настроить Terrafrom.
  2. Научиться использовать готовый код.

Чеклист готовности к домашнему заданию

  1. Скачайте и установите актуальную версию terraform(не менее 1.3.7). Приложите скриншот вывода команды terraform --version
  2. Скачайте на свой ПК данный git репозиторий. Исходный код для выполнения задания расположен в директории 01/src.
  3. Убедитесь, что в вашей ОС установлен docker

Инструменты и дополнительные материалы, которые пригодятся для выполнения задания

  1. Установка и настройка Terraform ссылка
  2. Зеркало документации Terraform ссылка
  3. Установка docker ссылка

Задание 1

  1. Перейдите в каталог src. Скачайте все необходимые зависимости, использованные в проекте.
  2. Изучите файл .gitignore. В каком terraform файле допустимо сохранить личную, секретную информацию?
  3. Выполните код проекта. Найдите в State-файле секретное содержимое созданного ресурса random_password. Пришлите его в качестве ответа.
  4. Раскомментируйте блок кода, примерно расположенный на строчках 29-42 файла main.tf. Выполните команду terraform validate. Объясните в чем заключаются намеренно допущенные ошибки? Исправьте их.
  5. Выполните код. В качестве ответа приложите вывод команды docker ps
  6. Замените имя docker-контейнера в блоке кода на hello_world, выполните команду terraform apply -auto-approve. Объясните своими словами, в чем может быть опасность применения ключа -auto-approve ?
  7. Уничтожьте созданные ресурсы с помощью terraform. Убедитесь, что все ресурсы удалены. Приложите содержимое файла terraform.tfstate.
  8. Объясните, почему при этом не был удален docker образ nginx:latest ?(Ответ найдите в коде проекта или документации)

Дополнительные задания (со звездочкой*)

Настоятельно рекомендуем выполнять все задания под звёздочкой. Их выполнение поможет глубже разобраться в материале.
Задания под звёздочкой дополнительные (необязательные к выполнению) и никак не повлияют на получение вами зачета по этому домашнему заданию.

Задание 2*

  1. Изучите в документации provider Virtualbox от shekeriev.
  2. Создайте с его помощью любую виртуальную машину.

В качестве ответа приложите plan для создаваемого ресурса.


Правила приема работы

Домашняя работа оформляется в отдельном GitHub репозитории в файле README.md.
Выполненное домашнее задание пришлите ссылкой на .md-файл в вашем репозитории.

Критерии оценки

Зачёт:

  • выполнены все задания;
  • ответы даны в развёрнутой форме;
  • приложены соответствующие скриншоты и файлы проекта;
  • в выполненных заданиях нет противоречий и нарушения логики.

На доработку:

  • задание выполнено частично или не выполнено вообще;
  • в логике выполнения заданий есть противоречия и существенные недостатки.