Системный Инженер Linux

(System Engineer 230109)

 

Комплексный курс подготовки специалистов

с введением в архитектуру высоких нагрузок

Для кого этот курс?

Хорошие навыки работы с ОС Linux необходимы для многих ИТ профессий.

Знать Linux необходимо прежде всего разработчикам, администраторам,

DevOps инженерам, тестировщикам, сетевым инженерам,

и всем тем, кто только готовится стать ИТ специалистом.

 

 

Данный курс, благодаря специально разработанной  методике обучения,

позволит быстро освоить необходимые навыки работы с ОС Linux,

изучить на практике современные инструменты и системы,

применяемые в Production, а также, на базе опыта крупнейших ИТ компаний,

овладеть знаниями по работе с высоконагруженными системами.

Как проходят занятия?

Занятия проводятся дистанционно, с преподавателями.

 

Живое общение с преподавателями, инновационная Online платформа,

а также профессионально подобранный материал,

позволяют эффективно и максимально комфортно погрузиться в предмет,

сохраняя высокий уровень интереса и мотивации на протяжении всего обучения.

 

Занятия с преподавателями в небольших группах,
с упором на практику
Работа с учебными материалами, исследовательские работы,
самостоятельные работы
Индивидуальная работа с преподавателем, для лучшего закрепления материала

После успешного освоения курса Системный Инженер Linux Вы научитесь:

 

+ Работать с ОС Linux

+ Администрировать Linux системы

+ Автоматизировать задачи с помощью Bash сценариев

+ Администрировать популярные приложения, БД, почтовые, web, файловые сервера

+ Строить инфраструктуру на базе открытых систем

+ Обеспечивать защиту окружений

+ Разбираться в архитектуре высоконагруженных приложений

+ Использовать весь необходимый инструментарий системного инженера

Стек изучаемых технологий:

Продолжительность курса: 70 ак. часов.     Набор на данный курс уже завершен 

Online, 2 раза в неделю, с 19.30 - 22.30                              

 

 

Действует скидка: 70000р. 37500р.

 

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

 

Модуль 1: Linux

 

Занятие 1 - Вводное

- Знакомство с ОС Linux. История, философия и основные концепции

- Общая архитектура серверных систем

- Обзор Linux дистрибутивов

- Ядро Linux

- Процесс загрузки. GRUB

- Способы установки ОС

ДЗ: Подготовка рабочего окружения

 

Занятие 2

- Процесс установки ОС Linux

- Удаленное подключение по протоколу SSH

- Современные менеджеры подключений

- Структура Файловых систем UNIX

- Установка программ

- Пакетные менеджеры, репозитории

- Работа в консоли

ДЗ: Практика работы в консоли

 

Занятие 3

- Пользователи и группы

- Суперпользователь root, системные пользователи

- Команды sudo, su

- Файл sudoers, visudo

- Управление доступом к файловой системе

- Права доступа, биты suid, sgid, sticky

- Типы, атрибуты файлов, ссылки, inode

- списки ACL

ДЗ: Работа с пользователями и группами

 

Занятие 4

- Системы инициализации

- Управление процессами Linux

- Работа со службами systemd

- Управляющая утилита systemctl

- Мониторинг состояния служб, файлы конфигурации

- Переменные среды: глобальные, локальные

- Консольные утилиты, текстовые редакторы: vim, nano, mcedit

ДЗ: Настройка сервисов Systemd.

 

Занятие 5

- Управление файловыми системами

- Обзор и особенности основных ФС Linux: ext4, btrfs, zfs

- Монтирование ФС, команда mount

- Создание ФС, создание разделов

- Устранение нарушений в работе, проверка ФС

- Диспетчеры логических томов

- Использование Linux LVM

- RAID. Утилита mdadm

ДЗ: Практика работы с дисковыми разделами.

 

Занятие 6

- Планировщик задач CRON

- Синтаксис crontab

- Утилита at

- Файлы журналов. Логирование, ротация

- Работа с утилитами Journalctl, Tail, Multitail

- Менеджеры терминалов tmux, screen

ДЗ: Практика работы с logrotate

 

Занятие 7

- Bash скриптинг: основы создания сценариев

- Создание микросценариев

- Использование переменных в сценариях

- Перенаправление ввода и вывода, каналы, пайпы

- Использование скобок, кавычек

- Регулярные выражения

- Потоковые редакторы SED и AWK

ДЗ: автоматизация задачи с помощью Bash

 

Занятие 8

- Bash программирование

- Использование структурированных команд

- Работа с условиями: if-then-else

- Команда Test: сравнение чисел, строк, файлов

- Циклы: For, While

- Управление циклами

ДЗ: написание программы бэкапа на Bash

 

Модуль 2: Сетевое взаимодействие

 

Занятие 9

- Понятия компьютерной сети и сетевой топологии

- Эталонная модель OSI

- Стек протоколов TCP/IP

- IP-адрес. Сетевая адресация

- Классы адресов IPv4. NAT

- Службы DNS. Bind server

- DHCP. Принцип работы.

- Настройка сетевых параметров Linux

- Инструменты мониторинга сети

ДЗ: работа с сетевыми службами

 

Занятие 10

- Понятие маршрутизации и коммутации

- Основные протоколы маршрутизации

- RIP, OSPF, BGP

- Обнаружение сетевых проблем

- Утилиты nmap, tcpdump

- Сетевая безопасность. VPN туннели

