Поскольку среда дистанционного обучения 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 закачать на хостинг за 100 рублей в
месяц и нажать кнопку «установить» в интерфейсе администратора. Оставим
за кадром, что даже CMS-движкам важных сайтов стоит уделить побольше
внимания, компетентности и системных ресурсов. Это обобщение аналогично
выводу, что рейсовый автобус — это тот же мотороллер, и его тоже можно
парковать в сарае, заправлять смесью бензина и масла, эксплуатировать
без обслуживания пока не сломается, а потом ремонтировать во-дворе с
помощью набора отвёрток и гаечных ключей: технологии похожи, но разный
масштаб, сложность системы, нагрузка и уровень ответственности.
Здесь, в лучшем случае, веб-мастер получит «белую страницу» еще на этапе
установки — это сработает защита хостинг-провайдера от превышения
системных лимитов. Если бы провайдеры за 100 рублей раздавали всем
неограниченные ресурсы — они давно бы разорились на железе. Если
ресурсов на установку хватит, пользователи «познакомятся» с защитой
хостера чуть-позже: когда начнут наполнять систему материалами,
возрастёт нагрузка или начнут использоваться специфичные функции, такие
как импорт/экспорт курсов.
Большинство провайдеров стараются по-умолчанию установить побольше
библиотек и возможностей, но для полноценного функционирования 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. Даже сборщики
шкафов и сантехники приносят с собой набор привычных и удобных им
инструментов. Поэтому, закончить хочу пословицей: «В умелых руках и
палка стреляет». И ни одна платформа не подходит для промышленного
внедрения, если специалист делает это впервые.
Выбор серверного окружения или как не нужно ставить Moodle
от Alex Djachenko -
Количество ответов: 2
В ответ на Alex Djachenko
Re: Выбор серверного окружения или как не нужно ставить Moodle
от Роман Николаевич -
Спасибо, очень интересно Тоже нравится Ubuntu Linux Server, а мой коллега всё на Debian делает
В ответ на Alex Djachenko
Re: Выбор серверного окружения или как не нужно ставить Moodle
Скажите, XAMPP в принципе небезопасен? Или именно в сборке с moodle?