Вы находитесь на странице: 1из 10

Программа курса:

 
Занятие 1
- Введение в DevOps, методология, основные понятия
- Настройка рабочей среды. Инструментарий. Облачный
аккаунт
- Жизненный цикл ПО
- Циклы и этапы разработки ПО
- Методологии разработки ПО. Agile, Waterfall, Scrum
 
Занятие 2
- Linux: основы.  Разновидности Linux
- Linux: ядро, процессы, файлы
- Linux: основные команды
- Linux: Bash, программирование. Основные сценарии
использования
 
Занятие 3
- Знакомство с системами контроля версий (scm)
- Git. Создание веток, основные понятия
- Git. Клонирование, слияния, merge
- Знакомство с GitHub. Создание и работа с репозиториями
- CI/CD. Jenkins. Знакомство
 
Занятие 4
- Контейнеризация. Базовые понятия
- Знакомство с Docker. Философия Docker
- Docker hub и Docker registry
- Работа с Dockerfile
- Упаковка приложений в Docker
 
Занятие 5
- Обзор систем управления конфигурациями
- Ansible. Основные концепции
- Синтаксис YAML
- Ansible. Ad-Hoc команды
- Ansible playbook
Модуль 1.  Инструменты.
 
      Занятие 1  - бесплатное                                 
    • Введение в DevOps, методология, основные понятия,
инструменты
    • Настройка рабочей среды
    • Жизненный цикл ПО
    • Циклы и этапы разработки ПО
    • Методологии разработки ПО
    • Agile, Waterfall, Scrum
    ДЗ. Подготовка «облачного» аккаунта для лабораторных
работ
 
      Занятие 2
    • Linux: основы.  Разновидности Linux
    • Linux: ядро, процессы, файлы
    • Linux: основные команды
    • Linux: мониторинг системы
    • Linux: Bash скриптинг. Основные сценарии использования
    • Современные инструменты для работы с Linux системами
    ДЗ. Написание программы бэкапа на bash
 
      Занятие 3
    • Виртуализация. Типы гипервизоров
    • Microsoft Hyper-v, VMware Esxi, Xen, KVM
    • Системы сборки. Apache Maven. Gradle
    • Общее представление о работе Java-приложений
    • Знакомство с контейнерами сервлетов
    • Apache Tomcat. Установка и конфигурирование
    ДЗ. Деплой выборочного Java-приложения
 
      Занятие 4
    • Базы данных
    • Типы и структуры БД
    • знакомство с Postgresql. Кластер, диспетчер очередей,
репликация
    • знакомство с Mysql, Percona XtraDB cluster
    • мониторинг работы БД. Backup
    • Особенности работы с NoSQL БД
    ДЗ. Деплой и разбор тестовой БД Postgresql
   
      Занятие 5
    • Знакомство с системами контроля версий
    • Git. Основные понятия, команды
    • Git. Создание веток, репозитории
    • Git. Клонирование, слияния, merge request
    • Знакомство с GitHub
    • Gitlab-введение
    ДЗ. Создание собственного репозитория на GitLab. Работа
с репозиторием
 
      Занятие 6
    • Понятие Контейнеризации
    • Знакомство с Docker
    • Dockerfile
    • Упаковка приложений в Docker
    • Создание кластера с Docker-compose
    • Docker Swarm mode
    • Особенности работы с сетями в Docker
    • Мониторинг контейнеров
    • Docker registry: native, Artifactory / Nexus
    ДЗ. Упаковка приложения в Docker
 
      Занятие 7
    • Docker практика
    • Наработка навыков создания Dockerfile
    • Упаковка своего приложения в Docker
    • Автоматизация сборки приложений с помощью Docker-
compose
    ДЗ. Практика создания Docker-контейнеров
 
      Занятие 8
    • Обзор систем управления конфигурациями
    • Ansible. Знакомство с концепцией "Infrastructure as Code"
    • Синтаксис YAML
    • Ansible: файл инвентаризации
    • Ansible: знакомство с переменными, модулями shell, copy
и др.
    • Ansible: запуск на группу хостов
    • Ansible: шаблоны и роли конфигурации
    ДЗ. Подготовка тестового окружения с помощью Ansible
 
      Занятие 9
    • Ansible практика
    • Написание плэйбуков. Работа с ролями
    • Ansible-galaxy. Обзор готовых ролей
    • Ansible: поднимаем кластер приложений
    ДЗ. Практика работы с Ansible
 
