VMK2012-Prac3 - DESKTOPGRID.RU

Download Report

Transcript VMK2012-Prac3 - DESKTOPGRID.RU

Система BOINC.
Занятие проводит: Храпов Николай Павлович
Институт Системного Анализа РАН
Практическое занятие

Основы работы с ОС Linux

Установка BOINC-сервера
Практическое занятие

Основы работы с ОС Linux

Установка BOINC-сервера
Что такое технологии виртуализации?
Технология виртуализации позволяет в рамках одного
персонального компьютера полностью смоделировать
(виртуализовать) работу одного или нескольких других
компьютеров.
Виртуализация работы системы Windows 7 в рамках
Mac OS X Lion
Запуск ОС Linux в виртуальной среде
1. Пуск -> Программы -> Vmware Player.
2. Debian_6_Student.
3. Play.
Пользователь root
root – пользователь-администратор системы, на
которого
не
распространяется
каких-либо
ограничений доступа .
Пароль: rootpw.
Имя пользователя root является единым для всех
реализаций Linux.
Для ОС Linux Debian по умолчанию невозможен
вход через графический интерфейс.
Пользователи (продолжение)
student
–
стандартный
пользователь
системы.
Пароль: studentpw.
Допускается
вход
через
интерфейс пользователя.
графический
Использование терминала
При наличии
Программы –> Стандартные -> Терминал
GUI
При отсутствии
GUI
ALT + CTRL + F1/F2 … F6
Возвращение в GUI: ALT + CTRL + F7
Путь в файлу
/
путь к корневому каталогу.
/var/lib
пример пути относительно корневого
каталога.
lib
пример пути относительно текущего
каталога.
~
домашний каталог пользователя.
~/Загрузки пример пути относительно домашнего
каталога.
..
каталог на уровень выше.
Команды по работе с
файловой системой
ls – получить список файлов в каталоге.
cd – перейти в каталог.
mkdir – создать каталог.
rm – удалить файл.
pwd – путь к текущему каталогу.
touch – создать пустой файл.
./
– запустить файл из текущего каталога на
исполнение.
Опции ls
# список файлов в текущем каталоге;
# включая скрытые файлы;
# список файлов с выводом
расширенной информации;
ls /home # список файлов в каталоге /home.
ls
ls –a
ls –l
Доступ к файлу
На чтение.
На запись.
На исполнение.
Изменение прав доступа к файлу
chmod +x <название файла>
Сделать файл исполняемым.
chmod –x <название файла>
Убрать права на исполнение.
Запуск команд от имени
суперпользователя
su
Переход в терминал пользователя root.
su – student
Переход в терминал пользователя student.
<пользователь>@<хост>:<каталог> $
Командная строка обычного пользователя.
root@<хост>:<каталог> #
Командная строка пользователя root.
Текстовый редактор nano
CTRL + o
Сохранение файла.
CTRL + x
Выход из программы.
Другие команды
echo – написать аргумент.
date – написать текущую дату и время.
whoami – выводит имя текущего пользователя.
mc – консольный файловый менеджер midnight
commander.
apt-get – менеджер приложений.
ssh - вызов программы для удалённого
терминального доступа.
Задание №1
В домашнем каталоге создать директорию Programs.
В директории Programs создать файл hworld.
Внутри данного файла поместить следующий список команд:
echo Hello World!!! I am
whoami
echo
echo Now:
date
echo
echo Path:
pwd
Сохранить файл и сделать его исполняемым.
Запустить файл как из домашнего, так и из текущего
каталогов.
Задание №2 (BOINC-клиент)
Перейти в консоль пользователя root.
Обновить репозиторий:
apt-get update
Установить программы BOINC-клиент и
BOINC-менеджер:
apt-get install boinc-client boinc-manager
Выйти из консоли суперпользователя:
exit
Задание №2 (продолжение)
Запустить BOINC-клиент.
Подключить его к проекту c master-url:
http://b16.oit.cmc.msu.ru/demo
Практическое занятие

Основы работы с ОС Linux

Установка BOINC-сервера
Переход на удалённый сервер
ssh [email protected]
Далее в соответствии с инструкцией.
BOINC (основные понятия)
BOINC-клиент.
Вычислительный узел.
BOINC-менеджер.
Приложение.
BOINC-сервер.
Версии приложения.
Проект.
Расчётный блок (Work Unit).
Пользователь.
Результат.
Аккаунт-менеджер.
Службы.
Начисляемые баллы.
Master URL.
BOINC-клиент
BOINC (просмотр событий)
Архитектура грида из персональных
компьютеров
Принцип работы распределённого
приложения
Физические и логические имена
файлов
Основные термины
integral-master
Work Unit 1
Work Unit 2
Work Unit 3
Work Unit 4
integral-client
integral-client
integral-client
integral-client
input1.txt
input2.txt
input3.txt
input4.txt
Шаг 3. Создание проекта:
Структура каталогов
Разработка и запуск
распределённых приложений




BOINC-API
wrapper
DC-API
gen-wrapper
BOINC-API
На стороне сервера:
 create_work
 sample_assimilator
 sample_trivial_validator
