Files
Alexander Abakumov 15e744da49 Initial commit: Complete Software Architecture course with 11 modules
- Added comprehensive course structure with 11 modules
- Included theoretical content, practical examples, and tasks
- Multi-language code examples (Java, Rust, Node.js, Python)
- Detailed analysis of architectural approaches and trade-offs
- Complete caching strategies documentation
- Architecture examples from real-world systems (Twitter, Netflix, Uber)
- Structured navigation and learning path
- Ready for educational use
2025-09-09 22:08:07 +03:00

109 lines
4.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Модуль 3: Контейнеризация и оркестрация
## Навигация
- [🏠 Главная страница курса](../../README.md)
---
## Описание модуля
Этот модуль посвящен изучению современных технологий контейнеризации и оркестрации, которые являются основой для развертывания и управления микросервисными приложениями. Студенты изучат Docker, Kubernetes, Infrastructure as Code и связанные инструменты.
## Содержание модуля
### 1. [Основы контейнеризации](sections/01-containerization-basics.md)
- Что такое контейнеризация
- Преимущества контейнеризации
- Контейнеры vs Виртуальные машины
- Компоненты контейнеризации
### 2. [Docker](sections/02-docker.md)
- Основы Docker
- Dockerfile и лучшие практики
- Docker Compose
- Команды Docker
### 3. [Kubernetes](sections/03-kubernetes.md)
- Архитектура Kubernetes
- Основные объекты (Pod, Deployment, Service, Ingress)
- ConfigMap и Secret
- Сетевая модель и хранилище
### 4. [Infrastructure as Code](sections/04-infrastructure-as-code.md)
- Основы IaC
- Terraform
- Ansible
- Модули и переменные
### 5. [CI/CD с контейнерами](sections/05-cicd-containers.md)
- CI/CD Pipeline
- GitOps
- ArgoCD
- Автоматизация развертывания
### 6. [Мониторинг контейнеров](sections/06-container-monitoring.md)
- Prometheus + Grafana
- ELK Stack
- Логирование и метрики
- Дашборды и алерты
## Ключевые компетенции
После изучения модуля студенты будут уметь:
- Создавать и оптимизировать Dockerfile
- Настраивать Docker Compose для микросервисов
- Развертывать приложения в Kubernetes
- Управлять инфраструктурой через код
- Настраивать CI/CD пайплайны
- Мониторить контейнеры и приложения
## Практические задания
1. **Создание Dockerfile**
- Оптимизация размера образа
- Многоэтапная сборка
- Безопасность и best practices
2. **Docker Compose**
- Настройка микросервисной архитектуры
- Сети и volumes
- Health checks
3. **Kubernetes развертывание**
- Создание манифестов
- Настройка Service и Ingress
- ConfigMap и Secret
4. **Terraform инфраструктура**
- Создание модулей
- Управление состоянием
- Переменные и outputs
5. **CI/CD Pipeline**
- GitHub Actions
- Автоматическое развертывание
- GitOps с ArgoCD
6. **Мониторинг**
- Настройка Prometheus
- Создание дашбордов Grafana
- Централизованное логирование
## Дополнительные ресурсы
- [Docker Documentation](https://docs.docker.com/) - официальная документация Docker
- [Kubernetes Documentation](https://kubernetes.io/docs/) - официальная документация Kubernetes
- [Terraform Documentation](https://terraform.io/docs/) - документация Terraform
- [Prometheus Documentation](https://prometheus.io/docs/) - документация Prometheus
- [Grafana Documentation](https://grafana.com/docs/) - документация Grafana
## Критерии оценки
- Понимание принципов контейнеризации (20%)
- Навыки работы с Docker (25%)
- Опыт работы с Kubernetes (25%)
- Знание Infrastructure as Code (15%)
- Навыки настройки CI/CD (10%)
- Понимание мониторинга (5%)