Skip to content

Latest commit

 

History

History
83 lines (60 loc) · 5.18 KB

File metadata and controls

83 lines (60 loc) · 5.18 KB

Домашнее задание к занятию "Оркестрация группой Docker-контейнеров на примере Docker Compose" - Александр Недорезов

Задача 1

Создайте собственный образ любой операционной системы (например, debian-11) с помощью Packer версии 1.5.0 (инструкция).

Чтобы получить зачёт, вам нужно предоставить скриншот страницы с созданным образом из личного кабинета YandexCloud.

Ответ:

Создал конфигурационный файл в формате HCL - debian.custom.pkr.hcl Сборка образа: start build end build Скриншот из консоли управления Yandex Cloud: console screen with image


Задача 2

2.1. Создайте вашу первую виртуальную машину в YandexCloud с помощью web-интерфейса YandexCloud.

manual create

2.2.* (Необязательное задание)
Создайте вашу первую виртуальную машину в YandexCloud с помощью Terraform (вместо использования веб-интерфейса YandexCloud). Используйте Terraform-код в директории (terraform).

Чтобы получить зачёт, вам нужно предоставить вывод команды terraform apply и страницы свойств, созданной ВМ из личного кабинета YandexCloud.

Ответ:

Создал ВМ с помощью Terraform. Скорректировал конфиги в terraform, добавил использование tfvars.
Запуск terraform apply: terraform apply terraform complete Созданная нода в Yandex Cloud node properties in console


Задача 3

С помощью Ansible и Docker Compose разверните на виртуальной машине из предыдущего задания систему мониторинга на основе Prometheus/Grafana. Используйте Ansible-код в директории (ansible).

Чтобы получить зачёт, вам нужно предоставить вывод команды "docker ps", все контейнеры, описанные в docker-compose, должны быть в статусе "Up".

Ответ:

Переработал файлы provision.yml и inventory.yml, актуализировал таски под собственный образ, а также разделил их по группам хостов.
Результат запуска: docker ps


Задача 4

  1. Откройте веб-браузер, зайдите на страницу http://<внешний_ip_адрес_вашей_ВМ>:3000.
  2. Используйте для авторизации логин и пароль из .env.
  3. Изучите доступный интерфейс, найдите в интерфейсе автоматически созданные docker-compose-панели с графиками(dashboards).
  4. Подождите 5-10 минут, чтобы система мониторинга успела накопить данные.

Чтобы получить зачёт, предоставьте:

  • скриншот работающего веб-интерфейса Grafana с текущими метриками

Ответ:

grafana


Задача 5 (*)

Создайте вторую ВМ и подключите её к мониторингу, развёрнутому на первом сервере.

Чтобы получить зачёт, предоставьте:

  • скриншот из Grafana, на котором будут отображаться метрики добавленного вами сервера.

Ответ:

Добавил в terraform создание ВМ target01 и output.
Добавил в ansible provision таргета с запуском экспортеров, изменил конфиг prometheus, а также актуализировал inventory
Прогон плейбука ansible: ansible run
Изменил дашборд Docker Host в Grafana таким образом, чтобы можно было изменять instance для отображения. Теперь на нём видны метрики target01 хоста:
target in grafana