В рамках подготовки к конференции EDCON мы представляем серию статей, посвященных внедрению технологии, распределенного облака iEx.ec лежащей в основе технологии блокчейн. В предыдущей статье дается обзор iEx.ec . В этой статье представлена технология, которую мы используем: XtremWeb-HEP, промежуточное программное обеспечение, которое позволяет нам использовать объедененные машины для выполнения распределенных приложений в Интернете.
XtremWeb-HEP (XWHEP), разработанный CNRS-IN2P3, основан на XtremWeb от INRIA. Это промежуточное программное обеспечение, позволяющее развертывать инфраструктуру распределенной обработки данных (вычислительную сеть). XWHEP принадлежит к так называемому семейству «Cycle Stealing», в котором используются свободные вычислительные ресурсы. Как и некоторые другие стеки промежуточного программного обеспечения, XWHEP использует удаленные ресурсы (ПК, рабочих станций, КПК, серверов), подключенных к Интернету, или пулу ресурсов внутри локальной сети. Таким образом, это промежуточное ПО является ключевой технологие распределенного облака iEx.ec, поскольку позволяет участнику совместно использовать свои вычислительные ресурсы, такие как процессор, приложение и данные.
XWHEP написан на языке программирования Java, позволяющем работать на разных архитектурах и представляет собой ПО с открытым кодом для создания грид-систем из пер-сональных компьютеров, разработанное в рамках исследовательского проекта по глобальным вычислениям. XWHEP позволяет настраивать и запускать распределенные системы. Такая инфраструктура проекта может основываться на сообществе участников. Например, XWHEP позволяет вузам, университетам и компаниям настраивать и запускать распределенную систему глобальных вычислений (Global Computing) и одноранговых распределенных систем (Peer to Peer) для конкретного приложения или целого ряда приложений.
XWHEP был разработан и использован в контексте международных проектов в области ИТ, финансируемых Европейским союзом: EDGeS, EDGI, DEGISCO, и является частью Международной федерации настольных гридов.
XWHEP был разработан и используется в контексте международных проектов в области ИТ, финансируемых Европейским Союзом: EDGeS, EDGI, DEGISCO и является частью Международной федерации Desktop Grid.
Характеристики
Возможности XWHEP включают:
- P2P связь
- Отказоустойчивость
- Безопасность: Аутентификация (X509, OpenId, OAuth, логин / пароль); разрешение; лишение свободы; занесение в черный список
- Управление пользователями
- Права доступа
- Управление данными
- Планирование данных
- Управление приложением
- Пакет задач
- Копирование
- Добровольный обмен
- Политика развертывания
- Мосты
- Управление виртуальными машинами
Архитектура
Сервер — изображен на рисунке «iEx.ec: защищенная архитектура с тремя уровнями»: Один или более сервисов поддерживаются системными администраторами для размещения таких сервисов, как «Планировщик», «Сборщик результатов» и «Мост» между инфраструктурой iEx.ec и блокчейн Ethereum.
Клиенты устанавливаются пользователями iEx.ec на своих ПК для взаимодействия с инфраструктурой. Клиент позволяет пользователям управлять Услугами и использовать распределенные ресурсы (регистрировать приложения, отправлять задания, получать результаты).
Рабочие развертываются на вычислительных ресурсах. Благодаря работнику, машина развернутая в Интернете сможет присоединиться к сети iEx.ec и выполнять задачи клиента.
Рабочий
Описанный ниже рабочий процесс не намеренно учитывает безопасность, чтобы облегчить понимание. Безопасность будет предметом предстоящей статьи.Короче говоря, iEx.ec работает следующим образом:
- Услуги HEP позволяют управлять зарегистрированными приложениями, данными, пользователями и т.д.
- Клиент регистрирует приложения, данные и любой элемент, который необходим для успешного вычисления заданий. Этот элемент может храниться в самой инфраструктуре iEx.ec или в любом репозитории, как только они могут быть описаны с помощью ссылки (URI) и доступны через сеть. Нет ограничений на размер элемента, но превышение нескольких сотен мегабайт может быть долгим для передачи.
- Клиент готовит задания (единицы работы), содержащие ссылку зарегистрированного приложения, необязательные параметры, дополнительные ссылки на дополнительные файлы, а также на любой элемент.
- Наконец, Клиент отправляет подготовленные задания в планировщик.
- Независимо друг от друга рабочие связываются с планировщиком, чтобы получить рабочие места подходящие для их архитектуры.
- В ответ планировщик отправляет подходящее описание работы работнику.
- Для каждого элемента, на который ссылается задание, которое отсутствует в локальном кэше рабочего, рабочий извлекает его из хранилища данных iEx.ec или внешнего репозитория данных.
- Как только работа заканчивается на стороне рабочего, работник связывается с сборщиком результатов, чтобы отправить ему результаты.
- Результат может быть либо получен Клиентом или принесен обратно в смарт-контракт.
- Клиент может захотеть разработать интерфейс для своего приложения Dapp, используя фреймворк, такой как Embark или Truffle. Тем не менее, его приложение сможет общаться с сетью iEx.ec через смарт-контракты iEx.ec.
Панель приборов
IEx.ec поставляется с общественной панелью, целью которой является представление платформы. Обратите внимание, что эта общественная панель не предлагает никакого взаимодействия.
Он доступен по адресу http://xw.iex.ec/dashboard.
На следующих рисунках показаны некоторые примеры:
Панель для мониторинга сети iEx.ec, представляющая хосты, задачи и приложения, зарегистрированные в планировщике. Ее можно просмотреть в Интернете по адресу http://xw.iex.ec/dashboard
Панель для мониторинга сети iEx.ec, представляющая хосты, задачи и приложения, зарегистрированные в планировщике. Ее можно просмотреть в Интернете по адресу http://xw.iex.ec/dashboard
Заключение
В этой статье представлена архитектура iEx.ec. В следующей статье будет подробно рассмотрена безопасность. Она будет представлять защищенный слой связи; а также аутентификацию, авторизацию, права доступа, ограничения и многое другое.
— — — — — — — — — — — — — — — — — — — — — — — — — — — — —
Автор: Oleg Lodygensky из iExec
Дата публикации: 10 февраля 2017 года
Оригинал статьи на английском языке:iEx.ec Architecture
Приглашаем вас:
- Присоединиться к Telegram : https://t.me/iexec_russian
- Подписаться на наш Twitter : https://twitter.com/iExec_ru
iExec в социальных сетях:
Website • Blog • Slack • Telegram • Reddit • Twitter • Facebook • LinkedIn• Youtube • Github • Kakao • Instagram • Steemit • Katacoda • Docs
— — — — — — — — — — — — — — — — — — — — — — — — — — — — —