Модуль 2. Автоматизация.
 
      Занятие 10
    • Знакомство с CI/CD
    • Jenkins: знакомство
    • Запуск Jenkins в Docker
    • Jenkins: модули, используемые плагины
    • Автоматизация сборок. Best practice
    • TeamCity: Обзор
    ДЗ. Написание Job-ов  Jenkins
 
      Занятие 11
    • Тестирование ПО. Основные этапы и виды.
    • Jenkins практика, построение pipeline
    • Jenkins: автоматизируем процессы разработки
    ДЗ. Автоматизация деплоя нескольких приложений в
небольшой тестовой среде
 
      Занятие 12
    • Микросервисы. Введение в Kubernetes.
    • Концепции и архитектура Kubernetes. Pod
    • Kubectl, minikube.
    ДЗ. Практика работы с Kubernetes в облачной среде
 
      Занятие 13
    • Облачные технологии
    • Знакомство с AWS. awscli - управление из консоли
    • AWS EC2. Создание инстансов
    • AWS S3. Работа с облачным хранилищем
    • AWS Route 53
    • AWS CloudWatch, мониторинг и биллинг
    • Знакомство и обзор сервисов MS Azure
    ДЗ. Деплой распределенного приложения в AWS E2
 
      Занятие 14
    • Облачные технологии
    • Знакомство с Google Cloud. Rancher. Упрощаем настройку
Kubernetes
    • Terraform - облачный Deploy
    ДЗ. Практика работы с Terraform
 
      Занятие 15
    • Анализ и мониторинг логов
    • Обзор актуальных систем мониторинга логов
    • ELK-стек. Практика настройки
    • ELK-стек. Паттерны Logstash
    • ELK-стек. Kibana, создание визуализаций
    ДЗ. Написание парсера логов для приложения
 
     Занятие 16
    • Мониторинг инфраструктуры
    • Обзор наиболее распространенных утилит для
мониторинга
    • Zabbix - Enterprise monitoring. Шаблоны, хосты,
комплексные экраны. Практика настройки
    • Grafana и CollectD / FluentD / StatsD
    • Prometheus - современное видение мониторинга
   ДЗ. Разработка системы мониторинга для приложения
 
  + Бонус: Разбор и составление резюме
Модуль 1.  Инфраструктура.
 
      Занятие 1 - Архитектура высоконагруженных приложений
    • Hardware and software bootleneck
    • Linux Kernel: Highload tuning
    • Горизонтальное и вертикальное масштабирование
сервисов
    • Кластерный подход
    • Подход Мульти-ЦОД
   
      Занятие 2 - Балансировка нагрузки
    • Аппаратные и программные балансировщики
    • Алгоритмы и методы балансировки на различных сетевых
уровнях
    • HAproxy/Nginx/BalanceNG
    • Облачные решения и решения интеграторов
    • Балансировка нагрузки приложений
   
      Занятие 3 - Системы хранения данных
    • Аппаратные СХД: HPE, Dell EMC, Lenovo
    • Файловые системы Linux
    • ext4/zfs/btrfs
    • Дедупликация данных, снапшоты, бэкап
    • Veeam Backup & Replication
    • Распределенные файловые системы. GlusterFS, CEPH
    • Object storage, block storage, blob storage
    • Шифрование данных
    • Практика работы с CEPH
 
      Занятие 4 - Базы данных 
    • Шардирование и партиционирование на примере
Postgresql 12
    • Postgresql HA. Репликация master-master
    • Postgresql. Barman. Continuous backup
    • Кластеризация MongoDB
    • Кластеризация Redis
    • Паттерны NewSQL
    • DBMS ClickHouse. Особенности кластерной конфигурации
   
      Занятие 5 - Сети и сетевая безопасность
    • VPN. Структура и уровни реализации
    • IPSec/PPTP/L2TP/OpenVPN/WireGuard
    • Организация Mesh-сетей. OpenvSwitch
    • Расширенные методы настройки фаерволов
    • Инспектирование, перехват пакетов, анализ. Работа с
