Показатели надежности
Иногда при чтении материала, который затрагивает доступность и надежность, можно увидеть термин девятки. Пять девяток или девять девяток означают число девяток в процентном выражении доступности. Две девятки — 99 %, три девятки — 99,9 %, четыре — 99,99 % и т. д.
Среднее время между сбоями
Вы также встретите фразы среднее время между сбоями (MTBF) и среднее время безотказной работы (MTTF) в характеристиках многих отдельных компонентов (например, жестких дисков, системных плат, источников питания). Они определяются как среднее число часов, которое должен проработать компонент, а также обычно определяются производителем посредством проверки образца компонента в более экстремальных условиях. Тем не менее на практике часто фиксируются более высокие показатели сбоев. Например, жесткие диски рассчитывались на 1 000 000 часов или более, но их реальная частота сбоев была в 2–10 раз выше1. Google обнаружил в своем исследовании, что частота сбоев в среднем на 50 % выше указанной2. Частота сбоев составляет 1/среднее время между сбоями. Например, если среднее время между сбоями устройства составляет 100 часов, то вероятность сбоя этого устройства в течение 1 часа составляет 1/100, 0,01 или 1 %.
Важно отметить, что при определении общего среднего времени между сбоями (MTBF) системы без избыточности компонентов среднее время между сбоями каждого отдельного компонента добавляется как обратная величина. Формально:
$$ \frac{1}{MTBF_{system}} = \left(\frac{1}{MTBF_{c1}} + \frac{1}{MTBF_{c2}} + \cdots + \frac{1}{MTBF_{cn}} \right) $$
С другой стороны, если система состоит из избыточных компонентов, требуется сбой обоих компонентов в паре одновременно, чтобы привести к общему сбою системы. Общее среднее время между сбоями (MTBF) системы является, таким образом, произведением от среднего времени каждого отдельного избыточного компонента системы. Формально:
$$ MTBF_{system} = MTBF_{rc1} \times MTBF_{rc2} \times \cdots \times MTBF_{rcn} $$
Один фактор, который часто забывают при оценке времени бесперебойной работы, — это человеческие ошибки. Сколько избыточности ни встрой в систему, даже правильно реализованную и обслуживаемую, всегда сохраняется вероятность того, что ошибку сделает человек. В итоге это приводит к недоступности службы (простою). Некоторые ошибки можно предотвратить с помощью политик, указывая стандартные конфигурации, предоставляя хорошую документацию и обеспечивая управление изменениями.
Когда дело доходит до крупномасштабных облачных развертываний, мало внимания уделяется устойчивости оборудования отдельных серверов. Если 10 000 или более серверов работают вместе как часть одного приложения, само приложение обладает встроенной отказоустойчивостью. В этом случае сбой одного сервера или даже нескольких не приведет к нарушению работы приложения/службы. Малые и средние предприятия или даже крупные предприятия, которые имеют устаревшие приложения, не могут позволить себе создавать такие полностью настраиваемые приложения облачного типа, так что они полагаются на сторонние программы, большинство из которых плохо справляются со сбоями оборудования. Вместо этого поставщики облачных служб концентрируются на обеспечении дешевизны и энергоэкономичности оборудования серверов, удаляя ненужные компоненты.
Ссылки
- Schroeder, Bianca, and Gibson, Garth A. (2007). Disk Failures in the Real World: What Does an MTTF of 1,000,000 Hours Mean to You? In Proceedings of the 5th USENIX Conference on File and Storage Technologies
- Eduardo Pinheiro, Weber, Wolf-Dietrich, and Barroso, Luiz André. (2007). Failure Trends in a Large Disk Drive Population In Proceedings of the 5th USENIX Conference on File and Storage Technologies