Использование среды виртуализации в подготовке системных программистов (Владимир Кулагин, OSEDUCONF-2023)
Материал из 0x1.tv
- Докладчик
- Владимир Кулагин
Обучение будущих системных программистов связано с необходимостью овладения ими практических навыков по администрированию операционных систем и модернизации различных системных компонентов, утилит и драйверов, а также изучение методов применения и доработки свободного программного обеспечения. Что довольно сложно обеспечить на имеющемся ограниченном аппаратно-программном обеспечении с предустановленным коммерческим ПО. Это логически приводит к необходимости использования для обучения виртуальных машин.
Описываемое программно-аппаратное решение для создания виртуальной среды основано на использовании серверов с ОС Альт Сервер Виртуализации, ОС Альт Сервер и толстых клиентов с ОС Альт Рабочая станция
Содержание
Видео
Презентация
Thesis
В настоящее время в Российской Федерации резко выросла потребность в разработке отечественных системных программных продуктов.
Кафедра несколько лет назад разработала основную образовательную программу в области подготовки системных программистов. Данная программа основывается на профессиональном стандарте 06.028 «Системный программист» и государственных образовательных стандартов по направлениям 09.03.02 и 09.04.02. Данные стандарты требуют получения и практического освоения студентами профессиональных знаний, таких как: принципы организации, состав и схемы работы операционных систем, принципы управления ресурсами, архитектура аппаратной платформы, для которой разрабатывается драйвер или системная утилита, методы организации файловых систем, принципы построения сетевого взаимодействия. В процессе формирования учебных программ и обучения студентов мы столкнулись с рядом трудностей, связанных как со спецификой преподаваемых дисциплин, так и с необходимостью ускоренного перехода на свободное программное обеспечение.
Так, ранее процесс обучения во многом был ориентирован на использование проприетарного программного обеспечения, в частности ОС семейства Windows, и для перестройки учебных программ требуется некоторое время.
Для перехода на отечественное ПО в качестве ОС используется Альт Рабочая станция с дополнительно установленным пакетом «Альт Образование». Однако некоторые проблемы связаны с наличием большого количества компьютеров с предустановленной операционной системой Windows — удаление данной ОС или установка второй ОС на этих машинах ограничено фирмой-производителем.
При использовании свободного ПО а также при обновлении Windows возникли проблемы с использованием дополнительного периферийного оборудования (отсутствие или отказ в обновлении драйверов).
Необходимо обеспечить возможность получения практических навыков работы для всех студентов. При этом надо учитывать, что будущим системным программистам необходимо уметь разрабатывать системные утилиты операционной системы, администрировать операционные системы и сетевое окружение — процесс обучения этим навыкам неизбежно связан с ошибками, которые будут допускать студенты, ошибками, которые могут привести к нарушению работы ОС. Кроме этого, имеющееся на кафедре программное и аппаратное обеспечение не охватывает весь спектр, необходимый для обучения высококвалифицированных специалистов.
Для решения данных проблем было принято решение частично перевести процесс обучения с физических компьютеров на виртуальные машины. Это обеспечит студентам возможность «безопасной» работы с системным ядром различных ОС, построения распределённых систем и т.п. На базе имеющихся двух серверов и персональных компьютеров была создана виртуальная среда для обучения. На первый сервер установлена операционные система Альт Сервер Виртуализации. Второй сервер с установленной ОС Альт Сервер используется как архив для хранения версий программ и работ студентов, а также для тестирования ПО. Персональные компьютеры функционируют как толстые клиенты под управлением ОС Альт Рабочая станция. Использование толстых клиентов позволяет задействовать персональные компьютеры с другой предустановленной ОС. При обучении каждому студенту выделяется своё рабочее пространство или виртуальная машина, поэтому во время проведения занятий студенты могут заниматься разными задачами, что повышает их самостоятельность. Виртуальные машины конфигурируются на сервере с помощью Proxmox Virtual Environment (PVE).
Полученное аппаратно-программное решение в настоящее время используется для обучения студентов в рамках учебных дисциплин, посвящённых разработке программного обеспечения: «Системное программное обеспечение», «Технологии разработки и сопровождения системных утилит».
На данный момент не хватает дистрибутивов с разными конфигурациями операционных систем и архитектур аппаратной платформы для разработки свободного программного обеспечения, на основе которых можно развёртывать разнообразные виртуальные машины. В дальнейшем планируется реализовать на базе среды виртуализации изучение сетевого окружения и распределённых систем в рамках читаемых на кафедре дисциплин «Технологии сетевого взаимодействия информационных систем», «Системы распределённого управления данными», «Средства контроля и восстановления данных в распределённых системах», «Реконфигурируемые системы», «Системное и инструментальное обеспечение многоагентных систем». Также в дальнейшем реализованная виртуальная среда будет использоваться для обучения и научных исследований распределённого искусственного интеллекта и параллельных вычислений в рамках свободного программного обеспечения.