- Настройка VPN на примере WireGuard

ДЗ: практика настройки VPN

 

Занятие 11

- Файловый сервер

- Сетевые файловые системы

- Протокол NFS

- Создание файловой шары

- SAMBA и протокол SMB

- Знакомство с GlusterFS

ДЗ: Настройка сетевой ФС

 

Модуль 3:  Инструменты

 

Занятие 12

- Обзор рынка виртуализации

- Типы и виды гипервизоров

- Понятие отказоустойчивого кластера

- Linux kvm, virt-manager

- Резервное копирование

- Схемы РК: Дед-Отец-Сын, Ханойская башня

- Утилиты rsync, borg

- Обзор инструмента Veeam backup & Replication 10

ДЗ: Практика работы с инструментами для РК

 

Занятие 13

- Основы работы с SCM

- Git: знакомство

- Репозитории, коммиты, ветки

- Обзор систем автоматизации

- Знакомство с Ansible

- Ansible playbook, ad-hoc command

ДЗ: Работа с Git репозиторием

 

Занятие 14

- Понятие контейнеризации

- Знакомство с Docker

- Запуск приложений в контейнерах, DockerHub

- Сценарии использования

ДЗ: Запуск приложений в контейнерах

 

Модуль 4: Приложения

 

Занятие 15

- Web сервер

- Основы ПО для Web

- HTTP: протокол передачи гипертекста

- HTTP на основе TLS

- Web сервера Apache, Nginx. Принцип работы

- Коды ответов web-сервера

- Кэширующий прокси-сервер Squid

ДЗ: Работа с ПО для web

 

Занятие 16

- Web сервер Nginx

- Установка и настройка

- Файлы конфигурации сервера

- Использование модулей

- Подключение SSL сертификатов

- Управление кэшированием

- Использование в связке с php-fpm

- Мониторинг

ДЗ: Практика работы с Nginx

 

Занятие 17

- Почтовый сервер

- Архитектура почтовых систем

- Структура почтового сообщения

- Протокол SMTP

- Почтовый сервер Postfix: основные компоненты

- Настройка почтового сервера

- Безопасность рассылки: DKIM, SPF, DMARC

- Управление очередями

- Система Iredmail

ДЗ: Практика работы с Postfix

 

Занятие 18

- Сервер Баз Данных

- Знакомство с Базами данных

- Основы языка запросов SQL

- СУБД Postgresql 13

- Администрирование Postgresql

- Кластер. Настройка репликации

- Мониторинг работы, анализ производительности

- Анализ логов

ДЗ: Работа с репликацией Postgresql

 

Занятие 19

- Знакомство с Elasticsearch 7

- Кейсы применения

- Индексы, ключи, запросы

- Администрирование и оптимизация.

- Утилита обслуживания индексов Curator

- Использование в кластере, обслуживание

- Знакомство с контейнерами сервлетов

- Apache Tomcat : Администрирование

ДЗ: Работа с кластером Elasticsearch

 

Занятие 20

- Знакомство с MongoDB

- Сферы применения

- MongoDB: кластеризация и администрирование

- Колоночные СУБД: Yandex ClickHouse

- Особенности работы с NoSQL БД

ДЗ: Практика работы с ModgoDB

 

Модуль 5: Практики

 

Занятие 21

- Безопасность: Best practise

- Аппаратные и программные Фаерволы

- Знакомство с iptables

- Iptables: Правила, цепочки, таблицы

- Инструментальные средства защиты

- Мониторинг инцидентов безопасности

- Web application firewall

- Структура DdoS атак

- Сервисы Qrator, CloudFlare

 

Занятие 22

- Понятие HighLoad

- Архитектура высоконагруженных системам

- Балансировка нагрузки: уровни, основные алгоритмы

- Nginx в качестве балансировщика нагрузки

- Знакомство с Haproxy

- Тюнинг параметров ядра Linux под высокие нагрузки

- Подготовка Web-сервера к высоким нагрузкам

- Подготовка БД к высоким нагрузкам

- Кэширование объектов

- Memcached, Redis

 

Занятие 23

- Мониторинг ОС Linux

- Оценка эффективности аппаратного обеспечения

- Замеры и сравнения производительности компонентов

- Основные метрики ОС

- Метрики приложений

- Консольные утилиты мониторинга

- Основы работы с Strace

- Облачные системы мониторинга: NewRelic

- Zabbix 5: оперативный мониторинг

- Архитектура Zabbix сервера

- Zabbix itemы, триггеры

- Шаблоны, графики, оповещения

 

+ Бонусные видео материалы

- Администрирование Atlassian стека: Jira server, Confluence server

- Администрирование GitLab

- Обзор современных систем мониторинга

 

+ Консультации по трудоустройству, разбор и составление резюме, регистрация в партнерской базе.

 

 

Мы понимаем, что обучение — это сложный и многогранный процесс. Наши преподаватели — действующие специалисты с многолетним стажем работы. На протяжении всего курса они будут на связи, для того, чтобы оперативно помогать с выполнением домашних заданий, отвечать на вопросы и разрешать любые затруднения, возникающие в ходе занятий.
Преподаватели курса
Илья
Senior System Engineer
Стаж работы в ИТ более 8 лет
Игорь
Senior System Engineer
Стаж работы в ИТ более 10 лет
Алексей
Senior DevOps Engineer
Стаж работы в ИТ более 12 лет
Записаться на вводное занятие