Разработка системы предоставления вычислительных ресурсов на основе концепции туманных вычислений
|
ВВЕДЕНИЕ 6
1. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ 9
1.1. Концепция туманных вычислений 9
1.1.1. Определение 9
1.1.2. Компоненты туманных вычислений 10
1.1.3. Особенности туманных вычислений 11
1.1.4. Подходы к организации архитектуры туманных вычислений .12
1.2. Технологии поддержки туманных вычислений 13
1.3. Технологии организации коммуникации туманных служб 15
1.4. Обзор существующих платформ для управления туманными
вычислениями 17
2. ПРОЕКТИРОВАНИЕ 19
2.1. Требования к системе 19
2.1.1. Функциональные требования 19
2.1.2. Нефункциональные требования 20
2.2. Варианты использования 20
2.3. Архитектура вычислительной системы 22
2.4. Добавление образа приложения 24
2.5. Добавление устройства тумана 26
2.6. Запуск туманного приложения 27
2.7. Подключение к туманному приложению 29
3. РЕАЛИЗАЦИЯ 31
3.1. Добавление образа приложения 31
3.2. Добавление устройства тумана 34
3.3. Поиск ближайших устройств тумана 38
3.4. Запуск туманного приложения 40
4. РАЗВЕРТЫВАНИЕ И ТЕСТИРОВАНИЕ 44
4.1. Развертывание вычислительной системы FogCore 44
4.2. Добавление и запуск туманного приложения 49
ЗАКЛЮЧЕНИЕ 55
ЛИТЕРАТУРА
1. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ 9
1.1. Концепция туманных вычислений 9
1.1.1. Определение 9
1.1.2. Компоненты туманных вычислений 10
1.1.3. Особенности туманных вычислений 11
1.1.4. Подходы к организации архитектуры туманных вычислений .12
1.2. Технологии поддержки туманных вычислений 13
1.3. Технологии организации коммуникации туманных служб 15
1.4. Обзор существующих платформ для управления туманными
вычислениями 17
2. ПРОЕКТИРОВАНИЕ 19
2.1. Требования к системе 19
2.1.1. Функциональные требования 19
2.1.2. Нефункциональные требования 20
2.2. Варианты использования 20
2.3. Архитектура вычислительной системы 22
2.4. Добавление образа приложения 24
2.5. Добавление устройства тумана 26
2.6. Запуск туманного приложения 27
2.7. Подключение к туманному приложению 29
3. РЕАЛИЗАЦИЯ 31
3.1. Добавление образа приложения 31
3.2. Добавление устройства тумана 34
3.3. Поиск ближайших устройств тумана 38
3.4. Запуск туманного приложения 40
4. РАЗВЕРТЫВАНИЕ И ТЕСТИРОВАНИЕ 44
4.1. Развертывание вычислительной системы FogCore 44
4.2. Добавление и запуск туманного приложения 49
ЗАКЛЮЧЕНИЕ 55
ЛИТЕРАТУРА
На данный момент в мире очень широко используются облачные вычисления для различного рода задач. Будь то хранение файлов, общение, предоставление развлекательного контента или научные исследования. Этот подход имеет огромные преимущества, но также накладывает некоторые ограничения. Одно из самых серьезных ограничений - это латентность. Это ограничение не позволяет использовать облачные вычисления в тех сферах, где требуется максимально быстрый отклик системы при возникновении определенных событий.
Компании предоставляющие вычислительные ресурсы на основе концепции облачных вычислений просто не в состоянии гарантировать маленькую латентность их систем, так как вычислительные ресурсы могут находиться очень далеко от конечного пользователя. Эта проблема не может быть решена простым увеличением количества дата-центров компаний по всему миру.
На сегодняшний день при использовании облачных вычислений пользователь получает доступ к ресурсам, которые могут находиться географически удаленно от него, и зачастую пользователь может даже не знать, где расположено то оборудование, на котором он работает. Это обусловлено физическим расположением дата-центров компании, услугами которой пользуется заказчик. Существуют компании, которые имеют большое количество оборудования, расположенного по всему земному шару, но даже при таком условии, на одну страну приходится всего несколько дата-центров, и это не решает проблему большой латентности системы. Одним из возможных способов решения этой проблемы является использование концепции туманных вычислений, которая подразумевает, что все вычисления происходят на устройствах тумана (вычислительном оборудовании), расположенных географически близко по отношению к потребителю. То есть по всему миру находится большое количество различных устройств с различной вы-числительной мощностью, на которых и решаются задачи пользователей.
Использование концепции туманных вычислений позволяет:
1) минимизировать латентность между конечным устройством и вычислительной системой: туманная вычислительная система поддерживает прозрачное развертывание служб на периферийных устройствах, которые могут образовывать «туман»;
2) соблюдать законодательство многих стран, которые обязывают хранить и обрабатывать данные пользователей на территории этой страны;
3) повысить отказоустойчивость системы за счет обеспечения децентрализованной обработки данных: вычислительные ресурсы могут продолжать обработку данных даже в случае потери соединения с облаком;
4) оптимизировать поток трафика, проходящего по магистральным интернет-каналам, и снизить нагрузку на сетевое оборудование интернет- провайдеров, предоставляя возможность обработки информации на устройствах тумана, расположенных рядом с пользователем.
Хотя туманные вычисления во многом отличаются от облачных вычислений, они не предназначены для их полной замены. Для решения некоторых задач туманным вычислениям может не хватить вычислительных ресурсов, но расположение этих ресурсов рядом с потребителями является преимуществом. Туманные вычисления призваны решить определенные недостатки присущие концепции облачных вычислений и должны дополнять ее. Использование вычислительной системы на основе концепции туманных вычислений совместно с другими системами на основе концепции облачных вычислений позволит создать более комплексное решение, которое даст возможность конечному потребителю выбирать тот вид услуг, который будет в большей степени удовлетворять его потребностям.
Цель и задачи исследования
Целью данной работы является разработка системы, предоставляющей вычислительные ресурсы на основе концепции туманных вычислений, которая должна контролировать, настраивать и предоставлять туманные вычислительные ресурсы в автоматическом режиме. Для достижения этой
цели необходимо решить следующие задачи:
1) провести обзор научных работ по тематике исследования и существующих платформ для управления туманными вычислениями;
2) произвести анализ задач и технологий, необходимых для реализации туманной вычислительной системы;
3) спроектировать архитектуру туманный вычислительной системы;
4) реализовать туманную вычислительную систему;
5) произвести тестирование реализованной системы.
Структура и объем работы
Выпускная квалификационная работа состоит из введения, четырех основных разделов, заключения и библиографии. Объем работы составляет 58 страниц, объем библиографии - 36 наименований.
Содержание работы
Работа организована следующим образом. В первом разделе «Анализ предметной области» производится обзор и анализ существующих научных подходов и программных продуктов по теме исследования, а также техно-логий поддержки туманных вычислений. Во втором разделе «Проектирование» описаны ключевые варианты использования и архитектура вычисли-тельной системы. В третьем разделе «Реализация» описывается программ-ная реализация компонентов системы. В четвертом разделе «Развертывание и тестирование» описан процесс развертывания вычислительной системы и приводятся результаты тестирования ключевых вариантов использования. В заключении представлены основные результаты работы и возможные направления дальнейших исследований.
Компании предоставляющие вычислительные ресурсы на основе концепции облачных вычислений просто не в состоянии гарантировать маленькую латентность их систем, так как вычислительные ресурсы могут находиться очень далеко от конечного пользователя. Эта проблема не может быть решена простым увеличением количества дата-центров компаний по всему миру.
На сегодняшний день при использовании облачных вычислений пользователь получает доступ к ресурсам, которые могут находиться географически удаленно от него, и зачастую пользователь может даже не знать, где расположено то оборудование, на котором он работает. Это обусловлено физическим расположением дата-центров компании, услугами которой пользуется заказчик. Существуют компании, которые имеют большое количество оборудования, расположенного по всему земному шару, но даже при таком условии, на одну страну приходится всего несколько дата-центров, и это не решает проблему большой латентности системы. Одним из возможных способов решения этой проблемы является использование концепции туманных вычислений, которая подразумевает, что все вычисления происходят на устройствах тумана (вычислительном оборудовании), расположенных географически близко по отношению к потребителю. То есть по всему миру находится большое количество различных устройств с различной вы-числительной мощностью, на которых и решаются задачи пользователей.
Использование концепции туманных вычислений позволяет:
1) минимизировать латентность между конечным устройством и вычислительной системой: туманная вычислительная система поддерживает прозрачное развертывание служб на периферийных устройствах, которые могут образовывать «туман»;
2) соблюдать законодательство многих стран, которые обязывают хранить и обрабатывать данные пользователей на территории этой страны;
3) повысить отказоустойчивость системы за счет обеспечения децентрализованной обработки данных: вычислительные ресурсы могут продолжать обработку данных даже в случае потери соединения с облаком;
4) оптимизировать поток трафика, проходящего по магистральным интернет-каналам, и снизить нагрузку на сетевое оборудование интернет- провайдеров, предоставляя возможность обработки информации на устройствах тумана, расположенных рядом с пользователем.
Хотя туманные вычисления во многом отличаются от облачных вычислений, они не предназначены для их полной замены. Для решения некоторых задач туманным вычислениям может не хватить вычислительных ресурсов, но расположение этих ресурсов рядом с потребителями является преимуществом. Туманные вычисления призваны решить определенные недостатки присущие концепции облачных вычислений и должны дополнять ее. Использование вычислительной системы на основе концепции туманных вычислений совместно с другими системами на основе концепции облачных вычислений позволит создать более комплексное решение, которое даст возможность конечному потребителю выбирать тот вид услуг, который будет в большей степени удовлетворять его потребностям.
Цель и задачи исследования
Целью данной работы является разработка системы, предоставляющей вычислительные ресурсы на основе концепции туманных вычислений, которая должна контролировать, настраивать и предоставлять туманные вычислительные ресурсы в автоматическом режиме. Для достижения этой
цели необходимо решить следующие задачи:
1) провести обзор научных работ по тематике исследования и существующих платформ для управления туманными вычислениями;
2) произвести анализ задач и технологий, необходимых для реализации туманной вычислительной системы;
3) спроектировать архитектуру туманный вычислительной системы;
4) реализовать туманную вычислительную систему;
5) произвести тестирование реализованной системы.
Структура и объем работы
Выпускная квалификационная работа состоит из введения, четырех основных разделов, заключения и библиографии. Объем работы составляет 58 страниц, объем библиографии - 36 наименований.
Содержание работы
Работа организована следующим образом. В первом разделе «Анализ предметной области» производится обзор и анализ существующих научных подходов и программных продуктов по теме исследования, а также техно-логий поддержки туманных вычислений. Во втором разделе «Проектирование» описаны ключевые варианты использования и архитектура вычисли-тельной системы. В третьем разделе «Реализация» описывается программ-ная реализация компонентов системы. В четвертом разделе «Развертывание и тестирование» описан процесс развертывания вычислительной системы и приводятся результаты тестирования ключевых вариантов использования. В заключении представлены основные результаты работы и возможные направления дальнейших исследований.
Цель данной работы состояла в разработке системы, предоставления вычислительных ресурсов на основе концепции туманных вычислений в автоматическом режиме. Поставленная цель была достигнута, в ходе достижения этой цели были решены следующие задачи:
1) проведен обзор научных работ по тематике исследования;
2) произведен обзор существующих платформ для управления туманными вычислениями;
3) произведен анализ технологий поддержки туманных вычислений и задач, необходимых для реализации вычислительной системы;
4) описаны основные варианты использования туманный вычислительной системы и спроектирована ее архитектура;
5) реализована туманная вычислительная система;
6) произведено развертывание и тестирование реализованной системы.
Весь исходный код разработанной системы размещен в публичных репозиториях GitHub [24]. Работа проводилась при поддержке РФФИ, грант 18-07-01224 «Разработка моделей, методов и алгоритмов планирования контейнеризированных вычислительных ресурсов при исполнении потоковых приложений в рамках концепции цифрового предприятия».
Направления дальнейших исследований
В дальнейших исследованиях возможно улучшение вычислительной системы с помощью:
- организации хранения данных туманных приложений на соседних устройствах тумана с возможностью их восстановления при выходе узлов из строя;
- осуществления выбора ближайших устройств тумана, удовлетворяющим определенным техническим характеристикам;
- организации взаимодействия с кластерами IoT-устройств с помощью токенов доступа.
1) проведен обзор научных работ по тематике исследования;
2) произведен обзор существующих платформ для управления туманными вычислениями;
3) произведен анализ технологий поддержки туманных вычислений и задач, необходимых для реализации вычислительной системы;
4) описаны основные варианты использования туманный вычислительной системы и спроектирована ее архитектура;
5) реализована туманная вычислительная система;
6) произведено развертывание и тестирование реализованной системы.
Весь исходный код разработанной системы размещен в публичных репозиториях GitHub [24]. Работа проводилась при поддержке РФФИ, грант 18-07-01224 «Разработка моделей, методов и алгоритмов планирования контейнеризированных вычислительных ресурсов при исполнении потоковых приложений в рамках концепции цифрового предприятия».
Направления дальнейших исследований
В дальнейших исследованиях возможно улучшение вычислительной системы с помощью:
- организации хранения данных туманных приложений на соседних устройствах тумана с возможностью их восстановления при выходе узлов из строя;
- осуществления выбора ближайших устройств тумана, удовлетворяющим определенным техническим характеристикам;
- организации взаимодействия с кластерами IoT-устройств с помощью токенов доступа.



