Пример выпускного проекта курса «DevOps практики и инструменты» | OTUS
⚡ Подписка на курсы OTUS!
Интенсивная прокачка навыков для IT-специалистов!
Подробнее

Курсы

Программирование
Team Lead Архитектура и шаблоны проектирования Разработчик IoT C# Developer. Professional PostgreSQL Подготовка к сертификации Oracle Java Programmer (OCAJP) C# ASP.NET Core разработчик
-5%
Kotlin Backend Developer
-8%
iOS Developer. Professional
-8%
Symfony Framework Unity Game Developer. Basic JavaScript Developer. Professional Android Developer. Basic JavaScript Developer. Basic Java Developer. Professional Highload Architect Reverse-Engineering. Professional Java Developer. Basic PHP Developer. Professional Алгоритмы и структуры данных Framework Laravel Cloud Solution Architecture Vue.js разработчик Интенсив «Оптимизация в Java» Супер - интенсив по паттернам проектирования Супер - интенсив по Kubernetes Супер-интенсив "Tarantool" PHP Developer. Basic
Инфраструктура
Мониторинг и логирование: Zabbix, Prometheus, ELK Дизайн сетей ЦОД Разработчик IoT PostgreSQL Экспресс-курс "Версионирование и командная работа с помощью Git"
-30%
Экспресс-курс «Введение в непрерывную поставку на базе Docker» Базы данных Reverse-Engineering. Professional Administrator Linux. Professional Network engineer Cloud Solution Architecture Внедрение и работа в DevSecOps Супер-практикум по работе с протоколом BGP Супер - интенсив по паттернам проектирования Супер - интенсив по Kubernetes Супер-интенсив «СУБД в высоконагруженных системах» Супер-интенсив "Tarantool" Network engineer. Basic
Корпоративные курсы
Безопасность веб-приложений IT-Recruiter Дизайн сетей ЦОД Компьютерное зрение Разработчик IoT Вебинар CERTIPORT Machine Learning. Professional
-6%
NoSQL Пентест. Практика тестирования на проникновение Java QA Engineer. Базовый курс Руководитель поддержки пользователей в IT
-8%
SRE практики и инструменты Cloud Solution Architecture Внедрение и работа в DevSecOps Супер-практикум по работе с протоколом BGP Infrastructure as a code Супер-практикум по использованию и настройке GIT Промышленный ML на больших данных Экспресс-курс «CI/CD или Непрерывная поставка с Docker и Kubernetes» BPMN: Моделирование бизнес-процессов Основы Windows Server
Специализации Курсы в разработке Подготовительные курсы Подписка
+7 499 938-92-02

Пример выпускного проекта курса «DevOps практики и инструменты»

DevOps_Deep_26.4_site-5020-982438.png

Выполнение выпускного проекта предусмотрено в конце курса «DevOps практики и инструменты» в OTUS. Это самостоятельная работа, необходимая для закрепления полученных знаний. Предлагаем вашему вниманию проект балансировщика одного из наших выпускников, Вячеслава Егорова.

Вячеслав создал хорошо задокументированный проект, использующий стек ELK в кластере, Traefik и SSL для обеспечения доступа к сервисам и балансировки нагрузки.

Инфраструктура следующая: — поднимаются ВМ; — внутри — docker-swarm-cluster; — остальное — в виде абстракции Stack в Docker swarm.

Инфраструктура поднимается с помощью Terraform и выполняется в Shared gitlab-runner.

Давайте посмотрим на Pipeline проекта:

2-20219-b85a30.jpg

А вот принцип работы Traefik:

3-20219-d730f3.jpg

Обратите внимание, что каждому контейнеру в кластере мы можем назначать label. И если label traefik.enable=true, то traefik найдёт контейнер и будет ждать подключения по адресу, прописанному в label.

 deploy:
     labels:
       - traefik.enable=true
       - traefik.basic.frontend.rule=Host:shop.${DOMAIN}
       - traefik.basic.port=9090
       - traefik.basic.protocol=http

Подробную информацию об особенностях реализации вы можете узнать по ссылке на репозиторий или в презентации.

Проект был рассмотрен преподавательским составом и получил следующие оценки и рекомендации: 1. Преимущества: — использование Traefik для доступа к сервисам с автоматическим получением сертификатов SSL; — управление Google DNS при помощи Ansible; — использование в проекте Docker swarm является и плюсом и минусом одновременно; — применённое приложение Sockshop в лучших традициях показывает, что такое микросервис; — решение использовать Swarmprom достаточно логично. 2. Рекомендации: — постараться разработать и добавить свои метрики и визуализировать их в Grafana; — разработать CI\CD; — доработать систему разворота окружения; — внедрить систему логирования; — доработать документацию.

Кроме того, были отмечены преимущества инструментария для работы с обратной связью проекта: — Swarmprom-сборка для мониторинга кластера Docker swarm; — кластер ELK для логирования, шаблоны для парсинга логов.

Также преподаватели порекомендовали уделить внимание процессу ci\cd, так как оптимальным решением будет вынести мониторинг в другой репозиторий для возможности работы инфраструктурной команды.

Несмотря на несколько рекомендаций, итоговый проект был признан успешным. Студент на практике продемонстрировал полученные знания и расширил своё профессиональное портфолио.

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться