Обычно, учащимся показывают видео, где представлен какой-либо лабораторный эксперимент. В этом случае требования к характеристикам компьютера минимальны. Но всё больше набирает популярность метод компьютерного моделирования. Здесь, в зависимости от сложности моделируемого процесса, требуется высокопроизводительное компьютерное оборудование. В большинстве случаев образовательные организации не могут себе позволить приобрести мощные компьютеры для таких целей.
Использование имеющихся компьютеров в составе высокопроизводительного кластера позволяет решить эту проблему.
Кластер — это набор независимых компьютеров, работающих совместно для повышения доступности служб и приложений.
Во многих учреждениях используются различные кластерные системы. Это могут быть образовательные, научные учреждения, коммерческие компании. Кластерные технологии требуются везде, где выполняются ресурсоемкие задачи. Так, например, кластеры применяются в Центре суперкомпьютерных вычислений РАН.
В целях подтверждения всего вышесказанного мы провели экспериментальное исследование, направленное на реализацию простейшего высокопроизводительного кластера из имеющихся компьютеров..
Самый простой и недорогой способ – реализация данной системы на базе ОС Linux. Подходящим выбором являются компьютеры на базе процессоров AMD X2, или SMP-сервера с небольшим числом процессоров (4-8). Наиболее оптимальным считается построение кластеров на базе двухпроцессорных систем. Стоит установить на каждый узел не менее 2048MB оперативной памяти.[1]
Один из компьютеров следует выделить в качестве центрального куда устанавливается достаточно большой жесткий диск, возможно более мощный процессор и больше памяти, чем на остальные (рабочие) узлы.
Для получения хорошей производительности межпроцессорных обменов используют полнодуплексный Fast Ethernet на 1000 Mbit/sec.
Для эксперимента были выбраны два имеющихся компьютера с характеристиками:
1) AMD 64 X2 3200 (2.0GHz), 80Gb, 512Mb
2) AMD 64 X2 4800 (2.5GHz), 250Gb, 2048Mb
Установка системы происходит без рабочих столов и X-сервера, т. е. в серверном варианте. Затем производиться установка всех необходимых пакетов для работы сервера и выполнения его основных функций.
В качестве программы для создания кластера используется Heartbeat. Установка производится на каждый компьютер.
$ sudo apt-get install heartbeat
…
Далее производится установка и настройка блочного сетевого устройства (DRBD) для создания RAID1 по сети.
$sudo apt-get install drbd8-module-source drbd8-utils (на обоих серверах)
…
Необходимым этапом является установка и настройка кластерной файловой системы OCFS2.
$sudo apt-get install ocfs2-tools
…
Завершающем этапом является монтирование файловой системы ocfs2 и автомонтирование.
$sudo mount -t ocfs2 /dev/drbd0 /home [7]
…
Было создано два сервера объединённых в простой кластер на базе Ubuntu Server 16.04.1 LTS., при том что каждый из них (UbuntuServer1 и UbuntuServer2) будет считать себя резервным (делаем это осознанно, чтобы в обычном режиме работы, запросы обрабатывали оба сервера, каждый по своему ip). На каждом компьютере был организован веб-сервер с актуальными данными (простая веб-страница). Проверка показала работоспособность данного кластера. Производительность кластера оказалась больше, чем производительность каждого компьютера по отдельности. Таким образом сконструированная система позволила использовать более ресурсоемкие программные средства и задачи, что невозможно было организовать ни на одном из отдельных компьютеров организованного кластера.
СПИСОК ЛИТЕРАТУРЫ
1. Кластерные системы [Электронный ресурс]. – Режим доступа: http://rsusu1.rnd.runnet.ru/tutor/method/m1/page06.html. – (Дата обращения: 04.12.2016)
2. Использование Linux в образовании [Электронный ресурс]. – Режим доступа: http://www.kspu.ru/page-850.html. – (Дата обращения: 04.12.2016)
3. Кластеры на Linux [Электронный ресурс]. – Режим доступа: http://gendocs.ru/v18761. – (Дата обращения: 05.12.2016)
4. Курячий Г.В., Маслинский К.А. Операционная система Linux.Курс лекций. Учебное пособие. ИНТУИТ, Москва, 2005
5. Цирюлик О., Горошко Е. QNX/UNIX Анатомия параллелизма. СПБ-МОСКВА, 2006
6. Хьюз К., Хьюз Т. Параллельное и распределенное программирование с использованием С++
7. Базовая установка и настройка веб-сервера [Электронный ресурс]. – Режим доступа: http://help.ubuntu.ru/wiki/web-server. – (Дата обращения: 23.12.2016)