Исследование методов обеспечения отказоустойчивости вычислительных систем
Бесплатный доступ
Статья посвящена проблеме обеспечения отказоустойчивости вычислительных систем. Были рассмотрены основные свойства надежности вычислительных систем. Также были рассмотрены основные методы обеспечения отказоустойчивости. Для каждого метода были приведены достоинства и недостатки.
Вычислительные системы, надежность систем, отказоустойчивость систем, резервирование
Короткий адрес: https://sciup.org/140283479
IDR: 140283479
Текст научной статьи Исследование методов обеспечения отказоустойчивости вычислительных систем
Annotation. The article is devoted to the problem of fault tolerance methods of computer systems. The basic properties of reliability of computer systems were considered. The main methods for ensuring fault tolerance were considered as well. Advantages and disadvantages were listed for each method.
Keyword: computer systems, reliability of systems, fault tolerance systems, redundancy.
Сегодня вычислительные системы стали неотъемлемой частью различных технических комплексов. Наиболее ответственные применения вычислительных систем – это управление процессами и объектами в реальном времени. Вследствие чего внезапный выход из строя такой системы приводит как минимум к полной остановке управляемого объекта, что может привести к большим материальным потерям. Поэтому одной из основных проблем построения вычислительных систем остается задача обеспечения их продолжительного функционирования.
Важнейшей характеристикой вычислительных систем является надежность, т.е. свойство объекта выполнять заданные функции, сохраняя во времени значения установленных эксплуатационных показателей в заданных пределах.
Надежность – комплексное свойство системы, оно включает в себя более простые свойства, такие как безотказность, ремонтопригодность и долговечность.
Безотказность – свойство системы сохранять работоспособное состояние в течение некоторого времени или наработки.
Ремонтопригодность – свойство системы, заключающееся в возможности к поддержанию и восстановлению работоспособного состояния путем проведения технического обслуживания и ремонтов.
Долговечность – свойство системы сохранять при установленной системе технического обслуживания и ремонта работоспособное состояние до наступления предельного состояния, то есть такого момента, когда дальнейшее использование, системы по назначению недопустимо или нецелесообразно.
Одним из основных понятий теории надежности является отказ. Отказ - событие, заключающееся в нарушении работоспособности системы, т.е. в ее переходе в неработоспособное состояние.
Отказ системы является следствием отказов ее элементов. Однако, обратное в общем случае неверно: наличие отказов элементов не всегда приводит к отказу системы. Существуют системы, сохраняющие работоспособное состояние при отказах некоторых элементов. Это свойство и есть свойство отказоустойчивости.
Отказоустойчивостью, т.е. устойчивостью системы к отказам своих элементов, называется свойство системы сохранять работоспособность при отказах каких-либо ее элементов.
Рассматриваемые методы обеспечения отказоустойчивости:
-
• Резервирование
-
• Голосование
-
• Мультиверсионное программирование
-
• Рациональное статистическое перераспределение задач
Любая отказоустойчивая система обладает избыточностью. Одним из наиболее простых и действенных путей создания отказоустойчивых систем является резервирование . Резервирование основано на использовании различных устройств и модулей в качестве резервных. При отказе основного элемента осуществляется переход на использование резервного. Для целей резервирования могут использоваться один резервный элемент и более. Системы должны иметь несложные аппаратно-программные средства контроля работоспособности элементов и средства перехода на использование, при необходимости, резервных элементов. Резервирование, в зависимости от способа включения резервных устройств можно разделить на постоянное резервирование и резервирование замещением.
При постоянном резервировании резервные устройства подключены к основному в течение всего времени работы и находятся в одинаковом с ним режиме работы. Преимуществом данного метода является отсутствие даже кратковременного перерыва в работе при отказе элементов системы. Недостатком является одновременный износ резервных элементов системы вместе с остальными.
При резервировании замещением резервные системы замещают основные только после отказа. Резервное устройство включается в работу системы при помощи автоматических устройств либо человеком-оператором вручную. При автоматическом включении требуется чрезвычайно высокая надёжность переключающих элементов. Т.к. резервные устройства подключаются только после отказа основных, их износ происходит медленней основных. Недостатком является кратковременный перерыв на время переключения на резервное устройство.
Основным недостатком резервирования является высокая стоимость его реализации.
Метод голосования схож с методом резервирования, потому что также происходит дублирование элементов системы. Элементы системы работают параллельно и в любой момент времени должны находиться в одинаковом состоянии. Выходные данные каждого элемента системы сравниваются с использованием устройства голосования. Устройство голосования находит несоответствие в выходных данных, если такое есть, и выбирает выходное значение большинства элементов. Например, при 3 параллельно работающих элементах используется вариант голосования «2 из 3». Таким образом, можно увеличивать кол-во резервных элементов системы для повышения отказоустойчивости.
Преимуществами метода голосования являются:
-
• отсутствие даже кратковременного перерыва в работе при отказе элементов системы, т.к. дублирующие работают одновременно с основным;
-
• возможность определять не только отказ элементов, но и ошибки его работы (например, программные).
Недостатками метода голосования являются:
-
• одновременный износ основных и дублирующих элементов системы;
-
• высокая стоимость реализации метода, т.к. используются дублирующие элементы (то же самое, что в методе резервирования).
Мультиверсионное программирование заключается в том, что разрабатываются различные версии программы по одинаковой спецификации. Каждую версию программы пишет отдельная команда, при этом команды разработчиков не должны обмениваться никакой информацией. Команды должны использовать различные алгоритмы, а также, возможно, различные языки программирования. Разработанные программы должны работать одновременно, с одними и теми же входными данными. Итоговые выходные данные выбираются с помощью голосования. Это позволяет избежать ошибок в работе программ.
Суть рационального статистического перераспределения задач состоит в том, что до начала выполнения системой задания (т.е. при ее проектировании или подготовке к работе) для каждого ее состояния формируется рациональный план.
Рациональный план – план перераспределения задач при изменении состояния системы (т.е. при отказе процессорных модулей в системе). При этом план должен удовлетворять заданным требованиям (например, ресурсным ограничениям).
Метод основывается на том, что обычно процессорные модули используют не все доступные им ресурсы, таким образом, при отказе какого-либо из процессорных модулей выполняемые им задачи могут быть распределены между другими.
Алгоритм построения рационального плана:
-
1. Составление множества искаженных состояний, в которых отказал 1 процессорный модуль.
-
2. Для каждого состояния из множества формируется план распределения задач в соответствии с заданными требованиями.
-
3. Формируется матрица отказоустойчивого размещения задач по всем процессорными модулям системы на основе составленных планов.
Эта матрица описывает резервирование задач (т.е. размещение в различных процессорных модулях нескольких резервных копий одной и той же задачи) только для случая, когда при работе системы в начальном состоянии может произойти отказ одного любого процессорного модуля.
Затем эти действия повторяются для ситуаций с двумя отказавшими процессорными модулями и далее.
Основным преимуществом данного метода является более низкая стоимость реализации (чем у резервирования и голосования).
Недостатками данного метода являются:
-
• сложность формирования плана распределения задач, особенно в ситуации, когда нужно учесть возможность выхода из строя большого кол-ва процессорных модулей;
-
• возможна ситуация, что у процессорных модулей недостаточно много избыточных ресурсов.
Каждый метод обеспечения отказоустойчивости обладает своими преимуществами и недостатками. Выбор метода зависит от целей и требований к системе, поэтому нельзя назвать какой-то из них определенно лучшим. Более того, методы могут дополнять друг друга для достижения большей отказоустойчивости.
Список литературы Исследование методов обеспечения отказоустойчивости вычислительных систем
- Бережной А. Н., Сохранение данных: теория и практика - ДМК Пресс, 2016. 314 с.
- Нечаев Д. Ю., Чекмарев Ю.В., Надежность информационных систем - ДМК Пресс, 2012. 64с.