Отказоустойчивая инфраструктура для EdTech-платформы

Отказоустойчивая инфраструктура для EdTech-платформы: кейс «Инглекс»

Рассказываем, как школа английского языка «Инглекс» развернула на инфраструктуре Selectel EdTech-платформу, на которой одновременно проводятся сотни онлайн-занятий.

Изображение записи

Кейс будет полезен для компаний в следующих сферах:

  • EdTech
  • многопользовательские сервисы
  • видеосвязь

Задачи:

  • Обеспечить высокую производительность сервисов
  • Исключить риск остановки сервисов и потери информации
  • Организовать стабильное и быстрое соединение между узлами инфраструктуры
  • Соответствовать требованиям законодательства при работе с чувствительными данными

О компании

Онлайн-школа «Инглекс» — современный сервис персонального обучения английскому языку. Преподаватели проводят занятия с детьми и взрослыми. Ученики школы могут выбрать общий курс разговорного английского, курс для карьеры и бизнеса, подготовку к ЕГЭ, IELTS и другим экзаменам. Занятия проводятся в том числе с носителями языка.

За 13 лет работы компания провела 1,5 миллиона занятий для студентов из более чем 100 стран и выпустила более 34 000 учеников. Онлайн-школа «Инглекс» занимает третье место в рейтинге Smart Ranking среди крупнейших компаний в сфере онлайн-образования в категории «Иностранные языки».

Вызовы и решения

  • Создать комфортную среду для онлайн-занятий.
    Сервисы клиента развернуты на производительных выделенных серверах, а для уменьшения времени передачи данных настроена сетевая связность между узлами инфраструктуры.
  • Гарантировать надежное хранение информации и возможность ее восстановления.
    Сервисы распределены между серверами в четырех дата-центрах. Для чувствительных данных настроена синхронная репликация, а для остальных — ежедневное бэкапирование с загрузкой в объектное хранилище.
  • Обеспечить постоянную доступность сервисов.
    DNS-зоны доменов управляются через DNS-хостинг Selectel.
  • Соблюдать требования законодательства при работе с информацией ограниченного доступа.
    Вся инфраструктура Selectel соответствует требованиям 152-ФЗ.

Почему выбрали Selectel

  • Репутация на рынке провайдеров IT-инфраструктуры
  • Разумное соотношение цены и качества услуг
  • Оперативная и качественная техподдержка

Обеспечить высокую производительность сервисов

«Инглекс» для клиентов — это прежде всего образовательная онлайн-платформа с интерактивными учебниками, модулем видеосвязи и рядом вспомогательных сервисов (например, для проведения платежей). Помимо этого есть WP-сайты, система управления процессом обучения, ПО для работы бэкофиса компании, лендинги и маркетинговые страницы, инструменты для CI/CD, приватный Docker-registry, приватный npm proxy registry, дисковое пространство для хранения образовательного контента и т. д.

И все это должно стабильно работать, в том числе в период пиковых нагрузок. Обычно он приходится на вечерние часы по будням. В это время на платформе может одновременно находиться до 1 200 учеников и преподавателей. Они проводят видеозвонки, скачивают контент, запускают интерактивные сервисы и т. д.

При этом у разных сервисов разные требования к производительности. Например, служебные серверы для сборки приложений и системы управления базами данных и очередями (Redis, RabbitMQ) обычно требуют больше оперативной памяти. Платформе обучения, пока она не кластеризованна, и серверам dev/staging-окружений нужно больше ядер CPU. В случае с платформой это обусловлено потребностью в ресурсах для микросервисов в пиковые часы при начале новых уроков. Серверы активнее используют ядра, чтобы развернуть больше окружений. Медиа-серверы, задействованные в передаче видео- и аудио-трафика, требуют высокой пропускной способности сети.

Решение

Сервисы «Инглекс» развернуты на выделенных серверах готовой конфигурации. Это гарантирует, что все их ресурсы достанутся компании. Характеристики железа разнятся в зависимости от задач. Например, количество ядер в процессорах варьируется от 4 до 12, объем оперативной памяти — от 4 до 128 ГБ, а размер одного диска — от 128 ГБ до 1 ТБ. Так получается выделить под каждую задачу сервер в наиболее подходящей конфигурации.

Исключить риск остановки сервисов и потери информации

Любой простой в работе платформы оборачивается невозможностью проводить уроки. Это негативно влияет как на доход компании, так и на ее репутацию среди пользователей. Следовательно, просто производительной инфраструктуры мало. Она должна быть отказоустойчивой и доступной пользователям 24/7.

Кроме того, «Инглекс» использует большое количество медиаконтента и хранит множество данных, в том числе чувствительных. Потеря этой информации также может негативно сказаться на репутации компании.

Решение

Инфраструктура распределена между двумя дата-центрами в Москве и Санкт-Петербурге. Так, образовательная платформа «Инглекс» развернута в пулах MSK-1 и MSK-2, а резервные серверы на случай отказа находятся в пуле SPB-3. Также в Петербурге, в объектном хранилище, хранится медиаконтент.

Персональные данные клиентов и их платежная информация собраны в отдельной базе данных. Для нее и в Москве, и Санкт-Петербурге настроена синхронная репликация. Для остальных БД используется ежедневное полное бэкапирование с загрузкой в объектное хранилище.

Чтобы гарантировать доступность всех сервисов для клиентов, компания доверила управление DNS-зонами своих доменов DNS-хостингу Selectel.

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

Что касается качества связи во время видеозвонков, оно напрямую зависит от величины сетевых задержек. Когда они минимальны, создается впечатление, что собеседники общаются в реальном времени, хотя технически это не так.

Обычно сигнал должен добраться от компьютера ученика до IT-инфраструктуры, оттуда — до компьютера преподавателя, а потом тем же путем вернуться обратно. Внутри инфраструктуры сигнал тоже «путешествует» между разными узлами. Время, которое тратится на это, и называется сетевой задержкой. Чтобы качество обучения не страдало, она не должна превышать 100 мс, а потеря пакетов при передаче данных должна стремиться к нулю.

Решение

Скорость соединения зависит напрямую от интернет-провайдера и выбранного пользователем тарифа. Повлиять на это объективно невозможно, да и не нужно — для комфортных видеозвонков достаточно скорости 2 Мб/с для двух аудио- и видеопотоков (по одному на преподавателя и студента). Все выделенные серверы Selectel передают сигнал в интернет на скорости 1 Гбит/с.

Что касается пути сигнала от одного компьютера до другого и обратно, то 75% звонков осуществляются напрямую по принципу peer-to-peer. Это соединение, в котором компьютеры связываются напрямую и каждый из них может быть как клиентом, так и сервером.

Еще 25% звонков проходят через серверы Selectel в Москве и Санкт-Петербурге. В данном случае peer-to-peer не используется из-за особенностей сети учеников, которые не позволяют связываться с другими компьютерами напрямую. Добиться минимальной сетевой задержки в данном случае помогает географическое расположение серверов — большинство клиентов находятся относительно недалеко от них, поэтому сигналу не нужно преодолевать большие расстояния.

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

Образовательный процесс предусматривает работу с персональными данными (ПДн) клиентов. Согласно 152-ФЗ все ПДн граждан РФ должны храниться и обрабатываться только на территории Российской Федерации и быть защищены от несанкционированного доступа.

Решение

Вся инфраструктура Selectel по умолчанию соответствует требованиям 152-ФЗ и международных законов и стандартов. То есть, компании «Инглекс» достаточно правильно организовать сбор и обработку персональных данных в своей зоне ответственности. Вопросы, связанные с инфраструктурой и размещением на ней информации ограниченного доступа, Selectel берет на себя.

Результаты

  • 1 000

    студентов и преподавателей могут находиться на платформе одновременно.

  • 4

    пула серверов поддерживают работу EdTech-платформы.

  • 170

    одновременных созвонов — пиковая нагрузка на платформу. Качество соединения при этом не падает.

  • 100 мс

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

Планы развития

Планы «Инглекс» опираются на развитие бизнеса и рост количества учеников. Это потребует расширения инфраструктуры и подключения новых сервисов Selectel. Сейчас компания рассматривает активное использование облачных сервисов, в частности, баз данных, поэтапный перенос проектов в новый отказоустойчивый кластер на основе Managed Kubernetes, задействование дополнительных дата-центров и использование почтового сервиса.