Использование виртуализации для увеличения эффективности вычислении тема диссертации и автореферата по ВАК РФ 05.13.11, кандидат наук Чжо За
- Специальность ВАК РФ05.13.11
- Количество страниц 238
Оглавление диссертации кандидат наук Чжо За
ВВЕДЕНИЕ
ГЛАВА 1. ОСОБЕННОСТИ РАСПРЕДЕЛЕННЫХ ВЫЧИСЛЕНИЙ И ИХ КЛАССИФИКАЦИИ
1.1. Распределенные вычисления
1.2. Классификация параллельных систем
1.3. Архитектуры вычислительных систем
1.4. Особенности грид вычисления и облачное вычисления
1.4.1. Архитектура Грид
1.4.2. Архитектура SOA
1.4.3. Технологии и системы облачных вычислений
1.4.4. Модели служб Облачных вычислений
1.5. Гетерогенные вычисления
1.5.1. CUDA
1.5.2. OpenCL
1.6. Виртуализация
1.6.1. Серверная виртуализация
1.6.2. Виртуализация приложений
1.6.3. Виртуализация памяти
1.6.4. Виртуализация хранения данных
1.6.5. Виртуализация сетей
Резюме главы
ГЛАВА 2. АНАЛИЗ МАТЕМАТИЧЕСКИХ МОДЕЛЕЙ И ПРОБЛЕМЫ РАЗРАБОТКИ ЭФФЕКТИВНЫХ РАСПРЕДЕЛЕННЫХ ВЫЧИСЛИТЕ-ЛЬНЫХ СРЕД
2.1. Оптимизация ускорения вычислительных сред
2.1.1. Обобщенность Закона Амдаля
2.1.2. Анализ моделей ускорения на различных архитектурах
2.2. Проблемы организации межсетевого взаимодействия в гетерогенных средах-33
2.2.1. Выбор коммутаторов распределённой системы
2.2.2. Управления данными и приложениями в распределённой среде —
2.2.3. Проблемы разработки ПО в распределённых средах
2.2.4. Доступ к ресурсам GRID
2.3. Анализ технологий и программных продуктов для построения гетерогенной среды
2.3.1. Организации системы доступа пользователей к распределенной вычислительной среде с помощью Globus Toolkit
2.3.2. GSI - для обеспечение единого входа в Грид-систему
2.3.3. GridFTP-для управления данными
2.3.4. GRAM - для управления процессами
2.4. Единый образ операционной системы (SSI)
2.4.1. Исследование MOSIX
2.5. Распределенная динамическая балансировка нагрузки грид
2.5.1. Исследование системы управления ресурсами c Univa Grid Engine- 47 Резюме главы
ГЛАВА 3. ОРГАНИЗАЦИЯ ПРОГРАММНЫХ ПРОДУКТОВ И ТЕХНОЛОГИЙ
ДЛЯ ПОСТРОЕНИЯ ЭФФЕКТИВНОГО ОПЕРАЦИОННОГО ОКРУЖЕНИЯ -—
3.1. Разработка системы управления ресурсами вычислительной среды
3.1.1. Организация Univa Grid Engine и Mosix
3.1.2. Программный интерфейс DRMAA
3.2. Разработка методы динамической балансировки нагрузки вычислительной среды
3.3. Интеграция системы виртуализации и единого образа операционной системы (SSI)
3.3.1. Методы интеграции виртуализации
3.3.2. Разработка гипервизора для контроля виртуального вычислительного окружения
3.3.3.Реализация DVMM для интеграция распределенных ресурсов виртуального вычислительного окружения
Резюме главы
ГЛАВА 4. КОНСОЛИДАЦИЯ И ЗАПУСК НАУЧНЫХ ПРИЛОЖЕНИЙ ДЛЯ АНАЛИЗА ПРОИЗВОДИТЕЛЬНОСТИ И ЭФФЕКТИВНОСТИ РАЗРАБОТАННОЙ ВЫЧИСЛИТЕЛЬНОЙ СРЕДЫ
4.1. Интеграция и консолидация программных продуктов
4.2. Модель запуска приложений в разработанной вычислительной среде
4.3. Стандартные тесты производительности и их применимость
4.3.1. NAS Parallel Benchmarks
4.3.2. CRYSTAL
4.3.3. OpenFoam
4.4. Исследование систем параллельного программирования в разработанной вычислительной среде
4.5. Анализ производительности разработанной системы
Резюме главы
Заключение
Список сокращений
Список литературы
Приложение А. Методика создания операционного окружения для увеличение вычислительной мощности
Приложение Б. Методика интеграции разнородных приложений
Приложение В. Акт о внедрении ПМ-ПУ
Приложение Г. Акт о внедрении ВТ-ИТ, СПбГМТУ
Рекомендованный список диссертаций по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК
Разработка системы запуска ресурсоемких приложений в облачной гетерогенной среде2013 год, кандидат технических наук Е Мьинт Найнг
Разработка и исследование методов повышения эффективности вычислений в распределенных высокопроизводительных вычислительных системах2024 год, кандидат наук Мин Тху Кхаинг
Разработка распределенных гетерогенных вычислительных систем и запуск приложений в распределенной вычислительной среде2011 год, кандидат технических наук Мьё Тун Тун
Организация системы доступа для пользователей в распределенной вычислительной среде2011 год, кандидат технических наук Ла Мин Хтут
Математическое и программное обеспечение распределения данных в проблемно-ориентированных параллельных программах2014 год, кандидат наук Палагин, Владимир Владимирович
Введение диссертации (часть автореферата) на тему «Использование виртуализации для увеличения эффективности вычислении»
ВВЕДЕНИЕ
В последние годы суперкомпьютеры стали широко использоваться в научных исследованиях и промышленных разработках. Архитектура этих систем со временем меняется. Современные компьютерные технологии позволяют создавать относительно дешевые многомашинные комплексы с разделяемыми вычислительными ресурсами. Такие системы обеспечивают относительно низкие вычислительные затраты, обладают высокой масштабируемостью, высоким уровнем надежности и имеют проверенные инструменты для проектирования, отладки и анализа параллельных программ.
Актуальность работы. Производительность вычислительных сред определяется их доступностью, в основном оцениваемой системами балансировки нагрузки, системами управления ресурсами, выполнения рабочей нагрузки и обработки данных для решения огромного количества задач. Чтобы удовлетворить все эти требования, нам нужна мощная вычислительная среда с надежными системами балансировки нагрузки, системой общей памяти и надежной системой обработки данных с огромным объемом данных. Так, несколько лет назад использование виртуальных машин предоставило большие возможности для управления ресурсом с помощью динамической миграции виртуальных машин. С помощью технологий виртуализации физический сервер можно разделить на несколько изолированных сред выполнения, развернув слой поверх аппаратных ресурсов или операционной системы (ОС). Серверные среды выполнения и виртуальные машины (ВМ) могут работать друг на друге, не прерывая друг друга. Каждая виртуальная машина имеет свою собственную ОС и приложения. В самом начале технологии виртуализации не были широко использованы по целому ряду причин. В облачных вычислениях крупные компании могут собрать воедино свои запасные аппаратные ресурсы и сдавать их в аренду клиентам на платной основе, а пользователи могут быстро начать работать на виртуальной машине, не тратя огромные затраты на покупку и обслуживание оборудования. Поскольку все пользователи выбирают облачные центры обработки данных для хранения своих
приложений, эффективное управление виртуальными машинами стало очень актуальным в центре обработки данных.
Согласно последним экспериментам, комбинация технологии виртуализации и SSI позволяет нам получать лучшие решения и достигать гибкости и простоты использования ресурсов. Виртуальная машина добавляет уровень гибкого управления между оборудованием и приложениями, в то время как SSI обеспечивает абстракцию распределенных ресурсов. Одновременное использование двух технологий позволяет нам увеличить общее использование ресурсов платформы, производительность и эффективность кластерных приложений.
Грид и облачные вычисления — это современные вычислительные технологии, состоящие из различных ресурсов, поддерживаемых различными организациями. Управление такими системами слишком сложно. Поэтому исследователи используют различные методологии и инструменты для анализа, оценки и прогнозирования предлагаемых ими алгоритмов и методов. Большинство опубликованных исследований были оценены на основе реальных инфраструктур грид-среды или с использованием инструментов этих технологий. Эти распределенные системы обладают большой вычислительной мощностью, что позволяет решать самые сложные задачи, такие как прогнозирование погоды и моделирование землетрясений. Это чрезвычайно сложные системы территориально распределенных и независимо управляемых ресурсов. Некоторые из многих аспектов, которые следует рассмотреть, включают в себя: управление ресурсами, гетерогенность, отказоустойчивость, производительность сети, безопасность, адаптивность, масштабируемость и прозрачность.
Цель исследования. Целью данной диссертационной работы является увеличение вычислительной мощности при объединении гетерогенных вычислительных ресурсов в единый вычислительный комплекс для эффективного управления вычислительными ресурсами и разработка метода запуска приложений в распределенной виртуальной среде.
Для достижения поставленной цели необходимо решение следующих задач.
1. Разработка нового метода построения виртуального операционного окружения, обеспечивающего повышение вычислительных мощностей;
2. Исследование системы управления распределенными ресурсами в виртуальной вычислительной среде;
3. Интеграция комплекса программ и технологий для оптимизации виртуальной гетерогенной системы и запуск специализированных задач для анализа производительности вычислительных сред.
Для успешного выполнения этих задач необходимо проанализировать и разработать метод управления ресурсами в распределенной вычислительной среде для запуска конкретных ресурсоемких приложений. В частности, для универсализации системы пользовательского доступа к ресурсам и удовлетворения индивидуальных требований исследователей вводится понятие "виртуальная машина", которая предоставляется каждому пользователю, а технические характеристики, эргономические параметры и интерфейс адаптируются к ней.
Предмет исследования. Предметом исследования являются методы теоретического анализа и экспериментального исследования организации системы доступа пользователей к распределенной вычислительной среде, методы построения инфраструктуры эффективной распределенной вычислительной среды. Методы интеграции и консолидации программных продуктов в распределенной вычислительной среде для повышения вычислительной мощности.
Методы исследований. Методы исследований базируются на современных принципах параллельной и распределенной обработки информации, передачи данных в компьютерных системах, защиты компьютерных систем, на современных технологиях проектирования программного обеспечения, на теории надежности информационных систем, теории случайных процессов и потоков. Научная новизна работы
1. Разработан новый подход к построению операционного окружения, обеспечивающего увеличение вычислительной мощности за счет динамической балансировки нагрузки, управления ресурсами и миграции процессов на узлах виртуальной вычислительной среды.
2. Разработан новый метод интеграции разноуровневых приложений и ресурсов на базе промежуточного программного обеспечения, предоставляемого платформой для удобного управления ресурсами виртуальной среды.
Достоверность научных результатов и выводов подтверждена результатами
тестирования алгоритмов и программного обеспечения, а также практическим использованием разработанных алгоритмических и программных методов и средств на действующем программно-аппаратном комплексе факультета ПМПУ СПбГУ. Кроме того, достоверность научных результатов и выводов подтверждена апробацией результатов исследований на ряде научных конференций. Научные положения, выносимые на защиту.
1. Методика создания нового виртуального операционного окружения, обеспечивающего увеличение вычислительной мощности за счет динамической балансировки нагрузки, управления ресурсами и миграции процессов на узлах вычислительной среды.
2. Методика интеграции разноуровневых приложений на базе промежуточного программного обеспечения, предоставляемого платформой для эффективного управления ресурсами вычислительной системы.
3. Методика повышения системы безопасности виртуального вычислительного комплекса в гетерогенной распределенной среде и запуск приложения для оценки мощности разработанной виртуальной вычислительной среды. Практическая значимость исследования. Значимость данной научно-
исследовательской работы заключается в создании и совершенствовании теоретической и технической базы компьютерных систем, обладающих высоким качеством и обеспечивающих работоспособность и ускорение научно-технического прогресса. Конкретные практические результаты достигаются объединением программных пакетов для эффективного управления разнородными распределенными вычислительными ресурсами, что обеспечивает повышенную производительность и безопасность данных при запуске ресурсоемких приложений.
Апробация работы. Основные результаты работы докладывались и обсуждались на национальных и международных научно-технических конференциях:
• 5-ая Международная конференция «Distributed Computing and Grid Technologies in Science and Education». Dubna, 2012 г.
• XIX Всероссийская научно-методическая конференция "Телематика'2012 Санкт-Петербург, 2012 г. ".
• Международная конференция «Computer Science & Information Technologies»,
Yerevan, Armenia, 2013 г. • 6-ая Международная конференция «Distributed Computing and Grid Technologies in Science and Education». Dubna, 2014 г.
Публикации. Основные теоретические и практические результаты диссертации опубликованы в 8 статьях и докладах, среди которых 4 публикации в ведущих рецензируемых изданиях, рекомендованных в действующем перечне ВАК. Доклады доложены и получили одобрение на 5 международных, всероссийских и межвузовских научно-практических конференциях.
Структура и объем диссертации. Диссертация состоит из введения, четырех глав, заключения, списка сокращений, списка литературы, содержащего 108 наименования, и 4 приложений. Объем составляет 123 страницы машинописного текста, 1 таблица и 26 рисунков.
ГЛАВА 1. ОСОБЕННОСТИ РАСПРЕДЕЛЕННЫХ ВЫЧИСЛЕНИЙ И ИХ КЛАССИФИКАЦИИ
1.1. Распределенные вычисления
Распределенные вычисления-это подход к решению ресурсоемких задач,
использующий несколько компьютеров, подключенных к сети. Распределенная вычислительная система-это совокупность независимых компьютеров, соединенных каналами связи, которые с точки зрения пользователя некоторого программного обеспечения выглядят как единое целое. Они представляют собой частный случай параллельных вычислений. Параллельная программа включает в себя несколько процессов, работающих вместе для выполнения конкретной задачи. Совместная работа нескольких процессов осуществляется посредством их взаимодействия, при этом требуется синхронизация (например, взаимное исключение или условная синхронизация). Сфера применения параллельных вычислений постоянно расширяется, охватывая новые области. Применение распределенных систем становится практически повсеместным не только для научных расчетов, но и для повседневных задач бизнеса (достаточно вспомнить высоконагруженные web-сервера) [6].
Для запуска параллельных приложений используются многопроцессорные системы, частным случаем которых и являются распределенные системы. Многопроцессорные системы существуют в различных конфигурациях. Наиболее распространенными типами таких систем являются:
• системы для высокопроизводительных вычислений - системы, предназначенные для параллельных вычислений. Многопроцессорные вычислительные системы (МВС) для высокопроизводительных вычислений обычно собираются из множества компьютеров, поэтому разработка таких систем представляет собой сложный процесс, требующий постоянной координации таких вопросов, как одновременное управление большим количеством компьютеров, общий доступ к ресурсам и т.д.;
• системы высокой надежности — это комплекс программных и технических средств, предназначенных для обеспечения непрерывной безотказной работы систем;
• многопоточные системы, используемые для обеспечения единого интерфейса к ряду ресурсов, которые могут быть произвольно увеличены (или уменьшены) с течением времени, типичным примером является группа веб-серверов [2][81].
Оптимизация конфигурации и поддержка многопроцессорной системы -достаточно сложные задачи. Многие инструменты были созданы для параллельного программирования в виде специальных языков программирования и API:
• POSIX Threads — стандарт POSIX реализации потоков (нитей) выполнения, определяющий API для создания и управления ими;
• MPI (Message Passing Interface) — программный интерфейс (API) для передачи информации, который позволяет обмениваться сообщениями между процессами, выполняющими одну задачу;
• PVM (Parallel Virtual Machine) — общедоступный программный пакет, позволяющий объединять разнородный набор компьютеров в общий вычислительный ресурс;
• OpenMP (Open Multi-Processing) — открытый стандарт для распараллеливания программ на языках С, С++ и Фортран;
• OpenCL (Open Computing Language) — стандарт для написания параллельных программ, позволяющий использовать не только CPU, но и GPU, а также специализированные ускорители.
Кроме того, существуют специализированные системы, позволяющие объединять компьютеры в единый вычислительный комплекс и осуществлять балансировку задач:
• MOSIX - это система управления кластерами, объединяющая их в единую систему (Single-System). Это операционная система, которая позволяет управлять кластером как единой системой;
• ScaleMP - система, позволяющая объединить стандартные компьютеры в единую виртуальную SMP-машину (платный продукт, в отличие от MOSIX) [11].
1.2. Классификация параллельных систем
Начнем с того, что бывает несколько видов параллелизма.
• Самый простой вид — это параллелизм на уровне битов. Эта форма параллелизма основана на увеличении размера машинного слова. Как известно, 4-битные процессоры были заменены 8-битными, а эти 16-, 32-, и, наконец, 64-битными.
• Следующий вид параллелизма подразумевает наличие конвейера команд и носит название параллелизма на уровне инструкций. Современные процессоры имеют многоступенчатый конвейер команд. Каждой ступени конвейера соответствует определённое действие, выполняемое процессором на этом этапе. Классический пример процессора с конвейером — это RISC-процессор с 5-ю ступенями: выборка инструкции из памяти, декодирование инструкции, выполнение инструкции, доступ к памяти, запись результата в регистры.
• Параллелизм данных предполагает выполнение одной и той же операции над массивом данных. Различные фрагменты такого массива обрабатываются на векторном процессоре или на разных процессорах параллельной машины. Распределение данных между процессорами, задействованными в программе. В этом случае векторизация или распараллеливание чаще всего выполняется уже на стадии компиляции-перевода исходного кода программы в машинные команды. Роль программиста в этом случае обычно ограничивается настройкой параметров векторной или параллельной оптимизации компилятора, директив параллельной компиляции и использованием специализированных языков для параллельных вычислений.
• Параллелизм задач подразумевает выполнение отдельной задачи на каждом из вычислительных узлов [3].
1.3. Архитектуры вычислительных систем
В 1966 году Майкл Флинн предложил очень удобную классификацию
вычислительных систем. Он был основан на концепции потока, который понимается как последовательность элементов, команд или данных, обрабатываемых процессором [38]. Соответствующая система классификации основана на подсчете количества потоков инструкций и данных и описывает четыре архитектурных класса:
• SISD (single instruction stream / single data stream) - единый поток инструкций и единый поток данных. Этот класс включает в себя последовательные компьютерные системы, имеющие один центральный процессор, способный обрабатывать только один поток последовательно выполняемых инструкций. В настоящее время практически все высокопроизводительные системы имеют более одного центрального процессора, но каждый из них выполняет несвязанные потоки команд, что делает такие системы комплексами систем SISD, работающих на различных пространствах данных [40][85]. Конвейеризация может быть использована для увеличения скорости обработки команд и скорости выполнения арифметических операций.
• MISD (multiple instruction stream / single data stream) - несколько потоков инструкций и один поток данных. Теоретически, в этом типе машин набор инструкций должен выполняться по одному потоку данных. Но до сих пор не было создано ни одной реальной машины, относящейся к этому классу. В качестве аналога функционирования такой системы представляется возможным рассмотреть деятельность банка. С каждого терминала отправляются разные команды, но они имеют дело с одной и той же общей базой данных.
• SIMD (single instruction stream / multiple data stream) - один поток инструкций и несколько потоков данных. Эти системы обычно имеют большое количество процессоров, от 1024 до 16384, которые могут выполнять одну и ту же инструкцию для различных данных в жесткой конфигурации. Одна команда выполняется параллельно по многим элементам данных. Еще одним подклассом систем SIMD являются векторные компьютеры. Они манипулируют массивами входных данных с помощью специально разработанных векторных процессоров. Следует отметить, что технология GPGPU относится именно к этой категории.
• MIMD (multiple instruction stream / multiple data stream) - множественный поток инструкций и множественный поток данных. Этот тип машины выполняет несколько потоков команд на различных потоках данных параллельно. В отличие от многопроцессорных SISD-машин, упомянутых
выше, команды и данные в этом случае связаны, поскольку они представляют собой разные части одной и той же задачи. Системы MIMD могут выполнять множество подзадач параллельно, чтобы сократить время, необходимое для выполнения основной задачи. Большое разнообразие систем, попадающих в этот класс, делает классификацию Флинна не вполне адекватной. Действительно, данная классификация недостаточно детальна, поэтому необходимо вводить более подробную классификацию, связанную с различными архитектурами и оборудованием. Рассмотрим несколько конкретных архитектур вычислительных систем.
• SMP (Symmetric Multiprocessing) - симметричная многопроцессорная архитектура. Главной особенностью систем с архитектурой SMP является наличие общей физической памяти, разделяемой всеми процессорами. Память используется, в частности, для передачи сообщений между процессорами, при этом все вычислительные устройства при обращении к ней имеют равные права и одинаковую адресацию для всех ячеек памяти. Вот почему архитектура SMP называется симметричной. Последнее обстоятельство позволяет очень эффективно обмениваться данными с другими вычислительными устройствами. К достоинствам систем с такой архитектурой нужно в первую очередь отнести легкость их программирования. Действительно, архитектура SMP не накладывает ограничений на модель программирования, используемую при создании приложения: обычно используется модель параллельной ветви, где все процессоры работают независимо друг от друга. Однако можно реализовать модели, использующие межпроцессорный обмен. Использование общей памяти увеличивает скорость этого обмена, и программа также имеет доступ ко всему объему памяти сразу. Следует отметить, что для таких систем существуют достаточно эффективные средства автоматического распараллеливания. Также одним из преимуществ SMP-систем является их простота в эксплуатации. Главный недостаток-плохая масштабируемость. Причиной плохой масштабируемости является тот факт, что шина в настоящее время способна обрабатывать только одну транзакцию, что вызывает проблемы разрешения конфликтов, когда несколько процессоров обращаются к одним и тем же областям общей физической памяти одновременно.
Вычислительные элементы начинают смещаться друг от друга. Когда возникает такой конфликт, зависит от скорости связи и количества вычислительных элементов [29].
• MPP (Massive Parallel Processing)- В этом случае система строится из отдельных модулей, содержащих процессор, локальную оперативную память, сетевые адаптеры, иногда-жесткие диски и/или другие устройства ввода-вывода. Главная особенность этой архитектуры заключается в том, что память физически разделена. По сути, такие модули являются полнофункциональными компьютерами. Главным преимуществом таких систем является масштабируемость. К недостаткам можно отнести сниженную скорость межпроцессорного обмена (поскольку в этом случае отсутствует общая оперативная память, в результате-требуется специальная методика программирования для реализации обмена сообщениями между процессорами), ограниченный объем оперативной памяти (поскольку теперь каждый процессор имеет свой собственный банк оперативной памяти, обычно не слишком большой), а также высокую цену программного обеспечения для таких систем (требуется приложить усилия, чтобы добиться максимальной эффективности использования ресурсов)[91].
• NUMA (Non-Uniform Memory Access) - архитектура с неравномерным доступом к памяти. Гибридная архитектура сочетает в себе преимущества систем с общей памятью и относительную дешевизну отдельных систем памяти. Суть этой архитектуры заключается в особой организации памяти, а именно: память физически распределена по разным частям системы, но логически она является общей, так что пользователь видит единое адресное пространство. Система построена из однородных базовых модулей (плат), состоящих из небольшого количества процессоров и блока памяти. Модули объединены с помощью высокоскоростного коммутатора. Поддерживается единое адресное пространство, аппаратное поддерживается доступ к удаленной памяти, то есть к памяти других модулей. По существу, архитектура NUMA является MPP архитектурой, где в качестве отдельных вычислительных элементов берутся SMP узлы. Стив Воллох предложил идею данной архитектуры.
• cc-NUMA (Cache Coherent Non-Uniform Memory Access) - архитектура с неоднородным доступом к памяти с обеспечением когерентности кэшей. Улучшение NUMA-систем, предложенное Сеймуром Креем. Понятие когерентности кэшей описывает тот факт, что все центральные процессоры получают одинаковые значения одних и тех же переменных в любой момент времени. Действительно, поскольку кэш-память принадлежит отдельному компьютеру, а не всей многопроцессорной системе в целом, данные, попадающие в кэш одного компьютера, могут быть недоступны другому. Чтобы этого избежать, следует провести синхронизацию информации, хранящейся в кэш-памяти процессоров.
• PVP (Parallel Vector Processing) - параллельная архитектура с векторными процессорами. Ключевой особенностью таких систем является наличие векторно-конвейерных процессоров, обеспечивающих команды для однотипной обработки векторов независимых данных, которые эффективно выполняются на конвейерных функциональных устройствах. Обычно несколько таких процессоров работают с общей оперативной памятью на одном узле. Несколько узлов могут быть объединены с помощью коммутатора. Создание программ для таких систем предполагает векторизацию циклов и их распараллеливание.
• Кластерная архитектура - набор рабочих станций общего назначения, объединенных в сеть. Такие системы являются самыми дешевыми, так как могут собираться из уже имеющихся, в том числе и устаревших компьютеров (вспомним о разнообразных Beowulf-системах). Обычно различают следующие виды кластеров: отказоустойчивые кластеры (отличительная черта - избыточное число узлов, гарантирующих предоставление сервиса в случае отказа одного или нескольких серверов), кластеры с балансировкой нагрузки (в данном случае один или несколько входных узлов распределяют запросы между несколькими узлами, которые обрабатывают эти запросы), вычислительные кластеры (используются для ресурсоемких, как правило, научных вычислений)[56].
• Грид-системы - по сути, один из видов кластерных систем, подразумевающий географически распределенную архитектуру.
1.4. Особенности грид вычисления и облачное вычисления
Грид-система- это "виртуальный суперкомпьютер", состоящий из кластеров и слабо связанных разнородных компьютеров, работающих вместе для выполнения огромного количества задач. С точки зрения сетевой организации, грид-это согласованная, открытая и стандартизированная среда, обеспечивающая гибкое, безопасное и скоординированное разделение вычислительных и запоминающих ресурсов, являющихся частью этой среды в рамках одной виртуальной организации. Отличительными особенностями являются грид- безопасность и географически распределенные узлы, которые могут быть расположены в любом месте и обычно подключены через Интернет [3][37]. Например, компьютеры, расположенные в разных частях мира, могут работать вместе над одной и той же задачей. Существует несколько типов грид-систем: добровольная грид (основанная на использовании свободно предоставляемого бесплатного ресурса персональных компьютеров), научная грид и коммерческая грид. Многие считают, что главным отличием облачных вычислений от грид-технологий является виртуализация. В то время как грид-системы обеспечивают высокое использование вычислительных ресурсов путем распределения одной сложной задачи на несколько вычислительных узлов, облачные вычисления следуют пути выполнения нескольких задач на одном сервере в качестве виртуальных машин. Виртуальная среда позволяет разделить такие ресурсы, как центральный процессор (CPU), память, ввод-вывод и сеть из одной хост-системы на несколько сред.
Вычислительные ресурсы грид-системы обеспечивают пользователя вычислительной мощностью. Вычислительные ресурсы могут быть как кластерами, так и отдельными рабочими станциями. При всем многообразии архитектур любая компьютерная система может рассматриваться как потенциальный вычислительный ресурс грид-системы. Необходимым условием для этого является наличие промежуточного программного обеспечения, реализующего стандартный внешний интерфейс с ресурсом и позволяющего сделать ресурс доступным для грид-системы [5]. Основными общими задачами грид являются:
Похожие диссертационные работы по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК
Анализ и оценка факторов, влияющих на скорость параллельной обработки информации в ГРИД-системах2014 год, кандидат наук Дробнов, Сергей Евгеньевич
Разработка технологии обеспечения высокоскоростных вычислений на основе облачной инфраструктуры2021 год, кандидат наук Кочовски Петар
Виртуализация многокомпонентной системной архитектуры предметно-ориентированной облачной вычислительной среды2014 год, кандидат наук Федосин, Михаил Евгеньевич
Исследование распределения ресурсов в интерактивных сервисах инфокоммуникационных сетей2014 год, кандидат наук Парфёнов, Денис Игоревич
Управление потоками сообщений в вычислительных сетях и системах с переменной структурой2019 год, кандидат наук Джафар Мустафа Садек Джавар
Список литературы диссертационного исследования кандидат наук Чжо За, 2020 год
Список литературы
1. A. Itzkovitz and A. Schuster. Distributed shared memory: Bridging the granularity gap, in Proceedings of the First ACM Workshop on Software Distributed Shared Memory (WSDSM, 1999.)
2. A. Snavely and D. M. Tullsen. Symbiotic job scheduling for a simultaneous multithreading processor. In Proceedings of the Ninth International Conference on Architectural Support for Programming Languages and Operating Systems, pages 234-244, Nov. 2000.
3. A.V. Bogdanov, A.A. Lazarev, Myo Tun Tun, La Min Htut, Разработка распределенных вычислительных систем Grid и запуск приложений в гетерогенной вычислительной среде, Дубна, 2010 p.69-74.
4. A.V. Bogdanov, M. Dmitriev, Ye Myint Naing, Eucalyptus Open-source Private Cloud Infrastructure, GRID 2010, Proceedings of the 4th International Conference Dubna, June 28- July 3, 2010. Page: 57-63.
5. A.V.Bogdanov, A.A. Lazarev, La Min Htut, Myo Tun Tun, Building User Access System in Grid Environment, Distributed Computing and Grid-Technologies in Science and Education: Proceedings of the 4th Intern. Conference, Dubna, 2010, Pages: 63-69.
6. Alexander Bogdanov, Thurein Kyaw Lwin, Anatoly Shuvalov, Soe Moe Lwin. Unconventional use of distributed databases from server consolidation to consolidation resources. The 4th International Conference "Distributed Computing and Grid-technologies in Science and Education" June 28 - July 3, 2010, Dubna, Russia.
7. Alexander Bogdanov, Kyaw Zaya, Pyae Sone Ko Ko: Improvement of computational abilities in computing environments with virtualization technologies, Журнал "Компьютерные исследования и моделирование", 2015, No.3, C499-504.
8. Alexander Bogdanov, Thurein Kyaw Lwin, Ye Myint Naing, Database use for Consolidation Of CloudComputing, Computer Science and Information Technologies 26 - 30 September, 2011, Yerevan, Armenia . page 237-239.
9. Alexander Bogdanov, Pyae Sone Ko Ko, Kyaw Zaya: Performance of the OpenMP
and MPI implementations on ultrasparc system, Журнал "Компьютерные исследования и моделирование", 2015, No.3, C485-491.
10. Al-Kiswany, S., Subhraveti, D., Sarkar, P., and Ripeanu, M. VMFlock: Virtual machine co-migration for the cloud. In HPDC'11 (San Jose, USA, June 2011).
11. Amnon Barak, Amnon Shiloh. MOSIX2 Cluster Multi-Cluster Cloud Management: User's and Administrator's Guides and Manuals. June 2009.
12. Amnon Barak, Avner Braverman, Ilia Gilderman, Oren Laden. Performance of PVM with the MOSIX Preemptive Process Migration Scheme. The Hebrew University of Jerusalem, Israel.
13. Amnon Barak, Oren La'adan. The MOSIX multicomputer operating system for high performance cluster computing. The Hebrew University of Jerusalem, Israel.
14. Andrew J. Younge, Robert Henschel, James T. Brown, Gregor von Laszewski, Judy Qiu, Geoffrey C. Fox, Pervasive Technology Institute, Indiana University. Analysis of Virtualization Technologies for High Performance Computing Environments.
15. Arun Babu Nagarajan, Frank Mueller, Christian Engelmann, Stephen L. Scott: Proactive fault tolerance for HPC with Xen virtualization. ICS 2007: 23-32.
16. Bog BOS: Sun Grid Engine [http://www.bog.pp.ru/work/sge.html]
17. Borko Furht and Armando J. Escalante. Handbook of Cloud Computing: Part1 Technologies and Systems, page: 3-19.
18. Чжо За, Пья Сон Ко Ко. Разработка эффективности гетерогенной среды с комбинацией единого образа операционной системы и виртуализации. //журнал (Естественные и технические науки № 7, Сентябрь, 2014.).p-93-95.
19. А.В.Богданов, Пья Сон КоКо, Чжо За. Тестирование OpenCL на разных платформах и сравнение его с CUDA, GLSL и OpenMP, XIX Всероссийская научно-методическая конференция "Телематика'2012" C. 337-339.
20. C. Almond, "A Practical Guide to Cloud Computing Security," 2009.
21. C. Morin, R. Lottiaux, G. Vallee, P. Gallard, G. Utard, R. Badrinath, and L. Rilling. Kerrighed:a Single System Image Cluster Operating System for High Performance Computing. In Proc. of Euro-Par, pages 1291-1294, 2003.
22. Christopher Clark, Keir Fraser, Steven Hand, Jacob Gorm Hansen, Eric Jul, Christian Limpach, Ian Pratt, and Andrew Warfield. Live migration of virtual
machines. In Proceedings of the 2nd Symposium on Networked Systems Design and Implementation, pages 273-286, 2005.
23. D. A. Bacigalupo, J. van Hemert, et al, "Managing dynamic enterprise and urgent workloads on clouds using layered queuing and historical performance models," Simulation Modelling Practice and Theory,vol. 19, pp. 1479-1495, 2011.
24. Daniel J. Magenheimer and Thomas W. Christian. vBlades: Optimised paravirtualisation for the Itanium processor family. In Proceedings of the 3rd Virtual Machine Research and Technology Symposium, pages 73-82, 2004.
25. Degtyarev A., Gankevich I. Efficiency Comparison of Wave Surface Generation Using OpenCL, OpenMP and MPI // Proceedings of 8th International Conference «Computer Science & Information Technologies» Yerevan, Armenia, 2011, P. 248-251.
26. Direct File System Access (DFSA). [http://support.math.cmu.edu/ Parallel_Cluster/mosix/txt_whatis.html].
27. Erlin Yao, Yungang Bao, Guangming Tan and Mingyu Chen, Extending Amdahl's Law in the Multicore Era.
28. F. Sabahi. Security of Virtualization Level in Cloud Computing, in Proc. 4th Intl. Conf. on Computer Science and Information Technology, Chengdu, China, 2011, pp. 197-201.
29. Farzad Sabahi. Secure Virtualization for Cloud Environment Using Hypervisor-based Technology,2012.
30. G. A. Culler D E, Singh J P, Parallel computer architecture a hardware/software approach. China Machine Press, 1999.
31. G. M. Amdahl. Validity of the Single-Processor Approach to Achieving Large Scale Computing Capabilities. In AFIPS Conference Proceedings, 1967.
32. G. Neiger. Hardware support for efficient processor virtualization, Intel Technology Journal, vol. 10(3), 2006.
33. G. Rowel, Virtualization: The next generation of application delivery challenges, 2009.
34. G. Texiwill. Network Security the Major Component of Virtualization Security, 2009.
35. Globus Toolkit [http://www.globus.org/]
36. Е Мьинт Найнг, Пья Сон КоКо, Чжо За. Разработка эффективности функционирования метакомпьютера с единым образом операционной системы. //журнал (Естественные и технические науки № 3, Июнь, 2012.)
37. Grid Портал Gridsphere:[ http://www.gridsphere.org]
38. Grit, L., Irwin, D., Marupadi, V., Shivam, P., Yumerefendi, A., Chase, J., Albrecht,J.: Harnessing virtual machine resource control for job management. In Proceedings of the First International Workshop on Virtualization Technology in Distributed Computing (VTDC). (November 2006).
39. Gustafson, J.L., Reevaluating Amdahl's Law,May 1988. [http://www.globus.org/ research/papers/anatomy.pdf.]
40. K. Hwang. Advanced computer architecture, parallelism, scalability, programmability (McGraw-Hill, New York) chapter 3, 1993.
41. I. Corporation. Intel virtualization technology for directed I/O. [Online]. Available: [http://www.intel.com/technology/itj/2006/v10i3/2-io/5-platform-hardware-support.htm]
42. Ian Foster, Carl Kesselman, Jeffrey M. Nick, Steven Tuecke. The Physiology of the Grid: An Open Grid Services Architecture for Distributed Systems Integration. 2002.
43. International Journal of High-Performance Computing Applications, 2001.
44. J. LeVasseur, V. Uhlig, M. Chapman, P. Chubb, B. Leslie, and G. Heiser. Pre-virtualization: Slashing the cost of virtualization, Tech. Rep., 2005. [Online]. Available:[ http://l4ka.org/publications/2005/previrtualization-techreport.pdf.]
45. J. S. Robin and C. E. Irvine. Analysis of the Intel Pentium's Ability to Support a Secure Virtual Machine Monitor. In Proc. of the USENIX Security Symposium, pages 129-144,2000.
46. J. Sugerman, G. Venkitachalam, and B.H. Lim. Virtualizing I/O Devices on VMware Workstation's Hosted Virtual Machine Monitor. In Proceeding of the USENIX Annual Technical Conference, pages 1-14, 2001.
47. Jerome Gallard, Geoffroy Vallee, Adrien Lebre, Christine Morin, Pascal Gallard, and Stephen L. Scott. Complementarity between Virtualization and Single System Image Technologies.
48. Alexander Bogdanov, Kyaw Zaya, Pyae Sone Ko Ko: Approach to effectiveness
and efficiency Cloud Computing environment, CSIT-2013 International Conference. (Armenia, September 23-27,2013). p-319-322.
49. Kefa Rabah. Building and Running Private Cloud with Eucalyptus Systems, Global Open Versity, Vancouver Canada. Dec 04, 2010.
50. Keith Adams and Ole Agesen. A comparison of software and hardware techniques for x86 virtualization. In Proceedings of the 12th International Conference on Architectural Support for Programming Languages and Operating Systems, pages 2-13, 2006.
51. Keren A. and Barak A., Opportunity Cost Algorithms for Reduction of I/O and Interprocess Communication Overhead in a Computing Cluster. IEEE TPDS, Vol. 14, No. 1, 2003.
52. Kinshuk Govil, Dan Teodosiu, Yongqiang Huang, and Mendel Rosenblum. Cellular Disco: resource management using virtual clusters on shared-memory multiprocessors. In Proceedings of the 17th ACM Symposium on OS Principles, pages 154-169,1999.
53. Alexander Bogdanov, Kyaw Zaya: Scaling the speedup and performances of an distributed computing environment, Пятая Международная конференция «ГРИД-технологии 2012». P-71-75.
54. L. Litty, "Hypervisor-based Intrusion Detection," M.S. thesis, Dept. Computer Science, University of Toronto, 2005.
55. Liang Yong. Network Center of Nanchang University, Single System Image with Virtualization Technology for Cluster Computing Environment, Nanchang 330031, China.
56. M. Chapman and G. Heiser. Implementing transparent shared memory on clusters using virtual machines, in ATEC '05: Proceedings of the annual conference on USENIX Annual Technical Conference. Berkeley, CA, USA: USENIX Association, 2005, pp. 23-23.
57. Mark D. Hill and Michael R. Marty. Amdahl's law in multicore era, 2007.
58. Mark F. Mergen, Volkmar Uhlig, Orran Krieger, Jimi Xenidis. Virtualization for high performance. 2003.
59. Matthew Chapman, Daniel J. Magenheimer, and Parthasarathy Ranganathan. Combining binary translation and virtualization, Technical Report HPL-2007-77, Hewlett-Packard Laboratories, 2007.
60. Mit Desai, Department of Computer Science, University of Southern California. High performance computing and virtualization,2012.
61. Mosix [http://www.mosix.org/txt_about.html].
62. MPICH2 with Sun Grid Engine. [http://idolinux.blogspot.com/2010/04/mpich2-with-sun-grid-engine.html]
63. NAS Parallel Benchmark, official documents center [http://www.nas.nasa.gov/ publications/npb.html]
64. Nidhi Jain Kansal and Inderveer Chana. Cloud Load Balancing Techniques: A Step Towards Green Computing, IJCSI International Journal of Computer Science Issues, Vol. 9, Issue 1, No 1, January 2012.
65. NVIDIA. OpenCL Programming Guide. 2012.
66. OpenCL.ru. Дизайн OpenCL. [http://opencl.ru/design]
67. Oracle Grid Computing. [ http://compit-t.com.by/pls/ct/web.Idx?page=10]
68. Overview of the Grid Security Infrastructure (Globus GSI) [http://www.globus.org/ security/overview.html]
69. P. Barham, B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, R. Neugebauer, I. Pratt, and A. Warfield. Xen and the Art of Virtualization, In Proc. of SOSP, pages 164-177, 2003.
70. Peter Chubb, Matthew Chapman, and Myrto Zehnder. Paravirtualization without pain, In Proceedings of the 8th Linux Conf. Au, January 2007.
71. Rashmi. K. S, Suma. Vaidehi. M. Load Balancing Approach to Avoid Deadlocks. 2012.
72. Resource Management (Globus GRAM) [http://www.globus.org/toolkit/ docs/2.4/gram/]
73. Rui Han, Li Guo, Moustafa M. Ghanem, Yike Guo. Lightweight Resource Scaling for Cloud Applications,2012.
74. Ryoji Tsuchiyama, Takashi Nakamura, Takuro Iizuka, Akihiro Asahara, Satoshi Miki. The OpenCL Programming Book. [http: //www. fixstars. com/en/opencl/book/ OpenCLProgrammingBook7contents.html]
75. Samuel Greengard. IDG White Paper. The Silver Lining: To Build an Effective Cloud Computing Infrastructure.
76. Sandra.Konta. Sun Grid Engine Administering Guide, 2009. [http://wikis.sun.com/display/gridengine62u3/Administering+Guide+%28Printabl e%29]
77. Satoshi Tsuchiya, Yoshinori Sakamoto, Yuichi Tsuchimoto, Vivian Lee. Big Data Processing in Cloud Environment.
78. Securing Virtualization in Real-World Environments, White paper,2009.
79. Shi, Y., Reevaluating Amdahl's Law and Gustafson's Law, Temple Un., Oct 1996.
80. Steve McClure, Richard Wheeler. MOSIX: how Linux clusters solve real world problems. San Diego, California, USA, June 18-23, 2000.
81. Alexander Bogdanov, Pyae Sone Ko Ko , Kyaw Zaya. Network Performance Comparison of Multiple Virtual Machines, CSIT-2013 International Conference. (Armenia, September 23-27,2013). p-314-318.
82. Stevens, R., Woodward, P., DeFanti, T. and Catlett, C. From the I-WAY to the National Technology Grid. Communications of the ACM, 40 (11). 50-61. 1997.
83. Sun Grid Engine Integration with Globus Toolkit. [http://www.lesc.ic.ac.uk/ projects/SGE-GT4.html]
84. T. C. Rajkumar Buyya. Single system image (SSI), the International Journal of High-Performance Computing Applications, vol. 15, pp. 124-135, 2001.
85. The DRMAA working group charter. [http://www.drmaa.org/]
86. The Message Passing Interface (MPI) standard. [http://www-unix.mcs.anl.gov/ mpi/.]
87. Tight Integration of the MPICH2 library into Sun Grid Engine. [http://gridengine. sunsource.net/howto/mpich2 -integration/mpich2 integration.html]
88. V. Uhlig, J. LeVasseur, E. Skoglund, and U. Dannowski. Towards scalable multiprocessor virtual machines. In Proceedings of the 3rd Virtual Machine Research and Technology Symposium, pages 43-56, May 2004.
89. Xian-He Sun, Yong Chen, Reevaluating Amdahl's law in the multicore era, 2010.
90. Zhiyi Huang, Wenguang Chen, Martin Purvis, and Weimin Zheng. View oriented, distributed, cluster-based approach to parallel computing. In Proceedings of the 6th International Symposium on Cluster Computing and the Grid, 2001.
91. А.В. Богданов, В.В. Корхов, В.В. Мареев, Е.Н. Станкова. Архитектуры и топологии многопроцессорных вычислительных систем. 2004.
92. А.В. Богданов, Е.Н. Станкова, В.В. Мареев, В.В. Корхов. Архитектуры и топологии многопроцессорных вычислительных систем. [http: / /www .intuit.ru/ department/hardware/atmcs/]
93. А.В. Богданов, Ла Мин Хтут, Мьё Тун Тун. Виртуальная организация (ВО): Концептуальный анализ системы входа для пользователей в развитых распределённых вычислительных средах. Известия СПбГЭТУ «ЛЭТИ». -2011.- Вып. 4.- С. 48-52.
94. А.В. Богданов, Мо Тун Тун. Разработка распределенных вычислительных систем и запуск приложений в гетерогенной вычислительной среде. Санкт-Петербург, 2225 июня 2009 г. XVI Всероссийская научно-методическая конференция"Телематика'2009", C.425-427.
95. А.В.Богданов, Е Мьинт Найнг, Пья Сон Ко Ко. Тестирование производительности PVM и MPI c миграцией процессов MOSIX в распределенной вычислительной среде // Дубна, с 16 по 21 июля 2012 г. C: 37.
96. А.К. Кирьяновым и Ю.Ф. Рябовым, Введение в технологию Грид Составлено, 2006 г.
97. А.П. Демичев, В.А. Ильин, А.П. Крюков, Введение в Грид-технологии, 2007.
98. А.П. Лубанец, М. В. Хлудова. Построение высокопроизводительных распределенных вычислительных систем на основе кластеров. Санкт-Петербургский государственный технический университет, 2001
99. Александр Костинский. Метакомпьютеры. [http://archive.svoboda.org/ programs/sc/2001/sc.090401.asp]
100. Альхулайди, Абдулмаджид, Ахмед Галеб. Распределенные вычисления (кластерные вычисления) с использованием пакета параллельного программирования MPI, стр. 82-82.
101. Андрей Ященко. Облачные вычисления: прошлое, настоящее, будущее. 04.04.2009. [http://www.ferra.ru/ru/techlife/85658/print/]
102. Белогурский А.И., Васин Л.А., Вашкевич Н.П., Князьков В.С., Шашков Б.Д. Россия, Пенза, Пензенский государственный университет, Технологии построения и тестирования вычислительных кластеров.
103. В.С. Заборовский, А.А. Лукашин, С.В. Купреенко, В.А. Мулюха. Архитектура системы разграничения доступа к ресурсам гетерогенной вычислительной среды на основе контроля виртуальных соединений. Санкт-Петербургский государственный политехнический университет.
104. Владимир Романченко. Распределенные облачные (Cloud) вычисления. 06/09/2009.[https://sites.google.com/site/moiknigiilekcii/lekcii/informatika/lekcia-no25/cloud]
105. Гайдучок В. Ю.Создание виртуального распределенного гетерогенного вычислительного комплекса. Санкт-Петербургский государственный электротехнический университет "ЛЭТИ" 2012.
106. Леонид Черняк. Открытые системы: Web-сервисы, grid-сервисы и другие. 24 декабря 2004г. [http://www.osp.ru/os/2004/12/184882/]
107. С.И. Насибуллин, А.Б. Дегтярев, А.В. Богданов. Организация единого входа и оптимизация доступа пользователей в развитых Грид-средах. Санкт-Петербургский государственный политехнический университет.
108. Эндрюс Г.Р. Основы многопоточного, параллельного и распределенного программирования / Пер. с англ. под ред. А.Б. Ставровского - М.: Издательский дом «Вильямс», 2003. - 512 с.
Приложение А. Методика создания операционного окружения для увеличение вычислительной мощности
Кластер представляет собой группу машин, подключенных к одной локальной сети. Установки продуктов для объединения ресурсы и управлять ими с одного кластера или нескольких кластеров. Аппаратная часть инфраструктуры представляется нижеприведенной конфигурацией. Экспериментальная установка
Наша экспериментальная среда состоит из четырех узлов кластера, включая узел управления. Узел управления — это физическая машина с восьмиядерным процессором Intel i7-3770 с частотой 3,40 ГГц, 8 ГБ памяти и 1 ТБ диска. Остальные тамошние машины оснащены четырехъядерным процессором Intel Core i7-3770 с частотой 3,4 ГГц, 8 ГБ оперативной памяти и 1 ТБ дисков соответственно. 64-разрядная версия Ubuntu 19.10 (Eoan Ermine) работает как ОС на четырех машинах, а также во всех виртуальных машинах. KVM 2.5.0 используются для управления виртуальными машинами. Каждая из четырех физических машин оснащена сетевой картой Realtek RTL8111, которая подключается через сетевой коммутатор TP-LINK TL-SG1024DT.
Создание промежуточного программного обеспечения с globus toolkit
root@ubuntu:/home/univa# chown globus. -R /usr/local/globus-4.0.8/ root@ubuntu:/home/univa# export GLOBUS_LOCATION=/usr/local/globus-4.0.8/ root@ubuntu:/home/univa#
/usr/local/globus-4.0.8/setup/globus_smple_ca_b49dc3d0_setup/setup-gsi
setup-gsi setup-gsi.pl
root@ubuntu:/home/univa# /usr/local/globus-
4.0.8/setup/globus_simple_ca_b49dc3d0_setup/setup-gsi -default
setup-gsi: Configuring GSI security
Making /etc/grid-security...
mkdir /etc/grid-security
Making trusted certs directory: /etc/grid-security/certificates/
mkdir /etc/grid-security/certificates/
Installing /etc/grid-security/certificates//grid-security. conf.b49dc3d0... Running grid-security-config...
Installing Globus CA certificate into trusted CA certificate directory... Installing Globus CA signing policy into trusted CA certificate directory... setup-gsi: Complete
root@ubuntu:/home/univa# ls /etc/grid-security/
certificates globus-host-ssl.conf globus-user-ssl.conf grid-security.conf root@ubuntu:/home/univa# ls /etc/grid-security/certificates/ b49dc3d0.0 globus-user-ssl. conf.b49dc3d0
b49dc3d0. signing_policy grid-security. conf.b49dc3d0 globus-host-ssl. conf.b49dc3d0
root@ubuntu:/home/univa# source /usr/local/globus-4.0.8/etc/globus-user-env.sh root@ubuntu:/home/univa# ls /etc/grid-security/certificates globus-host-ssl.conf globus-user-ssl. conf grid-security. conf
root@ubuntu:/home/univa# /usr/local/globus-4.0.8/sbin/gpt-build
.bashhistory .ICEauthority
. bashlogout . local/
.bashrc .mozilla/
. cache/ Music/
. config/ . nautilus/
.dbus/ Pictures/
Desktop/ .profile
.dmrc Public/
Documents/ .pulse/
Downloads/ .pulse-cookie
.esdauth .recently-used.xbel
examples. desktop . sudoasadm insuccessful
.gconf/ Templates/
. gconfd/ . update-notifier/
.gnome2/ Videos/
.gnome2_private/ .xsession-errors
.gtk-bookmarks .xsession-errors. old.gvfs
root@ubuntu:/home/univa# Is /etc/grid-security/
certificates globus-host-ssl.conf globus-user-ssl.conf grid-security.conf root@ubuntu:/home/univa# grid-cert-request -host "hostname" Do you wish to continue? [n] y
Generating a 1024 bit RSA private key
.. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
writing new private key to '/etc/grid-security/hostkey.pem'
You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank.
Level 0 Organization [Grid]: Level 0 Organizational Unit [GlobusTest]:Level 1 Organizational Unit [simpleCA-ubuntu.mm.com]:Name (e.g., John M. Smith) []: A private host key and a certificate request has been generated with the subject: /O=Grid/OU=GlobusTest/OU=simpleCA-ubuntu.mm.com/CN=host/ubuntu
The private key is stored in /etc/grid-security/hostkey.pem The request is stored in /etc/grid-security/hostcert_request.pem
Please e-mail the request to the Globus Simple CA univa@ubuntu You may use a command similar to the following:
cat /etc/grid-security/hostcert_request.pem | mail univa@ubuntu
Only use the above if this machine can send AND receive e-mail. if not, please mail using some other method.
Your certificate will be mailed to you within two working days.
If you receive no response, contact Globus Simple CA at univa@ubuntu
root@ubuntu:/home/univa# cp ~globus.//etc/grid-security/hostcert.pem .bashhistory .bashrc .globus/ .rnd .bash logout examples.desktop .profile root@ubuntu:/home/univa# cp ~globus/hostsigned.pem /etc/grid-security/hostcert.pem
root@ubuntu:/home/univa# cd /etc/grid-security/ root@ubuntu:/etc/grid-security# ls
certificates globus-user-ssl.conf hostcert.pem hostkey.pem globus-host-ssl.conf grid-security.conf hostcertrequest.pem root@ubuntu:/etc/grid-security# cp hostcert.pem containercert.pem root@ubuntu:/etc/grid-security# cp hostkey.pem containerkey.pem root@ubuntu:/etc/grid-security# chown globus:globus container*.pem root@ubuntu:/etc/grid-security# ls -l *.pem
-rw-r—r— 1 globus globus 2660 2012-11-25 21:03 containercert.pem
-r--------1 globus globus 887 2012-11-25 21:03 containerkey.pem
-rw-r—r— 1 root root 2660 2012-11-25 20:24 hostcert.pem -rw-r—r— 1 root root 1362 2012-11-25 20:19 hostcert request.pem
-r--------1 root root 887 2012-11-25 20:19 hostkey.pem
root@ubuntu:/etc/grid-security# sudo cp /home/globus/signed.pem /home/univa/.globus/usercert.pem
root@ubuntu:/etc/grid-security# nano /etc/grid-security/grid-mapfile root@ubuntu:/etc/grid-security# cat /etc/grid-security/grid-mapfile "/O=Grid/O U=GlobusTest/OU=simpleCA-ubuntu.mm.com/OU=mm.com/CN=univa" univa root@ubuntu:/etc/grid-security# nano /etc/xinetd.d/gridftp root@ubuntu:/etc/grid-security# nano /etc/services root@ubuntu:/etc/grid-security# tail /etc/services binkp 24554/tcp # binkp fidonetprotocol
asp 27374/tcp # Address Search Protocol
asp 27374/udp
csync2 30865/tcp # cluster synchronization tool
dircproxy 57000/tcp # Detachable IRC Proxy
tfido 60177/tcp # fidonet EMSI over telnet
fido 60179/tcp # fidonet EMSI over TCP
# Local services gsiftp 2811/tcp
root@ubuntu:/etc/grid-security# /etc/init.d/xinetd reload
* Reloading internet superserver configuration xinetd [ OK] root@ubuntu:/etc/grid-security# netstat -an | grep 2811
tcp 0 0 0.0.0.0:2811 0.0.0.0:* LISTEN
root@ubuntu:/etc/grid-security# su postgres -c "createuser -P globus" Enter password for new role: Enter it again:
Shall the new role be a superuser? (y/n) n Shall the new role be allowed to create databases? (y/n) y Shall the new role be allowed to create more new roles? (y/n) n root@ubuntu:/etc/grid-security# nano /usr/local/globus-4.0.8/etc/globus_wsrf_core/server-config.wsdd
Приложение Б. Методика интеграции разнородных
приложений
Интеграция gram и UGE через DRMAA
univa@ubuntu:~$ su globus Password:
globus@ubuntu:/home/univa$ cd ~
globus@ubuntu:~$ export X509_USER_CERT=/etc/grid-
security/containercert.pem
globus@ubuntu:~$ export X509_USER_KEY=/etc/grid-security/containerkey.pem globus@ubuntu:~$ grid-proxy-init
The program 'grid-proxy-init' is currently not installed. To run 'grid-proxy-init'
please ask your administrator to install the package 'globus-proxy-utils'
globus@ubuntu:~$ . /etc/profile
globus@ubuntu:~$ grid-proxy-init
Your identity: /O=Grid/OU=GlobusTest/OU=simpleCA-
ubuntu. mm.com/CN=host/ubuntu.mm. com
Creating proxy........................................................Done
Your proxy is valid until: Thu Nov 29 12:16:05 2012 globus@ubuntu:~$ globus-stop-container globus@ubuntu:~$ wget
http://www. lesc. ic. ac. uk/projects/globus_gram _job_manager_setup_sge-1.1. tar. gz --2012-11-29 00:17:07--
http://www. lesc. ic. ac. uk/projects/globus_gram _job_manager_setup_sge-1.1. tar. gz
Resolving www.lesc. ic. ac. uk... 146.169.60.145
Connecting to www.lesc.ic.ac.uk\146.169.60.145\:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 174616 (171K) [application/x-tar]
Saving to: лglobusgram Job_manager_setup_sge-1.1.tar.gz'
100%[================ ======================>] 174,616
624K/s in 0.3s
2012-11-29 00:17:08 (624 KB/s) - ^globusgram _job_manager_setup_sge-l.l.tar.gz' saved [174616/174616]
globus@ubuntu:~$ ls
BUILD hostsigned.pem
build. log index. html
container. out signed.pem
examples. desktop usercertrequest.pem
globusgram _job_manager_setup_sge-1.1.tar.gz globus@ubuntu:~$ wget
http://www. lesc. ic. ac. uk/projects/globus_scheduler_event_generator_sge-1.1. tar. gz --2012-11-29 00:17:38--
http://www.lesc.ic.ac. uk/projects/globus_scheduler_event_generator_sge-1.1.tar.gz
Resolving www.lesc. ic.ac.uk... 146.169.60.145
Connecting to www.lesc.ic.ac.uk\146.169.60.145\:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 185856 (182K) [application/x-tar]
Saving to: "globus_scheduler_event_generator_sge-1. 1. tar.gz'
100%[=========== ===== ====== ================>] 185,856
661K/s in 0.3s
2012-11-29 00:17:38 (661 KB/s) - "globusschedulereventgeneratorsge-1.1.tar.gz' saved [185856/185856]
globus@ubuntu:~$ wget
http://www. lesc. ic. ac. uk/projects/globus_scheduler_event_generator_sge_setup-1.1. tar.gz--2012-11 -29 00:18:02--
http://www. lesc. ic. ac. uk/projects/globus_scheduler_event_generator_sge_setup-
l.l.tar.gz
Resolving www.lesc. ic.ac.uk... 146.169.60.145
Connecting to www.lesc.ic.ac.uk\146.169.60.145\:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 293671 (287K) [application/x-tar]
Saving to: "globus_scheduler_event_generator_sge_setup-1.1.tar.gz'
100%[=========== ===== ====== ================>] 293,671
874K/s in 0.3s
2012-11-29 00:18:03 (874 KB/s) - "globusschedulereventgeneratorsgesetup-1.1.tar.gz' saved [293671/293671]
globus@ubuntu:~$ wget
http://www. lesc. ic. ac. uk/projects/globus_wsrf_gram_servicejava_setup_sge-1.1. tar.gz--2012-11 -29 00:18:26--
http://www. lesc. ic. ac. uk/projects/globus_wsrf_gram_servicejava_setup_sge-1.1.tar.gz
Resolving www.lesc.ic.ac.uk... 146.169.60.145
Connecting to www.lesc.ic.ac.uk\146.169.60.145\:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 293919 (287K) [application/x-tar]
Saving to: ^globus_wsrf_gram_servicejava_setup_sge-1.1.tar.gz'
100%[================ ============== ========>] 293,919
878K/s in 0.3s
2012-11-29 00:18:27 (878 KB/s) - ^globus_wsrf_gram_servicejava_setup_sge-1.1.tar.gz' saved [293919/293919]
globus@ubuntu:~$ source /opt/sge-root/default/common/settings.sh globus@ubuntu:~$ env \ grep SGE
SGE_CELL=default SGE_ROOT=/opt/sge-root globus@ubuntu:~$ . /etc/profile
globus@ubuntu:~$ source /usr/local/globus-4.0.8/etc/globus-user-env.sh globus@ubuntu:~$ gpt-buildglobus gram_job_manager_setup_sge-1.1.tar.gz gpt-build ====> CHECKING BUILD DEPENDENCIES FOR globusgram Jobmanagersetupsge gpt-build ====> Changing to
/home/globus/BUILD/globusgram _job_manager_setup_sge-1.1/
gpt-build ====> BUILDING globus gram_job_manager_setup_sge
gpt-build ====> Changing to /home/globus/BUILD
gpt-build ====> REMOVING empty package
globusgram _job_manager_setup_sge-noflavor-data
gpt-build ====> REMOVING empty package
globusgram _job_manager_setup_sge-noflavor-dev
gpt-build ====> REMOVING empty package
globusgram _job_manager_setup_sge-noflavor-doc
gpt-build ====> REMOVING empty package
globus_gram_job_manager_setup_sge-noflavor-pgm_static
gpt-build ====> REMOVING empty package
globusgram _job_manager_setup_sge-noflavor-rtl
globus@ubuntu:~$
globus@ubuntu:~$ gpt-build ./globus_scheduler_event_generator_sge-1.1.tar.gz gcc32dbg
gpt-build ====> CHECKING BUILD DEPENDENCIES FOR
globusschedulereventgeneratorsge
gpt-build ====> Changing to
/home/globus/BUILD/globus_scheduler_event_generator_sge-1.1/ gpt-build ====> BUILDING FLAVOR gcc32dbg gpt-build ====> Changing to /home/globus/BUILD gpt-build ====> REMOVING empty package
globus_scheduler_event_generator_sge-gcc32dbg-pgm gpt-build ====> REMOVING empty package globus_scheduler_event_generator_sge-gcc32dbg-pgm_static gpt-build ====> REMOVING empty package globus_scheduler_event_generator_sge-noflavor-data gpt-build ====> REMOVING empty package globus_scheduler_event_generator_sge-noflavor-doc
globus@ubuntu:~$ gpt-build globusschedulereventgeneratorsgesetup-l.l.tar.gz
gpt-build ====> CHECKING BUILD DEPENDENCIES FOR
globusschedulereventgeneratorsgesetup
gpt-build ====> Changing to
/home/globus/BUILD/globus_scheduler_event_generator_sge_setup-1.1/
gpt-build ====> BUILDING globus scheduler event generator sge setup
gpt-build ====> Changing to /home/globus/BUILD
gpt-build ====> REMOVING empty package
globus_scheduler_event_generator_sge_setup-noflavor-data
gpt-build ====> REMOVING empty package
globus_scheduler_event_generator_sge_setup-noflavor-dev
gpt-build ====> REMOVING empty package
globus_scheduler_event_generator_sge_setup-noflavor-doc
gpt-build ====> REMOVING empty package
globus_scheduler_event_generator_sge_setup-noflavor-pgm_static
gpt-build ====> REMOVING empty package
globus_scheduler_event_generator_sge_setup-noflavor-rtl
globus@ubuntu:~$
globus@ubuntu:~$ gpt-build./globus_wsrf_gram_servicejava_setup_sge-l.l.tar.gz
gpt-build ====> CHECKING BUILD DEPENDENCIES FOR
globus_wsrf_gram_servicejava_setup_sge
gpt-build ====> Changing to
/home/globus/BUILD/globus_wsrf_gram_servicejava_setup_sge-1.1/
gpt-build ====> BUILDING globusjwsrfgramservicejavasetupsge
gpt-build ====> Changing to /home/globus/BUILD
gpt-build ====> REMOVING empty package
globus_wsrf_gram_servicejava_setup_sge-noflavor-data
gpt-build ====> REMOVING empty package
globus_wsrf_gram_servicejava_setup_sge-noflavor-dev
gpt-build ====> REMOVING empty package
globus_wsrf_gram_servicejava_setup_sge-noflavor-doc
gpt-build ====> REMOVING empty package
globusjwsrfgramservicejavasetupsge-noflavor-pgmstatic
gpt-build ====> REMOVING empty package
globus_wsrf_gram_servicejava_setup_sge-noflavor-rtl
globus@ubuntu:~$
globus@ubuntu:~$ gpt-postinstall
running /usr/local/globus-4.0.8/setup/globus/setup-globus-job-manager-sge.. [ Changing to /usr/local/globus-4.0.8/setup/globus ] MPIPE == NONE
find-sge-tools: WARNING: Cannot locate mpirun
find-sge-tools: WARNING: Sun MPI not available
checking for gawk... gawk
checking for mpirun... no
checking for mprun... no
checking for cat... /bin/cat
checking for qsub... /opt/sge-root/bin/lx24-x86/qsub checking for qstat... /opt/sge-root/bin/lx24-x86/qstat checking for qdel... /opt/sge-root/bin/lx24-x86/qdel checking for qselect... /opt/sge-root/bin/lx24-x86/qselect checking for qhost... /opt/sge-root/bin/lx24-x86/qhost checking for qconf... /opt/sge-root/bin/lx24-x86/qconf checking for qacct... /opt/sge-root/bin/lx24-x86/qacct find-sge-tools: creating ./config.status
config.status: creating sge.pm ..Done
running /usr/local/globus-4.0.8/setup/globus/setup-seg-sge.pl.. [ Changing to
/usr/local/globus-4.0.8/setup/globus ]
..Done
running /usr/local/globus-4.0.8/setup/globus/setup-gram-service-sge.. [ Changing to /usr/local/globus-4.0.8/setup/globus ]
Running /usr/local/globus-4.0.8/setup/globus/setup-gram-service-sge ..Done
globus@ubuntu:~$
univa@ubuntu:~$ globusrun-ws -submit -F
https://ubuntu.mm.com:8443/wsrf/services/ManagedJobFactoryService -Ft SGE -c /bin/sleep 120 Submitting job.. .Done.
Job ID: uuid:1a2bfee4-399b-11e2-912f-0800278bd03b
Termination time: 11/29/2012 20:35 GMT
Current job state: Pending
Current job state: Active
Current job state: CleanUp
Current job state: Done
Destroying job. ..Done.
Установка GLOBUS toolkit
globus@ubuntu:/usr/local$ source /usr/local/globus-4.0.8/etc/globus-user-env.sh globus@ubuntu:~$ /usr/local/globus-4.0.8/setup/globus/setup-simple-ca
WARNING: GPTLOCATIONnot set, assuming:
GPTLOCATION=/usr/local/globus-4.0.8
C e r t i f i c a t e A u t h o r i t y S e t u p
This script will setup a Certificate Authority for signing Globus
users certificates. It will also generate a simple CA package
that can be distributed to the users of the CA.
The CA information about the certificates it distributes will be kept in:
/hom e/globus/. globus/simpleCA/ The unique subject name for this CA is:
cn=Globus Simple CA, ou=simpleCA-ubuntu, ou=GlobusTest, o=Grid
Do you want to keep this as the CA subject (y/n) [y]:
Enter the email of the CA (this is the email where certificate
requests will be sent to be signed by the CA):univa@ubuntu
The CA certificate has an expiration date. Keep in mind that
once the CA certificate has expired, all the certificates
signed by that CA become invalid. A CA should regenerate
the CA certificate and start re-issuing ca-setup packages
before the actual CA certificate expires. This can be done
by re-running this setup script. Enter the number of DAYS
the CA certificate should last before it expires.
[default: 5 years (1825 days)]:
Enter PEMpass phrase:
Verifying - Enter PEM pass phrase:
creating CA config package...done.
A self-signed certificate has been generated
for the Certificate Authority with the subject:
/O=Grid/OU=GlobusTest/OU=simpleCA-ubuntu/CN=Globus Simple CA If this is invalid, rerun this script /usr/local/globus-4.0.8/setup/globus/setup-simple-ca and enter the appropriate fields.
The private key of the CA is stored in
/hom e/globus/. globus/simpleCA//private/cakey.pem
The public CA certificate is stored in /home/globus/.globus/simpleCA//cacert.pem The distribution package built for this CA is stored in
/home/globus/.globus/simpleCA//globus_simple_ca_41151393_setup-0.19. tar.gz
This file must be distributed to any host wishing to request certificates from this CA. CA setup complete.
The following commands will now be run to setup the security configuration files for this CA: $GLOBUSLOCATION/sbin/gpt-build
/home/globus/.globus/simpleCA//globus_simple_ca_41151393_setup-0.19.tar.gz $GLOBUS_LOCATION/sbin/gpt-postinstall
setup-ssl-utils: Configuring ssl-utils package Running setup-ssl-utils-sh-scripts...
Note: To complete setup of the GSI software you need to run the following script as root to configure your security configuration directory:
/usr/local/globus-4.0.8/setup/globus_simple_ca_41151393_setup/setup-gsi For further information on using the setup-gsi script, use the -help option. The -default option sets this security configuration to be the default, and -nonroot can be used on systems where root access is not available.
setup-ssl-utils: Complete globus@ubuntu:~$ ls -/.globus/ simpleCA
globus@ubuntu:~$ ls -/.globus/simpleCA/
cacert.pem globus_simple_ca_41151393_setup-0.19.tar.gz newcerts certs grid-ca-ssl. conf private
crl index. txt serial
Создание myproxy сервера
root@ubuntu:~# . /etc/profile
root@ubuntu: ~#/usr/local/globus4.0.8/setup/globus_simple_ca_41151393_setup/se tup-gsi -default
setup-gsi: Configuring GSI security Making /etc/grid-security... mkdir /etc/grid-security
Making trusted certs directory: /etc/grid-security/certificates/ mkdir /etc/grid-security/certificates/
Installing /etc/grid-security/certificates//grid-security. conf.41151393... Running grid-security-config...
Installing Globus CA certificate into trusted CA certificate directory... Installing Globus CA signing policy into trusted CA certificate directory... setup-gsi: Complete root@ubuntu:~# ls /etc/grid-security/
certificates globus-host-ssl.conf globus-user-ssl.conf grid-security.conf root@ubuntu:~# ls /etc/grid-security/certificates/ 41151393.0 globus-user-ssl. conf.41151393
41151393.signing_policy grid-security.conf.41151393 globus-host-ssl. conf.41151393
root@ubuntu:~# source /usr/local/globus-4.0.8/etc/globus-user-env.sh
root@ubuntu:~# grid-cert-request -host лhostnameл
The hostname ubuntu does not appear to be fully qualified.
Do you wish to continue? [n]
Aborting
root@ubuntu:~# grid-cert-request -host лhostnameл The hostname ubuntu does not appear to be fully qualified. Do you wish to continue? [n] y
Generating a 1024 bit RSA private key
.......................................................................................+ + + + + +
writing new private key to '/etc/grid-security/hostkey.pem'
You are about to be asked to enter information that will be incorporated into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank.
Level 0 Organization [Grid]:Level 0 Organizational Unit [GlobusTest]:Level 1 Organizational Unit [simpleCA-ubuntu]:Name (e.g., John M. Smith) []: A private host key and a certificate request has been generated with the subject:
/O=Grid/OU=GlobusTest/OU=simpleCA-ubuntu/CN=host/ubuntu
The private key is stored in /etc/grid-security/hostkey.pem The request is stored in /etc/grid-security/hostcert_request.pem
Please e-mail the request to the Globus Simple CA univa@ubuntu
You may use a command similar to the following:
Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.