Поскольку среда дистанционного обучения Moodle является довольно популярной, на специализированных форумах регулярно всплывают обсуждения наиболее подходящего серверного окружения.
Я занимаюсь внедрением Moodle больше 12 лет, столько, сколько существует сама СДО Moodle. За это время я сталкивался с десятками инсталляций, а моя команда сделала их сотни. На разных платформах от Moemo до Windows. Поэтому, могу с уверенностью сказать, приложив время, силы и знания, может заставить Moodle работать где угодно. В то же время, ни одна из платформ не является «серебрянной пулей».
Moodle — это профессиональный программный продукт Enterprise-уровня. По сложности, его можно сравнить с корпоративной ERP/CRM-системой. Разработчики сделали его дружественным к пользователю и удобным в администрировании настолько, насколько это возможно. И эта внешняя простота провоцирует дилетантский подход к внедрению: кажется, если специалист успешно справляется с установкой MS Office, администрированием сайта на Joomla или эрудирован в IT-технологиях, он без труда за час справится с установкой Moodle, а, затем, сможет вернуться к основным обязанностям.
Приведу 4 распространенных антипаттерна инсталляции Moodle:
Начинающие Windows-администраторы часто выдают за промышленное внедрение установку ознакомительного пакета на базе XAMPP для Windows. Там всё, как привыкли техники, не сталкивающиеся с серьезным серверным администрированием: готовый комплект, графический инсталлятор, работает без правки конфигурационных файлов. При такой установке из виду упускается неработоспособность множества функций, серьезные проблемы с безопасностью и производительностью, а также полная неготовность таких инсталляций и сделавших их специалистов к любым сбоям.
Первые трудности появляются уже при настройке внешнего доступа из интернет, поэтому форумы пестрят вопросами вида «почему у меня открывается ссылка 127.0.0.1/moodle, а у других — нет? Где вписать новый адрес elearning.world-school-of-everything.narod.ru, чтобы заработало?».
Чаще всего такое внедрение заканчивается разочарованием в Moodle, обвинением продукта во всех проблемах, вызванных некомпетентной установкой. Гораздо хуже, если система успеет прижиться до первого серьезного сбоя: организация потеряет не только деньги, вложенные в наполнение системы контентом, но и репутацию. Вся история обучения, выставленные оценки, информация о пройденных учениками заданиях может быть потеряны: убедить преподавателей и учеников повторить эксперимент во-второй раз будет очень непросто. Впрочем, часто достаточно привлечь квалифицированного инженера и он восстановит всю или большую часть потерянной информации.
Справедливости-ради, следует отметить, что начинающие Linux-администраторы, устанавливающие Moodle командой apt-get install moodle или копированием дистрибутива в /var/www системного веб-сервера находятся примерно там же.
Веб-мастера могут сделать обобщение, что раз Moodle написан на PHP и использует SQL-базу данных, то это — обычный CMS-движок, как Joomla, а значит, его можно по FTP закачать на
Здесь, в лучшем случае, веб-мастер получит «белую страницу» еще на этапе установки — это сработает защита
Большинство провайдеров стараются по-умолчанию установить побольше библиотек и возможностей, но для полноценного функционирования Moodle их всё-равно не хватает. Помимо медленной и нестабильной работы СДО, могут возникнуть проблемы с исполнением фоновых задач, рассылкой уведомлений, синхронизациями, сетевым взаимодействием, импортом/экспортом, проверкой текстов на орфографию, проверкой вложений на вирусы, работой с формулами, отображением «тяжелого» контента и ряд других трудностей.
Эрудиты — это самый трудный случай. Из них иногда получаются очень хорошие профессионалы, но для этого нужно много времени, терпения и, часто, несколько загубленных проектов и критических сбоев с потерей всего контента. На обсуждаемом этапе они вдохновенно убеждают руководство в целесообразности развёртывания системы на FreeBSD/Mac OSX Server/блейд-сервере/MS SQLServer/чём-угодно-еще и требуют этого от подрядчика, умело оперируя профессиональной терминологией и цитируя авторитетов. Практические же их навыки часто ограничиваются умением заказать виртуальную машину с предустановленной FreeBSD, а бьющий кодировку страниц веб-сервер или иерогливы, вместо дней недели объясняются дефектами самой Moodle, а не неумением эрудита настроить локаль под FreeBSD.
Всё перечисленное справедливо не только для Moodle, но и для любой другой СДО, ERP/CRM-системы или профессионального интернет-магазина (Magento etc.). Не может быть «простой и лёгкой СДО» потому что сама предметная область сложна и многообразна. Лёгкая СДО в этом смысле похожа на ловушку с широким входом и узким выходом: очень скоро, любой организации станет в ней тесно и некомфортно. Смена уже внедрённого решения во много раз сложнее первоначального внедрения.
Впрочем, есть одно исключение: преподаватели-энтузиасты, внедряющие электронное обучение на общественных началах могут смело игнорировать все мои рекомендации, потому что любая работа, сделанная бесплатно и по собственной инициативе — хороша и достойна уважения. А вот руководители, принимая такой проект в качестве пилота для внедрения, должны поблагодарить и наградить создателя, а затем поручить специалистам переделать техническое решение по всем правилам.
Наша компанда выбрала для себя Ubuntu Linux Server, как на стабильную, легко и регулярно обновляемую и удобную в администрировании систему. Её бесплатность является немаловажным фактором, так как влияет на общую стоимость внедрения.
Очень важна присущая всем юникс-системам возможность выполнить любые работы из консоли, в том числе удаленно, по ssh, даже на медленном соединении. О небезопасности этой функции говорят только неопытные администраторы, для которых настройка полномочий, ssh-доступов, Firewall и автоблокировки по подозрительной активности в логах сродни магии.
Для нас оказалась очень полезна возможность автоматизации операций написанием скриптов и созданием deb-пакетов. Доступность в Linux бесплатных, но профессиональных инструментов мониторинга, резервного копирования и массового администрирования, систем виртуализации делает эту платформу особенно привлекательной.
Из всех операционных систем и дистрибутивов, которые я видел, Ubuntu Linux Server обладает наибольшей готовностью к развёртываю Moodle, хотя и там требуется установить и настроить десятки дополнительных пакетов. Но применение типовой платфомы позволяет всё это легко автоматизировать. А проблему недостатка на рынке специалистов, свободно ориентирующихся в Linux мы решаем очень просто: Ubuntu Linux является стандартом для всех рабочих мест наших технических специалистов. Любой разработчик, стажер или инженер техподдержки, даже если он не связан с администрированием серверов, невольно привыкает к платформе и тестирует все разработки сразу в том же окружении, что и на сервере.
У других команд специалистов вполне может быть другой опыт: масса успешных проектов на Window, FreeBSD или Max OS X Server. Даже сборщики шкафов и сантехники приносят с собой набор привычных и удобных им инструментов. Поэтому, закончить хочу пословицей: «В умелых руках и палка стреляет». И ни одна платформа не подходит для промышленного внедрения, если специалист делает это впервые.
Автор: alexdjachenko