Автономные вычисления - Autonomic computing

Автономные вычисления (AC) относится к самоуправляемый Характеристики распределенных вычислений ресурсы, адаптируясь к непредсказуемым изменениям, скрывая при этом внутреннюю сложность для операторов и пользователей. По инициативе IBM В 2001 году эта инициатива в конечном итоге была направлена ​​на разработку компьютерных систем, способных к самоуправлению, чтобы преодолеть быстро растущую сложность вычислений. управление системами, а также уменьшить барьер, который сложность создает для дальнейшего роста.[1]

Описание

Концепция системы переменного тока предназначена для принятия адаптивных решений с использованием политик высокого уровня. Он будет постоянно проверять и оптимизировать свой статус и автоматически адаптироваться к меняющимся условиям. Фреймворк автономных вычислений состоит из автономных компоненты (AC) взаимодействуют друг с другом. AC может быть смоделирован в терминах двух основных схем управления (локальной и глобальной) с датчики (для самоконтроль ), эффекторы (для самонастройки), знания и планировщик / адаптер для использования политик, основанных на осознании себя и окружающей среды. Эту архитектуру иногда называют «монитор-анализ-планирование-выполнение» (MAPE).

Руководствуясь таким видением, различные архитектурные конструкции, основанные на "саморегулирующийся "вегетативные компоненты были недавно предложены. Очень похожая тенденция недавно характеризовала значительные исследования в области мультиагентные системы. Однако большинство из этих подходов обычно разрабатываются с централизованными или кластерными сервер архитектуры и в основном направлены на снижение затрат на управление, а не на необходимость включения сложных программных систем или предоставления инновационных услуг. Немного автономные системы вовлекают мобильные агенты, взаимодействующие через слабосвязанные механизмы связи.[2]

Вычисления, ориентированные на автономность - парадигма, предложенная Джимингом Лю в 2001 году, в которой используются искусственные системы, имитирующие социальные животные 'коллективное поведение для решения сложных вычислительных задач. Например, оптимизация колонии муравьев можно изучать в этой парадигме.[3]

Проблема нарастающей сложности

Прогнозы предполагают, что количество используемых вычислительных устройств будет расти на 38% в год.[4] и средняя сложность каждого устройства увеличивается.[4] В настоящее время этот объем и сложность управляется высококвалифицированными людьми; но спрос на квалифицированный ИТ-персонал уже превышает предложение, а затраты на рабочую силу превышают затраты на оборудование в соотношении до 18: 1.[5] Вычислительные системы принесли огромные преимущества в виде скорости и автоматизации, но в настоящее время существует огромная экономическая потребность в автоматизации их обслуживания.

В 2003 году IEEE Компьютер статья, Кефхарт и шахматы[1]предупреждают, что мечта о взаимосвязанности вычислительных систем и устройств может стать "кошмаром" всеобъемлющие вычисления "в которой архитекторы не могут предвидеть, спроектировать и поддерживать сложность взаимодействий. Они заявляют, что суть автономных вычислений заключается в самоуправлении системы, освобождающем администраторов от низкоуровневого управления задачами и улучшающем поведение системы.

Общая проблема современного распределенные вычислительные системы это их сложность и, в частности, сложность управления ими, становится существенным ограничивающим фактором в их дальнейшем развитии. Крупные компании и учреждения нанимают крупные компьютерная сеть для связи и вычислений. Распределенные приложения, работающие в этих компьютерных сетях, разнообразны и решают множество задач, от процессов внутреннего контроля до представления веб-контента и поддержки клиентов.

Дополнительно, Мобильные вычисления проникает в эти сети с нарастающей скоростью: сотрудникам необходимо общаться со своими компаниями, пока они не находятся в своем офисе. Они делают это, используя ноутбуки, персональные цифровые помощники, или мобильные телефоны с разнообразными формами беспроводной технологии для доступа к данным своих компаний.

Это создает огромную сложность во всей компьютерной сети, которой трудно управлять вручную операторами. Ручное управление требует много времени, дорого и подвержено ошибкам. Ручные усилия, необходимые для управления растущей сетевой компьютерной системой, имеют тенденцию очень быстро увеличиваться.

80% таких проблем в инфраструктуре происходит на уровне клиентского приложения и базы данных.[нужна цитата ] Большинство "автономных" поставщиков услуг[кто? ] гарантия только до уровня базовой сантехники (мощность, оборудование, Операционная система, сеть и основные параметры базы данных).

Характеристики вегетативных систем