nDPI
    • Системы защиты от сетевых угроз
    • Работа со сканером Tenable Nessus
 
      Занятие 6 - Безопасность окружений
    • Современные средства защиты информации
    • Безопасность в "облачных" средах
    • Сценарии применения IPS/IDS
    • Использование встроенных механизмов Linux/Systemd
    • Многокомпонентная изоляция окружений
    • Мониторинг событий безопасности. AT&T Cubersecurity
OSSIM
    • 2FA & MFA Google Authenticator
    • Работа с сертификатами
    • Обзор инструментов дистрибутива Kali Linux
   
Модуль 2. Инфраструктура как код
 
      Занятие 7 - Архитектурные принципы построения IaC
    • Организация репозиториев
    • Ansible v2.9. Расширенная работа с ролями
    • Ansible. Многообразие переменных
    • Ansible. Molecule. Тестирование плэйбуков
    • Ansible boosters
    • Создание собственных модулей Ansible
 
      Занятие 8 - Трансформация инфраструктуры
    • Ansible. Практика работы с IaC
    • Методы преобразования уже сформированной
инфраструктуры в IaC
    • Расширенная шаблонизация Jinja2
    • Работа с Vault
 
      Занятие 9 - Terraform. Best practice
    • Разворачивание кластера приложений в Google cloud
    • Мультиоблачный деплой. Disaster recovery AWS-AZURE-
GC
    • Уровни подготовки приложения
    • Инкапсуляция кода Ansible
    • Инкапсуляция кода Python. Скриптинг
 
      Занятие 10 - Amazon Web Services*
    • AWS Developer Services for CI/CD
    • One-Click Deploy
    • Построение IaC в облаках
    • Практика работы с AWS
  
      Занятие 11 - AWS CloudFormation*
    • Практика работы с AWS IaC
 
      Занятие 12 - AWS CloudFormation*
    • Практика работы с AWS Iac
 
Модуль 3. Микросервисы
 
      Занятие 13 - Kubernetes Service Mesh*
    • Общая архитектура работы приложений
    • Компоненты кластерного приложения
    • Проблемы высоконагруженных систем k8s
    • Service discovery. Consul
    • Service Mesh. Linkerd
    • Практика работы с Istio
 
      Занятие 14 - Kubernetes HA*
    • Обзор Kubernetes Ingress Controllers
    • Стратегии обновления приложений
    • AB тестирование
    • Blue/Green Deployment
    • Canary Deployment
    • Post-Deployment Monitoring
 
      Занятие 15 - Kubernetes CI/CD*
    • Знакомство с Google Container Tools
    • Container Structure Tests
    • Skaffold. Обзор
    • Пакетный менеджер Helm. Практика работы
    • Взаимодействие с Gitlab-Ci
 
      Занятие 16 - Kubernetes Monitoring*
    • cAdvisor
    • ELK stack. Работа с логированием
    • Практика работы с Prometheus
    • Prometheus Alerting, Exporters, Visualization
    • Трассировка приложений. Zipkin/Jaeger
    • Sensu. Monitoring as Code
  
      Занятие 17 - Kubernetes Messaging*
    • Брокеры сообщений
    • Стандарт AMPQ
    • Разбор простого интерфейса обмена данными
    • Практика работы с RabbitMQ в Kubernetes
    • Знакомство с Apache Kafka
   
      Занятие 18 - Serverless технологии
    • Философия Everythings as Service
    • Облачные решения. Aws Lambda
    • Знакомство с Knative. Запуск Python-приложения в
serverless среде
    • Знакомство с платформой Apache OpenWhisk
   
Модуль 4. Технологии
 
      Занятие 19 - Концепции BigData
    • Основы Apache Hadoop, HBase
    • Знакомство с парадигмой MapReduce
    • Hadoop Common
    • Знакомство с Hive
    • Использование СУБД Apache Cassandra
    • Talend. Обзор
 
      Занятие 20 - Machine learning
    • Основы Машинного обучения
    • Знакомство с Google TensorFlow
    • Сверточные нейронные сети
    • Моделирование работы системы распознавания объектов
 
      Занятие 21 - ChatOps
    • Написание бота на Python
    • Работа с Hubot
    • Интеграция в Slack и Telegram
    • Знакомство с платформой StackStorm
 
    + 2-х недельная стажировка в компании-партнере по
окончании курса.

Вам также может понравиться