DevOps-инженер от Нетологии
Программа курса
Ознакомьтесь с программой курса «DevOps-инженер» от Нетологии
- DevOps и инфраструктурная инженерия. В этом модуле вы овладеете базовой терминологией, используемой в процессе создания программного обеспечения. Познакомитесь с популярными методологиями разработки и поймёте их различия. Узнаете, зачем нужны инфраструктурные архитекторы и чем они занимаются.
- Знакомство с основной терминологией
- Различие DevOps и DevSecOps
- Цели методологии DevOps
- Общее представление об инфраструктуре современной разработки
- Обзор используемых инструментов
- Циклы и этапы разработки ПО
- Гибкие методологии разработки: Agile, Scrum, Kanban
- Системы управления версиями. В этому модуле вы узнаете, почему и как возникли системы управления версиями исходного кода. Получите практические навыки глубокой работы с Git репозиториями. Научитесь работать одновременно с несколькими репозиториями, синхронизировать их и создавать резервные копии. Познакомитесь со способами интеграции репозиториев со внешними системами. Узнаете, как контролировать процесс разработки ещё на уровне отправки кода в репозиторий.
- Обзор систем управления версиями
- Подробное знакомство с Git
- Установка Gitlab на собственный сервер
- Основы системного администрирования. Разберётесь с Linux, Unix и другими видами ОС. Научитесь работать на продвинутом уровне с локальной сетью и интернет (MAC, Ethernet, TCP/IP, DNS). Попробуете на практике набор инструментов для отладки операционной системы и приложений.
- Обзор архитектуры операционных систем на примере Linux
- Основы сетевой архитектуры
- Полезные инструменты
- Авторизация, аутентификация и безопасность пользователей
- Скриптовые языки и языки разметки: Python, Bash, YAML, JSON. В этом модуле вы напишете ряд Bash-скриптов, которые можно будет использовать для решения типовых задач. Научитесь автоматизировать работу с помощью языка программирования Python. Научитесь создавать документы в формате YAML, JSON и конвертировать эти форматы между собой.
- Основы работы с языками программирования в DevOps: Python, Bash, YAML, JSON
- Синтаксис разметки YAML
- Синтаксис разметки JSON
- Командная оболочка Bash: практические навыки
- Использование Python для решения типовых задач в DevOps
- Виртуализация. Узнаете различия видов виртуализации и контейнеризации. Научитесь управлять виртуальными машинами с помощью libvirtd. Напишете несколько Dockerfile, которые можно будет использовать в дальнейших проектах как примеры. Научитесь запускать несколько контейнеров одновременно и объединять их в виртуальную сеть.
- Изучение задач, которые решает виртуализация
- Технологии виртуализации
- Системы управления виртуализацией
- Контейнеризация на примере Docker и ContainerD
- Практические навыки работы с Docker
- Написание Dockerfile и использование Docker Compose
- Администрирование баз данных. Узнаете, чем различаются SQL и NoSQL базы данных, и научитесь выбирать нужную из всего многообразия существующих решений. Познакомитесь с решениями для полнотекстового поиска. Овладеете навыками установки и настройки кеш-систем. Научитесь устанавливать и настраивать базы данных для нужд разработки. Познакомитесь с технологиями создания отказоустойчивых кластеров баз данных и кеш систем при помощи кластеризации и шардинга. Научитесь писать простые SQL-запросы и запросы для работы с NoSQL-базами данных.
- Типы и структура СУБД
- Администрирование PostgreSQL
- Администрирование MySQL
- Знакомство с NoSQL-базами данных на примере MongoDB
- Кеш-системы Redis и Memcached
- Elasticsearch
- Кластеризация, шардинг и отказоустойчивость
- Непрерывная разработка и интеграция. Подробно разберём все этапы жизни ПО. Вы узнаете, как организовать взаимодействие между разработчиками, тестировщиками и системными администраторами. Получите практические навыки работы с Jenkins, TeamCity и Gitlab CI.
- Жизненный цикл разработки ПО
- Процессы CI/CD: integration, delivery, deployment
- Инфраструктура тестирования, сборки и доставки ПО
- Практическое знакомство с Jenkins, TeamCity и Gitlab CI
- Мониторинг и логи. Подробно разберётесь, зачем нужен мониторинг и какие параметры нужно контролировать. Узнаете, как организовать систему оповещения о различных событиях, чтобы узнавать о сбоях первым, а не от заказчика. Научитесь организовывать логирование всех действий приложений и анализировать эти логи. Овладеете навыками работы с elasticsearch, Logstash, Kibana и Graylog. Научитесь настраивать связку Prometehus + Grafana + Alertmanager. Познакомитесь с Zabbix для мониторинга физических и виртуальных машин.
- Зачем и что нужно мониторить
- Системы для мониторинга
- Системы оповещения о проблемах
- ELK: Elasticsearch, Logstash и Kibana
- Graylog
- Zabbix
- Prometehus, Grafana, Alertmanager
- Система управления конфигурациями. Научитесь описывать инфраструктуру в виде кода. Сможете настроить удаленный сервер и восстановить его конфигурацию в случае необходимости. Узнаете набор уже готовых шаблонов для решения типовых задач конфигурирования серверов.
- Обзор систем управления конфигурациями
- Концепция «инфраструктура как код»
- Знакомство с Ansible
- Практика использования Ansible
- Облачная инфраструктура. Terraform. Научитесь описывать конфигурацию любых сервисов, имеющих API, в виде кода при помощи Terraform. Научитесь выстраивать командные процессы работы над инфраструктурой. Овладеете навыками написания скриптов на Golang. Научитесь писать собственные расширения для Terraform.
- Любая конфигурация как код
- Обзор облачных провайдеров: AWS, GCP, Azure
- Обзор существующих провайдеров Terraform
- Синтаксис и принцип работы Terraform
- Введение в Golang
- Написание собственных провайдеров для Terraform
- Микросервисная архитектура. Узнаете, в каких случаях выгодно использовать микросервисы вместо монолитного приложения. Научитесь проектировать отказоустойчивые системы. Познакомитесь с популярными веб-серверами и балансировщиками нагрузок.
- Преимущества и недостатки микросервисной архитектуры
- Отказоустойчивость систем
- Nginx
- HAProxy
- Envoy
- Кластеризация
- Администрирование кластера Kubernetes. Научитесь разворачивать кластер Kubernetes на собственных мощностях. Поймёте, из каких компонентов состоит control plane и на что нужно обращать внимание при администрировании собственного кластера Кубернетес. Узнаете, как с помощью навыков автоматизированного управления конфигурациями добавлять и удалять узлы, менять конфигурацию имеющихся нод.
- Компоненты Kubernetes
- Развёртывание кластера на собственных серверах, Kubespray
- Сетевые решения CNI
- Команды для работы с Kubernetes
- Конфигурация Kubernetes. С помощью полученных теоретических знаний развернём stateless-приложение. Усложним, добавив stateful зависимости. Воспользуемся готовыми манифестами для установки приложений в кластер.
- Контейнеры, поды, deployment, statefulset, services
- Разделы, монтирование
- Работа c Kubectl
- Обзор инструментов для упрощения написания конфигурационных файлов
- Язык шаблонов Jsonnet
- Поддержка нескольких окружений на примере Qbec
- Сетевая безопасность в Kubernetes. Разберётесь, как хранить и использовать пароли внутри кластера и передавать конкретным приложениям. Узнаете, как управлять уровнем доступов контейнеров и подов. Научитесь контролировать взаимодействия подов между собой.
- Создание и использование секретов
- Синхронизация секретов с внешними сервисами
- Карты конфигураций
- Сервис-аккаунты
- SecurityContext, NetworkPolicies
- Организация проекта при помощи облачных провайдеров. Освоите общие принципы создания проектов в облачных сервисах. Познакомитесь с основными инструментами, которые предоставляют облачные провайдеры.
- Виртуальное приватное облако
- Организация сети
- Вычислительные мощности
- Балансировщики нагрузки
- Контексты безопасности
- Менеджеры секретов
- Кластеры
- Ресурсы под управлением облачным провайдером
- Трудоустройство
- Помощь с трудоустройством
- Город
- Онлайн
- Начальный уровень
- Можно изучать с нуля
- Формат обучения
- Онлайн
- Практика
- Задания с проверкой
- Сертификат
- Есть
- Инструменты на курсе
-
AnsibleDockerELKGitJavaScriptJenkinsKubernetesLinuxNginxPostgreSQLPythonTerraformZabbix
Удалённый формат. Все лекции проходят в интернете в удобное для вас время.
Команда экспертов. Лекции ведут специалисты с большим опытом из крупных компаний.
Большой выбор курсов. Если готовый курс не подходит, под вас соберут персональную программу.
Технические проблемы. У некоторых студентов наблюдаются неполадки во время обучения.
Настойчивые продажи. Перед началом курса менеджеры активно звонят и склоняют к покупке.
Взгляните, что студенты и выпускники говорят про онлайн-школа Нетологии
Преимущества: живые вебинары а не просто ролики, высокий уровень преподавателей, цены сравнимые с конкурентами, лояльность администрации. Недостатки: обратная связь от преподов могла бы быть и пооперативней, разные блоки ведут разные преподватели соответственно подход к лекциям к...
Преимущества: удобный ЛК, доступ к записям занятий, содержание курсов, чат Недостатки: немного доп.материалов, бывают задержки ответов в чате Отзыв: Приветствую! Весной 2020г. у всех началась пандемия, а я добился повышения до должности "DevOps-инженер". Эти факты не связаны, про...