После конференции EDCON, мы продолжаем нашу серию статей для внедрения технологии распределенных облачных вычислений iExec на основе технологии блокчейн. В предыдущих статьях мы представили XtremWeb-HEP, в этой статье мы представим развертывание приложений.
Вступление
Как описано в предыдущей статье, iExec относится к известной парадигме глобальных вычислительных платформ, которые реализуют трехуровневую архитектуру, где набор централизованных сервисов создается и доступен через подключение к интернету децентрализованными службами: «клиент» и «рабочий» .
С одной стороны клиент предлагает интерфейс, который позволяет пользователям взаимодействовать с платформой; используя клиента, можно легко зарегистрировать приложения, как показано в следующем разделе. Работник, с другой стороны, объединяет добровольческие IT-ресурсы для запуска приложений, которые обрабатывают данные конечных пользователей.
На следующем рисунке показаны различные приложения, доступные в iEx.ec, на http://xw.iex.ec/dashboard/ мы видим, что платформа iEx.ec очень универсальна и подходит для нескольких типов приложений.
iEx.ec позволяет выполнять очень большие параллельные научные приложения на долю стоимости традиционного суперкомпьютера.
Связь
iEx.ec распределяет заявки на ресурсы добровольцев по требованию, используя коммуникацию, инициированную децентрализованными службами.Приложения надежно хранятся на стороне сервера. Они распределяются в соответствии с двухфазным процессом. Они отправляются от клиента к планировщику, а затем из планировщика к рабочим. Распространение приложения находится под контролем безопасности, как описано в нашей статье «Безопасность iExec».
Регистрация приложений
Используя децентрализованный клиент, пользователь может зарегистрировать собственное приложение. Это делается для отправки ожидаемых метаданных, а также для предоставления бинарных файлов, пакетов, библиотек или любого ожидаемого ресурса для запуска приложения. Эти ресурсы приложений могут быть отправлены в планировщик iExec или описаны конечной точкой (то есть URI) для извлечения этих ресурсов. Пользователь должен обеспечить доступ к ресурсам приложений. Как описано в статье «Безопасность», регистрация соответствует правилам безопасности.
С помощью клиента, приложение можно зарегистрировать следующим образом:$> xwsendapp [name] DEPLOYABLE ARCH OS <URI | FILE>Где:
- xwsendapp: это клиент iEx.ec
- DEPLOYABLE: зарезервированный глагол, который разрешает отправлять двоичные файлы рабочим
- name: имя приложения (должно быть уникальным)
- ARCH: это архитектура для этого приложения (например: x86_64)
- OS: эта операционная система для этого приложения (например, Linux)
- URI | FILE: это двоичный код приложения или URI, указывающий на двоичный код приложения. Данные могут автоматически регистрироваться для любого локального файла.
Регистрация данных будет предметом предстоящей статьи.
Клиент iEx.ec допускает намного больше опций, которые для простоты мы не будем подробно описывать здесь (библиотеки, разные архитектуры, операционные системы и т.д.). Более подробную информацию смотрите в документации.
Пример
Давайте рассмотрим очень простой пример: мы хотим вставить приложение «ls» в двоичную систему Linux для архитектуры X86_64.С помощью клиента приложение можно зарегистрировать следующим образом:$> xwsendapp ls DEPLOYABLE X86_64 linux /bin/ls
Извлечение приложений
Используя децентрализованный клиент, пользователь может получить приложение. Как описано в статье «Безопасность», поиск выполняется по правилам безопасности.Используя клиент, приложение может быть восстановлено следующим образом:$> xwapps
UID=’3fb96415-be5d-4300–8ae5–87af64733826', NAME=’ls’
Удаление приложений
Используя децентрализованный клиент, пользователь может удалить зарегистрированные приложения. Как описано в статье «Безопасность», удаление следует правилам безопасности.Используя клиент, приложение может быть восстановлено следующим образом:$> xwrm UID|URIГде:
- xwrm: является клиентом iEx.ec
- UID | URI : является идентификатором приложения
Развертывание приложений
Используя децентрализованного рабочего, приложение будет автоматически развернуто как только задача выполнения была подана пользователем. Работник извлекает метаданные и все ресурсы, описанные в метаданных (Бинарные, пакеты, библиотеки и т.д.). Если какие-либо метаданные или файлы недоступны, рабочий отказывается от приложения. Как описано в статье «Безопасность», развертывание следует правилам безопасности.
Список приложений, уже доступных в сети iEx.ec.
Заключение
В этой статье мы продемонстрировали развертывание приложений iEx.ec . Мы представим управление данными в следующей статье.
— — — — — — — — — — — — — — — — — — — — — — — — — — — — —
Автор: Oleg Lodygensky из iExec
Дата публикации: 21 февраля 2017 года
Оригинал статьи на английском языке:iEx.ec application deployment
Приглашаем вас:
- Присоединиться к 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
— — — — — — — — — — — — — — — — — — — — — — — — — — — — —