Системи з високими навантаженнями на Linux
18 000 грн
8 занятьСтарт занять
ОдразуПро курс
Вміти працювати з різними серверами і софтом можна на різних рівнях. На потужностях може бути всього один сайт, але кількість запитів до нього може бути настільки великою, що залізо вже не тягне. Що робити в такій ситуації?
Цей курс для впевнених мідлів. Навчимо вас роботі з високонавантаженими серверами так, щоб вони не падали.
Що потрібно для прохождення курсу?
Потрібно добре розбиратися в таких темах: текстові редактори, розширене управління користувачами і групами в Linux, управління правами на файли і каталоги, управління процесами, настройка мережі в Linux.
Iptables, proxy, траблшутінг при мережевих з'єднаннях, протоколи передачі даних мережею, пакетні менеджери, отримання даних про версії встановлених програм і доступних для установки пакетів в репозиторіях; вебсервери, DNS, сервери баз даних.
Програма курсу
Вебсервер і балансування запитів
ЛекціяРівні балансування.
ЛекціяАлгоритми та методи балансування.
ЛекціяВебсервер Nginx.
ЛекціяМодуль Nginx ngx_http_upstream_module.
Бази даних: високі навантаження
ЛекціяПоняття реплікації та шардінгу в MySQL.
ЛекціяВиди реплікації.
ЛекціяКластеризація і Percona XtraDB Cluster. Параметри та директиви в my.cnf, тюнінг Percona XtraDB Cluster.
ПрактикаУстановка і настройка вебсервера Nginx. Відпрацювання навичок настройки балансування із застосуванням різних алгоритмів на базі Nginx з модулем ngx_http_upstream_module. Установка і настройка Percona, об'єднання нод в кластер, отримання відомостей про стан кластера.
HAProxy і ProxySQL
ЛекціяІнструмент HAProxy, опис і характеристики.
ЛекціяКонфігураційний файл HAProxy, директиви та отримання відомостей про backend ноди.
ЛекціяІнструмент ProxySQL, опис і характеристики.
ЛекціяКонфігураційний файл proxysql, команди з управління та отримання даних.
Network
ЛекціяАгрегування каналів. Загальні правила настройки EtherChannel.
ЛекціяLink Aggregation Control Protocol (LACP) в Linux.
ЛекціяLACP в Linux. Bonding
ЛекціяВідмовостійкий IP на основі CARP (Common Address Redundancy Protocol) протоколу.
ПрактикаУстановка і настройка HAProxy як frontend, настройка балансування, настройка панелі управління HAProxy. Установка і настройка proxysql, настройка балансування запитів mysql на 3 backend сервери баз даних. Установка і настройка UCARP з розподілом IP на 3 сервери.
DNS
ЛекціяПринципи роботи DNS. Архітектура.
ЛекціяЯк працює DNS. Система кореневих серверів.
ЛекціяNS сервери, зв'язки. Балансування засобами протоколу DNS.
ЛекціяСервіс CloudFlare, інструменти, фільтри та управління зонами DNS.
Системи управління чергами
ЛекціяЗагальні відомості про системи управлінні чергами.
ЛекціяApache Kafka. Термінологія і компоненти. Файли та директиви.
ЛекціяRabbitMQ, термінологія, команди для управління сервером, команди для управління користувачами
ПрактикаУстановка і настройка BIND, настройка зв'язки master-slave. DNS multiple A-records. Установка і настройка Apache Kafka, відпрацювання навичок зі створення та отримання повідомлень.
Розподілені файлові системи
ЛекціяПринцип роботи розподілених файлових систем. Опис і характеристики популярних розподілених систем.
ЛекціяОпис і технічні характеристики Ceph. Способи реалізації відмовостійкості та збереження даних в Ceph.
ЛекціяОпис і технічні характеристики GlusterFS. Способи реалізації відмовостійкості та збереження даних в GlusterFS.
HA Storages, monitoring
ЛекціяТехнологія RAID. Визначення і термінологія.
ЛекціяРівні RAID. Складові RAID масиви.
ЛекціяДоступ до сховища за NFS.
ЛекціяСистеми моніторингу, види та характеристики, вибір оптимальної системи для відстеження процесів в HA-інфраструктурах.
ПрактикаНалаштування складеного RAID-масиву 1+0 з використанням mdadm. Підключення масиву по NFS. Налаштування тригерів в Zabbix, моніторинг каналів і стану нод у внутрішній мережі.
Проєктна робота
Екзамен ПроєктВи вже бачили наші курси?
Ви точно знайдете те, що вам треба 😊
Після закінчення курсу студент буде знати
- можливі алгоритми балансування, які застосовуються до різних технологій
- види реплікації в серверах баз даних і різницю між ними
- схеми побудови реплікації
- конфігураційні файли та директиви при побудові кластерів баз даних
- інструменти для балансування web, mail, sql
- принципи агрегації мережевих каналів в Linux
- принцип роботи систем з управління чергами в Linux
- алгоритми роботи розподілених файлових систем
- рівні RAID масивів
- складові RAID масиви
- способи отримання інформації про стан високонавантажених систем
Після закінчення курсу студент буде вміти
- налаштовувати вебсервер Nginx як балансувальника із застосуванням оптимальних алгоритмів балансування
- встановлювати і налаштовувати реплікацію баз даних
- налаштовувати Percona XtraDB Cluster з оптимізацією налаштувань кластера
- конфігурувати HAProxy як frontend-сервер; встановлювати панель управління для відстеження процесів балансування HAProxy
- інсталювати і налаштовувати proxysql, забезпечувати балансування SQL запитів на кілька серверів SQL
- встановлювати і налаштовувати пливучий IP (UCARP) з розподілом на кілька серверів
- встановлювати і налаштовувати зв'язки master-slave в BIND (named)
- встановлювати і налаштовувати Apache Kafka Cluster, створювати і приймати повідомлення з налаштованого кластера