[Яндекс Практикум] DevOps для эксплуатации и разработки. Часть 1

95

Это курс для IT-специалистов с опытом работы, которые хотят делать релизы быстрыми и безопасными, инфраструктуру — настраиваемой и стабильной, а взаимодействие команд — слаженным и эффективным.

Вы освоите практики и инструменты DevOps, которые помогут вам решить эти задачи, перейти на новый профессиональный уровень и работать как Netflix — делать сотни деплоев за день.
Программа курса
За 6 месяцев вы разберетесь в методологии DevOps и изучите самые востребованные инструменты.
На практике вы научитесь строить и поддерживать стабильную и масштабируемую инфраструктуру, грамотно настраивать мониторинг. Также вы узнаете, чему инженеры по эксплуатации научились у разработчиков и как работать в парадигме Infrastructure as Code.

Глава 1. Знакомство с компанией
1. Как устроен жизненный цикл ПО.
2. Системы контроля версий. Почему все выбирают Git?
3. Гибкие методологии и DevOps культура.
4. Непрерывная интеграция (CI): сборка и публикация артефактов (Dockerfile, Docker run)
5. Финальный проект бесплатного курса.
Глава 2. Достаточно хороший код
1. Проблематика DevOps и Lean.
2. Непрерывная интеграция (CI): Jenkins, Gitlab CI
3. Измерение качества и тестирванеи безопасности кода (SAST).
Глава 3. Срочные дела
1. Основы работы на серверах Linux: ssh, tmux, NFS.
2. Основы сетей.
3. Виртуализация: виртуальные машины, OpenStack.
Глава 4. Доступно новое обновление
1. Коротко о процессе поставки ценности.
2. Непрерывная поставка (CD): автоматизируем процесс поставки.
3. Когда частые обновления — это хорошо, а когда — избыточно.
Глава 5. Проблемы в инфраструктуре
1. Создание бэкапов.
2. Infrastructure as Code (IaC):
Развёртывание инфраструктуры через Terraform.

  • Подготовка образов ОС через Packer.
  • Конфигурирование серверов при помощи Ansible.
  • Тестирование IaC на примере Ansible Molecule.
  • Обзор других систем управления конфигурацией — Chef, Salt, Puppet.

Глава 6. Незамеченная оплошность
1. Знакомство с базами данных: MySQL, PostgreSQL.
2. NoSQL базы данных: mongoDB, redis, cassandra.
3. Аналитические базы данных: ClickHouse.
4. DevOps для администраторов баз данных.
Глава 7. Изоляция окружения
1. Контейнеризация: Зачем нужны контейнеры?
2. Контейнеры Linux. Архитектура Docker, Docker registry.
3. Альтернативы Docker.
Глава 8. Наплыв пользователей
1. Балансировка и кэширование: nginx, HAproxy.
2. Работа с очередями: RabbitMQ.
Глава 9. Достаточно хорошая инфраструктура
1. Уровни инфраструктуры.
2. Для чего нужны системы оркестрации и какие бывают?
3. Kubernetes:

  • Основные сущности и инструменты для удобной работы с кластером.
  • Как развернуть локальный и боевой кластер.
  • Managed Kubernetes.

4. Организация поставки приложений с Kubernetes.
5. Инфраструктура в облаке:

  • Обзор возможностей облачных сервисов: AWS, GCP, Azure.

Глава 10. Авария
1. Логирование: логи linux, ELK.
2. Мониторинг: типовые аномалии, метрики, Grafana, Prometheus.
3. Алертинг.