Программирование [МГТУ им.Н.Э.Баумана] DevOps-инженер (2024)

Модератор
Регистрация
7 Апр 2023
Сообщения
1,672
Реакции
10,436
Автор: МГТУ им.Н.Э.Баумана
Название: DevOps-инженер (2024)

2024-07-08_18-16-23.png

Что делает DevOps-инженер?
DevOps-инженер отвечает за использование одноименной методологии в компании. Он разбирается в программировании и инфраструктуре и объединяет эти знания для оптимальной работы бизнеса.

Твои навыки после обучения
OSI/ISO, NoSQL, SQL, HAProxy, Nginx, KVM, QEMU, Terraform, Python, Git, CI\CD и др.

Содержание программы
  • Введение в профессию “DevOps-инженер“
  • Основы администрирования OS
  • Системы и сети передачи данных
  • Системы хранения данных: типы и особенности
  • Базы данных
  • Администрирование баз данных
  • Масштабируемость и отказоустойчивость
  • Мониторинг, логирование и оповещение событиях
  • Виртуализация в DevOps
  • Облачные решения
  • Работа с Terraform: как управлять облачной инфраструктурой
  • Конфигурационное управление. Что такое IaC.
  • Системы контроля версий. Распределённая система управления версиями Git
  • Жизненный цикл ПО
  • Практические навыки работы с Docker
  • Микросервисы и микросервисная архитектура
  • Оркестровка контейнеров, кластеры Kubernetes
  • Kubernetes: конфигурация развертывания
  • Планирование безопасности для кластера Kubernetes

    Подробно:Введение в профессию “DevOps-инженер“
    - Знакомство с основной терминологией
    - Цели методологии DevOps
    - Общее представление об инфраструктуре современной разработки
    - Российские и иностранные разработки в области DevOps

    Основы администрирования OS
    - Принципы работы современных компьютеров: процессоры, память, накопители
    - Средства автоматизации и основные функции систем. Типы и назначение операционных систем. Архитектура ОС на примере Linux
    - Процессы, управление процессами
    - Память, управление памятью
    - Шедулер (Планировщик(задач))
    - Дисковые системы
    - Файловые системы
    - Ядро операционной системы
    - Загрузка ОС
    - Типы дистрибутивов
    - Управление пакетами
    - Инициализация системы. Systemd, init-v
    - Управление пользователями
    - Кеширующий прокси-сервер (squid)
    - Производительность системы

    Системы и сети передачи данных
    - Модель OSI/ISO. Обзор сетевых протоколов
    - L2/3/4-сеть
    - Сеть передачи данных (SAN)
    - NAT
    - Виртуальные частные сети (VPN): OpenVPN, L2TP/Ipsec, SSTP, PPTP
    - Firewall
    - Высокоуровневые сетевые протоколы
    - Траблшутинг (Поиск и решение проблем)
    - DHCP, PXE
    - DNS
    - HTTP/HTTPS
    - IPv4, IPv6
    - Базовое программирование на Bash. Коды возврата, функции. Regexp и их использование для синтаксического анализа. Полезные утилиты.
    - Разбор скриптов и написание своих скриптов. Linter. Shell check.

    Системы хранения данных: типы и особенности
    - Теория жёстких дисков (что такое IOPS)
    - Контроллеры и дисковые массивы
    - Кеширование Redis/memcached
    - Протоколы СХД
    - Типы СХД
    - Достоинства и недостатки типов СХД

    Базы данных
    - Базы данных (иерархические, реляционные, объектно-реляционные и др.)
    - Работа с данными (DDL/DML), NoSQL
    - SQL
    - Индексы
    - Репликация и масштабирование
    - Резервное копирование
    - База данных в облаке

    Администрирование баз данных
    - Типы и структура СУБД
    - Запросы, индексы и эксплейны
    - Администрирование MySQL
    - Администрирование
    - PostgreSQL
    - Troubleshooting

    Масштабируемость и отказоустойчивость
    - Pacemaker
    - Резервное копирование, типы, виды, сравнение популярных решений. Балансировка нагрузки. HAProxy/Nginx
    - Disaster recovery
    - Keepalived/vrrp
    - Отказоустойчивость в облаке

    Мониторинг, логирование и оповещение событиях
    - Зачем и что нужно мониторить
    - Системы для мониторинга
    - Централизованное управление логами Graylog
    - Система визуализации, мониторинга и анализа данных Grafana
    - ELK (Elasticsearch, Logstash и Kibana)
    - Менеджер очередей RabbitMQ
    - Cбор и анализ ошибок при помощи Sentry
    - Инцидент-менеджмент Zabbix

    Виртуализация в DevOps
    - Основы виртуализации
    - Типы виртуализаций KVM, QEMU
    - Системы управления виртуализацией

    Облачные решения
    - Виды облачных сервисов (публичные, частные, интернет вещей, смешанные)
    - Организация сети
    - Вычислительные мощности
    - Контексты безопасности. Менеджеры секретов. Кластеры. Ресурсы под управлением облачного провайдера

    Работа с Terraform: как управлять облачной инфраструктурой
    - Облачные провайдеры IaaS, отечественные и зарубежные. Синтаксис и принцип работы Terraform
    - Введение в Golang
    - Написание собственных провайдеров для Terraform
    - Развертывание инфраструктуры на платформе Базис.DigitalEnergy с применением Terraform

    Конфигурационное управление. Что такое IaC.
    - Введение в Ansible
    - Работа с Playbook
    - Работа с Roles
    - Введение в Python
    - Создание собственных Modules
    - Создание инфраструктуры в Базис.DigitalEnergy с использованием Ansible

    Системы контроля версий. Распределённая система управления версиями Git
    - Виды и типы SCM и для чего они применяются
    - Основы Git
    - Ветвления в Git. Хранилища репозиториев
    - Инструменты Git

    Жизненный цикл ПО
    - CI\CD
    - Практическое знакомство с Jenkins
    - Практическое знакомство с TeamСity
    - Практическое знакомство с Gitlab

    Практические навыки работы с Docker
    - Знакомство с Docker
    - Создание собственного Image
    - Создание собственного контейнера
    - Знакомство с Registry
    - Размещение своего Image в публичный Registry

    Микросервисы и микросервисная архитектура
    - Введение в микросервисы
    - Микросервисы: принципы
    - Микросервисы: подходы
    - Микросервисы: масштабирование

    Оркестровка контейнеров, кластеры Kubernetes
    - Компоненты Kubernetes: api-server, scheduler, kubelet, etcd. Команды для работы с Kubernetes
    - Развертывание кластера на собственных серверах
    - Сетевые решения CNI
    - Service mesh. Знакомство с Istio и Envoy. Контейнеры, поды, deployment, statefulset, services, endpoints

    Kubernetes: конфигурация развертывания
    - Разделы и монтирование
    - Работа c Kubectl
    - Инструменты для упрощения написания конфигурационных файлов. Helm и Jsonnet. Поддержка нескольких окружений на примере Qbec. Создание и использование секретов
    - Планирование безопасности для кластера Kubernetes
    - Синхронизация секретов с внешними сервисами. Vault
    - Карты конфигураций
    - Сервис-аккаунты
    - SecurityContext, NetworkPolicies
    - Виды и типы SC

    Планирование безопасности для кластера Kubernetes
    - Синхронизация секретов с внешними сервисами. Vault
    - Карты конфигураций
    - Сервис-аккаунты
    - SecurityContext, NetworkPolicies
    - Виды и типы SC


  • Руководитель программы: Лучков Александр
    Ведущий инженер НТЦ методологического сопровождения разработки АО "К-Технологии".
    Специалист в области автоматизации управления разработкой программного обеспечения.
    Частный консультант в области организации проектирования продуктов

    Заместитель руководителя программы: Новиков Степан
    Выпускник кафедры прикладной математики, информатики и вычислительной техники космического факультета МФ МГТУ им. Н. Э. Баумана по специальности "Прикладная математика и информатика

    Преподаватели курса: Крылов Александр, Игнатенко Филипп

    Подробнее:
    Скрытое содержимое. Вам нужно войти или зарегистрироваться.
    Скачать:
    Платное содержимое
 
Назад
Сверху Снизу