Возможное решение могло бы заключаться в том, чтобы позволить современным сетевым вычислительным системам управлять собой без прямого вмешательства человека. В Инициатива автономных вычислений (ACI) стремится обеспечить основу для автономных систем. Он вдохновлен автономная нервная система человеческого тела.[6] Эта нервная система контролирует важные функции организма (например, дыхание, частота сердцебиения, и артериальное давление ) без какого-либо сознательного вмешательства.

В самоуправляемый В автономной системе человек-оператор берет на себя новую роль: вместо того, чтобы управлять системой напрямую, он / она определяет общие политики и правила, которые направляют процесс самоуправления. Для этого процесса IBM определила следующие четыре типа свойств, называемых свойствами self-star (также называемыми self- *, self-x или auto- *). [7]

  1. Самостоятельная настройка: Автоматическая настройка компонентов;
  2. Самовосстановление: автоматическое обнаружение и исправление неисправностей;[8]
  3. Самостоятельная оптимизация: Автоматический мониторинг и контроль ресурсов для обеспечения оптимального функционирования в соответствии с определенными требованиями;
  4. Самозащита: проактивная идентификация и защита от произвольных атак.

Другие, такие как Послад[7] и Нами и Бертельс[9] расширили набор селфи-звезды следующим образом:

  1. Саморегуляция: Система, которая поддерживает некоторые параметры, например, Качество обслуживания, в пределах диапазона сброса без внешнего управления;
  2. Самообучение: системы используют такие методы машинного обучения, как обучение без учителя не требующий внешнего управления;
  3. Самосознание (также называемые самопроверкой и самоопределением): Система должна знать себя. Он должен знать объем своих собственных ресурсов и ресурсы, на которые он ссылается. Система должна знать свои внутренние компоненты и внешние ссылки, чтобы контролировать и управлять ими;
  4. Самоорганизация: Структура системы, управляемая моделями физического типа, без явного давления или вмешательства извне;
  5. Самотворение (также называемое Самостоятельная сборка, Самовоспроизведение ): Система, управляемая моделями экологического и социального типа без явного давления или вмешательства извне. Члены системы мотивированы и самоуправляемы, создавая сложность и порядок в творческом ответе на постоянно меняющийся стратегический спрос;
  6. Самоуправление (также называемое самоуправлением): система, которая управляет собой без внешнего вмешательства. То, что управляется, может варьироваться в зависимости от системы и приложения. Самоуправление также относится к набору процессов самостоятельной звезды, таких как автономные вычисления, а не к единственному процессу самостоятельной звезды;
  7. Самоописание (также называемое самообъяснением или представлением о себе): система объясняет себя. Он может быть понят (людьми) без дополнительных объяснений.

IBM сформулировала восемь условий, определяющих автономную систему:[10]

Система должна

  1. знать себя с точки зрения того, к каким ресурсам он имеет доступ, каковы его возможности и ограничения, а также как и почему он подключен к другим системам;
  2. иметь возможность автоматически конфигурировать и перенастраивать себя в зависимости от меняющейся вычислительной среды;
  3. уметь оптимизировать его производительность для обеспечения максимально эффективного вычислительного процесса;
  4. уметь обходить возникшие проблемы, либо ремонтируя себя, либо выполняя функции маршрутизации от проблемы;
  5. обнаруживать, идентифицировать и защищать себя от различных типов атак для поддержания общей безопасности и целостности системы;
  6. адаптироваться к окружающей среде по мере ее изменения, взаимодействуя с соседними системами и устанавливая протоколы связи;
  7. полагаться на открытые стандарты и не могут существовать в закрытой среде;
  8. предвидеть спрос на свои ресурсы, оставаясь при этом прозрачным для пользователей.

Несмотря на то, что назначение и, следовательно, поведение автономных систем различаются от системы к системе, каждая автономная система должна обладать минимальным набором свойств для достижения своей цели:

  1. Автоматический: По сути, это означает возможность самоконтроля своих внутренних функций и операций. Таким образом, автономная система должна быть автономной и способной запускаться и работать без какого-либо ручного вмешательства или внешней помощи. Опять же, знания, необходимые для начальной загрузки системы (Секрет производства) должны быть присущи системе.
  2. Адаптивный: Автономная система должна иметь возможность изменять свою работу (то есть ее конфигурацию, состояние и функции). Это позволит системе справляться с временными и пространственными изменениями в ее рабочем контексте либо в долгосрочной перспективе (настройка / оптимизация среды), либо в краткосрочной перспективе (исключительные условия, такие как злонамеренные атаки, сбои и т. Д.).
  3. Осведомлен: Автономная система должна иметь возможность отслеживать (ощущать) свой операционный контекст, а также свое внутреннее состояние, чтобы иметь возможность оценить, служит ли ее текущая работа своей цели. Осведомленность будет контролировать адаптацию его оперативного поведения в ответ на изменения контекста или состояния.

