Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
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 — это бесплатная система управления обучением с открытым исходным кодом. В этой архитектуре Moodle служит основным приложением, которое предоставляет учебное содержимое и отслеживает прогресс учащихся.
Гибкий сервер Базы данных Azure для MySQL — это управляемая служба реляционных баз данных. В этой архитектуре хранятся структурированные данные Moodle, включая содержимое курса, профили пользователей и прогресс учащихся.
Управляемый Redis Azure — это безопасный, в памяти хранилище данных и брокер обмена сообщениями. В этой архитектуре это повышает производительность Moodle, кэширование сеансов пользователей, управление блокировками и снижение нагрузки на базу данных.
Масштабируемые наборы виртуальных машин Azure — это служба вычислений Azure, которую можно использовать для развертывания и управления группой идентичных виртуальных машин с балансировкой нагрузки. В этой архитектуре он размещает приложение Moodle и автоматически масштабирует количество виртуальных машин вверх или вниз по требованию.
Azure NetApp Files — это высокопроизводительная служба хранения файлов. Эту службу можно использовать для миграции и выполнения в облаке самых требовательных корпоративных файловых нагрузок, таких как файловые ресурсы с поддержкой SMBv3, NFSv3 и NFSv4.1, базы данных, хранилища данных и приложения для высокопроизводительных вычислений. В этой архитектуре он хранит содержимое обучения Moodle и загруженные пользователем файлы. Она обеспечивает масштабируемый, низкой задержки доступ и репликацию между зонами для обеспечения высокой доступности и аварийного восстановления.
Альтернативные варианты
Вы можете развернуть службу 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, которые являются набором руководящих принципов, которые можно использовать для улучшения качества рабочей нагрузки. Дополнительные сведения см. в Well-Architected Framework.
Надежность
Надежность помогает гарантировать, что ваше приложение может выполнять обязательства, которые вы выполняете для клиентов. Для получения дополнительной информации, см. контрольный список проверки проектирования по надежности.
Служба Azure NetApp Files построена на базе парка высоконадежного оборудования с твердотельной архитектурой на уровне bare-metal. Служба работает без прерываний даже во время операций обслуживания. Дополнительные сведения см. в статье Отказоустойчивость, высокая доступность и устойчивость в 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 МБ/с. Это развертывание можно создать на инфраструктуре виртуальных машин Standard_D32s_v4 с Linux, которая использует 8 ТБ управляемого диска P60.
Azure NetApp Files предоставляет более экономичное решение, которое использует 4 ТиБ емкости уровня обслуживания ценовой категории "Ультра". Для крупномасштабных приложений, требующих больше емкости Azure NetApp Files, уровни обслуживания уровня "Премиум" и "Стандартный" обеспечивают достаточную производительность. Используйте уровень обслуживания уровня "Премиум" или "Стандартный", чтобы повысить эффективность затрат.
Используйте калькулятор цен Azure, чтобы оценить затраты на ресурсы Azure для конкретных требований. Дополнительные сведения см. в статье о модели затрат Azure NetApp Files.
Для калькулятора, вычисляющего производительность Azure NetApp Files и общую стоимость владения (TCO), см. калькулятор производительности 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
- Автоматическое масштабирование с помощью масштабируемых наборов виртуальных машин в гибком режиме оркестрации