четверг, 12 мая 2011 г.

Практическая сводка

Документация по расчету надежности:
Sun
Availability - What It Means, Why It’s Important, and How to Improve It
High Availability Fundamentals
Modeling High Availability Systems
Modeling Sun Cluster Availability


Cisco
High availability Network Fundamentals ( Расчет через MTBF и MTTR ) или High Availability Network Fundamentals 2

Forums:
http://it.toolbox.com/blogs/enterprise-solutions/technical-architecture-availability-modeling-45903

IBM WebSphere
IBM WebSphere Developer Technical Journal: Planning for Availability in the Enterprise

Книга Breaking the Availability Barrier
Preface-Chapter 1
Chapters 2-8

Статьи:
Availability Digest
Calculating Availability – Heterogeneous Systems Part 4  (from Availability Digest)
Breaking availability barrier

Availability - MTBF, MTTR and the Human Factor
ITIL Availability Management
Reliability and Availability Basics
Availability and the Different Ways to Calculate It
Availability Modeling
How to Calculate Data Warehouse Reliability

Научные статьи:
Mining for statistical Models
Availability of Enterprise IT systems
Assessing System Availability
Availability Modeling and evaluation of web-based services (ecole doctorale)


Готовые программные продукты
Список программ
Другой список ПО
BlockSim
Availability Calculator by IBM
System Availability Calculator



вторник, 10 мая 2011 г.

Моделирование доступности системы

В целом, можно выделить 2 больших группы: non-state space model (модель состояний) и state space model (непрерывная модель).
Первая группа призвана описывать зависимость систем (dependability). Но в то же время данный тип модели с трудом описывает совокупное  взаимодействие компонентов системы, элементы с различной производительностью. Также трудности могут возникнуть с моделированием синхронизации, согласованности элементов.
Использование второй группы позволяет избежать всех этих проблем. Типичным примером являются цепи Маркова.
Примером программы для расчета цепей Маркова может являться MEADEP by Solar.
Ключевое понятие теории - вероятность перехода из одного состояния в другое.
Пример: http://ethesis.inp-toulouse.fr/archive/00000187/01/martinello.pdf
Готовые программные продукты

Availability Calculator by IBM
System Availability Calculator
Список программ
Другой список ПО

четверг, 5 мая 2011 г.

Расчет доступности системы. Задача. Summary

Главная проблема 
Необходимо решить задачу:
есть 2 конфигурации, например, из 2х серверов и из 4х. Необходимо показать изменение надежности в зависимости от конфигурации и показать различия в выборе сервиса.
Необходимо объяснить заказчику, что при покупке парка аз 4х серверов и поддержки класса голд время простоя системы в год уменьшиться на столько-то минут/часов.
Решение задачи
Если для оценки доступности системы можно использовать как первый подход, так и второй (второй подход немного быстрее), но вот выбор качества сервиса данные подходы обосновать не могут. Необходимо воспользоваться такими характеристиками, как MTR, MTBF и пр. 

MTBF - mean time between failures
MTR- mean time recovery
Upper case используется для написания времени для системы, Lower case - для элементов.


Заметки на полях

Неожиданно, но результат на запрос в google "modeling availability" выдал много всякой полезной информации:

Также заметил, что часто встречаются алгоритм Монте-Карло и метод Маркова.
Bluepages от Sun с использованием модели Маркова 




Расчет доступности системы. Подход Второй

Отличия от первого подхода
  1. Более быстрый расчет доступности системы
  2. Нет необходимости в понимании взаимодействия между элементами
Подход Второй
Суть метода сводится к расчету одной формулы:
Разбор формулы:
A - вероятность того, что система будет доступна
F - вероятность того, что система не доступна, F = 1 - A
a - доступность узла
n- количество узлов в системе
s - количество запасных (резервных) узлов
f - количество способов отказа

 f есть число сочетаний из n по s+1


Ссылки:
Availability Digest. List of articles:
http://www.availabilitydigest.com/articles.htm
Calculating availability
Repair strategy:




Расчет доступности системы. Подход первый

Краткое вступление

В данном цикле я опишу подходы, которые используются для расчета доступности (availability) системы. 
Важное замечание: подходы основываются на том факте, что известна доступность каждого элемента системы: сервера, СХД, коммутатора, сеть также может выступать в качестве элемента. Во всех подходах используется принцип инкапсуляции - нас не интересует, что находится внутри сервера, какие компоненты, каковы их параметры, как считается доступность всего элемента в зависимости от их взаимодействия - это тема для отдельного цикла статей.

Статьи на тему:


Библия по теории доступности:
Breaking the Availability Barrier, Dr. Bill Highleyman, Paul J. Holenstein
http://www.gravic.com/shadowbase/breaking_the_availability_barrier.html

Подход Первый

По всей видимости, это наиболее часто встречающийся подход, описанный во многих книгах или статьях.Смысл заключается в переводе реальной схемы архитектуры системы в схему, состоящую из логических компонентов, соединенных последовательно или параллельно и в последующем расчете коэффициента готовности системы.
Этапы расчета 
  1. Понять архитектурную схему
  2. Перенести архитектуру на логические элементы — сформировать логическую схему системы
  3. Выделить типы соединений
  4. Произвести расчет коэффициента готовности согласно правилам
Типы соединений
  • Последовательное 
Отказ 1 элемента приводит к отказу всей системы
  • Параллельное нагруженное
Система функционирует, если работает хотя бы 1 элемент
  • Параллельное ненагруженное 
При отказе основного элемента включается в работу резервный элемент. Данный тип вряд ли будет использован.

Коэффициент готовности — вероятность того, что объект окажется в работоспособном состоянии в произвольный момент времени, кроме планируемых периодов, в течение которых применение объекта по назначению не предусматривается.
Для последовательного соединения:
Вероятность безотказной работы системы
Рс(t)=Произв[Pj(t)]
Для параллельного соединения:
Pc(t)=1-Произв[1-Pj(t)]

Связь коэффициента готовности и времени простоя системы
Для расчета суммарного времени простоя за заданный интервал времени (год), необходимо вычислить коэффициент простоя (Кп) и умножить на интервал времени
Кп = 1 — Кг
tп = Кп * T

Пример

Пример
К1
0,99999
К2
0,9999
К3
0,9999
К4
0,9999
К5
0,99999
Кc
0,99987999

Кс=К1*(1-(1-К2)*(1-К3))*К4*К5


Перевод Кг в tп
Коэффициент готовности
Кг
0,99987999
Коэффициент простоя
Кп
0,00012001
Период (дн)
T
365
Время отказа за период (мин)
tп
63,07615161

Проблема
В случае моделирования аднным способом получается, что при отказе системы несколько раз в год время простоя суммируется, т.е вместо обещанных, например, 5 часов в год получается уже 10.
Практика 
Этот же подход используется в книге High Availability Network Fundamentals
Sun
Sun 2
Windchill OpSim (formerly Relex OpSim)
Ссылки:
Мат часть:
ГОСТ 27.002-89 «Надежность в технике. Основные понятия. Термины и определения»
Кратко и по делу:
http://www.edgeblog.net/2007/in-search-of-five-9s/