AleksandrMalinovskiy microservices repository
ДЗ kubernetes-2
Выполнено все согласно методичке.
Развернуто локальное окружение для работы с Kubernetes
Развернут Kubernetes в Yandex Cloud
Запущенно приложение reddit в Kubernetes
ДЗ kubernetes-1
Выполнено все согласно методичке.
По итогу имеем развернутый k8s с двумя нодами.
Созданы приметивы приложения.\
ДЗ logging-1
Выполнено все согласно методичке.
По итогу имеем запущеное приложение на ip:9292 и запущенную систему логирования.
Сделано:
- Подготовлено окружение
- Настроенно логирование Docker-контейнеров
- Настроен сбор неструктурированных логов
- Настроенна визуализация логов
- Настроен сбор структурированных логов
- Настроен распределенный трейсинг
ДЗ monitiring-1
Выполнено все согласно методичке.
По итогу имеем запущеное приложение на ip:9292 и запущенную систему мониторинга.
Самостоятельное задание.
1.Добавьте в Prometheus мониторинг MongoDB с использованием необходимого экспортера.
2.Добавьте в Prometheus мониторинг сервисов comment, post, ui с помощью blackbox exporter.
3.Напишите Makefile , который в минимальном варианте умеет:
- Билдить любой или все образы, которые сейчас используются
- Умеет пушить их в докер хаб
Сделано:
Добавлен контейнер gpuliyar/mongo-exporter, метрики с БД приходят все работает отлично.
Добавлен контейнер blackbox он проверяет отклик с ip:9292 конфиг его лежит в monitoring/blackbox.
Написан Makefile. В нем написаны команды на билд контейнеров и пуш images в dockerhub.
Ссылки на образы в dockerhub.
https://hub.docker.com/repository/docker/aemalinovskiy/prometheus
https://hub.docker.com/repository/docker/aemalinovskiy/post
https://hub.docker.com/repository/docker/aemalinovskiy/comment
https://hub.docker.com/repository/docker/aemalinovskiy/ui
ДЗ docker-4
Выполнено все согласно методичке.
По итогу имеем запущеное приложение на ip:9292, но теперь запущенное и описаное в docker-compose.yml
Самостоятельное задание:
- Изменить docker-compose под кейс с множеством сетей, сетевых алиасов (стр 18).
- Параметризуйте с помощью переменных окружений: • порт публикации сервиса ui • версии сервисов • возможно что-либо еще на ваше усмотрение
- Параметризованные параметры запишите в отдельный файл c расширением .env
- Без использования команд source и export docker-compose должен подхватить переменные из этого файла.
- Узнайте как образуется базовое имя проекта. Можно ли его задать? Если можно то как?
Сделано:
Добавлен алиас к монге
В docker-compose.yml указаны переменные описанные в .env при запуске docker-compose up -d берутся переменные из файла.
В docker-compose.yml добалены строки container_name: для того что бы указать имя контейнера
ДЗ docker -3
Выполнено все согласно методичке.
По истогу получили запущенное приложение в докере на ip:9292
Для хранения информации вне докера подклбчили волиум к монге
В ходе выполнения задания со * были уменьшены размеры image за счет оптимизации сборки\
ДЗ docker -1,2
Выполнено все согласно методичке.
В итоге приложение запущенное в докере на хосте ВМ в яндекс клауд
Образ загружен в докер хаб