Moodle — это система управления обучением с открытым кодом, требующая высокой пропускной способности, низкой задержки доступа к хранилищу. Многие развертывания Moodle требуют простой масштабируемости для адаптации к растущему спросу. В этой статье объясняется, как развернуть Moodle с помощью служб Azure в Azure Масштабируемые наборы виртуальных машин и хранить файлы данных обучения, доступные для пользователей, в Azure NetApp Files. В этой статье описывается зональное развертывание для высокой доступности и репликации между зонами, а также примеры развертывания с одной зоной.
Архитектура
Для лучшего взаимодействия с пользователем Moodle требует согласованного доступа с низкой задержкой к масштабируемому общему хранилищу для удовлетворения требований офисных и домашних работников, использующих службу. Масштабируемые наборы виртуальных машин и пулы емкости Azure NetApp Files и тома можно увеличить и уменьшить по мере изменения спроса.
Скачайте файл Visio для этой архитектуры.
Помимо развертывания Moodle архитектура использует репликацию между зонами Azure NetApp Files для репликации томов данных в вторичную зону. Репликация между зонами использует зоны доступности для обеспечения высокой доступности в регионе и репликации в другой зоне в одном регионе. Пул емкости, использующий уровень обслуживания "Стандартный", может размещать тома данных назначения во время нормальной работы.
С помощью этого подхода вам не нужно запускать некоторые компоненты установки, такие как вычислительные и вспомогательные службы, во время нормальной работы. В результате вы не будете нести никаких операционных затрат на эти компоненты. Можно также уменьшить масштаб масштабируемых наборов виртуальных машин до минимального.
Только в сценарии аварийного восстановления следует запускать и масштабировать необходимые компоненты для продолжения службы с помощью реплицированных томов данных. В настоящее время при необходимости можно обновить уровень обслуживания целевых томов Azure NetApp Files до уровня обслуживания "Премиум" или "Ультра".
После восстановления основной зоны направление репликации изменится. Основная зона обновляется с изменениями, которые применяются во время отработки отказа, и служба может быть отработка отказа. Пользователи перенаправляются в зону отработки отказа через Диспетчер трафика Azure, которая работает на уровне DNS, чтобы быстро и эффективно направлять входящие DNS-запросы на основе выбранного метода маршрутизации.
Рабочий процесс
Учащиеся получают доступ к данным приложения Moodle через Шлюз приложений Azure, где они могут использовать Масштабируемые наборы виртуальных машин для создания масштабируемой вычислительной платформы, которая запускает приложение Moodle для размещения пользователей. Azure NetApp Files служит данными содержимого в приложении Moodle. Используйте кэш Redis для кэширования сеанса пользователя, блокировки и осведомленности о ключах. Храните содержимое обучения, ход выполнения учащихся и внутренние данные в базе данных MySQL.
Вставка содержимого обучения через безопасный VPN-шлюз непосредственно из клиентского центра обработки данных.
Учащиеся получают доступ к содержимому через приложение, развернутое на Масштабируемые наборы виртуальных машин через безопасный шлюз приложений.
Решение можно масштабировать вверх или вниз в зависимости от спроса, добавив или удалив виртуальные машины в масштабируемом наборе и изменив уровень обслуживания тома Azure NetApp Files.
Компоненты
Moodle является одним из самых популярных и широко принятых бесплатных систем управления обучением с открытым исходным кодом.
База данных Azure для MySQL — это служба реляционной базы данных, на базе выпуска сообщества MySQL. Вы можете использовать База данных Azure для MySQL — гибкий сервер для размещения базы данных MySQL в Azure.
Кэш Azure для Redis — это безопасный кэш данных и брокер обмена сообщениями, предоставляющий доступ к данным с высокой пропускной способностью и низкой задержкой для приложений.
Используйте Azure Масштабируемые наборы виртуальных машин для создания группы виртуальных машин с балансировкой нагрузки и управления ими. Вы можете автоматически увеличивать или уменьшать количество экземпляров виртуальных машин в ответ на запрос или определенное расписание.
Azure NetApp Files — это служба Azure, которую можно использовать для миграции и выполнения самых требовательных рабочих нагрузок корпоративного файла в облаке, таких как собственные рабочие нагрузки SMBv3, NFSv3 и NFSv4.1, базы данных, хранилища данных и высокопроизводительные вычислительные приложения.
Альтернативные варианты
Вы можете развернуть службу Moodle с помощью любой общей файловой службы на основе NFS, которая соответствует вашим требованиям для низкой задержки, высоких операций ввода или вывода в секунду и пропускной способности, особенно для большего числа одновременных пользователей. Вы можете использовать службу NFS, созданную на основе набора виртуальных машин Linux, но эта конфигурация может привести к проблемам управления, масштабируемости и производительности. Azure NetApp Files обеспечивает наименьшую задержку, лучшую производительность и масштабируемость, а также безопасный доступ к общему хранилищу NFS.
Альтернативные развертывания с помощью Azure NetApp Files
На этой схеме показан пример развертывания в одном регионе:
Эта настройка с одним регионом обеспечивает высокодоступный доступ к приложению Moodle и другим компонентам конфигурации.
Подробности сценария
Это решение применимо к развертываниям Moodle. Организации, использующие отрасли Moodle, включая образование, бизнес, ИТ и финансы.
В этой статье описано решение, которое соответствует требованиям Moodle. В основе решения лежит Azure NetApp Files, которая является службой хранилища Azure. С ее помощью можно переносить и выполнять самые требовательные файловые рабочие нагрузки корпоративного масштаба в облаке:
- нативные общие папки SMB версии 3, NFSv3 и NFSv4.1;
- Рабочие нагрузки баз данных
- рабочие нагрузки хранилища данных;
- приложения для высокопроизводительных вычислений
Рекомендации
Эти рекомендации реализуют основные принципы платформы Azure Well-Architected Framework, которая является набором руководящих принципов, которые можно использовать для улучшения качества рабочей нагрузки. Дополнительные сведения см. в статье Microsoft Azure Well-Architected Framework.
Надежность
Надежность гарантирует, что ваше приложение позволит вам выполнить ваши обязательства перед клиентами. Дополнительные сведения см . в контрольном списке проверки конструктора для обеспечения надежности.
Служба Azure NetApp Files создана на основе парка надежного оборудования с твердотельными накопителями без операционной системы. Служба работает без прерываний даже во время операций обслуживания. Дополнительные сведения см. в статье Отказоустойчивость, высокая доступность и устойчивость в Azure NetApp Files.
Azure NetApp Files обеспечивает высокий уровень доступности хранимых данных. Сведения о гарантии доступности Azure NetApp Files см. на странице Соглашение об уровне обслуживания для Azure NetApp Files.
Безопасность
Безопасность обеспечивает гарантии от преднамеренного нападения и злоупотребления ценными данными и системами. Дополнительные сведения см. в контрольном списке проверки конструктора для безопасности.
Для всех вариантов развертывания необходимо предоставить пару действительных открытого и закрытого ключей RSA Secure Shell (SSH), протокол 2 (SSH-2). Длина должна быть не менее 2048 бит. Azure не поддерживает другие форматы ключей, например ED25519 и ECDSA. Azure NetApp Files поддерживает ключи, управляемые клиентом и платформой. Эти решения обеспечивают неограниченный доступ к хранимым данным, соответствуют требованиям соответствия требованиям и повышают безопасность данных. Сведения и рекомендации по обеспечению безопасности Azure NetApp Files см. в часто задаваемых вопросы о безопасности Для Azure NetApp Files.
Оптимизация затрат
Оптимизация затрат заключается в том, чтобы подумать о способах сокращения ненужных расходов и повышения эффективности работы. Дополнительные сведения см . в контрольном списке проверки конструктора для оптимизации затрат.
Для развертывания Moodle среднего к большому размеру примерно 5000 пользователей с соотношением параллелизма на 10 % рекомендуемая пропускная способность составляет около 500 МБ/с. Это развертывание можно создать на базе Linux Standard_D32s_v4 инфраструктуре виртуальных машин, которая использует 8 ТБ управляемого диска P60.
Azure NetApp Files предоставляет более экономичное решение, которое использует 4 ТиБ емкости уровня обслуживания ценовой категории "Ультра". Для крупномасштабных приложений, требующих больше емкости Azure NetApp Files, уровни обслуживания уровня "Премиум" и "Стандартный" обеспечивают достаточную производительность. Используйте уровень обслуживания уровня "Премиум" или "Стандартный", чтобы повысить эффективность затрат.
Используйте калькулятор цен Azure, чтобы оценить затраты на ресурсы Azure для конкретных требований. Дополнительные сведения см. в статье о модели затрат Azure NetApp Files.
Калькулятор производительности Azure NetApp Files и общая стоимость владения см . в калькуляторе производительности Azure NetApp Files. Этот калькулятор поможет найти оптимальный баланс между емкостью, производительностью и затратами.
Эффективность работы
Операционное превосходство охватывает процессы, которые развертывают приложение и продолжают работать в рабочей среде. Дополнительные сведения см . в контрольном списке проверки конструктора для повышения эффективности работы.
Уровень производительности
Эффективность производительности — это возможность масштабирования рабочей нагрузки в соответствии с требованиями, заданными пользователями. Дополнительные сведения см . в контрольном списке проверки конструктора для повышения эффективности.
Это решение можно масштабировать по мере необходимости:
Масштабируемые наборы виртуальных машин обеспечивают автоматическое масштабирование ресурсов. Дополнительные сведения см. в статье Обзор автомасштабирования с помощью масштабируемых наборов виртуальных машин Azure.
Вы можете легко и непреднамеренно масштабировать пулы емкости и тома Azure NetApp Files вверх и вниз до удовлетворения спроса. Дополнительные сведения см. в статье Изменение размера пула емкости или тома.
Вы можете настроить уровень службы тома Azure NetApp Files, выбрав вариант "Стандартный", "Премиум" или "Ультра". Уровень, который вы выбираете, влияет на ограничение пропускной способности томов с автоматическим качеством обслуживания. Дополнительные сведения см. в статье Рекомендации по повышению производительности для Azure NetApp Files.
Развертывание этого сценария
Рекомендации по развертыванию для Moodle в Azure NetApp Files см. в статье Azure NetApp Files для хранилища NFS с Moodle.
Соавторы
Эта статья поддерживается корпорацией Майкрософт. Первоначально он был написан следующими участниками.
Автор субъекта:
- Arnt de Gier | Инженер технического маркетинга
Следующие шаги
- Параметр Moodle Cloud
- Направления Azure Moodle на GitHub
- Документация Moodle: хранилище кэша Redis
- Azure NetApp Files для хранилища NFS с использованием Moodle
- Архитектуры решений с помощью Azure NetApp Files
- Автоматическое масштабирование с помощью гибкого режима оркестрации Масштабируемые наборы виртуальных машин