1 / 48

Система BOINC.

Система BOINC. Занятие проводит: Храпов Николай Павлович Институт Системного Анализа РАН. Практическое занятие. Основы работы с ОС Linux Установка BOINC- сервера. Практическое занятие. Основы работы с ОС Linux Установка BOINC- сервера.

duyen
Download Presentation

Система BOINC.

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Система BOINC. Занятие проводит: Храпов Николай Павлович Институт Системного Анализа РАН

  2. Практическое занятие • Основы работы с ОС Linux • Установка BOINC-сервера

  3. Практическое занятие • Основы работы с ОС Linux • Установка BOINC-сервера

  4. Что такое технологии виртуализации? Технология виртуализации позволяет в рамках одного персонального компьютера полностью смоделировать (виртуализовать) работу одного или нескольких других компьютеров.

  5. Виртуализация работы системы Windows 7 в рамках Mac OS X Lion

  6. Запуск ОС Linux в виртуальной среде Пуск -> Программы ->Vmware Player. Debian_6_Student. Play.

  7. Пользователь root root – пользователь-администратор системы, на которого не распространяется каких-либо ограничений доступа . Пароль: rootpw. Имя пользователя root является единым для всех реализаций Linux. Для ОС Linux Debian по умолчанию невозможен вход через графический интерфейс.

  8. Пользователи (продолжение) student – стандартныйпользователь системы. Пароль: studentpw. Допускается вход через графический интерфейс пользователя.

  9. Использование терминала При наличии GUI Программы –> Стандартные -> Терминал При отсутствии GUI ALT + CTRL + F1/F2 … F6 Возвращение в GUI: ALT + CTRL + F7

  10. Путь в файлу / /var/lib lib • путь к корневому каталогу. • пример пути относительно корневого каталога. • пример пути относительно текущего каталога. • домашний каталог пользователя. • пример пути относительно домашнего каталога. • каталог на уровень выше. ~ ~/Загрузки ..

  11. Команды по работе с файловой системой • ls – получить список файлов в каталоге. • cd – перейти в каталог. • mkdir – создать каталог. • rm – удалить файл. • pwd – путь к текущему каталогу. • touch – создать пустой файл. • ./ – запустить файл из текущего каталога на • исполнение.

  12. Опции ls • ls #список файлов в текущем каталоге; • ls –a # включая скрытые файлы; • ls –l # список файлов с выводом • расширенной информации; • ls /home # список файлов в каталоге /home.

  13. Доступ к файлу • На чтение. • На запись. • На исполнение.

  14. Изменение прав доступа к файлу • chmod +x <название файла> • Сделать файл исполняемым. • chmod –x <название файла> • Убрать права на исполнение.

  15. Запуск команд от имени суперпользователя • su • Переход в терминал пользователя root. • su – student • Переход в терминал пользователя student. • <пользователь>@<хост>:<каталог> $ • Командная строка обычного пользователя. • root@<хост>:<каталог> # • Командная строка пользователя root.

  16. Текстовый редактор nano • CTRL + o • Сохранение файла. • CTRL + x • Выход из программы.

  17. Другие команды • echo – написать аргумент. • date – написать текущую дату и время. • whoami – выводит имя текущего пользователя. • mc – консольный файловый менеджер midnight • commander. • apt-get – менеджер приложений. • ssh - вызов программы для удалённого терминального доступа.

  18. Задание №1 • В домашнем каталоге создать директорию Programs. • В директории Programs создать файл hworld. • Внутри данного файла поместить следующий список команд: • echo Hello World!!! I am • whoami • echo • echo Now: • date • echo • echo Path: • pwd • Сохранить файл и сделать его исполняемым. • Запустить файл как из домашнего, так и из текущего каталогов.

  19. Задание №2 (BOINC-клиент) • Перейти в консоль пользователя root. • Обновить репозиторий: • apt-get update • Установить программы BOINC-клиент и BOINC-менеджер: • apt-get install boinc-client boinc-manager • Выйти из консоли суперпользователя: • exit

  20. Задание №2 (продолжение) • Запустить BOINC-клиент. • Подключить его к проекту c master-url: • http://b16.oit.cmc.msu.ru/demo

  21. Практическое занятие • Основы работы с ОС Linux • Установка BOINC-сервера

  22. Переход на удалённый сервер • ssh root@b16.oit.cmc.msu.ru • Далее в соответствии с инструкцией.

  23. BOINC (основные понятия) Вычислительный узел. Приложение. Версии приложения. Расчётный блок (Work Unit). Результат. Службы. Master URL. BOINC-клиент. BOINC-менеджер. BOINC-сервер. Проект. Пользователь. Аккаунт-менеджер. Начисляемые баллы.

  24. BOINC-клиент

  25. BOINC (просмотр событий)

  26. Архитектура грида из персональных компьютеров

  27. Принцип работы распределённого приложения

  28. Физические и логические имена файлов

  29. Основные термины integral-master Work Unit 1 integral-client input1.txt Work Unit 2 integral-client input2.txt Work Unit 3 integral-client input3.txt Work Unit 4 integral-client input4.txt

  30. Шаг 3. Создание проекта: Структура каталогов

  31. Разработка и запуск распределённых приложений • BOINC-API • wrapper • DC-API • gen-wrapper

  32. BOINC-API На стороне сервера: • create_work • sample_assimilator • sample_trivial_validator На стороне клиента: integral_1.06_i686-pc-linux-gnu Integral_1.08_windows_intelx86 wrapper

  33. Шаг 3. Создание проекта: Web-интерфейс

  34. DC-API: клиентская часть DC_initClient() init_files() DC_finishClient(int) DC_resolveFileName(DC_FILE_IN, INPUT_LABEL); DC_resolveFileName(DC_FILE_OUT, OUTPUT_LABEL);

  35. 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)

  36. ПРАКТИЧЕСКАЯ ЧАСТЬ Шаг 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

  37. Шаг 1. Установка и настройка BOINC-клиента: подключение к проекту Заходим через браузер на сайт http://boinc.berkeley.edu/ Загружаем BOINC-клиент, устанавливаем его. При первом запуске программа предложит подключиться к проекту, для этого нужно ввести master-url специального тестового проекта: boinc-test.isa.ru, и следовать дальнейшим инструкциям

  38. Шаг 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

  39. Шаг 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

  40. Шаг 3. Создание проекта Выбираем короткое и длинное название для проекта(например за длинное название можно взять свои имя и фамилию, за короткое — инициалы)‏ Создаём проект, например: boinc_create_project --name=ivpr --long-name='Ivan Petrov' Добавляем пользователя в администраторы проекта: boinc_admin --NAME=ivpr --add boincadm необходимо назначить пароль для доступа к информации проекта через web-интерфейс.

  41. Шаг 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-файла, и занесёт его значения в базу данных проекта

  42. Шаг 5. Обновление версий Устанавливаем исполняемый файл клиентской части приложения в нашей инфраструктуре. Для этого создаём каталог /var/lib/boinc/ivpr/project/apps/integral/integral_1.00_windows_x86_64.exe !!! - название каталога будет заканчиваться именно на .exe. Копируем в созданную папку исполняемый клиентский файл с таким же названием. Запускаем update_versions, котора прочитает структуру каталогов внутри apps, и внесёт необходимые изменения в базу данных.

  43. Шаг 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

  44. Шаг 7. Запуск проекта Копируем файл серверной части приложения в каталог bin проекта. Запускаем его из папки bin: ./integral-master -c /var/lib/boinc/ivpr/integral-master/integral- master.conf запускаем сервер, набрав в отдельной консоли с правами администратора проекта команду start.

  45. Структура учебного стенда

  46. Облачные вычисления • История возникновения термина • SaaS • PaaS • IaaS

  47. Software as Service (SaaS)

  48. Ниболее популярные реализации: • Google Office • Microsoft Office Live • Dropbox Платформы для организации: • Google App Engine • Microsoft Azure

More Related