Эволюционные уровни

IBM определила пять эволюционных уровней, или модель автономного развертывания, для развертывания автономных систем:

  • Уровень 1 - это базовый уровень, который представляет текущую ситуацию, когда системы в основном управляются вручную.
  • Уровни 2–4 вводят все более автоматизированные функции управления, а
  • Уровень 5 представляет собой конечную цель автономных, самоуправляющихся систем.[11]

Шаблоны проектирования

Сложность конструкции автономных систем может быть упрощена за счет использования шаблоны проектирования такой как модель-представление-контроллер (MVC) шаблон для улучшения разделение проблем от инкапсуляция функциональные проблемы.[12]

Контуры управления

Основная концепция, которая будет применяться в автономных системах: замкнутые контуры управления. Эта широко известная концепция проистекает из Контроль процесса Теория. По сути, замкнутый контур управления в самоуправляемой системе контролирует некоторый ресурс (программный или аппаратный компонент) и автономно пытается поддерживать его параметры в желаемом диапазоне.

Согласно IBM, ожидается, что сотни или даже тысячи таких контуров управления будут работать в крупномасштабной самоуправляемой компьютерной системе.

Концептуальная модель

AutonomicSystemModel.png

Фундаментальным строительным блоком автономной системы является способность к восприятию (Датчики Sя), что позволяет системе наблюдать за внешним операционным контекстом. Вегетативной системе присуще знание Цель (намерение) и Секрет производства действовать самостоятельно (например, самонастройка, знание конфигурации, интерпретация сенсорных данных и т. д.) без внешнего вмешательства. Фактическая работа вегетативной системы продиктована Логика, который несет ответственность за принятие правильных решений для обслуживания своих Цельи влияние наблюдения за операционным контекстом (на основе входного сигнала датчика).

Эта модель подчеркивает тот факт, что автономная система работает целенаправленно. Это включает его миссию (например, услугу, которую он должен предлагать), политики (например, определяющие базовое поведение) и "инстинкт самосохранения ". Если рассматривать ее как систему управления, она будет закодирована как функция ошибок обратной связи или в системе с эвристической поддержкой как алгоритм, объединенный с набором эвристика ограничивая свое рабочее пространство.

Смотрите также

использованная литература

  1. ^ а б Kephart, J.O .; Шахматы, Д. (2003), "Видение автономных вычислений", Компьютер, 36: 41–52, CiteSeerX  10.1.1.70.613, Дои:10.1109 / MC.2003.1160055
  2. ^ Падовиц, Амир; Аркадий Заславский; Сенг В. Локе (2003). Осведомленность и гибкость автономных распределенных систем: независимая от платформы коммуникация на основе событий публикации и подписки для мобильных агентов. Материалы 14-го Международного семинара по приложениям баз данных и экспертных систем (DEXA'03). С. 669–673. Дои:10.1109 / DEXA.2003.1232098. ISBN  978-0-7695-1993-7.
  3. ^ Цзинь, Сяолун; Лю, Джиминг (2004 г.), «От моделирования на индивидуальной основе к вычислениям, ориентированным на автономность», Агенты и вычислительная автономность, Конспект лекций по информатике, 2969, п. 151, Дои:10.1007/978-3-540-25928-2_13, ISBN  978-3-540-22477-8
  4. ^ а б Рог. "Автономные вычисления: взгляд IBM на состояние информационных технологий" (PDF). Архивировано из оригинал (PDF) 16 сентября 2011 г.
  5. ^ «Тенденции в технологии», исследование, Калифорнийский университет Беркли, США, март 2002 г.
  6. ^ http://whatis.techtarget.com/definition/autonomic-computing
  7. ^ а б Послад, Стефан (2009). Автономные системы и искусственная жизнь, В: Повсеместные вычислительные интеллектуальные устройства, интеллектуальные среды и интеллектуальное взаимодействие. Вайли. С. 317–341. ISBN  978-0-470-03560-3. Архивировано из оригинал на 2014-12-10. Получено 2015-03-17.
  8. ^ Сеть S-Cube. «Система самоисцеления».
  9. ^ Nami, M.R .; Бертельс, К. (2007). «Обзор автономных вычислительных систем»: 26–30. Цитировать журнал требует | журнал = (Помогите)
  10. ^ «Что такое автономные вычисления? Определение в Webopedia».
  11. ^ «IBM представляет новую модель развертывания автономных вычислений». 2002-10-21.
  12. ^ Карри, Эдвард; Грейс, Пол (2008), «Гибкое самоуправление с использованием шаблона модель-представление-контроллер», Программное обеспечение IEEE, 25 (3): 84, Дои:10.1109 / MS.2008.60

внешние ссылки