«Оптимизация кластерной системы на базе pvm компьютерной лаборатории физического факультета»

Вид материалаКурсовая

Содержание


Оптимизация кластерной системы на базе PVM. Описание оборудования и предыдущей конфигурации программного обеспечения кластера.
Установка и настройка новой конфигурации программного обеспечения кластера.
Подобный материал:
1   2   3   4   5   6   7

Оптимизация кластерной системы на базе PVM.

Описание оборудования и предыдущей конфигурации программного обеспечения кластера.


Парк оборудования компьютеризированной лаборатории физического факультета состоит из 10 машин с процессорами: AMD ATHLON-64 X2 4200+, оперативной памятью: 2 ГБ, сетевым адаптером: 10/100/1000 Мб/с.

Процессор: ATHLON-64 X2 4200+ - является суперскалярным, содержит 3 декодера команд, теоретически позволяющих достичь пиковой производительности до 3-х операций за 1 такт в каждом ядре. Таким образом, для данного процессора, имеющего в своём составе 2 ядра и работающего на частоте 2.2 ГГц теоретический предел производительности составляет 3х2х2.2=13.2 GFlops. В данную кластерную систему входи всего 9 компьютеров, значит теоретически предел всего кластера равен 13.2х9=118.8 GFlops.

Предыдущая конфигурация программного обеспечения кластерной системы позволяла использовать пропускную способность сетевого интерфейса лишь на 10 Мб/с, что плохо сказывалось на производительности установки, когда на ней считались сильно связные задачи, требующие большого количества синхронизаций друг с другом.

Старая конфигурация программного обеспечения:
    • Операционная система: Ubuntu Linux v.8.10
    • Механизм коммуникации: внутренние механизмы связи PVM, основанные на стандартном транспортном протоколе.
    • Интерфейс управления кластером: консоль PVM 3.4.2, GNU bash, version 3.2.48.
    • Компилятор: GCC (GNU Compiler Collection) v.4.3.

Установка и настройка новой конфигурации программного обеспечения кластера.

  1. Переустановка операционной системы.

Старая операционная система была заменена на более новую Ubuntu 9.10, с более новым ядром.
  1. Установка и настройка PVM.

PVM версии 3.4.5. была скачана с официального сайта: ссылка скрыта. Распаковав скачанный архив в домашнюю папку пользователя (~/pvm3/). В конфигурационный файл командного интерпретатора bash (/etc/bash.bashrc) добавлены следующие строчки:

#pvm configuration

export PVM_ROOT=/home/root/pvm3

if [ -z $PVM_ROOT ]; then

if [ -d ~/pvm3 ]; then

export PVM_ROOT=~/pvm3

else

echo "Warning - PVM_ROOT not defined"

echo "To use PVM, define PVM_ROOT and rerun your .bashrc"

fi

fi

if [ -n $PVM_ROOT ]; then

export PVM_ARCH=`$PVM_ROOT/lib/pvmgetarch`

export PATH=$PATH:$PVM_ROOT/lib/$PVM_ARCH # arch-specific

export PATH=$PATH:$PVM_ROOT/bin/$PVM_ARCH

fi

export PVM_PATH=$PVM_ROOT/bin/$PVM_ARCH

export PVM_DPATH=pvm3/lib/pvmd

export PVMHOSTFILE=/home/root2/.rhosts

В системе установлен SSH. Для коммуникаций, PVM использует RSH или SSH, по умолчанию в файле конфигурационном файле для каждой операционной системы в PVM (например, для Linux 64-bit: ~/pvm3/conf/LINUX64.def), стоит RSH, но лучше использовать SSH. Для этого в этом файле нужно прописать значение переменной ARCHCFLAGS, параметр RSHCOMMAND должен содержать путь к команде SSH, например DRSHCOMMAND=\"/usr/bin/ssh\" .

В каталоге /pvm3 выполняем команду для сборки и установки:

make

По окончании ее работы PVM будет готова к использованию. (На одном из этапов выполнения, команда завершилась выходом с ошибкой из-за отсутствия библиотеки m4_1.4.13-2_amd64, которая необходимо было скачать через sudo apt-get install m4 из интернета.)

На этом процесс установки и настройки PVM завершен. Для удобства работы, данная конфигурация была скопирована на все узлы кластера.

Следующие действия проводились только на главном узле кластера.

Выполнена процедура создания беспарольного доступа пользователя root2 с консоли кластера на узлы кластера по протоколу SSH. Беспарольный доступ обеспечит более комфортную работу в PVM. Так, отпадет необходимость вводить пароли доступа при добавлении каждого нового узла и при копировании исполняемых модулей в локальные файловые системы узлов кластера. Алгоритм обеспечения беспарольного доступа следующий:

а) Логинимся к консоли кластера: ssh root2@server

б) Переходим в каталог ssh: cd ~/.ssh

в) Генерируем rsa-ключи: ssh-keygen -t rsa

г) На вопрос задать имя файла жмем Enter - остается имя по умолчанию id_rsa.

д) На просьбу задать пароль жмем Enter два раза (второй раз для проверки).

е) Копируем публичный ключ на узел кластера: scp id_rsa.pub

ж) root2@phys1:~/.ssh

з) Логинимся к узлу phys1: ssh root2@phys1

и) Переходим в каталог ssh: cd ~/.ssh

к) Копируем публичный ключ: cat id_rsa.pub >> authorized_keys2

л) Отключаемся от узла phys1

м) Повторяем пункты 6-10 для остальных узлов кластера (phys2 ... physN).

После проведения вышеописанной процедуры пользователь "root2" сможет подключаться к узлам кластера с консоли кластера, не вводя свой пароль. Следует отметить, таким образом, обеспечивается беспарольный доступ только для одного пользователя и только в одном направлении: консоль кластера -> узлы кластера. И только для случая, когда root2 подключается к узлам кластера под своим именем.

Также был установлен CSSH, для более комфортного управления всеми узлами кластера.

Для автоматического подключения узлов кластера в PVM в файле ~.rhosts были указаны имена всех хостов, которые должны входить в кластер и подключаться автоматически при старте PVM. В данном файле они указываются по принципу одно имя хоста - одна строчка, также в этом же файле можно указать дополнительные особенности конфигурации PVM на узлах кластера, за более подробным описанием данного файла рекомендуется обратиться к руководству PVM.

Для автоматической проверки конфигурации кластера в файл ~.pvmrc была введена команда conf. Данный файл PVM считывает построчно при запуске и исполняет все команды стоящие каждой строке, если она не начинается с символа комментария(#).
  1. Установка и настройка XPVM.

Установка графической консоли проводилась только на главном узле кластера командой: sudo apt-get install xpvm .

Для автоматической регистрации хостов в XPVM в файл ~.xpvm_host необходимо добавить также как и в файл .rhosts имена хостов по тому же принципу.

Таким образом, новая конфигурация программного обеспечения:
    • Операционная система: Ubuntu Linux v. 9.10 kernel 2.6.31-14
    • Механизм коммуникации: внутренние механизмы связи PVM, основанные на стандартном транспортном протоколе.
    • Интерфейс управления кластером: консоль PVM 3.4.5, GNU bash, version 4.0.33(1), SSH, CSSH, XPVM 1.2.5 .
    • Компилятор: GCC (GNU Compiler Collection) v. 4.1.1