Учебное пособие по дисциплине "Автоматизация разработки и эксплуатации ПО" (АРЭ ПО).
Видеозаписи лекций:
Презентации:
- Лекция 1. Введение в DevOps. Системы виртуализации и облачные решения (Михаил Кучеренко)
- Лекция 2. Контейнеризация + БД (Михаил Кучеренко + Алексей Якубов)
- Лекция 3. Контроль версий, Git, CI/CD (Дмитрий Аладин)
- Лекция 4. Масштабируемость и отказоустойчивость + docker compose (Антон Балашов)
- Лекция 5. Мониторинг, логирование и оповещение событий (Михаил Кучеренко) ELK и тд
- Лекция 6. Конфигурационное управление. Ansible, Terraform (Антон Балашов)
- Лекция 7. Kubernetes (Алексей Якубов)
- Лекция 8. Облачная инфраструктура в общем. BASIS (Алексей Якубов + Михаил Кучеренко)
- Лекция 9. DevOps для задач обработки данных и машинного обучения (Гапанюк Ю.Е.)
- Лекция 10. Паттерны использования Kubernetes (Алексей Якубов + Михаил Кучеренко)
- Лекция 11. Infrastructure as Code. Terraform (Антон Балашов)
- Лекция 12. Раздел "Базы данных". Часть 1 (Виноградова М.В.)
- Лекция 13. Раздел "Базы данных". Часть 2 (Виноградова М.В.)
- Лекция 15. Раздел "Обработка больших данных". Часть 2. Apache Spark (Лахвич Д.С.)
Дополнительные ссылки:
Автор: Михаил Кучеренко
- Знакомство с Ubuntu 20.04.
- Поставить docker, через bash, сетевые интерфейсы.
Авторы: Михаил Кучеренко + Алексей Якубов
- Первая половина:
- Работа с PostgreSQL/MySQL
- Docker Volume
- Вторая половина:
- Php My Admin/Adminer во втором контейнере
Автор: Антон Балашов
- Первая половина:
- HTML страничка
- Балансировщик nginx (HAProxy)
- Вторая половина:
- веб-сервис с БД
Итог 4 взаимосвязанных контейнера в docker-compose:
- субд postgresql, проверяем как работают volumes
- микросервис-1, только отдает html страничку
- микросервис-2, обращатеся в БД, сетевое взаимодействие
- балансировщик (haproxy/nginx) с port-forwarding-ом, будет перенаправлять запросы на другие контейнеры
Автор: Дмитрий Аладин
- Первая половина:
- Создание репозитория GitLab/GitHub
- Управление репозиторием с помощью команд git
- Вторая половина:
- Добавление в репозиторий проекта с юнит-тестами
- Настройка Pipeline в GitLab/GitHub:
- Проверка качества кода
- Активация юнит-тестов
- Сборка проекта в бинарник и публикация в артефакты Releases
- Настройка Runner-ов
- Активация настроенных Pipeline
Автор: Михаил Кучеренко
Задачи:
- Установили Prometheus + Grafana + Alertmanager.
- Настроили мониторинг, написали конфиги.
- Если плохо - использовать готовый образ
Автор: Антон Балашов
- Создаем виртуалку поменьше чтобы мониторить из первой виртуалки
- Пишем playbook, который автоматизирует развертывание виртуалки
- В конце выключаем 2 имеющихся виртуалки
Автор: Алексей Якубов
- minikube - 8 RAM достаточно. Из коробки не заработает. Для тех, у кого мощные машины - у большинства, дадим в кластере
- В отдельной виртуалке кубер. Много манифестов написать
Итог - все контейнеры поднять в кубере и замониторить
Автор: Алексей Якубов
- Развернуть свой проект из 5 лабораторной курса РИП в контейнеры Docker Compose: Django + ORM + таблица в MySQL (без AJAX, SPA и React)
По вашей дипломной работе необходимо создать контейнеры Docker Compose, без Kubernetes. Например: React, Django REST или что-то свое.
По ДЗ BASIS от Ростелеком: Helm, и тд - только для сертификата Ростелекома
- Открытая вечерняя школа. Kubernetes для разработчиков (Осень 2021)
- Микрослужбы .NET: Архитектура контейнерных приложений .NET
- Обсуждение книги Мартина Клеппмана "Designing Data-Intensive Applications" в формате подкастов Tinkoff Reader Club "Code of Architecture"