Домашнее задание к занятию "Оркестрация группой Docker-контейнеров на примере Docker Compose" - Александр Недорезов
Создайте собственный образ любой операционной системы (например, debian-11) с помощью Packer версии 1.5.0 (инструкция).
Чтобы получить зачёт, вам нужно предоставить скриншот страницы с созданным образом из личного кабинета YandexCloud.
Создал конфигурационный файл в формате HCL - debian.custom.pkr.hcl Сборка образа:
![]()
Скриншот из консоли управления Yandex Cloud:
2.1. Создайте вашу первую виртуальную машину в YandexCloud с помощью web-интерфейса YandexCloud.
2.2.* (Необязательное задание)
Создайте вашу первую виртуальную машину в YandexCloud с помощью Terraform (вместо использования веб-интерфейса YandexCloud).
Используйте Terraform-код в директории (terraform).
Чтобы получить зачёт, вам нужно предоставить вывод команды terraform apply и страницы свойств, созданной ВМ из личного кабинета YandexCloud.
Создал ВМ с помощью Terraform. Скорректировал конфиги в terraform, добавил использование tfvars.
Запуск terraform apply:![]()
Созданная нода в Yandex Cloud
С помощью Ansible и Docker Compose разверните на виртуальной машине из предыдущего задания систему мониторинга на основе Prometheus/Grafana. Используйте Ansible-код в директории (ansible).
Чтобы получить зачёт, вам нужно предоставить вывод команды "docker ps", все контейнеры, описанные в docker-compose, должны быть в статусе "Up".
Переработал файлы provision.yml и inventory.yml, актуализировал таски под собственный образ, а также разделил их по группам хостов.
Результат запуска:
- Откройте веб-браузер, зайдите на страницу http://<внешний_ip_адрес_вашей_ВМ>:3000.
- Используйте для авторизации логин и пароль из .env.
- Изучите доступный интерфейс, найдите в интерфейсе автоматически созданные docker-compose-панели с графиками(dashboards).
- Подождите 5-10 минут, чтобы система мониторинга успела накопить данные.
Чтобы получить зачёт, предоставьте:
- скриншот работающего веб-интерфейса Grafana с текущими метриками
Создайте вторую ВМ и подключите её к мониторингу, развёрнутому на первом сервере.
Чтобы получить зачёт, предоставьте:
- скриншот из Grafana, на котором будут отображаться метрики добавленного вами сервера.
Добавил в terraform создание ВМ target01 и output.
Добавил в ansible provision таргета с запуском экспортеров, изменил конфиг prometheus, а также актуализировал inventory
Прогон плейбука ansible:
Изменил дашборд Docker Host в Grafana таким образом, чтобы можно было изменять instance для отображения. Теперь на нём видны метрики target01 хоста: