Введение в DevOps (на русском языке, онлайн)
Companion Koolitus MTÜ является партнером по карте обучения Эстонской кассы по безработице
NB!!! Это курс для тех, кто уже работал в сфере ИТ и хочет повысить свою квалификацию или сменить специализацию
DevOps — это методология взаимодействия разработчиков, тестировщиков и других IT-специалистов в команде. Такая система нужна, чтобы команда работала более эффективно и слаженно, вовремя исправляла ошибки и грамотно взаимодействовала друг с другом. Специалиста по этой методологии называют DevOps-инженером, или девопсом
Это направление набирает популярность, компании ищут DevOps специалистов, потому что:
- Инженеры DevOps предоставляют поддержку всех главных этапов разработки продукта: от администрирования репозиториев кода до размещения готового продукта на стороне клиента.
- Инженеры DevOps помогают программистам и системным администраторам автоматизировать технические процессы цикла создания продукта, а также решать технические вопросы в разных областях.
Продолжительность обучения: 05.09.23 – 21.11.23 по вторникам, 19.00 – 22.00
Язык обучения: русский.
Группа учебной программы
Развитие компьютерных знаний
Объем учебных часов: 100 ак.ч, в т.ч 48 ак.ч. контактно с преподавателем онлайн и минимум 52 часа дополнительная самостоятельная работа
Целевая группа: Этот курс подходит для системных администратор, который хотят освоить основы DevOps; для других специалистов сферы ИТ, которые хотят сменить специализацию в профессии
Цель обучения
Дать понятие о методологии и профессии DevOps, какую эффективную практику и инструменты инженер DevOps использует в работе; рассмотреть такие технологии и сервисы как git, github projects & github actions, ansible, terraform, сервисы AWS.
Результаты обучения:
В конце обучения учащийся:
— умеет самостоятельно создать небольшое приложение;
— умеет работать с терминалом;
— умеет установить и настроить Linux в облаке;
— имеет понятие об инфраструктуре в качестве кода;
— знает, как ускорять процессы и таким образом избавляться от рутинных задач
*************************************************************************************
Требования к началу курса
NB!!! Для начала учёбы на курсе необходимо иметь следующие знания:
Инженеры DevOps часто работают с операционными системами Linux, которые популярны и широко используются в коммерческой среде. Чтобы работать эффективно, важно научиться работать с командной строкой и терминалом Linux, управлять файловыми системами, а также инсталлировать программы и управлять программами.
- Операционная система Linux. Работа с командной строкой и терминалом. Управление файловой системой. Установка программ и управление программами:
https://learn.microsoft.com/en-us/training/paths/shell/
https://www.digitalocean.com/community/tutorials/a-linux-command-line-primer
2.Инженеры DevOps часто работают удаленно и имеют доступ к разным серверам и системам, поэтому важно освоить SSH и его конфигурацию, аспекты безопасности и управление ключами.
SSH и его использование
Конфигурация SSH клиента и сервера
Аспекты безопасности и управление ключами: https://www.digitalocean.com/community/tutorials/ssh-essentials-working-with-sshservers-clients-and-keys
- Виртуальные машины — это важный инструмент в среде DevOps, так как они позволяют создать и управлять изолированными средами для развития и тестирования.
Создание виртуальных машин
Установка системы на виртуальную машину
Конфигурация сети и обмен данными с хост-компьютером: https://www.virtualbox.org/manual/ch01.html
https://www.codecademy.com/article/installing-linux-using-a-vm
- Инженерам DevOps следует иметь основные знания о структуре и протоколах сетей, так как они часто сталкиваются с конфигурацией и решением проблем сетей. Важно иметь знания о структуре TCP/IP протоколов, IP адресации и маршрутизации:
Генеральная структура TCP/IP протоколов; IP адреса и маршрутизация.
https://www.ibm.com/topics/networking
- Скриптование это важный навык в среде DevOps,так как он позволяет автоматизировать задачи и выполнять повторяющиеся процессы. На начальном уровне вам следовало бы научиться создавать и запускать Shell-скрипты, освоить основные структуры контроля и функции. К тому же основы программирования на Python полезны, так как Python широко используется для автоматизации и скриптования в среде DevOps.Программирование начального уровня с Windows и Linux Shell:
Shell скриптование (Bash или PowerShell) было в разделе о Linux
Создание и запуск скриптов
Основные структуры контроля и функции
Python программирование
HTML: https://www.w3schools.com/html/default.asp
Python курс 1 (учебные материалы Microsoft): Введение в Python программирование: ttps://learn.microsoft.com/en-us/training/paths/beginner-python/
Переходный курс 2: Улучшенное Python программирование: https://learn.microsoft.com/en-us/training/paths/python-language/
Power Shell: https://learn.microsoft.com/en-us/training/modules/script-with-powershell/
**********************************************************************************
Содержание курса
- Методологии разработки программного обеспечения
Классические методологии разработки – Waterfall; Современные методологии разработки – Agile, Scrum framework, Kanban; DevOps как методология; Работа с проектом
- Работа с Git
Начало работы с GitHub: создание проектов; добавление пользователей; создание доски Kanban для работы; введение в системы хранения кодов – git
- Начало работы с Git
проект; конфигурация; создать ключи пользователя и ключи на стороне github; команды git — init; show; status; add; commit; clone; push; pull; diff; ignore; git branch; checkout; hash; cat-file; log; revert; rebase
- Непрерывная интеграция
Что такое стратегия ветвления кода (branching strategy)? Какая стратегия лучше подходит для проекта? Как её реализовать? Практическая работа с GitHub flow. Введение в GitHub actions
- Виды архитектуры программного обеспечения
Монолиты и микросервисы
- Инфраструктура как код
Введение в Ansible: Ansible modules, playbooks, roles. Введение в Terraform
Методы обучения:
Теория, подкрепляемая выполнением практических заданий.
Среда обучения:
Обучение проходит онлайн на платформе ZOOM. Также создаётся общий чат группы для общения участников между собой и получения обратной связи от преподавателя. Каждый участник курса получит ссылку для участия и присоединения к чату.
Первые два занятия бесплатные, чтобы было можно задать возникающие вопросы преподавателю и определить для себя продолжать ли обучение
Перечень учебных материалов:
Материалы, подготовленные преподавателем.
Метод оценивания:
Достижение результатов обучения оценивается безоценочным образом на основе практической работы в течение курса и заключительной экзаменационной работы
Критерии оценивания:
Необходимо, чтобы более 60% заключительной работы было выполнено на положительный результат
Требования к выпускным и выдаваемым документам:
Свидетельство, если учащийся посетил не менее 75% учебных часов, выполнил итоговую работу на положительный результат и тем образом, достиг заявленных результатов обучения.
Справка, если учащийся не выполнил итоговый проект и не достиг заявленных результатов обучения. однако участвовал в учебной работе. Справка выдается в соответствии с числом контактных часов, на которых присутствовал учащийся. но не в том случае, если учащийся принял участие менее чем в половине аудиторных часов.
Описание квалификации преподавателя:
Преподаватели — специалисты с высшим или средне-техническим образованием, получившие профессиональную подготовку в данной области и имеющие практический опыт в сфере ИТ не менее 5 лет.
Преподаватель: Dmitriy Kvaskov, DevOps LECTURER, DevOps&CI/CD manager at EPAM Systems
Цена: 780.00€
Регистрация и инфо: +372 605 1801; +372 5567 3216; koolitus@companion.ee
Лектор
-
Dmitriy Kvaskov DevOps LECTURER DevOps&CI/CD manager at EPAM Systems