На стороне клиента:
integral_1.06_i686-pc-linux-gnu
Integral_1.08_windows_intelx86
wrapper
Шаг 3. Создание проекта:
Web-интерфейс
DC-API: клиентская часть
DC_initClient()
init_files()
DC_finishClient(int)
DC_resolveFileName(DC_FILE_IN, INPUT_LABEL);
DC_resolveFileName(DC_FILE_OUT,
OUTPUT_LABEL);
DC-API: серверная часть
DC_initMaster(config_file)
DC_setMasterCb(process_result, NULL, NULL)
DC_log(LOG_NOTICE, char*)
DC_processMasterEvents(int time)
DC_createWU("integral", NULL, 0, wu_tag)
DC_addWUInput(wu, INPUT_LABEL, "wu-input.txt",
DC_FILE_VOLATILE)
DC_addWUOutput(wu, OUTPUT_LABEL)
DC_submitWU(wu)
char* DC_getWUTag(wu)
char* DC_getResultOutput(result, OUTPUT_LABEL)
DC_destroyWU(wu)
ПРАКТИЧЕСКАЯ ЧАСТЬ
Шаг 1. Установка и настройка BOINC-клиента
Подключаемся к репозиторию:
заходим с правами администратора(команда su);
редактируем файл /etc/apt/sources.list, добавляя в самый конец строку
deb http://www.desktopgrid.hu/debian/ lenny szdg
обновляем данные репозитория:
apt-get update
импортируем недостающий ключ:
apt-key advanced --keyserver wwwkeys.eu.pgp.net --recv-keys
обновляем репозиторий с применением импортированных ключей:
apt-get update
Шаг 1. Установка и настройка BOINC-клиента:
подключение к проекту
Заходим через браузер на сайт
http://boinc.berkeley.edu/
Загружаем BOINC-клиент, устанавливаем его.
При первом запуске программа предложит
подключиться к проекту, для этого нужно
ввести master-url специального тестового
проекта: boinc-test.isa.ru, и следовать
дальнейшим инструкциям
Шаг 2. Установка BOINC-сервера
Подключаемся к репозиторию:
заходим с правами администратора(команда su);
редактируем файл /etc/apt/sources.list, добавляя в самый конец строку
deb http://www.desktopgrid.hu/debian/ lenny szdg
обновляем данные репозитория:
apt-get update
импортируем недостающий ключ:
apt-key advanced --keyserver wwwkeys.eu.pgp.net —recv-keys <шифр
отображенный на экране>
обновляем репозиторий с применением импортированных ключей:
apt-get update
Шаг 2. Установка BOINC-сервера
Устанавливаем boinc-server:
apt-get install boinc-server
в процессе установки необходимо будет установить пароль администратора
баз данных mysql(например sqlpw):
Для доступа пользователя root к использованию mysql необходимо создать
файл /root/.my.cnf
со следующим содержимым:
[mysql]
user = root
password = sqlpw
[mysqladmin]
user = root
password = sqlpw
можно проверить доступ к базам данных, запустив mysql
Шаг 3. Создание проекта
Выбираем короткое и длинное название для проекта(например
за длинное название
можно взять свои имя и фамилию, за короткое — инициалы)
Создаём проект, например:
boinc_create_project --name=ivpr --long-name='Ivan Petrov'
Добавляем пользователя в администраторы проекта:
boinc_admin --NAME=ivpr --add boincadm
необходимо назначить пароль для доступа к информации
проекта через web-интерфейс.
Шаг 4. Добавление приложения
Проект расположен в папке /var/lib/boinc/<короткое название проекта>/project
Регистрируем приложение в файле проекта project.xml, добавляя вместо
обозначенного там приложения uppercase приложение integral:
<app>
<name>integral</name>
<user_friendly_name>Integral_of_function</user_friendly_name>
</app>
Далее необходимо запустить команду xadd, которая прочитает содержимое
данного xml-файла, и занесёт его значения в базу данных проекта
Шаг 5. Обновление версий
Устанавливаем исполняемый файл клиентской части
приложения в нашей
инфраструктуре. Для этого создаём каталог
/var/lib/boinc/ivpr/project/apps/integral/integral_1.00_windows_x86_6
4.exe
!!! - название каталога будет заканчиваться именно на .exe.
Копируем в созданную папку исполняемый клиентский файл с
таким же названием.
Запускаем update_versions, котора прочитает структуру
каталогов внутри apps, и внесёт необходимые изменения в базу
данных.
Шаг 6. Установка серверной части
распределённого приложения
В директории /var/lib/boinc/<короткое название проекта> создаем рабочий
каталог
приложения integral-master.
В данном каталоге создаем файл integral-master.conf c примерно
следующим
содержимым:
[Master]
WorkingDirectory = /var/lib/boinc/ivpr/integral-master
InstanceUUID = fc7286ea-d8ab-4304-be55-84c098d7db42
BoincConfigXML = /var/lib/boinc/ivpr/project/config.xml
ProjectRootDir = /var/lib/boinc/ivpr/project
Шаг 7. Запуск проекта
Копируем файл серверной части приложения в
каталог bin проекта.
Запускаем его из папки bin:
./integral-master
-c /var/lib/boinc/ivpr/integralmaster/integral- master.conf
запускаем сервер, набрав в отдельной консоли с
правами администратора проекта
команду start.
Структура учебного стенда
Облачные вычисления




История возникновения термина
SaaS
PaaS
IaaS
Software as Service
(SaaS)
Ниболее популярные реализации:

Google Office

Microsoft Office Live

Dropbox
Платформы для организации:

Google App Engine

Microsoft Azure