Виртуальные учебные MPI кластеры

Материал из Отдел виртуализации вычислительных ресурсов и облачных вычислений
Перейти к: навигация, поиск

Назначение

Виртуальный кластер (далее – кластер) выделяется структурному подразделению (кафедре) для проведения занятий по параллельным вычислениям с применением MPI. Кластер предназначен только для обучения и не может использоваться для проведения серьезных расчетов, требующих больших объемов процессорного времени. Для расчетов следует использовать вычислительный кластер.

Общие положения

Виртуальный кластер представляет набор виртуальных машин, размещённых в частном облаке Университета. Кластер состоит из управляющего узла (mgmt) и вычислительных узлов (nodes). Управляющий узел предназначен для взаимодействия с кластером (установки прикладного ПО, запуска вычислений и т.д.). Доступ к управляющему узлу возможен из сети Университета или из внешней сети, если было указано в служебной записке на выделение кластера. Внутреннее имя управляющего узла – mgmt-<код кафедры>, узлов – nodeN-<код кафедры>, домен clusters.

Сеть

Управляющий узел кластера, как и вычислительные узлы, имеют доступ в сеть Интернет для установки прикладного ПО. Вычислительные узлы ограничены в подключении ко внешним ресурсам: разрешены только порты 80 и 8080. Получить доступ к конкретному узлу можно только с управляющего узла, выполнив команду

ssh NodeN

где NodeN – имя требуемого вычислительного узла, например, node1-iu6. Между всеми узлами настроен беспарольный вход. Не меняйте настройки сетевых адаптеров и имена узлов! В локальной сети вычислительных узлов работает DHCP/DDNS сервер, всё взаимодействие происходит с помощью имён.

Создание пользователей

В кластере настроен сервис NIS (Network Information Service), позволяющий иметь единую базу пользователей на всём кластере. Для создания пользователя необходимо выполнить команду

adduser Username

где Username - имя пользователя, после этого необходимо установить пароль и (опционально) заполнить предлагаемые поля учётной записи. После добавления пользователя необходимо выполнить синхронизацию базы:

cd /var/yp/

make

Теперь данный пользователь имеет доступ ко всем узлам кластера и может подключаться к ним без пароля. Домашняя директория, в которой находятся все файлы пользователя, доступна всем узлам с помощью NFS (/mirror).

Проверка работоспособности кластера

Для проверки работоспособности MPI-кластера выполните от созданного пользователя следующую команду:

mpiexec -n 8 -f machinefile ./mpi_hello

Данная команда запустит 8 процессов, которые распределятся по каждому из узлов, указанных в machinefile, в соответствии с заданными в данном файле параметрами. Ниже показан пример вывода.

student2@mgmt-rk6:~$ mpiexec -n 8 -f machinefile ./mpi_hello

Hello from process 5 of 8 on node node6-rk6

Hello from process 3 of 8 on node node4-rk6

Hello from process 0 of 8 on node node1-rk6

Hello from process 2 of 8 on node node3-rk6

Hello from process 7 of 8 on node node8-rk6

Hello from process 1 of 8 on node node2-rk6

Hello from process 6 of 8 on node node7-rk6

Сведения о настройке кластера при изменении конфигурации

В случае изменения конфигурации кластера (добавление/удаление узлов, добавление ядер CPU в узлы) необходимо внести соответствующие изменения в файл /mirror/machinefile. Файлы machinefile, находящиеся в домашних директориях пользователей, являются символьными ссылками. Файл /mirror/machinefile необходимо редактировать от лица пользователя root (с помощью sudo).

Сведения по установке и настройке дополнительного ПО

Дополнительное ПО устанавливается с помощью пользователя user, который есть на всех узлах и входит в группу sudo. Обратите внимание, что в локальной вычислительной сети используются динамические адреса, взаимодействие между узлами происходит по именам. Не указывайте в настройках статические адреса, не меняйте настройки сетевых адаптеров и не изменяйте имена вычислительных узлов! Это приведёт к проблемам в локальной сети.